admin 管理员组文章数量: 887007
您可以通过来自任何语言的HTTP请求,通过我们的官方Python绑定、官方Node.js库或社区维护库与API进行交互。
要安装官方Python绑定,请运行以下命令:
pip install openai
要安装官方Node.js库,请在Node.js项目目录中运行以下命令:
npm install openai
身份验证
OpenAI API使用API密钥进行身份验证。访问您的API密钥页面,检索您将在请求中使用的API密钥。
记住,您的API密钥是一个秘密!不要与他人共享或在任何客户端代码(浏览器、应用程序)中公开它。生产请求必须通过您自己的后端服务器路由,您的API密钥可以从环境变量或密钥管理服务中安全加载。
所有API请求都应在Authorization HTTP header头中包含API密钥,如下所示:
Authorization: Bearer OPENAI_API_KEY
请求header头
对于属于多个header头的用户,可以传递一个header标头来指定用于API的请求头。这些API请求的使用量将计入指定组织的订阅配额。
此种方式可以适用于其他语言接口,如php、java等,这里只介绍php
curl命令示例:
curl https://api.openai.com/v1/models \
-H "Authorization: Bearer $OPENAI_API_KEY" \
-H "OpenAI-Organization: org-66vU1OAAARBPaXSAJGzT"
PHP示例:
<?php
$OPENAI_API_KEY = '您的API秘钥';
$Organization_id = 'org-66vU1OAAARBPaXSAJGzT';
$model = 'gpt-3.5-turbo';
$messages = [{"role": "user", "content": "Say this is a test!"}];
$message = '{"model":'.$model'
,"messages":'.$messages.'
,"temperature":0.7
}';
$curl = 'https://api.openai/v1/models';
$headers = [
'Authorization: '.$OPENAI_API_KEY
,'OpenAI-Organization: '.$Organization_id
];
$chat = curl_init();
curl_setopt($chat, CURLOPT_URL, $curl);
curl_setopt($chat, CURLOPT_HTTPHEADER, $headers);
curl_setopt($chat, CURLOPT_SSL_VERIFYHOST, true);
$content = curl_exec($chat);
curl_close($chat);
return $content;
Python包的示例:
import os
import openai
openai.organization = "org-66vU1OAAARBPaXSAJGzT"
openai.api_key = os.getenv("OPENAI_API_KEY")
openai.Model.list()
Node.js包的示例:
import { Configuration, OpenAIApi } from "openai";
const configuration = new Configuration({
organization: "org-66vU1OAAARBPaXSAJGzT",
apiKey: process.env.OPENAI_API_KEY,
});
const openai = new OpenAIApi(configuration);
const response = await openai.listEngines();
可以在“组织设置”页面上找到组织ID。
发出请求
您可以将下面的命令粘贴到终端中,以运行第一个API请求。确保将$OPENAI_API_KEY替换为机密API密钥。
curl https://api.openai.com/v1/chat/completions \
-H "Content-Type: application/json" \
-H "Authorization: Bearer $OPENAI_API_KEY" \
-d '{
"model": "gpt-3.5-turbo",
"messages": [{"role": "user", "content": "Say this is a test!"}],
"temperature": 0.7
}'
该请求查询gpt-3.5-turbo模型以完成以提示“Say This is a test”开头的文本。您应该会得到类似于以下内容的响应:
{
"id":"chatcmpl-abc123",
"object":"chatpletion",
"created":1677858242,
"model":"gpt-3.5-turbo-0301",
"usage":{
"prompt_tokens":13,
"completion_tokens":7,
"total_tokens":20
},
"choices":[
{
"message":{
"role":"assistant",
"content":"\n\nThis is a test!"
},
"finish_reason":"stop",
"index":0
}
]
}
现在您已经生成了第一个聊天完成。我们可以看到finish_reason是stop,这意味着API返回了模型生成的完整完成。在上面的请求中,我们只生成了一条消息,但您可以设置n参数来生成多条消息选择。
模型
列出并描述API中可用的各种模型。您可以参考Models文档来了解哪些模型可用以及它们之间的差异。
列出模型
GET https://api.openai/v1/models
列出当前可用的模型,并提供每个模型的基本信息,如所有者和可用性。
curl请求示例
curl https://api.openai.com/v1/models \
-H "Authorization: Bearer $OPENAI_API_KEY"
python请求示例
import os
import openai
openai.api_key = os.getenv("OPENAI_API_KEY")
openai.Model.list()
node.js请求示例
const { Configuration, OpenAIApi } = require("openai");
const configuration = new Configuration({
apiKey: process.env.OPENAI_API_KEY,
});
const openai = new OpenAIApi(configuration);
const response = await openai.listModels();
返回结果:
{
"data": [
{
"id": "model-id-0",
"object": "model",
"owned_by": "organization-owner",
"permission": [...]
},
{
"id": "model-id-1",
"object": "model",
"owned_by": "organization-owner",
"permission": [...]
},
{
"id": "model-id-2",
"object": "model",
"owned_by": "openai",
"permission": [...]
},
],
"object": "list"
}
持续更新中,将官方API接口公布的所有功能全部挖掘出来。。。
本文标签: 详细介绍 中文翻译 接口 ChatGpt php
版权声明:本文标题:ChatGPT接口API中文翻译及PHP对接API详细介绍(一) 内容由网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:http://www.freenas.com.cn/jishu/1726313696h934915.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论