What's the difference between AzureChatClient and AzureOpenAIChatCompletionService? #12730
-
|
What’s the difference between I replaced To clarify, I’m not calling either of them directly, I’m using plugins created from the Prompt Templates. |
Beta Was this translation helpful? Give feedback.
Replies: 1 comment
-
|
TL;DR — they register different abstractions over the same Azure OpenAI deployment, so for plugin / prompt-template execution the observable behavior is usually the same.
Both ultimately hit the same Azure OpenAI deployment via the same Where the two actually differ
What to pick
Avoid registering both with the same |
Beta Was this translation helpful? Give feedback.
TL;DR — they register different abstractions over the same Azure OpenAI deployment, so for plugin / prompt-template execution the observable behavior is usually the same.
AddAzureOpenAIChatCompletion(...)IChatCompletionService(andITextGenerationService) — the SK-native abstraction. Concrete type:AzureOpenAIChatCompletionService.AzureOpenAIServiceCollectionExtensions.csAddAzureOpenAIChatClient(...)(experimental —SKEXP0010)Microsoft.Extensions.AI.IChatClient— the cross-cuttingMicrosoft.Extensions.AIabstraction, wrapped in a pipeline that already includesUseKernelFunctionInvocation,UseOpenTelemetry, and (optionally)UseLogging.AzureOpen…