之前,LangChain.js 支持使用专用的 Azure OpenAI SDK 集成 Azure OpenAI。现在,此 SDK 已弃用,取而代之的是 OpenAI SDK 中的新 Azure 集成,它允许在最新 OpenAI 模型和功能发布当天即可访问,并允许在 OpenAI API 和 Azure OpenAI 之间无缝过渡。如果您正在使用已弃用的 SDK 配合 Azure OpenAI,请参阅迁移指南以更新到新的 API。
AzureOpenAI 功能和配置选项的详细文档,请参阅API 参考。概览
集成详情
| 类别 | 包 | 本地 | 可序列化 | PY 支持 | 下载量 | 版本 |
|---|---|---|---|---|---|---|
| AzureOpenAI | @langchain/openai | ❌ | ✅ | ✅ |
设置
要访问 Azure OpenAI 模型,您需要创建一个 Azure 帐户,获取一个 API 密钥,并安装@langchain/openai 集成包。
凭据
前往azure.microsoft.com 注册 Azure OpenAI 并生成一个 API 密钥。 您还需要部署一个 Azure OpenAI 实例。您可以按照此指南在 Azure 门户上部署一个版本。 一旦您的实例运行起来,请确保您拥有实例名称和密钥。您可以在 Azure 门户中,实例的“密钥和终结点”部分找到密钥。 如果您使用的是 Node.js,可以定义以下环境变量来使用该服务:AzureOpenAI 构造函数。 如果您想获得模型调用的自动跟踪,您还可以通过取消注释下方来设置您的 LangSmith API 密钥:安装
LangChain Azure OpenAI 集成位于@langchain/openai 包中
实例化
现在我们可以实例化我们的模型对象并生成聊天完成调用
使用 Azure 托管标识
如果您正在使用 Azure 托管标识,您可以这样配置凭据使用不同的域
如果您的实例托管在默认openai.azure.com 之外的域下,您需要使用备用 AZURE_OPENAI_BASE_PATH 环境变量。例如,以下是您如何连接到域 https://westeurope.api.microsoft.com/openai/deployments/{DEPLOYMENT_NAME}
从 Azure OpenAI SDK 迁移
如果您正在使用带有@langchain/azure-openai 包的已弃用 Azure OpenAI SDK,您可以按照以下步骤更新您的代码以使用新的 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 参考
有关所有 Azure OpenAI 功能和配置的详细文档,请访问API 参考。以编程方式连接这些文档到 Claude、VSCode 等,通过 MCP 获取实时答案。