Azure OpenAI
本笔记本介绍如何使用Langchain与Azure OpenAI。
Azure OpenAI API与OpenAI的API兼容。openai
Python包使得同时使用OpenAI和Azure OpenAI变得容易。您可以像调用OpenAI一样调用Azure OpenAI,除非有下面所述的例外情况。
API配置
您可以使用环境变量配置openai
包以使用Azure OpenAI。以下是bash
的配置示例:
# 将此设置为`azure`
export OPENAI_API_TYPE=azure
# 您想要使用的API版本:将其设置为发布版本的`2023-05-15`。
export OPENAI_API_VERSION=2023-05-15
# Azure OpenAI资源的基本URL。您可以在Azure门户中的Azure OpenAI资源下找到此信息。
export OPENAI_API_BASE=https://your-resource-name.openai.azure.com
# Azure OpenAI资源的API密钥。您可以在Azure门户中的Azure OpenAI资源下找到此信息。
export OPENAI_API_KEY=<your Azure OpenAI API key>
或者,您可以在正在运行的Python环境中直接配置API:
import os
os.environ["OPENAI_API_TYPE"] = "azure"
...
部署
使用Azure OpenAI,您可以设置自己的GPT-3和Codex模型的部署。在调用API时,您需要指定要使用的部署。
注意:这些文档适用于Azure文本补全模型。像GPT-4这样的模型是聊天模型。它们具有稍微不同的接口,并且可以通过AzureChatOpenAI
类访问。有关Azure聊天的文档,请参阅Azure Chat OpenAI文档。
假设您的部署名称是text-davinci-002-prod
。在openai
Python API中,您可以使用engine
参数指定此部署。例如:
import openai
response = openai.Completion.create(
engine="text-davinci-002-prod",
prompt="This is a test",
max_tokens=5
)
pip install openai
import os
os.environ["OPENAI_API_TYPE"] = "azure"
os.environ["OPENAI_API_VERSION"] = "2023-05-15"
os.environ["OPENAI_API_BASE"] = "..."
os.environ["OPENAI_API_KEY"] = "..."
# 导入Azure OpenAI
from langchain.llms import AzureOpenAI
# 创建Azure OpenAI实例
# 将部署名称替换为您自己的
llm = AzureOpenAI(
deployment_name="td2",
model_name="text-davinci-002",
)
# 运行LLM
llm("Tell me a joke")
"\n\nWhy couldn't the bicycle stand up by itself? Because it was...two tired!"
我们还可以打印LLM并查看其自定义打印。
print(llm)
AzureOpenAI
Params: {'deployment_name': 'text-davinci-002', 'model_name': 'text-davinci-002', 'temperature': 0.7, 'max_tokens': 256, 'top_p': 1, 'frequency_penalty': 0, 'presence_penalty': 0, 'n': 1, 'best_of': 1}