此前,LangChain.js 通过专用的 Azure OpenAI SDK 支持与 Azure OpenAI 的集成。该 SDK 现已弃用,转而采用 OpenAI SDK 中新的 Azure 集成方案。新方案允许在 OpenAI 模型和功能发布当天即可访问,并支持在 OpenAI API 和 Azure OpenAI 之间无缝切换。如果您正在使用已弃用的 SDK 访问 Azure OpenAI,请参阅 迁移指南 以更新到新的 API。
AzureOpenAI 功能和配置选项的详细文档,请参阅 API 参考。
概述
集成详情
| 类 | 包 | 本地 | 可序列化 | Python 支持 | 下载量 | 版本 |
|---|---|---|---|---|---|---|
AzureOpenAI | @langchain/openai | ❌ | ✅ | ✅ |
设置
要访问 AzureOpenAI 模型,您需要创建一个 Azure 账户,获取 API 密钥,并安装@langchain/openai 集成包。
凭据
前往 azure.microsoft.com 注册 AzureOpenAI 并生成 API 密钥。 您还需要部署一个 Azure OpenAI 实例。您可以按照 此指南 在 Azure 门户上部署一个版本。 一旦您的实例运行起来,请确保您拥有实例名称和密钥。您可以在 Azure 门户中,在实例的“密钥和终结点”部分找到密钥。 如果您使用 Node.js,可以定义以下环境变量来使用该服务:AzureOpenAI 构造函数。
如果您希望自动追踪模型调用,还可以通过取消注释以下内容来设置您的 LangSmith API 密钥:
安装
LangChain AzureOpenAI 集成位于@langchain/openai 包中:
实例化
现在我们可以实例化模型对象并生成聊天补全:调用
使用 Azure 托管身份
如果您使用 Azure 托管身份,可以像这样配置凭据:使用不同域
如果您的实例托管在默认openai.azure.com 以外的域下,您需要使用替代的 AZURE_OPENAI_BASE_PATH 环境变量。
例如,以下是如何连接到域 https://westeurope.api.microsoft.com/openai/deployments/{DEPLOYMENT_NAME}:
从 Azure OpenAI SDK 迁移
如果您正在使用已弃用的 Azure OpenAI SDK 和@langchain/azure-openai 包,您可以按照以下步骤更新代码以使用新的 Azure 集成:
-
安装新的
@langchain/openai包并移除之前的@langchain/azure-openai包: -
更新您的导入语句,使用来自
@langchain/openai包的新AzureOpenAI和AzureChatOpenAI类: -
更新您的代码以使用新的
AzureOpenAI和AzureChatOpenAI类,并传递所需的参数:请注意,构造函数现在需要azureOpenAIApiInstanceName参数,而不是azureOpenAIEndpoint参数,并添加了azureOpenAIApiVersion参数来指定 API 版本。-
如果您之前使用 Azure 托管身份,现在需要向构造函数传递
azureADTokenProvider参数,而不是credentials,有关更多详细信息,请参阅 Azure 托管身份 部分。 -
如果您之前使用环境变量,现在必须设置
AZURE_OPENAI_API_INSTANCE_NAME环境变量,而不是AZURE_OPENAI_API_ENDPOINT,并添加AZURE_OPENAI_API_VERSION环境变量来指定 API 版本。
-
如果您之前使用 Azure 托管身份,现在需要向构造函数传递
API 参考
有关所有AzureOpenAI 功能和配置的详细文档,请前往 API 参考。
Connect these docs to Claude, VSCode, and more via MCP for real-time answers.

