Skip to content

【开源自荐】MuseBot - 一款可本地部署的大模型智能机器人平台,可无缝接入 Telegram、Discord、Slack、Lark(飞书)、钉钉、企业微信、QQ、微信、onebot #660

@yincongcyincong

Description

@yincongcyincong

MuseBot

本仓库提供了一个是基于 Golang 构建的 智能机器人,集成了 LLM API,实现 AI 驱动的自然对话与智能回复。
它支持 OpenAIDeepSeekGeminiDoubaoQwen 等多种大模型,
并可无缝接入 TelegramDiscordSlackLark(飞书)钉钉企业微信QQ微信onebot
等聊天平台,为用户带来更加流畅、多平台联通的 AI 对话体验。
English Doc


🌞 视频

最简单教程:https://www.bilibili.com/video/BV1f9nCzoERb/
deepseek: https://www.bilibili.com/video/BV1CB8kzHEJi/
gemini: https://www.bilibili.com/video/BV1D4htz4Ekv/
chatgpt: https://www.bilibili.com/video/BV1RutxzJEGY/
豆包:https://www.bilibili.com/video/BV1QDbEzwE43/
怎么使用mcp: https://www.bilibili.com/video/BV1JbtJzVEJd/

🚀 功能特性

  • 🤖 AI 回复:使用 大模型 API 提供聊天机器人回复。
  • 流式输出:实时发送回复,提升用户体验。
  • 🏗 轻松部署:可本地运行或部署到云服务器。
  • 👀 图像识别
    :使用图片与大模型进行交流,详见文档
  • 🎺 支持语音
    :使用语音与大模型进行交流,详见文档
  • 🐂 函数调用:将
    MCP协议转换为函数调用,详见文档
  • 🌊 RAG(检索增强生成):支持
    RAG以填充上下文,详见文档
  • 🌞 管理平台(AdminPlatform)
    :使用管理平台来管理MuseBot,详见文档
  • 🌛 注册中心
    :支持服务注册,机器人实例可自动注册,详见 文档
  • 🌈 监控数据:支持监控数据,详见文档

支持平台

平台 支持情况 简要说明 文档 / 链接
🟦 Telegram 支持 Telegram 机器人(基于 go-telegram-bot-api,可处理命令、内联按钮、ForceReply 等) 文档
🌈 Discord 支持 Discord 机器人 文档
🌛 Web API 提供 HTTP/Web API 与 LLM 交互(适合构建自己的前端或后端集成) 文档
🔷 Slack 支持 Slack(Socket Mode / Events API / Block Kit 交互) 文档
🟣 Lark(飞书) 支持 Lark 长连接与消息处理(基于 larksuite SDK,支持图片/音频下载与消息更新) 文档
🆙 钉钉 支持钉钉长链接服务 文档
⚡️ Work WeChat 支持企业微信触发大模型 文档
⚡️ QQ 支持QQ机器人触发大模型 文档
⚡️ WeChat 支持微信触发大模型 文档
🚗 Personal QQ 支持个人QQ触发大模型 文档

支持的大型语言模型

模型 提供方 文本生成 图片生成 视频生成 识别照片 返回语音 链接
🌟 Gemini 谷歌 文档
💬 ChatGPT OpenAI 文档
🐦 Doubao 字节跳动 文档
🐦 Qwen 阿里云 文档
⚙️ 302.AI 302.AI 文档
🧠 DeepSeek DeepSeek 文档
🌐 OpenRouter OpenRouter 文档
🌐 ChatAnywhere ChatAnywhere 文档

🤖 文本示例

aa92b3c9580da6926a48fc1fc5c37c03 aa92b3c9580da6926a48fc1fc5c37c03

🎺 多模态示例

aa92b3c9580da6926a48fc1fc5c37c03 aa92b3c9580da6926a48fc1fc5c37c03

📥 安装

  1. 克隆仓库

    git clone git@github.com:yincongcyincong/MuseBot.git
    cd MuseBot
  2. 安装依赖

    go mod tidy
  3. 设置环境变量

    export TELEGRAM_BOT_TOKEN="你的Telegram Bot Token"
    export DEEPSEEK_TOKEN="你的DeepSeek API密钥"

🚀 使用方法

在本地运行:

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

使用 Docker 运行:

docker pull jackyin0822/musebot:latest
docker run -d -v /home/user/data:/app/data -e TELEGRAM_BOT_TOKEN="你的Telegram Bot Token" -e DEEPSEEK_TOKEN="你的DeepSeek API密钥" --name my-telegram-bot jackyin0822/MuseBot:latest
阿里云:
docker pull crpi-i1dsvpjijxpgjgbv.cn-hangzhou.personal.cr.aliyuncs.com/jackyin0822/musebot:latest

命令介绍: (文档)[https://github.com/yincongcyincong/MuseBot/blob/main/static/doc/param_conf_ZH.md]


⚙️ 配置项

如果用参数形式,使用小写加下划线形式,比如./MuseBot -telegram_bot_token=xxx

环境变量名字 描述 默认值
TELEGRAM_BOT_TOKEN (required) Telegram 机器人 Token -
DISCORD_BOT_TOKEN Discord 机器人 Token -
SLACK_BOT_TOKEN Slack 机器人 Bot Token -
SLACK_APP_TOKEN Slack App-level Token -
LARK_APP_ID 飞书 App ID -
LARK_APP_SECRET 飞书 App Secret -
DING_CLIENT_ID 钉钉 App Key / Client ID -
DING_CLIENT_SECRET 钉钉 App Secret -
DING_TEMPLATE_ID 钉钉 模板消息 ID -
COM_WECHAT_TOKEN 企业微信 Token -
COM_WECHAT_ENCODING_AES_KEY 企业微信 EncodingAESKey -
COM_WECHAT_CORP_ID 企业微信 CorpID -
COM_WECHAT_SECRET 企业微信 Secret -
COM_WECHAT_AGENT_ID 企业微信 AgentID -
WECHAT_APP_ID 微信公众号 AppID -
WECHAT_APP_SECRET 微信公众号 AppSecret -
WECHAT_ENCODING_AES_KEY 微信公众号 EncodingAESKey -
WECHAT_TOKEN 微信公众号 Token -
WECHAT_ACTIVE 是否启用公众号消息监听(true/false) false
QQ_APP_ID QQ 开放平台 AppID -
QQ_APP_SECRET QQ 开放平台 AppSecret -
QQ_NAPCAT_RECEIVE_TOKEN NapCat → MuseBot 事件推送 token MuseBot
QQ_NAPCAT_SEND_TOKEN MuseBot → NapCat 消息发送 token MuseBot
QQ_NAPCAT_HTTP_SERVER NapCat HTTP 服务地址 http://127.0.0.1:3000
DEEPSEEK_TOKEN (required) DeepSeek API Key -
OPENAI_TOKEN OpenAI API Key -
GEMINI_TOKEN Google Gemini Token -
OPEN_ROUTER_TOKEN OpenRouter Token doc -
ALIYUN_TOKEN 阿里云百炼 Token doc -
AI_302_TOKEN 302.AI Token doc -
VOL_TOKEN 火山引擎通用 Token doc -
VOLC_AK 火山引擎多媒体 AK doc -
VOLC_SK 火山引擎多媒体 SK doc -
ERNIE_AK 百度文心大模型 AK doc -
ERNIE_SK 百度文心大模型 SK doc -
ALIYUN_TOKEN 阿里云大模型 Token -
AI_302_TOKEN 302.AI 平台 Token -
OPEN_ROUTER_TOKEN OpenRouter API Key -
CUSTOM_URL 自定义 DeepSeek API 地址 https://api.deepseek.com/
TYPE LLM 类型(deepseek/openai/gemini/openrouter/vol/302-ai/chatanywhere) deepseek
MEDIA_TYPE 图片/视频生成模型来源(openai/gemini/vol/openrouter/aliyun/302-ai) vol
DB_TYPE 数据库类型(sqlite3/mysql) sqlite3
DB_CONF 数据库配置路径或连接字符串 ./data/muse_bot.db
LLM_PROXY LLM 网络代理(如 http://127.0.0.1:7890) -
ROBOT_PROXY 机器人访问代理(如 http://127.0.0.1:7890) -
LANG 语言(en/zh) en
TOKEN_PER_USER 每个用户可用的最大 token 数 10000
MAX_USER_CHAT 每个用户可同时存在的最大对话数 2
HTTP_HOST MuseBot HTTP 服务监听端口 :36060
USE_TOOLS 是否启用 Function Call 工具(true/false) false
MAX_QA_PAIR 上下文保留问答对数量 100
CHARACTER AI 的人格设定描述 -
CRT_FILE HTTPS 公钥文件路径 -
KEY_FILE HTTPS 私钥文件路径 -
CA_FILE HTTPS CA 证书路径 -
ADMIN_USER_IDS 管理员用户 ID,逗号分隔 -
ALLOWED_USER_IDS 允许使用的用户 ID,逗号分隔;空=全部可用;0=全部禁用 -
ALLOWED_GROUP_IDS 允许使用的群组 ID,逗号分隔;空=全部可用;0=全部禁用 -
BOT_NAME Bot 名称 MuseBot
CHAT_ANY_WHERE_TOKEN ChatAnyWhere 平台 Token -

其他配置

deepseek参数
图片参数
视频参数


💬 命令

/clear

清除与 DeepSeek 的历史对话记录,用于上下文清理。

/retry

重试上一次问题。

/txt_type /photo_type /video_type /rec_type

选择你想用的 文字/图片/视频的 模型类型.
aa92b3c9580da6926a48fc1fc5c37c03
aa92b3c9580da6926a48fc1fc5c37c03

/txt_model /img_model /video_model /rec_model

选择具体的模型名称.
aa92b3c9580da6926a48fc1fc5c37c03
aa92b3c9580da6926a48fc1fc5c37c03

/mode

展示正在使用的模型信息
aa92b3c9580da6926a48fc1fc5c37c03

/balance

查询当前用户的 DeepSeek API 余额。

/state

统计用户的 Token 使用量。

/photo /edit_photo

/edit_photo 支持编辑图片。
aa92b3c9580da6926a48fc1fc5c37c03

/video

/chat

在群组中使用 /chat 命令与机器人对话,无需将机器人设置为管理员。

/help

显示帮助信息。

/change_photo

对腾讯系的app起作用:qq,微信 ,企业微信
输入一段prompt用户修改图片
aa92b3c9580da6926a48fc1fc5c37c03

/rec_photo

对腾讯系的app起作用:qq,微信 ,企业微信
输入一段prompt用户识别图片
aa92b3c9580da6926a48fc1fc5c37c03

/save_voice

仅适用于腾讯应用(微信、QQ、企业微信)
将你的语音保存到电脑。
aa92b3c9580da6926a48fc1fc5c37c03


🚀 Docker 部署

  1. 构建 Docker 镜像

    docker build -t musebot .
  2. 运行 Docker 容器

    docker run -d -v /home/user/xxx/data:/app/data -e TELEGRAM_BOT_TOKEN="你的Telegram Bot Token" -e DEEPSEEK_TOKEN="你的DeepSeek API密钥" --name my-telegram-bot musebot

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions