如何使用ChatGPT API 及 问题解决
1, 注册OpenAI账号
关于注册账号,这里不做赘述,默认大家想要使用API都能翻。
2,获取OpenAI的API秘钥
登录OpenAI网站,在右上角的个人信息中,点击View API keys
创建新的密匙,该密匙在复制之后,可以先保存起来。比如说建一个txt文件,放进去,因为后面要用到。
3,pip安装openai库
3.1 pip安装openai库
在这里,本人使用anaconda Prompt来安装openai,输入下面指令:
pip install openai
3.2 pip安装错误
在输入上述指令后,出现了一个bug,如下图所示:
解决方法:
原因是因为刚刚访问openai时,一直挂着魔法上网。在这里推荐先关掉魔法上网,使用国内源进行下载。
4,Chatgpt API连接测试
4.1 Chatgpt API连接测试
在安装好openai后,可以新建一个test.py文件,导入该库,就可以调用chatgpt接口。
注:记得在秘匙处 填入 第2步复制下来的 一长段字母。
例如如下测试程序,参考朱*[1],参考链接见参考1.
import openai
# 填你的秘钥
openai.api_key = "这里填key"
# 提问代码
def chat_gpt(prompt):
# 你的问题
prompt = prompt
# 调用 ChatGPT 接口
model_engine = "text-davinci-003"
completion = openai.Completion.create(
engine=model_engine,
prompt=prompt,
max_tokens=1024,
n=1,
stop=None,
temperature=0.5,
)
response = completion.choices[0].text
print(response)
chat_gpt("Python怎么从入门到精通,具体的学习方法是什么?")
4.2 连接测试错误
在运行上述文件时,出现了以下报错,在连接时发生了APIConnectionError。
openai.error.APIConnectionError: Error communicating
with OpenAI: HTTPSConnectionPool(host='api.openai.com', port=443): Max retries exceeded with
url: /v1/engines/text-davinci-003/completions (Caused by ProxyError('Cannot connect to proxy.', OSError(0, 'Error')))
解决方式:
参考知乎回答及CSDN回答,见参考链接2,3.
方法:
-
(1),找到刚刚安装的openai的路径,如: E:\anaconda\anaconda\Lib\site-packages\openai
-
(2),找到 api_api_requestor.py 文件
-
(3),找到“if not hasattr(_thread_context, “session”):”方法,并在此方法上方加入代理,加入如下这句话:
# proxy = {
# 'http': 'http://<代理ip>:<代理端口>',
# 'https': 'https://<代理ip>:<代理端口>'
# }
proxy={
'http':'127.0.0.1:10809',
'https':'127.0.0.1:10809'
}
注意:每个人的代理ip和代理端口可能不同,需要查看自己的代理端口。
如果想要查看个人代理,可以进入网络与internet里查看,点击手动设置代理,里面就会出现代理ip和代理端口。
- (4) 在“result = _thread_context.session.request(”中加入 如下这句话
proxies=proxy
原始未修改前:
- (5) 最终结果如下,然后你再尝试运行test.py 就会有相应输出。
修改之后的: