# \[自建开源-Musebot\]一款可本地部署的大模型智能机器人平台

**URL:** <https://meta.appinn.net/t/topic/76165>\
**Category:** 发现频道\
**Created:** [2025 年10 月 22 日 09:03 UTC](https://meta.appinn.net/t/topic/76165 "2025-10-22T09:03:13Z")\
**Posts on this page:** 6\
**Page:** 1

<div class="post-metadata">

作者： ![cong\_yin](https://meta-edge.appinn.com/letter_avatar_proxy/v4/letter/c/73ab20/32.png) [@cong\_yin](https://meta.appinn.net/u/cong_yin)\
发布日期： [2025 年10 月 22 日 09:03 UTC](https://meta.appinn.net/t/topic/76165/1 "2025-10-22T09:03:13Z")

</div>

最近增加个人QQ的支持，使用napcat，查看文档：[MuseBot/static/doc/personal\_qq\_ZH.md at main · yincongcyincong/MuseBot · GitHub](https://github.com/yincongcyincong/MuseBot/blob/main/static/doc/personal_qq_ZH.md)

# MuseBot

本仓库提供了一个是基于 **Golang** 构建的 **智能机器人** ，集成了 **LLM API** ，实现 AI 驱动的自然对话与智能回复。  
它支持 **OpenAI** 、 **DeepSeek** 、 **Gemini** 、 **Doubao** 、 **Qwen** 等多种大模型，  
并可无缝接入 **Telegram** 、 **Discord** 、 **Slack** 、 **Lark（飞书）** 、 **钉钉** 、 **企业微信** 、 **QQ** 、 **微信** 等聊天平台，为用户带来更加流畅、多平台联通的 AI 对话体验。  
[English Doc](https://github.com/yincongcyincong/MuseBot)

* * *

## :sun_with_face: 视频

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

## :rocket: 功能特性

- :robot: **AI 回复** ：使用 大模型 API 提供聊天机器人回复。
- ⏳ **流式输出** ：实时发送回复，提升用户体验。
- 🏗 **轻松部署** ：可本地运行或部署到云服务器。
- :eyes: **图像识别** ：使用图片与 大模型进行交流，详见[文档](https://github.com/yincongcyincong/MuseBot/blob/main/static/doc/imageconf.md)。
- :trumpet: **支持语音** ：使用语音与 大模型进行交流，详见[文档](https://github.com/yincongcyincong/MuseBot/blob/main/static/doc/audioconf.md)。
- :ox: **函数调用** ：将 MCP协议转换为函数调用，详见[文档](https://github.com/yincongcyincong/MuseBot/blob/main/static/doc/functioncall.md)。
- :ocean: **RAG（检索增强生成）** ：支持 RAG以填充上下文，详见[文档](https://github.com/yincongcyincong/MuseBot/blob/main/static/doc/rag.md)。
- :sun_with_face: **管理平台（AdminPlatform）** ：使用管理平台来管理MuseBot，详见[文档](https://github.com/yincongcyincong/MuseBot/blob/main/static/doc/admin_ZH.md)。
- :first_quarter_moon_face: **注册中心** ：支持服务注册，机器人实例可自动注册，详见 [文档](https://github.com/yincongcyincong/MuseBot/blob/main/static/doc/register_ZH.md)
- :rainbow: **监控数据** ：支持监控数据，详见[文档](https://github.com/yincongcyincong/MuseBot/blob/main/static/doc/metrics_ZH.md)。

* * *

## 支持平台

| 平台 | 支持情况 | 简要说明 | 文档 / 链接 |
| --- | --- | --- | --- |
| 🟦 **Telegram** | ✅ | 支持 Telegram 机器人（基于 go-telegram-bot-api，可处理命令、内联按钮、ForceReply 等） | [文档](https://github.com/yincongcyincong/MuseBot/blob/main/README_ZH.md) |
| :rainbow: **Discord** | ✅ | 支持 Discord 机器人 | [文档](https://github.com/yincongcyincong/MuseBot/blob/main/static/doc/discord_ZH.md) |
| :first_quarter_moon_face: **Web API** | ✅ | 提供 HTTP/Web API 与 LLM 交互（适合构建自己的前端或后端集成） | [文档](https://github.com/yincongcyincong/MuseBot/blob/main/static/doc/web_api_ZH.md) |
| 🔷 **Slack** | ✅ | 支持 Slack（Socket Mode / Events API / Block Kit 交互） | [文档](https://github.com/yincongcyincong/MuseBot/blob/main/static/doc/slack_ZH.md) |
| 🟣 **Lark（飞书）** | ✅ | 支持 Lark 长连接与消息处理（基于 larksuite SDK，支持图片/音频下载与消息更新） | [文档](https://github.com/yincongcyincong/MuseBot/blob/main/static/doc/lark_ZH.md) |
| 🆙 **钉钉** | ✅ | 支持钉钉长链接服务 | [文档](https://github.com/yincongcyincong/MuseBot/blob/main/static/doc/dingding_ZH.md) |
| :high_voltage: **Work WeChat** | ✅ | 支持企业微信触发大模型 | [文档](https://github.com/yincongcyincong/MuseBot/blob/main/static/doc/com_wechat_ZH.md) |
| :high_voltage: **QQ** | ✅ | 支持QQ触发大模型 | [文档](https://github.com/yincongcyincong/MuseBot/blob/main/static/doc/qq_ZH.md) |
| :high_voltage: **WeChat** | ✅ | 支持微信触发大模型 | [文档](https://github.com/yincongcyincong/MuseBot/blob/main/static/doc/wechat_ZH.md) |

## 支持的大型语言模型

| 模型 | 提供方 | 文本生成 | 图片生成 | 视频生成 | 识别照片 | 返回语音 | 链接 |
| --- | --- | --- | --- | --- | --- | --- | --- |
| :glowing_star: **Gemini** | 谷歌 | ✅ | ✅ | ✅ | ✅ | ✅ | [文档](https://gemini.google.com/app) |
| 💬 **ChatGPT** | OpenAI | ✅ | ✅ | :cross_mark: | ✅ | ✅ | [文档](https://chat.openai.com) |
| :bird: **Doubao** | 字节跳动 | ✅ | ✅ | ✅ | ✅ | ✅ | [文档](https://www.volcengine.com/) |
| :bird: **Qwen** | 阿里云 | ✅ | ✅ | ✅ | ✅ | ✅ | [文档](https://bailian.console.aliyun.com/?spm=5176.12818093_47.overview_recent.1.663b2cc9wXXcVC&tab=api#/api) |
| :gear: **302.AI** | 302.AI | ✅ | ✅ | ✅ | ✅ | :cross_mark: | [文档](https://302.ai/) |
| 🧠 **DeepSeek** | DeepSeek | ✅ | :cross_mark: | :cross_mark: | :cross_mark: | :cross_mark: | [文档](https://www.deepseek.com/) |
| 🌐 **OpenRouter** | OpenRouter | ✅ | ✅ | :cross_mark: | ✅ | :cross_mark: | [文档](https://openrouter.ai/) |

## :robot: 文本示例

![aa92b3c9580da6926a48fc1fc5c37c03](https://github.com/user-attachments/assets/f6b5cdc7-836f-410f-a784-f7074a672c0e)  
 ![aa92b3c9580da6926a48fc1fc5c37c03](https://github.com/user-attachments/assets/621861a4-88d1-4796-bf35-e64698ab1b7b)

## :trumpet: 多模态示例

![aa92b3c9580da6926a48fc1fc5c37c03](https://github.com/user-attachments/assets/b4057dce-9ea9-4fcc-b7fa-bcc297482542)  
 ![aa92b3c9580da6926a48fc1fc5c37c03](https://github.com/user-attachments/assets/67ec67e0-37a4-4998-bee0-b50463b87125)

* * *

## 📥 安装

1. **克隆仓库**

2. **安装依赖**

3. **设置环境变量**

* * *

## :rocket: 使用方法

在本地运行：

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

```

使用 Docker 运行：

```sh
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

```

```sh
阿里云:
docker pull crpi-i1dsvpjijxpgjgbv.cn-hangzhou.personal.cr.aliyuncs.com/jackyin0822/musebot

```

命令介绍: (文档)[[MuseBot/static/doc/param\_conf\_ZH.md at main · yincongcyincong/MuseBot · GitHub](https://github.com/yincongcyincong/MuseBot/blob/main/static/doc/param_conf_ZH.md)]

* * *

## :gear: 配置项

| 变量名 | 描述 | 默认值 |
| --- | --- | --- |
| **TELEGRAM\_BOT\_TOKEN** (必需) | 您的 Telegram 机器人令牌 | - |
| **DEEPSEEK\_TOKEN** (必需) | DeepSeek API 密钥 | - |
| **OPENAI\_TOKEN** | OpenAI 令牌 | - |
| **GEMINI\_TOKEN** | Gemini 令牌 | - |
| **ALIYUN\_TOKEN** | Aliyun 令牌 [doc](https://bailian.console.aliyun.com/?spm=5176.12818093_47.overview_recent.1.663b2cc9zsj3BI&tab=doc#/doc/?type=model&url=2840915) | - |
| **OPEN\_ROUTER\_TOKEN** | OpenRouter 令牌 [文档](https://openrouter.ai/docs/quickstart) | - |
| **VOL\_TOKEN** | 火山引擎 令牌 [文档](https://www.volcengine.com/docs/82379/1399008#b00dee71) | - |
| **CUSTOM\_URL** | 自定义 DeepSeek URL | [https://api.deepseek.com/](https://api.deepseek.com/) |
| **TYPE** | 模型类型：deepseek/openai/gemini/openrouter/vol/aliyun/302-ai/ollama | deepseek |
| **VOLC\_AK** | 火山引擎图片模型 AK [文档](https://www.volcengine.com/docs/6444/1340578) | - |
| **VOLC\_SK** | 火山引擎图片模型 SK [文档](https://www.volcengine.com/docs/6444/1340578) | - |
| **Ernie\_AK** | 文心一言 AK [文档](https://cloud.baidu.com/doc/WENXINWORKSHOP/s/Sly8bm96d) | - |
| **Ernie\_SK** | 文心一言 SK [文档](https://cloud.baidu.com/doc/WENXINWORKSHOP/s/Sly8bm96d) | - |
| **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\_USER\_IDS** | 允许使用机器人的 Telegram 用户 ID，多个 ID 用逗号分隔。为空表示所有用户可用。为 0 表示禁止所有用户。 | - |
| **ALLOWED\_GROUP\_IDS** | 允许使用机器人的 Telegram 群组 ID，多个 ID 用逗号分隔。为空表示所有群组可用。为 0 表示禁止所有群组。 | - |
| **DEEPSEEK\_PROXY** | DeepSeek 代理 | - |
| **TELEGRAM\_PROXY** | Telegram 代理 | - |
| **LANG** | 语言：en / zh | en |
| **TOKEN\_PER\_USER** | 每个用户可使用的令牌数 | 10000 |
| **ADMIN\_USER\_IDS** | 管理员用户 ID，可使用一些管理命令 | - |
| **NEED\_AT\_BOT** | 在群组中是否需要 @机器人才能触发 | false |
| **MAX\_USER\_CHAT** | 每个用户最大同时存在的聊天数 | 2 |
| **VIDEO\_TOKEN** | 火山引擎视频模型 API 密钥 [文档](https://www.volcengine.com/docs/82379/1399008#b00dee71) | - |
| **HTTP\_PORT** | HTTP 服务器端口 | 36060 |
| **USE\_TOOLS** | 普通对话是否使用函数调用工具 | false |
| **CA\_FILE** | http 服务的 ca文件 | - |
| **CRT\_FILE** | http 服务的 crt 文件 | - |
| **KEY\_FILE** | http 服务的 key 文件 | - |
| **MEDIA\_TYPE** | openai/gemini/vol/aliyun/openrouter/302-ai 图片或视频生成模型 | vol |
| **MAX\_QA\_PAIR** | 用多少问题对作为上下文 | 15 |
| **CHARACTER** | 角色背景 | - |

### 其他配置

[deepseek参数](https://github.com/yincongcyincong/MuseBot/blob/main/static/doc/deepseekconf_ZH.md)  
[图片参数](https://github.com/yincongcyincong/MuseBot/blob/main/static/doc/photoconf_ZH.md)  
[视频参数](https://github.com/yincongcyincong/MuseBot/blob/main/static/doc/videoconf_ZH.md)

* * *

## 💬 命令

### `/clear`

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

### `/retry`

重试上一次问题。

### `/mode`

![](https://github.com/user-attachments/assets/55ac3101-92d2-490d-8ee0-31a5b297e56e)

### `/balance`

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

![](https://github.com/user-attachments/assets/23048b44-a3af-457f-b6ce-3678b6776410)

### `/state`

统计用户的 Token 使用量。

![](https://github.com/user-attachments/assets/0814b3ac-dcf6-4ec7-ae6b-3b8d190a0132)

### `/photo` `/edit_photo`

使用火山引擎图片模型生成图片，DeepSeek 暂不支持图片生成。  
需要配置 `VOLC_AK` 和 `VOLC_SK`。[文档](https://www.volcengine.com/docs/6444/1340578)

![](https://github.com/user-attachments/assets/c8072d7d-74e6-4270-8496-1b4e7532134b)

/edit\_photo 支持编辑图片。  
 ![aa92b3c9580da6926a48fc1fc5c37c03](https://github.com/user-attachments/assets/b26c123a-8a61-4329-ba31-9b371bd9251c)

### `/video`

生成视频，需要使用火山引擎 API 密钥（`DEEPSEEK_TOKEN`），DeepSeek 暂不支持视频生成。  
[文档](https://www.volcengine.com/docs/82379/1399008#b00dee71)

![](https://github.com/user-attachments/assets/884eeb48-76c4-4329-9446-5cd3822a5d16)

### `/chat`

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

![](https://github.com/user-attachments/assets/00a0faf3-6037-4d84-9a33-9aa6c320e44d)

### `/help`

显示帮助信息。

![](https://github.com/user-attachments/assets/869e0207-388b-49ca-b26a-378f71d58818)

### /change\_photo

对腾讯系的app起作用：qq，微信 ，企业微信  
输入一段prompt用户修改图片  
 ![aa92b3c9580da6926a48fc1fc5c37c03](https://github.com/user-attachments/assets/81e1eb85-ddb6-4a2b-b6bd-73da0d276036)

### /rec\_photo

对腾讯系的app起作用：qq，微信 ，企业微信  
输入一段prompt用户识别图片  
 ![aa92b3c9580da6926a48fc1fc5c37c03](https://github.com/user-attachments/assets/b67a2be2-cc5e-4985-90f3-d72c7a9bf4c1)

### /save\_voice

仅适用于腾讯应用（微信、QQ、企业微信）  
将你的语音保存到电脑。  
 ![aa92b3c9580da6926a48fc1fc5c37c03](https://github.com/user-attachments/assets/74499d85-4405-43d3-836e-2977de08cb31)

* * *

## :rocket: Docker 部署

1. **构建 Docker 镜像**

2. **运行 Docker 容器**

* * *

## :handshake: 贡献

欢迎提交 Issue 和 Pull Request，一起优化和改进本项目！:rocket:

---

<div class="post-metadata">

作者： ![cong\_yin](https://meta-edge.appinn.com/letter_avatar_proxy/v4/letter/c/73ab20/32.png) [@cong\_yin](https://meta.appinn.net/u/cong_yin)\
发布日期： [2025 年10 月 22 日 11:54 UTC](https://meta.appinn.net/t/topic/76165/2 "2025-10-22T11:54:23Z")

</div>

大家有什么issue或者特性尽管提哈，我会努力更新下一个版本的

---

<div class="post-metadata">

作者： ![Frank9](https://meta-edge.appinn.com/user_avatar/meta.appinn.net/frank9/32/23723_2.png) [@Frank9](https://meta.appinn.net/u/Frank9)\
发布日期： [2025 年10 月 23 日 01:21 UTC](https://meta.appinn.net/t/topic/76165/3 "2025-10-23T01:21:36Z")

</div>

接入微信QQ有没有风控的风险？

---

<div class="post-metadata">

作者： ![cong\_yin](https://meta-edge.appinn.com/letter_avatar_proxy/v4/letter/c/73ab20/32.png) [@cong\_yin](https://meta.appinn.net/u/cong_yin)\
发布日期： [2025 年10 月 23 日 02:03 UTC](https://meta.appinn.net/t/topic/76165/4 "2025-10-23T02:03:22Z")

</div>

我这个是不支持接入个人的qq和微信的，这些都是有封号和法律风险的，仅支持qq的机器人和微信的公众号

---

<div class="post-metadata">

作者： ![cong\_yin](https://meta-edge.appinn.com/letter_avatar_proxy/v4/letter/c/73ab20/32.png) [@cong\_yin](https://meta.appinn.net/u/cong_yin)\
发布日期： [2025 年10 月 28 日 03:04 UTC](https://meta.appinn.net/t/topic/76165/5 "2025-10-28T03:04:58Z")

</div>

老哥，最近加了个人qq的接入，可以看这个文档：[MuseBot/static/doc/personal\_qq\_ZH.md at main · yincongcyincong/MuseBot · GitHub](https://github.com/yincongcyincong/MuseBot/blob/main/static/doc/personal_qq_ZH.md)

---

<div class="post-metadata">

作者： ![cong\_yin](https://meta-edge.appinn.com/letter_avatar_proxy/v4/letter/c/73ab20/32.png) [@cong\_yin](https://meta.appinn.net/u/cong_yin)\
发布日期： [2025 年10 月 29 日 06:41 UTC](https://meta.appinn.net/t/topic/76165/6 "2025-10-29T06:41:11Z")

</div>

# 先放视频

MuseBot支持使用onebot协议接入个人QQ

> <https://github.com/yincongcyincong/MuseBot/blob/main/README_ZH.md>

llonebot: [https://www.youtube.com/watch?v=jbPGbnBaISE&t=7s](https://www.youtube.com/watch?v=jbPGbnBaISE&t=7s)  
napcat: [https://www.youtube.com/watch?v=vrwcBTy6DeQ](https://www.youtube.com/watch?v=vrwcBTy6DeQ)

# :robot: OneBot + MuseBot 环境变量配置说明

## 🧩 一、启动 OneBot 容器

启动 LLONEBot

```bash
docker run -d \
  --name llonebot \
  -p 3000:3000 \
  -p 3001:3001 \
  -p 5600:5600 \
  -p 3080:3080 \
  -v ./QQ:/root/.config/QQ \
  -v ./llonebot:/root/llonebot \
  --add-host=host.docker.internal:host-gateway \
  --restart unless-stopped \
  initialencounter/llonebot:latest

```

### 说明：

- `3000`: LLONEBot HTTP 服务端口（用于接收 MuseBot 发来的消息）
- `3080`: LLONEBot Web 管理界面（扫码登录 QQ）

或启动 NapCat：

```bash
docker run -d \
  -e NAPCAT_GID=$(id -g) \
  -e NAPCAT_UID=$(id -u) \
  -p 3000:3000 \
  -p 3001:3001 \
  -p 6099:6099 \
  --name napcat \
  --restart=always \
  mlikiowa/napcat-docker:latest

```

### 说明：

- `3000`: NapCat HTTP 服务端口（用于接收 MuseBot 发来的消息）
- `6099`: NapCat Web 管理界面（扫码登录 QQ）

* * *

## 🔐 二、登录 QQ

1. 打开浏览器访问 [http://127.0.0.1:3080/](http://127.0.0.1:3080/) 或者 [http://127.0.0.1:6099/](http://127.0.0.1:6099/)
2. 扫码登录 QQ 账号
3. 两个软件都会有个key，妥善保存

* * *

## :gear: 三、MuseBot 环境变量配置

在 MuseBot 启动前，需要配置 OneBot 相关的 3 个环境变量：

| 环境变量名 | 说明 | 示例值 |
| --- | --- | --- |
| `QQ_ONEBOT_RECEIVE_TOKEN` | OneBot 向 MuseBot 发送消息时使用的 token（OneBot 客户端 token） | `MuseBot` |
| `QQ_ONEBOT_SEND_TOKEN` | MuseBot 向 OneBot 发送消息时使用的 token（OneBot 服务器 token） | `MuseBot` |
| `QQ_ONEBOT_HTTP_SERVER` | OneBot HTTP 服务器地址（即 OneBot 接收消息的接口） | `http://127.0.0.1:3000` |

例如：

```bash
export QQ_ONEBOT_RECEIVE_TOKEN=MuseBot
export QQ_ONEBOT_SEND_TOKEN=MuseBot
export QQ_ONEBOT_HTTP_SERVER=http://127.0.0.1:3000

```

> :warning: 这三个变量必须与 OneBot 配置页面中的设置保持一致。

* * *

## 🔄 四、OneBot 网络配置说明

登录 OneBot Web 控制台 → 「配置」 → 「网络配置」，按以下方式填写：

| 配置项 | 说明 | 示例值 |
| --- | --- | --- |
| **HTTP 服务器** | MuseBot 调用 Onebot 接口的地址 | `http://127.0.0.1:3000` |
| **HTTP 客户端** | Onebot 向 MuseBot 推送消息事件的地址 | `http://127.0.0.1:36060/onebot` |
| **HTTP 鉴权 Key** | 与环境变量中 token 一致 | `MuseBot` |

![image](https://github.com/user-attachments/assets/a6a7bf64-9f93-436f-8910-1177e1e2749a)  
 ![image](https://github.com/user-attachments/assets/13a118a7-ced0-4427-923d-44cc0df7ca2c)  
 ![image](https://github.com/user-attachments/assets/b6aa893d-6db9-444a-82e6-a185561ad818)  
 ![image](https://github.com/user-attachments/assets/53e86994-a19d-487b-b46f-3b457a38d5c0)
