Семантическое ядро игнорирует предоставленные аргументы для шаблонаC#

Место общения программистов C#
Ответить
Anonymous
 Семантическое ядро игнорирует предоставленные аргументы для шаблона

Сообщение Anonymous »

Я пытаюсь использовать следующее семантическое ядро Конфигурация агента (поведение не связано с использованной моделью ИИ):

Код: Выделить всё

static async Task Main()
{
var apiKey = Environment.GetEnvironmentVariable("OPENAI_API_KEY")
?? throw new InvalidOperationException("OPENAI_API_KEY is required");

// Build kernel
var kb = Kernel.CreateBuilder();
kb.AddOpenAIChatCompletion("gpt-5", apiKey);
var kernel = kb.Build();

ChatCompletionAgent agent =
new()
{
Kernel = kernel,
Name = "StoryTeller",
Instructions = "Tell a story about dog that is {{$length}} sentences long.",
Arguments = new KernelArguments(new OpenAIPromptExecutionSettings {Temperature = 1 })
{
{ "topic", "Dog" },
{ "length", "3" },
}
};

// Attempt 2
//KernelArguments overrideArguments =
//    new()
//    {
//        { "topic", "Cat" },
//        { "length", "3" },
//    };

await foreach (ChatMessageContent response in agent.InvokeAsync([]
// Attempt 2
// , options: new() { KernelArguments = overrideArguments }
))
{
Console.WriteLine(response.Content);
}
}
< /code>
Но я вижу, что значения шаблона (topic
, длина ) Я предоставляю через kernelarguments игнорируется, и модель спрашивает меня о предоставлении этих значений в разговоре. Почему значения, которые я предоставляю в списке Kernelarguments, не сопоставлены с ключами, которые я вкладываю в подсказку?>

Подробнее здесь: https://stackoverflow.com/questions/797 ... r-template
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C#»