4

ChatGPT-Telegram-Workers/DEPLOY.md at master · TBXark/ChatGPT-Telegram-Workers ·...

 1 year ago
source link: https://github.com/TBXark/ChatGPT-Telegram-Workers/blob/master/DEPLOY.md
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.
neoserver,ios ssh client

一. 新建Telegram机器人, 获得Token

image
  1. 打开Telegram并向 BotFather 发送 /start 命令
  2. 发送 /newbot 命令,并给你的机器人起一个名字
  3. 给你的机器人取一个唯一的用户名以_bot结尾
  4. BotFather 会生成一个 Token,复制下来保存好,这个 Token 是和你的机器人绑定的密钥,不要泄露给他人!
  5. 稍后再Cloudflare Workers 的设置里 将这个 Token 填入 TELEGRAM_TOKEN 变量中

二. 注册OpenAI账号并创建API Key

image
  1. 打开 OpenAI 注册账号
  2. 点击右上角的头像,进入个人设置页面
  3. 点击 API Keys,创建一个新的 API Key
  4. 稍后再Cloudflare Workers 的设置里 将这个 Token 填入 API_KEY 变量中

三. 部署Workers

image
  1. 打开 Cloudflare Workers 注册账号
  2. 点击右上角的 Create a Service
  3. 进入新建的workers, 选择Quick Edit, 将./dist/index.js代码复制到编辑器中,保存

四. 配置环境变量

image
  1. 打开 Cloudflare Workers 点击你的Workers,点击右上角的 Setting -> Variables
  2. API_KEY:设置成 OpenAI API Key
  3. TELEGRAM_AVAILABLE_TOKENS:设置成 Telegram Bot Token
  4. WORKERS_DOMAIN:设置成你的Workers域名,例如workers_name.username.workers.dev, 可以在workers详情页的Preview找到
  5. CHAT_WHITE_LIST:设置成允许访问的用户的ID,例如123456789,987654321,不知道自己ID可以在和你创建的的机器人聊天中使用/new指令获取
  6. I_AM_A_GENEROUS_PERSON: 如果还是没有弄懂怎么获取ID,可以设置这个值为true,这样就关闭白名单功能,允许所有人访问。

五. 绑定KV数据

  1. 首页-Workers-KV, 点击右上角的 Create a Namespace, 名字随便取, 但是绑定的时候必须设定为DATABASE
    image
  2. 打开 Cloudflare Workers 点击你的Workers
  3. 点击右上角的 Setting -> Variables
    image
  4. KV Namespace Bindings 中点击 Edit variables
  5. 点击 Add variable
  6. 设置名字为DATABASE 并选择刚刚创建的KV数据

六. 初始化

  1. 运行 https://workers_name.username.workers.dev/init 自动绑定telegram的webhook和设定所有指令

七. 开始聊天

image
  1. 开始新对话,使用/new指令开始,之后每次都会将聊天上下文发送到ChatGPT
  2. 使用/setenv KEY=VALUE指令修改用户配置,例如SETENV SYSTEM_INIT_MESSAGE=现在开始是喵娘,每句话已喵结尾
  3. 因为每次对话都会把所有历史记录带上,容易达到4096的token限制,所以没事的时候/new一下,清理一下历史记录
  1. 手动部署的一, 二, 三 步骤
  2. 修改配置文件 wrangler-example.tomlwrangler.toml
  3. npm install
  4. npm run login
  5. npm run deploy

About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK