ChatGPT:chatGPT本地部署、运行和接口调用
创始人
2024-04-21 21:14:00
0次

文章目录

  • 从 github 下载
  • 环境配置
    • conda 创建虚拟环境
    • 官方步骤配置环境
      • 安装 revChatGPT
      • 更改 config.json.example -> config.json
      • 将 config.json 移动到 `revChatGPT` 路径下
      • cookie 信息写入 config.json
        • 方式1:使用账号密码作为登录的方法
        • 方式2: 使用 session_token 作为登录方法
        • 方式3:使用 `Access Token` 作为登录方式
    • 运行 __main__.py
    • 通过API 调用

从 github 下载

https://github.com/acheong08/ChatGPT

环境配置

conda 创建虚拟环境

  • 我选择用 anaconda 先配一个专属的环境
conda create -n chatgpt python=3.6 
# 激活虚拟环境 conda activate 如果不行就用 source activate 
conda activate chatgpt
# source activate chatgpt

官方步骤配置环境


  • 按照 官方给出的步骤 配置环境

安装 revChatGPT

  • 这个过程强烈 建议使用手机开热点下载 不然可能非常慢
# 如果你在 conda 的虚拟环境中执行这步,pip3 可以用 pip 代替
pip3 install revChatGPT --upgrade
# pip install revChatGPT --upgrade

在这里插入图片描述

更改 config.json.example -> config.json

在这里插入图片描述
在这里插入图片描述

将 config.json 移动到 revChatGPT 路径下

在这里插入图片描述

cookie 信息写入 config.json

  • 个人推荐采用 第二种方式,因为第一种我运行了多次都是访问错误。因为 chatgpt 不对中国大陆提供服务,用邮箱和密码登录的方式很容易被拒绝,但是用 session token 的话就没问题了

方式1:使用账号密码作为登录的方法

  • 没有 chatGPT 账号的话,先注册一个注册的流程可以参考 一元钱注册 chatGPT账号
  • 将自己的账号和密码分别写入 config.json 的字段
    在这里插入图片描述

方式2: 使用 session_token 作为登录方法

  • 打开浏览器,没有 chatGPT 账号的话,先注册一个注册的流程可以参考 一元钱注册 chatGPT账号

  • 如果已经注册的话,先登录你的账号:
    在这里插入图片描述

  • 右键,打开检查:
    在这里插入图片描述

  • Application -> Cookies
    在这里插入图片描述

  • 将 __Secure-next-auth.session-token 中的内容复制到 config.json 中的 session_token
    在这里插入图片描述

  • 将 config.json 文件中的字段给改成如下形式(Authorization)字段不需要填写:
    在这里插入图片描述

方式3:使用 Access Token 作为登录方式

  • 这种方式只有前两种都失败才使用
  • 需要手动刷新 session
  • 详细可以 参考:
    在这里插入图片描述

运行 main.py

  • 如果直接运行出现 package 错误的话:
  • 改成下面这行,把前面的 revChatGPT 去掉即可在这里插入图片描述
  • 运行成功之后的样子在这里插入图片描述
  • 在 you 这里输入内容即可,输入内容要两次 enter 才会给返回值
    在这里插入图片描述
    在这里插入图片描述

通过API 调用

  • 官方给出的 开发文档

相关内容

热门资讯

前端-session、jwt 目录:   (1)session (2&#x...
linux入门---制作进度条 了解缓冲区 我们首先来看看下面的操作: 我们首先创建了一个文件并在这个文件里面添加了...
关于测试,我发现了哪些新大陆 关于测试 平常也只是听说过一些关于测试的术语,但并没有使用过测试工具。偶然看到编程老师...
前缀和与对数器与二分法 1. 前缀和 假设有一个数组,我们想大量频繁的去访问L到R这个区间的和,...
nodejs:本地安装nvm实... 一、背景-使用不同版本node的原因 vue3+ts、nuxt3版本,node...
JAVA集合知识整理 Java集合知识整理 HashMap相关 HashMap的底层数据结构:jdk1.8之...
无刷直流电机介绍及单片机控制实... 无刷直流电机介绍及单片机控制实例前言基本概念优势与劣势使用寿命基本结构使用单片机控制实例电子调速器&...
fwdiary(2) dp2 1.传纸条  AcWing 275. 传纸条 - AcWing 走两条路,走一条最大的...
常用的DOS命令 常用的DOS命令 DOS(Disk Operating System,磁...
<C++> 类和对象(下) 1.const成员函数将const修饰的“成员函数”称之为const成员函数,cons...