Skip to main content
您当前正在查看的是关于使用 Azure OpenAI 文本补全模型的文档。最新且最受欢迎的 Azure OpenAI 模型是聊天补全模型除非您特别使用 gpt-3.5-turbo-instruct,否则您可能需要的是此页面
此前,LangChain.js 使用专用的 Azure OpenAI SDK 支持与 Azure OpenAI 的集成。该 SDK 现已弃用,转而支持 OpenAI SDK 中的新 Azure 集成,该集成允许在 OpenAI 模型和功能发布当天即可访问,并支持在 OpenAI API 和 Azure OpenAI 之间无缝切换。如果您正在使用已弃用的 SDK 与 Azure OpenAI,请参阅迁移指南以更新到新 API。
Azure OpenAI 是一项 Microsoft Azure 服务,提供来自 OpenAI 的强大语言模型。 这将帮助您开始使用 LangChain 的 AzureOpenAI 补全模型(LLM)。有关 AzureOpenAI 功能和配置选项的详细文档,请参阅 API 参考

概述

集成详情

设置

要访问 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 集成:
  1. 安装新的 @langchain/openai 包并移除之前的 @langchain/azure-openai 包:
  2. 更新您的导入,以使用来自 @langchain/openai 包的新 AzureOpenAIAzureChatOpenAI 类:
  3. 更新您的代码以使用新的 AzureOpenAIAzureChatOpenAI 类,并传递所需的参数:
    请注意,构造函数现在需要 azureOpenAIApiInstanceName 参数,而不是 azureOpenAIEndpoint 参数,并添加了 azureOpenAIApiVersion 参数来指定 API 版本。
    • 如果您之前使用的是 Azure 托管标识,现在需要使用构造函数的 azureADTokenProvider 参数,而不是 credentials,更多详情请参阅 Azure 托管标识 部分。
    • 如果您之前使用的是环境变量,现在需要设置 AZURE_OPENAI_API_INSTANCE_NAME 环境变量,而不是 AZURE_OPENAI_API_ENDPOINT,并添加 AZURE_OPENAI_API_VERSION 环境变量来指定 API 版本。

API 参考

有关所有 AzureOpenAI 功能和配置的详细文档,请前往 API 参考