当前位置: 首页 > news >正文

使用Pycharm在本地调用chatgpt的接口

目录

1.安装环境

2.建立多轮对话的完整代码(根据自己使用的不同代理需要修改端口(port))

3.修改代码在自己的Pycharm上访问chagpt的api并实现多轮对话,如果不修改是无法成功运行的。需要确定秘钥和端口以保证正常访问

(1)秘钥(your key):

(2)访问理由修改

将我的代码中的端口设置为7890

将我的clash中的端口设置为7890

参考文章

1.安装环境

使用 openai 1.6.1 版本

pip install openai==1.6.1

2.建立多轮对话的完整代码(根据自己使用的不同代理需要修改端口(port))

from openai import OpenAI
import os
import os
os.environ["http_proxy"] = "http://localhost:7890"
os.environ["https_proxy"] = "http://localhost:7890"client = OpenAI(api_key ="your key")def demo_dev(messages):response = client.chat.completions.create(model="gpt-3.5-turbo",messages=messages)gpt_content=response.choices[0].message.contentprint(gpt_content)return gpt_content
def chat(sys_content):message = [{'role': 'system', 'content': sys_content},]while True:user_content = input(">>> ")if user_content == "exit":breakmessage.append({'role': 'user', 'content': user_content})gpt_content = demo_dev(message)message.append({'role': 'system', 'content': "用户刚才对你说了"+user_content+","+"你回复了"+gpt_content})
if __name__ == "__main__":chat('请你可爱的进行回复')

3.修改代码在自己的Pycharm上访问chagpt的api并实现多轮对话,如果不修改是无法成功运行的。需要确定秘钥和端口以保证正常访问

(1)秘钥(your key):

        这个是在opnai的官方申请的秘钥,详见OpenAI。

(2)访问理由修改

        使用的路由端口情况,需要使得使用的小魔法的端口,以及上述代码中的端口,以及刚才下载的openai包中 _base_client.py 文件的端口一致,才可以正常访问,我以端口号为7890做个例子,当然你设为其他也是可以的。

  • 将我的代码中的端口设置为7890

os.environ["http_proxy"] = "http://localhost:7890"
os.environ["https_proxy"] = "http://localhost:7890"

将我本地安装的opnai包中的_base_client.py中的352行的self._proxies = proxies替换为

self._proxies = {'http': 'http://localhost:7890', 'https': 'http://localhost:7890'}

如下顺序:

  • 将我的小魔法中的端口设置为7890

参考文章

1. 最新关于openai.APIConnectionError: Connection error.的解决方法-CSDN博客

2.【使用python调用ChatGPT接口实现多轮连续对话】-CSDN博客

http://www.lryc.cn/news/294436.html

相关文章:

  • HarmonyOS远程真机调试方法
  • 基于SpringBoot的后端导出Excel文件
  • 2 月 5 日算法练习- 动态规划
  • SpringBoot整合EasyCaptcha图形验证码
  • 学习数据结构和算法的第3天
  • SpringBoot实战第三天
  • mysql学习打卡day22
  • Unity | Spine动画记录
  • 【Flink】FlinkSQL实现数据从MySQL到MySQL
  • python爬虫抓取新闻并且植入自己的mysql远程数据库内
  • netty实现简单的客户端、服务端互相发消息
  • 利用jmeter完成简单的压力测试
  • 【手写数据库toadb】toadb物理存储模型,数据库物理存储原理,物理文件组织关系以及行列混合模型存储结构
  • MySQL-----DDL基础操作
  • 【MySQL】在 Centos7 环境安装 MySQL -- 详细完整教程
  • 理解React中的setState()方法
  • 数据库管理-第144期 深入使用EMCC-01(20240204)
  • flask_django_python五金电商网络营销的可视化分析研究
  • Java并发(二十三)----同步模式之保护性暂停
  • ###C语言程序设计-----C语言学习(9)#函数基础
  • Dockerfile文件参数配置和使用
  • Java实现婚恋交友网站 JAVA+Vue+SpringBoot+MySQL
  • React16源码: React中详解在渲染阶段Suspend的源码实现
  • mac电脑风扇控制软件:Macs Fan Control Pro for mac 激活版
  • easyexcel解析跨多行的数据
  • 双目相机立体匹配基础
  • 【图论】网络流
  • 【Matplotlib】figure方法 你真的会了吗!?
  • [C++]继承(续)
  • 恒创科技:服务器内存不足影响大吗?