前言
最近大火的ChatGPT提供了一系列API接口,可以调用多种模型进行对话,广泛应用于以下场景:
- 起草电子邮件或其他书面文件
- 编写代码
- 回答有关一组文件的问题
- 创建会话代理
- 为您的软件提供自然语言界面
- 一系列科目的导师
- 翻译语言
- 模拟视频游戏中的角色等等
准备工作
在开始调用ChatGPT API之前,您需要做好以下准备:
- 注册OpenAI账号:首先,您需要注册一个OpenAI账号。👉 野卡 | 一分钟注册,轻松订阅海外线上服务
- Python开发环境:确保您的Python版本在3.7.1及以上。
获取开发KEY
- 访问API密钥页面:打开OpenAI API密钥页面。
- 创建新密钥:点击“Create new secret key”。
- 输入密钥名称:为密钥命名,以便于管理。
- 复制密钥:复制生成的Secret Key,并将其妥善保存。注意,密钥只有在生成时可见,一旦关闭对话框,将无法再次查看。
开发步骤
安装OpenAI库
首先,使用pip安装OpenAI库:
bash
pip install openai
编写简单脚本
创建一个新的Python脚本helloai.py
:
python
import os
import openai
填入您的OPENAI_API_KEY
openai.api_key = “OPENAI_API_KEY”
使用gpt-3.5-turbo模型进行对话
completion = openai.ChatCompletion.create(
model=”gpt-3.5-turbo”,
messages=[
{“role”: “user”, “content”: “Hello!”}
]
)
输出生成的内容
print(completion.choices[0].message)
输出完整的响应
print(completion)
运行脚本
在终端中运行脚本:
bash
python ./helloai.py
输出结果
您将看到类似以下的输出:
bash
Hello there, how may I assist you today?
{
“id”: “chatcmpl-123”,
“object”: “chat.completion”,
“created”: 1677652288,
“choices”: [{
“index”: 0,
“message”: {
“role”: “assistant”,
“content”: “\n\nHello there, how may I assist you today?”,
},
“finish_reason”: “stop”
}],
“usage”: {
“prompt_tokens”: 9,
“completion_tokens”: 12,
“total_tokens”: 21
}
}
参数详解
代理设置
由于某些网络限制,直接调用API可能会失败。您可以通过以下两种方式解决:
- 全局科学上网:确保您的网络环境可以访问OpenAI服务器。
- 设置代理:在代码中指定代理:
python
openai.proxy = “http://127.0.0.1:1080”
模型参数
model
参数指定了使用的训练模型,目前可用的模型包括:
- gpt-4
- gpt-4-0314
- gpt-4-32k
- gpt-4-32k-0314
- gpt-3.5-turbo
- gpt-3.5-turbo-0301
消息参数
messages
参数是当前对话的列表,支持以下角色:
- system:系统消息,提供初始指令。
- user:用户提问的文本内容。
- assistant:ChatGPT返回的内容,用于多轮对话。
Token概念
OpenAI根据对话和生成的Token数量计费。您可以通过max_tokens
参数控制生成的最大Token数。了解更多Token信息,请访问OpenAI Tokenizer工具。
完整示例
以下是一个命令行交互式输入的示例:
bash
python interactive_chat.py
启动后,输入问题并回车,ChatGPT将实时返回答案。