Azure OpenAI vs OpenAIAzure OpenAI 是指在 Microsoft Azure 平台 上托管的 OpenAI 模型。OpenAI 也提供自己的模型 API。要直接访问 OpenAI 服务,请使用
ChatOpenAI 集成。Azure OpenAI v1 APIAzure OpenAI 的 v1 API(自 2025 年 8 月起正式可用)允许您直接使用
ChatOpenAI 与 Azure 端点。这提供了统一的接口和对 Microsoft Entra ID 身份验证的原生支持,并具有自动令牌刷新功能。有关将 ChatOpenAI 与 Azure 的 v1 API 一起使用的详细信息,请参阅 ChatOpenAI Azure 部分。AzureChatOpenAI 目前仍支持传统的 Azure OpenAI API 版本和需要 Azure 特定配置的场景,但我们建议将来使用 LangChain Azure AI 中的 ChatOpenAI 或 AzureAIChatCompletionsModel。AzureChatOpenAI 与 ChatOpenAI 共享相同的基础实现,
后者直接与 OpenAI 服务接口。此页面用作将 Azure OpenAI 服务身份验证和连接到 LangChain 聊天模型的快速入门。有关可用功能的详细信息,请访问 ChatOpenAI 文档,
或前往 AzureChatOpenAI API 参考。概述
集成详情
| Class | Package | Serializable | JS/TS Support | Downloads | Latest Version | |
|---|---|---|---|---|---|---|
AzureChatOpenAI | langchain-openai | ❌ | beta | ✅ (npm) |
模型功能
| Tool calling | Structured output | JSON mode | Image input | Audio input | Video input | Token-level streaming | Native async | Token usage | Logprobs |
|---|---|---|---|---|---|---|---|---|---|
| ✅ | ✅ | ✅ | ✅ | ❌ | ❌ | ✅ | ✅ | ✅ | ✅ |
设置
要访问AzureChatOpenAI 模型,您需要创建 Azure 帐户、创建 Azure OpenAI 模型的部署、获取部署的名称和端点、获取 Azure OpenAI API 密钥,并安装 langchain-openai 集成包。
安装
凭证
前往 Azure 文档 创建部署并生成 API 密钥。完成后,设置AZURE_OPENAI_API_KEY 和 AZURE_OPENAI_ENDPOINT 环境变量:
实例化
现在我们可以实例化模型对象并生成聊天完成。- 将
azure_deployment替换为您的部署名称, - 您可以在此处找到最新支持的
api_version:learn.microsoft.com/en-us/azure/ai-services/openai/reference。
调用
指定模型版本
Azure OpenAI 响应包含model_name 响应元数据属性,这是用于生成响应的模型名称。但是,与原生 OpenAI 响应不同,它不包含模型的具体版本,该版本在 Azure 的部署中设置。例如,它不区分 gpt-35-turbo-0125 和 gpt-35-turbo-0301。这使得很难知道使用哪个版本的模型来生成响应,这可能导致例如使用 OpenAICallbackHandler 计算总成本时出错。
为了解决这个问题,您可以将 model_version 参数传递给 AzureChatOpenAI 类,该参数将添加到 llm 输出中的模型名称。这样您可以轻松区分模型的不同版本。
API 参考
有关所有功能和配置选项的详细文档,请访问AzureChatOpenAI API 参考。