字
字节笔记本
2026年2月18日
ChatGPT Telegram Bot:在 Telegram 中直接使用 GPT-4
API中转
¥120
本文介绍 ChatGPT Telegram Bot,一个基于 Python 的开源 Telegram 机器人项目,让你无需网页即可直接使用 ChatGPT 的强大功能,支持 GPT-4、GPT-4 Vision 和 DALL-E 图像生成。
项目简介
ChatGPT Telegram Bot 是一个开源的 Telegram 聊天机器人项目,由 father-bot 团队开发和维护。该项目将 ChatGPT 的强大能力集成到 Telegram 中,解决了官方网页版卡顿、有每日限制且只能通过浏览器访问的问题。截至目前,该项目在 GitHub 上已获得 5.5k+ stars 和 2k+ forks,是一个非常受欢迎的开源项目。
你可以直接使用部署好的机器人 @jadvebot,或者自己部署一个私有版本。
核心特性
- 低延迟响应:通常只需 3-5 秒即可获得回复
- 无请求限制:不像官方版本有每日使用限制
- 消息流式传输:无需等待完整消息生成,实时看到回复内容
- 多模型支持:GPT-4、GPT-4 Turbo、GPT-4 Vision
- 群聊支持:可在 Telegram 群组中使用,支持群聊模式
- DALL-E 2 图像生成:切换到"👩🎨 Artist"模式即可生成图像
- 语音消息识别:基于 OpenAI Whisper API,支持语音转文字
- 代码高亮显示:自动格式化和高亮代码块
- 15+ 特殊聊天模式:包括助手、代码助手、心理学家、埃隆·马斯克等角色
- 余额追踪:监控 OpenAI API 消费金额
技术栈
- Python - 主要编程语言
- OpenAI API - ChatGPT 和 DALL-E 接口
- python-telegram-bot - Telegram Bot 框架
- Docker - 容器化部署
- YAML - 配置文件管理
安装指南
前置要求
- Docker 和 Docker Compose
- OpenAI API 密钥
- Telegram Bot Token
安装步骤
-
获取 OpenAI API 密钥 访问 OpenAI API 注册并获取 API 密钥。
-
创建 Telegram 机器人 在 Telegram 中联系 @BotFather,创建新机器人并获取 Token。
-
克隆项目
bashgit clone https://github.com/father-bot/chatgpt_telegram_bot.git cd chatgpt_telegram_bot -
配置环境
bashmv config/config.example.yml config/config.yml mv config/config.example.env config/config.env编辑
config/config.env文件,填入你的 API 密钥和 Bot Token:bashOPENAI_API_KEY=sk-your-openai-api-key TELEGRAM_BOT_TOKEN=your-telegram-bot-token -
启动服务
bashdocker-compose --env-file config/config.env up --build
快速开始
基础使用
- 在 Telegram 中搜索你的机器人用户名
- 发送
/start开始对话 - 直接输入问题即可获得 ChatGPT 回复
常用命令
| 命令 | 功能 |
|---|---|
/retry | 重新生成最后一条回复 |
/new | 开始新对话(清除上下文) |
/mode | 选择聊天模式(助手、代码助手、艺术家等) |
/balance | 显示 OpenAI API 余额和消费 |
/settings | 显示和修改设置 |
/help | 显示帮助信息 |
聊天模式
机器人内置 15+ 种特殊聊天模式,可通过 /mode 命令切换:
- 👩🏼🎓 助手 - 通用助手模式
- 👩🏼💻 代码助手 - 专注于编程问题
- 🧠 心理学家 - 提供心理咨询和建议
- 🚀 埃隆·马斯克 - 以埃隆·马斯克的风格回答问题
- 👩🎨 Artist - 使用 DALL-E 生成图像
你也可以通过编辑 config/chat_modes.yml 文件自定义聊天模式。
高级配置
限制用户访问
在 config/config.yml 中配置允许的用户列表:
yaml
allowed_telegram_usernames:
- "your_username"
- "friend_username"自定义聊天模式
编辑 config/chat_modes.yml 添加新的角色:
yaml
my_custom_mode:
name: "🎮 游戏开发者"
welcome_message: "你好!我是游戏开发专家,有什么可以帮你的?"
prompt_start: "你是一个经验丰富的游戏开发者,擅长 Unity、Unreal Engine 和游戏设计..."群聊配置
在群组中使用机器人:
- 将机器人添加到群组
- 发送
/help_group_chat查看群聊使用说明 - 使用
@botname 你的问题格式在群中提问
使用示例
示例 1:基础对话
text
用户:解释一下 Python 中的装饰器
机器人:Python 装饰器是一种设计模式,允许你在不修改原函数代码的情况下...示例 2:代码生成
text
用户:写一个快速排序的 Python 实现
机器人:
```python
def quicksort(arr):
if len(arr) <= 1:
return arr
pivot = arr[len(arr) // 2]
left = [x for x in arr if x < pivot]
middle = [x for x in arr if x == pivot]
right = [x for x in arr if x > pivot]
return quicksort(left) + middle + quicksort(right)text
### 示例 3:图像生成
用户:/mode(选择 👩🎨 Artist) 用户:一只穿着宇航服的猫在月球上 机器人:[生成并发送图像]
text
### 示例 4:语音消息
直接发送语音消息,机器人会自动使用 Whisper API 转录并回复。
## 注意事项
- **API 费用**:使用 OpenAI API 会产生费用,请留意余额
- **隐私安全**:如果使用公共机器人,请勿发送敏感信息
- **速率限制**:虽然比官方网页版宽松,但仍受 OpenAI API 速率限制
- **Docker 资源**:确保服务器有足够的内存运行容器
## 项目链接
- **GitHub 仓库**:[https://github.com/father-bot/chatgpt_telegram_bot](https://github.com/father-bot/chatgpt_telegram_bot)
- **在线演示**:[https://t.me/jadvebot](https://t.me/jadvebot)
- **官方网站**:[https://jadve.com](https://jadve.com)
## 总结
ChatGPT Telegram Bot 是一个非常实用的开源项目,它将 ChatGPT 的强大能力带到 Telegram 平台,解决了官方版本的诸多限制。无论是个人使用还是团队协作,这个项目都能提供便捷的 AI 对话体验。通过 Docker 部署简单快捷,丰富的聊天模式和自定义功能也使其具有很高的可玩性。分享: