免费快速部署自己的 ChatGPT Telegram 机器人

2023-03-03 15:07:41 +08:00
 tbxark

上班摸鱼随手写了个小脚本,最简单快捷部署属于自己的 ChatGPT Telegram 机器人的方法,单文件,直接复制粘贴一把梭,无需任何依赖,无需配置本地开发环境,不用域名,免服务器。

https://github.com/TBXark/ChatGPT-Telegram-Workers

配置

偷懒的话可以直接复制代码然后修改相应的 KEY ,想要动态变化可以设置成环境变量

// 你也可以注释这两行代码,然后在 Workers 配置界面填写环境变量
const API_KEY = "PLEASE_REPLACE_WITH_YOUR_OPENAI_API_KEY";
const TELEGRAM_TOKEN = "PLEASE_REPLACE_WITH_YOUR_TELEGRAM_BOT_TOKEN";

// 聊天白名单,你也可以在环境变量中定义数组然后在这里解析 JSON
const CHAT_WHITE_LIST = [];

使用

  1. 新建 Telegram 机器人, 获得 Token
  2. 注册 OpenAI 账号并创建 API Key
  3. 部署 Workers https://developers.cloudflare.com/workers/
  4. 运行 https://your_workers_name.your_workers_subdomain.workers.dev/telegram/your_telegram_bot_token/bind 绑定 telegram
  5. 开始新对话 使用/new指令开始,之后每次都会将聊天上下文发送到 ChatGPT
14594 次点击
所在节点    OpenAI
116 条回复
stcheng
2023-03-04 07:40:41 +08:00
感恩 deploy 很顺利丝滑
yangfan1999
2023-03-04 08:28:14 +08:00
部署文档很清晰,已配置上。
ShirolinEX
2023-03-04 09:34:19 +08:00
关注了,等有空摸鱼搞一波
SenLief
2023-03-04 09:45:17 +08:00
为什么我初始化的时候是拒绝连接啊
ysjiang4869
2023-03-04 09:48:32 +08:00
我也写了一个基于 tg bot 的,不过基于 aws lambda 做的
FaiChou
2023-03-04 10:57:58 +08:00
我记得 telegram 机器人返回是有字符限制的? 4000 个字符来着? 如果有超过 4000 字符, 记得拆分返回.
bjzhush
2023-03-04 11:08:03 +08:00
捣鼓了一个半小时才部署成功,没怎么搞过 cloudflare 的 worker ,感谢 OP 的分享!
bjzhush
2023-03-04 11:14:19 +08:00
请问 OP ,如何查看已有的对话列表呢?我在 chatGPT 网页版没看到,问 GPT 回答说不知道
tbxark
2023-03-04 11:21:52 +08:00
@FaiChou 是有,还没研究怎么处理,所以现在聊太久了就得开启新会话
tbxark
2023-03-04 11:23:14 +08:00
@bjzhush 在 cloudflare 直接看 KV 数据库的内容?
caqiko
2023-03-04 11:24:58 +08:00
谢谢 OP 分享,整个部署过程非常流畅,20 分钟搞定一个 Bot
👍👍👍
bjzhush
2023-03-04 11:28:16 +08:00
@tbxark 去看了下 KV 数据库的内容,里面记录了我所有对话的内容,JSON 格式,可读性比较差,看不了对话列表,不过初级使用是够了
tbxark
2023-03-04 11:32:29 +08:00
@bjzhush 这么记录比较稳,能保证解析成功,还能一个 key 保存
cdd2zju
2023-03-04 11:57:17 +08:00
15 分钟部署成功,感谢 OP ,可以随时随地问 chatgpt 问题,太爽了。
meishiwanwan520
2023-03-04 12:09:55 +08:00
搭建完毕,感谢 OP 的奉献
根据自己需求搭建了多个 bot 配合使用
现在有个使用痛点,不知有没有解决思路
1 、有没有办法可以针对某一个对话,快速全选复制或者转发、导出(目前是 bot 中多选,然后复制)
2 、有没有可能知道建立了多少次的对话,或者编号。
3 、在 2 的基础上,有没有可能像网页版,列出项目,对以前的对话进行追问
纯属自己的需求,希望 OP 能给条思路,感谢
JohnChang
2023-03-04 12:31:15 +08:00
谢谢,小白 step by step ,遇到的阻碍如下

1.6 在 Telegram 中找到 BotFather, 发送 /setcommands, 找到自己的机器人, 发送 new - 开始新对话
不论是「 new 」还是「 new - 」还是「/new 」,均没有反应
实际知行:未执行

3.2 Create a Worker
没有「 Create a Worker 」,应该是「 Create a Service 」?
实际执行:点「 Create a Service 」创建了服务

3.3 将代码复制到编辑器中,保存
此处没有编辑器
实际执行:创建服务后,点击「 Quick edit 」用「 index.js 」的代码替换了原默认代码。

4.5 CHAT_WHITE_LIST:设置成你想要使用机器人的聊天 ID ,例如 123456789,987654321 ,可以在 Telegram 中使用 /new 指令获取
在哪里使用? Botfather 和自己的机器人均无反应
实际执行:未执行

5.5 在 KV Namespace Bindings 中点击 Edit variables
没有「 Edit variables 」,有「 add Bindings 」
实际执行:点「 add Bindings 」执行了 Bindings


最终执行后,打开页面显示结果为
[{"ok":true,"result":true,"description":"Webhook was set"}]
xenme
2023-03-04 12:44:53 +08:00
啥时候出个 docker 版本的,只想开起来用,懒人党
JohnChang
2023-03-04 12:45:18 +08:00
哦哦,发现实际已经成功运行了,还以为得点个按扭进行个绑定操作。。
huaji
2023-03-04 14:41:05 +08:00
谢谢 O(∩_∩)O 谢谢,成功,已经在问她今晚吃什么了
imldy
2023-03-04 14:44:26 +08:00
感谢楼主,但是 ChatGPT 完善了的使用说明有坑

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/920842

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX