Azure OpenAI Service REST API reference – Azure OpenAI(openai openai_api_base)
I. 简介
A. OpenAI API简介
1. OpenAI API是甚么
OpenAI API是一个强大的人工智能语言模型,可以用于实现各种自然语言处理任务。它提供了语言生成和对话功能,可以用于创建聊天机器人、翻译工具、摘要生成器等。
2. OpenAI API的基本配置
OpenAI API的调用需要以下两个参数:
- OPENAI_API_BASE:OpenAI API的基础URL地址。
- OPENAI_API_KEY:用于授权访问OpenAI API的密钥。
II. 搭建个人API中转站
A. 肯定代理URL和密钥
1. 获得代理URL
根据实际需求,可以选择使用现有的代理服务或自建代理服务器。可以将代理服务的URL作为OPENAI_API_BASE的值,用于将API要求转发至OpenAI官方服务器。
2. 获得密钥
在OpenAI官方网站上注册并获得API密钥。将获得到的API密钥作为OPENAI_API_KEY的值。
B. 配置环境变量或修改代码
1. 方式一:通过设置环境变量
在.env文件中设置OPENAI_API_BASE环境变量,将其值设为代理URL。在代码中援用该环境变量,例如:OPENAI_API_BASE = os.getenv("OPENAI_API_BASE")
。
2. 方式二:修改代码
找到源码中的openai.py文件。将官方域名api.openai.com
替换为个人代理域名,例如:openai.api_base = "https://your-proxy-url/v1"
。将openai.api_key
修改成个人的API密钥。
III. 完成API配置后的操作
A. 调用OpenAI API
1. 导入openai库
在代码中导入openai库,例如:import openai
。
2. 进行API要求
使用openai.ChatCompletion.create
方法创建一个聊天机器人实例。指定语言模型和问题,例如:openai.ChatCompletion.create(model='gpt⑶.5-turbo-0301', messages=[{'role':'system', 'content':'You are a helpful assistant.'}, {'role':'user', 'content':'Who won the world series in 2023?'}])
。
IV. 配置参数说明和注意事项
A. OPENAI_API_BASE参数说明
1. openai.api_base的值应为代理URL,以便将API要求转发至OpenAI官方服务器。
2. 注意保存/v1路径,不可省略。
B. OPENAI_API_KEY参数说明
1. OPENAI_API_KEY用于授权访问OpenAI API的密钥。
2. 密钥的安全性需得到保证,不要泄漏给他人。
V. 总结
A. 搭建个人专属的API中转站可以解决本地OpenAI接口调用困扰。
B. 通过配置代理URL和密钥,可以将API要求转发至OpenAI官方服务器。
C. 可以通过设置环境变量或修改代码来完成API配置。
D. 配置完成后,可以导入openai库并调用OpenAI API来实现自然语言处理任务。
openai openai_api_base的进一步展开说明
目录
- Azure OpenAI 服务 REST API 参考
- 认证
- REST API 版本控制
- 公共硬件常见问题和解答
- 聊天生成
- 图片生成
- 表情符号生成
- 模型管理
Azure OpenAI 服务 REST API 参考
Azure OpenAI 服务提供了一组 REST API,用于与 Azure OpenAI 进行交互。通过这些 API,您可使用 Azure OpenAI 强大的模型进行文本生成、聊天对话和图象生成等任务。本文档提供了有关怎样使用这些 API 的详细信息,包括身份验证、API 版本控制和常见问题解答等。下面是一些常见操作的概述。
认证
Azure OpenAI 提供两种身份验证方法:API 密钥和 Azure Active Directory。您可以根据实际情况选择使用其中一种方法进行身份验证。
- API 密钥认证:在使用此类型的认证时,所有 API 要求都一定要在 api-key HTTP 头中包括 API 密钥。在快速入门指南中提供了怎样使用此类型的认证进行调用的指点。
-
Azure Active Directory 认证:您可使用 Azure Active Directory 令牌对 API 调用进行认证。
认证令牌作为 Authorization 头的一部份包括在要求中。
令牌一定要以 Bearer 开头,例如 Bearer YOUR_AUTH_TOKEN。
您可以浏览我们的详细指南以了解怎样使用 Azure Active Directory 进行认证。
REST API 版本控制
服务的 API 使用 api-version 查询参数进行版本控制。所有版本都遵守 YYYY-MM-DD 的日期结构。例如:
POST https://YOUR_RESOURCE_NAME.openai.azure.com/openai/deployments/YOUR_DEPLOYMENT_NAME/completions?api-version=2023-05⑴5
聊天生成
使用聊天生成操作,模型将基于提供的提示生成一个或多个预测完成。服务还可以返回每一个位置上备用标记的几率。下面是生成聊天完成的示例要求:
POST https://{your-resource-name}.openai.azure.com/openai/deployments/{deployment-id}/completions?api-version={api-version}
路径参数
类型 | 会不会一定要 | 描写 | |
---|---|---|---|
your-resource-name | string | 是 | 您的 Azure OpenAI 资源名称。 |
deployment-id | string | 是 | 部署模型时选择的部署名称。 |
api-version | string | 是 | 要使用的 API 版本。该版本的格式与 YYYY-MM-DD 相同。 |
要求主体
参数说明
类型 | 会不会一定要 | 默许值 | 描写 |
---|---|---|---|
prompt | string 或 array | 可选的 <|endoftext|> | 要为其生成完成的提示(作为字符串或字符串数组进行编码)。 注意,<|endoftext|> 是模型在训练进程中视察到的文档分隔符,因此如果未指定提示,则模型将生成重新文档的开头开始的完成。 |
max_tokens | 整数 | 可选的 16 | 要生成的完成中的最大标记数。您的提示标记数加上 max_tokens 的总和不得超过模型的上下文长度。 大多数模型的上下文长度为 2048 标记(除最新的支持 4096 标记的模型)。此参数不能与 gpt⑶5-turbo 一起使用。 |
temperature | 数值 | 可选的 1 | 要使用的采样温度,介于 0 和 2 之间。值越高,模型冒的风险越大。 尝试 0.9 进行更具创意的利用,和 0(argmax 采样)进行有明确答案的利用。 我们通常建议修改这个参数或 top_p,而不是二者都修改。 |
示例要求
curl https://YOUR_RESOURCE_NAME.openai.azure.com/openai/deployments/YOUR_DEPLOYMENT_NAME/completions?api-version=2023-05⑴5 -H "Content-Type: application/json" -H "api-key: YOUR_API_KEY" -d "{ "prompt": "Once upon a time", "max_tokens": 5 }"
示例响应
{ "id": "cmpl⑷kGh7iXtjW4lc9eGhff6Hp8C7btdQ", "object": "text_completion", "created": 1646932609, "model": "ada", "choices": [ { "text": ", a dark line crossed", "index": 0, "logprobs": null, "finish_reason": "length" } ] }
处理聊天生成响应示例:
示例响应示例完成原文等等
openai openai_api_base的常见问答Q&A
问题1:怎么解决本地OpenAI接口调用困扰?
答案:为了解决本地OpenAI接口调用困扰,可以搭建个人专属的API中转站。以下是解决方案的大纲:
- 创建一个API中转站,将本地OpenAI接口要求通过该中转站转发到云上的OpenAI接口。
- 通过搭建中转站,可以在本地进行OpenAI接口的调试和测试,同时确保接口要求的安全性。
- 将本地开发环境的OpenAI接口要求路径修改成中转站的路径,以实现对接口的调用。
- 在中转站上配置API密钥和endpoint,确保正确的访问权限和接口调用地址。
- 通过中转站转发OpenAI接口要求,并将响应结果返回给本地。
- 在本地的利用程序中使用中转站的地址和密钥来调用OpenAI接口。
子点1:怎样创建API中转站?
创建API中转站的步骤:
- 选择一个适合的云服务提供商,如Azure。
- 在云公司平台上创建一个API利用。
- 配置API利用的endpoint和密钥。
- 将本地OpenAI接口的要求通过API利用的endpoint进行转发。
- 将API利用的响应结果返回给本地利用程序。
子点2:怎么配置API密钥和endpoint?
配置API密钥和endpoint的步骤:
- 在云公司平台上找到API利用的设置页面。
- 生成一个API密钥,用于鉴权和访问权限控制。
- 获得API利用的endpoint,用于指定要求的目标地址。
- 将API密钥和endpoint配置到中转站的设置中。
- 确保API密钥和endpoint的安全性,避免歹意访问和泄漏。
子点3:怎么修改本地OpenAI接口要求路径?
修改本地OpenAI接口要求路径的步骤:
- 找到本地利用程序中调用OpenAI接口的代码位置。
- 将OpenAI接口要求的路径修改成中转站的路径。
- 确保修改后的路径与中转站的配置一致。
- 重新编译或重启利用程序,使修改生效。