部署个人 chatgpt-telegram-bot
ChatGPT使用太不稳定了,为了避免不可用时耽误事,搭建个私人TG Bot备用。调研发现chatgpt-telegram-bot不错,因此选择服务来搭建
搭建步骤
TG下访问@BotFather创建Bot
TG下访问@useridinfobot,获取个人账号UserID,注意不是名字
选择HK或者境外服务器,拉取镜像
1
docker pull n3d1117/chatgpt-telegram-bot:latest
创建.env文件,配置环境变量,参考https://github.com/n3d1117/chatgpt-telegram-bot/blob/main/.env.example
主要是这四个配置
1
2
3
4
5
6
7
8
9
10
11# Your OpenAI API key
OPENAI_API_KEY=XXX
# Your Telegram bot token obtained using @BotFather
TELEGRAM_BOT_TOKEN=XXX
# Telegram user ID of admins, or - to assign no admin
ADMIN_USER_IDS=ADMIN_1_USER_ID,ADMIN_2_USER_ID
# Comma separated list of telegram user IDs, or * to allow all
ALLOWED_TELEGRAM_USER_IDS=USER_ID_1,USER_ID_2启动容器
1
docker run -d --name "chatgpt-telegram-bot" --env-file ./.env n3d1117/chatgpt-telegram-bot:latest
此时,TG下访问Bot就可以玩了
配置更新,服务自动重启
目前的版本是docker run container,环境变量对应的配置文件更新,容器是不会自更新的。因此需要解决配置更新-服务重新创建的问题。这里使用inotify-tools
解决。这里以CentOS7为例
sudo yum -y install inotify-tools
- 创建watch_env.sh文件
1 | !/bin/sh |
- 创建watch-env.service
1 | sudo vi /etc/systemd/system/watch-env.service |
服务配置如下
1 | [Unit] |
- 服务自启动/运行
1 | sudo systemctl daemon-reload |
GPT4
需要申请获取权限后,修改.env
中OPENAI_MODEL=gpt-4
申请地址:https://openai.com/waitlist/gpt-4-api
写在最后
到此,个人bot就有了,虽然也付费,但相对算稳定。期待API-GPT4早点拿到资格,这样更香了。