Skip to content

AI chatbot that supports both Telegram, Discord, compatible with various LLMs including OpenAI, Gemini, DeepSeek, and OpenRoute. It offers intelligent conversation, image generation, video creation, and more. Works seamlessly in both private chats and group settings—easy to integrate and quick to get started.

License

Notifications You must be signed in to change notification settings

yincongcyincong/telegram-deepseek-bot

Repository files navigation

group

telegram-group: https://t.me/+WtaMcDpaMOlhZTE1 , or you can have a try robot GWSbot. every body have 3000 token to try this bot, please give me a star!

DeepSeek Telegram Bot

This repository provides a Telegram bot built with Golang that integrates with LLM API to provide AI-powered responses. The bot supports openai deepseek gemini openrouter LLMs, making interactions feel more natural and dynamic. 中文文档

🚀 Features

  • 🤖 AI Responses: Uses DeepSeek API for chatbot replies.
  • Streaming Output: Sends responses in real-time to improve user experience.
  • 🏗 Easy Deployment: Run locally or deploy to a cloud server.
  • 👀 Identify Image: use image to communicate with deepseek, see doc.
  • 🎺 Support Voice: use voice to communicate with deepseek, see doc.
  • 🐂 Function Call: transform mcp protocol to function call, see doc.
  • 🌊 RAG: Support Rag to fill context, see doc.
  • ⛰️ OpenRouter: Support OpenRouter more than 400 llms, see doc.
  • 🌞 AdminPlatform: Use platform to manage telegram-deepseek-bot, see doc.
  • 🌈 Discord: Use Discord Robot, see doc.

🤖 Text Example

aa92b3c9580da6926a48fc1fc5c37c03 aa92b3c9580da6926a48fc1fc5c37c03

🎺 Multimodal Example

aa92b3c9580da6926a48fc1fc5c37c03 aa92b3c9580da6926a48fc1fc5c37c03

📌 Requirements

📥 Installation

  1. Clone the repository

    git clone https://github.com/yincongcyincong/telegram-deepseek-bot.git
    cd deepseek-telegram-bot
  2. Install dependencies

     go mod tidy
  3. Set up environment variables

     export TELEGRAM_BOT_TOKEN="your_telegram_bot_token"
     export DEEPSEEK_TOKEN="your_deepseek_api_key"

🚀 Usage

Run the bot locally:

 go run main.go -telegram_bot_token=telegram-bot-token -deepseek_token=deepseek-auth-token

Use docker

  docker pull jackyin0822/telegram-deepseek-bot:latest
  docker run -d -v /home/user/data:/app/data -e TELEGRAM_BOT_TOKEN="telegram-bot-token" -e DEEPSEEK_TOKEN="deepseek-auth-token" --name my-telegram-bot  jackyin0822/telegram-deepseek-bot:latest

⚙️ Configuration

You can configure the bot via environment variables:

Variable Name Description Default Value
TELEGRAM_BOT_TOKEN (required) Your Telegram bot token -
DEEPSEEK_TOKEN (required) DeepSeek Api Key -
OPENAI_TOKEN Open AI Token -
GEMINI_TOKEN Gemini Token -
OPEN_ROUTER_TOKEN OpenRouter Token doc -
VOL_TOKEN Vol Token doc -
CUSTOM_URL custom deepseek url https://api.deepseek.com/
TYPE deepseek/openai/gemini/openrouter/vol deepseek
VOLC_AK volcengine photo model ak doc -
VOLC_SK volcengine photo model sk doc -
Ernie_AK ernie ak doc -
Ernie_SK ernie sk doc -
DB_TYPE sqlite3 / mysql sqlite3
DB_CONF ./data/telegram_bot.db / root:admin@tcp(127.0.0.1:3306)/dbname?charset=utf8mb4&parseTime=True&loc=Local ./data/telegram_bot.db
ALLOWED_TELEGRAM_USER_IDS telegram user id, only these users can use bot, using "," splite. empty means all use can use it. 0 means all user is banned -
ALLOWED_TELEGRAM_GROUP_IDS telegram chat id, only these chat can use bot, using "," splite. empty means all group can use it. 0 means all group is banned -
DEEPSEEK_PROXY deepseek proxy -
TELEGRAM_PROXY telegram proxy -
LANG en / zh en
TOKEN_PER_USER The tokens that each user can use 10000
ADMIN_USER_IDS admin user, can use some admin commands -
NEED_AT_BOT is it necessary to trigger an at robot in the group false
MAX_USER_CHAT max existing chat per user 2
VIDEO_TOKEN volcengine Api keydoc -
HTTP_PORT http server port 36060
USE_TOOLS if normal conversation use function call tools or not false
CA_FILE http server ca file -
CRT_FILE http server crt file -
KEY_FILE http server key file -
MEDIA_TYPE openai/gemini/vol create photo or video vol

CUSTOM_URL

If you are using a self-deployed DeepSeek, you can set CUSTOM_URL to route requests to your self-deployed DeepSeek.

DEEPSEEK_TYPE

deepseek: directly use deepseek service. but it's not very stable others: see doc

DB_TYPE

support sqlite3 or mysql

DB_CONF

if DB_TYPE is sqlite3, give a file path, such as ./data/telegram_bot.db if DB_TYPE is mysql, give a mysql link, such as root:admin@tcp(127.0.0.1:3306)/dbname?charset=utf8mb4&parseTime=True&loc=Local, database must be created.

LANG

choose a language for bot, English (en), Chinese (zh), Russian (ru).

other config

deepseek_conf photo_conf video_conf audio_conf

Command

/clear

clear all of your communication record with deepseek. this record use for helping deepseek to understand the context.

/retry

retry last question.

/mode

chose deepseek mode, include chat, coder, reasoner chat and coder means DeepSeek-V3, reasoner means DeepSeek-R1.
aa92b3c9580da6926a48fc1fc5c37c03

/balance

aa92b3c9580da6926a48fc1fc5c37c03

/state

calculate one user token usage.
aa92b3c9580da6926a48fc1fc5c37c03

/photo

using volcengine photo model create photo, deepseek don't support to create photo now. VOLC_AK and VOLC_SK is necessary.doc
aa92b3c9580da6926a48fc1fc5c37c03 aa92b3c9580da6926a48fc1fc5c37c03

/video

create video. DEEPSEEK_TOKEN must be volcengine Api key. deepseek don't support to create video now. doc aa92b3c9580da6926a48fc1fc5c37c03

/chat

allows the bot to chat through /chat command in groups, without the bot being set as admin of the group.
aa92b3c9580da6926a48fc1fc5c37c03

/help

aa92b3c9580da6926a48fc1fc5c37c03

/task

multi agent communicate with each other!

Admin Command

/addtoken

add token for user.
aa92b3c9580da6926a48fc1fc5c37c03

Deployment

Deploy with Docker

  1. Build the Docker image

     docker build -t deepseek-telegram-bot .
  2. Run the container

      docker run -d -v /home/user/xxx/data:/app/data -e TELEGRAM_BOT_TOKEN="telegram-bot-token" -e DEEPSEEK_TOKEN="deepseek-auth-token" --name my-telegram-bot telegram-deepseek-bot

Contributing

Feel free to submit issues and pull requests to improve this bot. 🚀

License

MIT License © 2025 jack yin

About

AI chatbot that supports both Telegram, Discord, compatible with various LLMs including OpenAI, Gemini, DeepSeek, and OpenRoute. It offers intelligent conversation, image generation, video creation, and more. Works seamlessly in both private chats and group settings—easy to integrate and quick to get started.

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published