用途:Azure.AI.OpenAI 是 Azure OpenAI 服务的 .NET 客户端库,可在 .NET 应用中访问 GPT-4、GPT-4o、嵌入模型、DALL-E、Whisper 等模型,涵盖对话补全、嵌入、图像生成、音频转写与语音合成等能力。
主要能力:顶层 AzureOpenAIClient 可派生 ChatClient、EmbeddingClient、ImageClient、AudioClient 与 AssistantClient。Chat 支持同步、异步、流式、多轮对话、选项配置(温度、TopP、最大输出 token 等)、JSON Schema 结构化输出、o1/o4-mini 等推理模型,以及通过 ChatTool 实现函数调用。嵌入支持单条与批量生成;ImageClient 可生成图像;AudioClient 支持语音转写与文本转语音。通过 AzureSearchChatDataSource 可接入 Azure AI Search 实现 RAG,并读取引用与意图。
使用方式:安装 dotnet add package Azure.AI.OpenAI;OpenAI 兼容场景可安装 dotnet add package OpenAI。当前稳定版本 2.1.0。需配置环境变量 AZURE_OPENAI_ENDPOINT、AZURE_OPENAI_API_KEY、AZURE_OPENAI_DEPLOYMENT_NAME。认证支持 AzureKeyCredential 的密钥方式,生产环境推荐 DefaultAzureCredential(Entra ID)。也可直接用 OpenAI SDK 配合 BearerTokenPolicy 指向 Azure 端点。
适用场景:需要在 .NET 中集成 Azure OpenAI 的对话、嵌入、图像、音频、工具调用与检索增强生成(RAG)等应用。
限制:官方资料强调仅应在任务明确匹配上述范围时使用;输出不能替代针对具体环境的验证、测试与专家审查;缺少必要输入、权限、安全边界或成功标准时应先请求澄清。错误处理可捕获 RequestFailedException,并对 429 实现退避重试。相关 SDK 包括 Azure.Identity、Azure.Search.Documents。