赞
踩
conda create -n chatG python==3.8
报错:CondaHTTPError: HTTP 403 FORBIDDEN for url <http://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/conda-forge/win-64/python-3.8.0-hc9e8b01_5.tar.bz2>
可以看出应该是清华源的问题,换回默认源,解决:
conda config --remove-key channels
conda activate chatG
pip install openai
获取方法:
- import openai, os
- start_sequence = "\nA:"
- restart_sequence = "Q: "
- # Replace `<your_api_key>` with your actual OpenAI API key
- openai.api_key = "<your_api_key>"
- prompt = " "
- while len(prompt)!=0:
- prompt = input(restart_sequence)
- response = openai.Completion.create(engine="text-davinci-003",prompt=prompt,temperature=1,max_tokens=2000,frequency_penalty=0,presence_penalty=0)
- print(start_sequence,response["choices"][0]["text"].strip())
报错:
openai.error.APIConnectionError: Error communicating with OpenAI: HTTPSConnectionPool(host='api.openai.com', port=443): Max retries exceeded with url:
解决方法:
文件路径:./envs/虚拟环境名称/Lib/site-packages/openai/api_requestor.py(openai库路径)
打开该.py并找到if not hasattr(_thread_context, "session"):方法,加入代理:
- proxy = {
- 'http': 'http://localhost:7890',
- 'https': 'http://localhost:7890'
- }
下滑,在result = _thread_context.session.request(中加入代理:
proxies=proxy,
- import os
-
- os.environ["http_proxy"] = "http://localhost:7890"
- os.environ["https_proxy"] = "http://localhost:7890"
解决
但是输第二个问题会报错
UnboundLocalError: local variable 'proxy' referenced before assignment
未解决,直接换了个代码,如下
- import openai
- import json
-
- # 设置API密钥
- openai.api_key = "<your_api_key>"
- def chat(prompt):
- response = openai.ChatCompletion.create(
- model="gpt-3.5-turbo",
- messages=[
- # {"role": "user", "content":prompt}
- {"role":"system","content":"对网络谣言进行判断。"},
- {"role":"user","content":"判断题,请判断是否是谣言,并回答‘是’或者‘否’,并解释原因。"},
- {"role":"user","content":"UPDATE: Police storm #Sydney cafe amid gunshots and explosions"}
- ]
- )
- answer = response.choices[0].message.content
- return answer
-
- if __name__=='__main__':
- prompt='UPDATE: Police storm #Sydney cafe amid gunshots and explosions'
- result = chat(prompt)
- print(result)

这个跑成功
刚开始将中文prompt换成英文后,时不时报
urllib3.exceptions.ProtocolError: ('Connection aborted.', OSError(0, 'Error'))
openai.error.APIConnectionError: Error communicating with OpenAI: ('Connection aborted.', OSError(0, 'Error'))
之类的错,网上有人说是urllib3版本的问题,但是我不理解这版本跟中英文有什么关系,重新换个个梯子,遂解决,所以我觉得归根结底还是网络的问题。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。