openai Python 包使得同时使用 OpenAI 和 Azure OpenAI 变得简单。您可以像调用 OpenAI 一样调用 Azure OpenAI,但需注意以下例外情况。
API 配置
您可以使用环境变量配置openai 包以使用 Azure OpenAI。以下是针对 bash 的配置:
Azure 活动目录身份验证
您可以通过两种方式向 Azure OpenAI 进行身份验证:- API 密钥
- Azure 活动目录 (AAD)
az login 进行登录。
添加一个 Azure 角色分配 Cognitive Services OpenAI User,其范围限定为您的 Azure OpenAI 资源。这将允许您从 AAD 获取令牌以用于 Azure OpenAI。您可以将此角色分配授予用户、组、服务主体或托管标识。有关 Azure OpenAI RBAC 角色的更多信息,请参阅基于角色的访问控制文档。
要在 Python 中与 LangChain 一起使用 AAD,请安装 azure-identity 包。然后,将 OPENAI_API_TYPE 设置为 azure_ad。接下来,使用 DefaultAzureCredential 类通过调用 get_token 从 AAD 获取令牌,如下所示。最后,将 OPENAI_API_KEY 环境变量设置为令牌值。
DefaultAzureCredential 类是开始使用 AAD 身份验证的一种简单方式。您也可以根据需要自定义凭据链。在下面的示例中,我们首先尝试托管标识,然后回退到 Azure CLI。如果您在 Azure 中运行代码,但希望在本地开发,这会很有用。
部署
使用 Azure OpenAI,您可以设置自己的常见 GPT-3 和 Codex 模型的部署。调用 API 时,您需要指定要使用的部署。 注意:这些文档适用于 Azure 文本补全模型。像 GPT-4 这样的模型是聊天模型。它们的接口略有不同,可以通过AzureChatOpenAI 类访问。有关 Azure 聊天的文档,请参阅 Azure Chat OpenAI 文档。
假设您的部署名称是 gpt-35-turbo-instruct-prod。在 openai Python API 中,您可以使用 engine 参数指定此部署。例如:
连接这些文档 到 Claude、VSCode 等,通过 MCP 获取实时答案。

