这是一个使用 Gemini API 与用户互动的 Telegram 机器人。它能理解文本和图片,甚至可以根据您的提示绘制简单的 SVG 图像。
- 对话式人工智能: 与机器人聊天,它会使用 Gemini Pro 模型进行回复。
- 图像理解: 向机器人发送一张图片,它将使用 Gemini Pro Vision 模型理解图片内容。然后您可以就图片提问。
- 绘画: 机器人可以根据您的文本提示使用
/draw命令生成简单的 SVG 图像。
-
克隆代码库:
git clone https://github.com/your-username/your-repo-name.git cd your-repo-name -
创建虚拟环境:
python3 -m venv venv source venv/bin/activate -
安装依赖:
pip install -r requirements.txt
-
创建
.env文件: 在项目根目录下创建一个.env文件,并添加您的 API 密钥。您可以使用.env.example文件作为模板。TELEGRAM_BOT_TOKEN=your_telegram_bot_token GEMINI_API_KEY=your_gemini_api_keyTELEGRAM_BOT_TOKEN: 您的 Telegram 机器人令牌。您可以从 BotFather 获取。GEMINI_API_KEY: 您的 Gemini API 密钥。您可以从 Google AI Studio 获取。
-
运行机器人:
python3 main.py
-
与机器人互动:
- 开始: 向机器人发送
/start。 - 文本: 向机器人发送任何文本消息。
- 图片: 向机器人发送一张图片。您也可以为图片添加标题。
- 绘画: 向机器人发送
/draw <提示>以生成 SVG 图像。例如:/draw 一个微笑的太阳。
- 开始: 向机器人发送
- 机器人使用
python-dotenv来保护您的 API 密钥。 - 它使用
asyncio来并发处理多个请求而不会阻塞。 - 它包括基本的错误处理和日志记录。
- 该项目遵循
python-telegram-bot和google-generativeai的官方最佳实践。