Gemini-Pro-Bot 项目介绍
概述
Gemini-Pro-Bot 是一个用 Python 编写的 Telegram 机器人,它利用 Google 的 gemini-pro
大型语言模型 (LLM) API 来生成创造性的文本格式。这个机器人的设计初衷是通过用户输入,生成如诗歌、代码、剧本、音乐片段等创意文本,为用户带来有趣和互动的体验。
项目亮点
- 实时生成: 机器人可以流式生成过程,让用户实时看到文本展开。
- 多模式支持: 除了文本,还能处理带有说明文字的图片输入,并基于此生成响应。
- 简单易用: 通过简单的命令来操作,用户可以方便快捷地亲手尝试机器人的功能。
/start
: 启动机器人并开始探索。/help
: 获取关于机器人的详细信息。
- 权限认证: 可通过
.env
文件中的AUTHORIZED_USERS
设置,限制机器人的访问权限,防止未经授权的使用。
系统需求
- Python 3.10 或以上版本
- Telegram Bot API 密钥
- Google
gemini-pro
API 密钥 - dotenv (用于环境变量管理)
Docker 使用指南
从 GitHub 容器注册表运行
运行以下命令,从 GitHub 容器注册表执行预构建镜像:
docker run --env-file .env ghcr.io/rabilrbl/gemini-pro-bot:latest
更新镜像:
docker pull ghcr.io/rabilrbl/gemini-pro-bot:latest
自行构建镜像
构建镜像:
docker build -t gemini-pro-bot .
构建完成后,你可以运行:
docker run --env-file .env gemini-pro-bot
安装步骤
- 克隆项目库。
- 安装必要的依赖:
- 使用 pipenv:
pipenv install
- 或使用 pip:
pip install -r requirements.txt
- 使用 pipenv:
- 创建
.env
文件并添加以下环境变量:BOT_TOKEN
: 你的 Telegram Bot API 密钥,通过 BotFather 获取。GOOGLE_API_KEY
: 你的 Google gemini-pro API 密钥,从 Google AI Studio 获取。AUTHORIZED_USERS
: 授权用户的 Telegram 用户名或用户 ID 列表,用逗号分隔(可选)。
- 运行机器人:
- 不使用 pipenv:
python main.py
- 使用 pipenv:
pipenv run python main.py
- 不使用 pipenv:
使用方法
- 运行脚本以启动机器人。
python main.py
- 在 Telegram 中打开聊天窗口,与机器人进行对话。
- 发送任意文本消息,机器人会根据输入生成相应的创意文本。
- 如果希望限制机器人的公共访问,可以在
.env
文件中设置AUTHORIZED_USERS
,仅允许这些用户访问机器人。
机器人命令
命令 | 描述 |
---|---|
/start | 启动机器人并开始使用。 |
/help | 获取机器人的功能信息。 |
/new | 开始一个新的聊天会话。 |
星标历史
项目的 star 历史记录展示了社区的支持与成长。用户可以通过进一步了解项目的发展历程,加入贡献或体验的行列。
参与贡献
欢迎对该项目的贡献。用户可以自由地 fork 库,并提交 pull requests。
免责声明
该机器人仍在开发中,有时可能会提供无意义或不适当的响应。请理性使用并享受其中的乐趣。
许可证
本项目为自由的开源项目,采用 GNU Affero 通用公共许可证 v3.0 授权。详细信息请参阅 LICENSE 文件。