对接 NoneBot2
NoneBot2 是基于 Python 的聊天机器人框架,偏向于有基础的开发者。
本教程以 astral-uv 为例,介绍从零开始安装 NoneBot2 并对接 LLBot 的完整流程。
安装 Python
在 uv 安装教程 中选择适合你系统的安装方式即可。
以 Linux 为例,安装 uv:
curl -LsSf https://astral.sh/uv/install.sh | sh官网的 uv 下载会访问 GitHub,国内网络可能会出现访问缓慢或失败的情况。可以使用 国内镜像 进行安装。
curl -LsSf https://uv.agentsmirror.com/install-cn.sh | sh如果一切顺利,安装过程应该类似于下:
$ curl -LsSf https://uv.agentsmirror.com/install-cn.sh | sh
downloading uv 0.11.30 x86_64-unknown-linux-gnu
installing to /home/user/.local/bin
uv
uvx
everything's installed!
$ uv --version
uv 0.11.30 (x86_64-unknown-linux-gnu)Windows 用户推荐使用 scoop 安装 uv
如果你的电脑上已经安装了 Python,可以直接使用 python -m pip install uv 安装 uv。
安装 NoneBot
安装 NoneBot 脚手架 (nb-cli)
uv tool install nb-cli安装完成后可以在命令行使用 nb --version 命令。如果提示找不到命令,请重启终端或参考 NoneBot2 文档 来安装脚手架。
创建项目
我觉得这里应该不需要教授如何打开终端吧?如果你是新手,建议先学习一下如何使用终端。
在你想要创建项目的文件夹打开终端并执行:
nb create选择模板 bootstrap(初学者或用户),回车。

配置项目
项目名称随意填写(如 llonebot_nb),回车。

按住方向键 ↓ 选择 nonebot-adapter-milky,回车。

因为 Milky 适配器需要 http-client 和 ws-client, 我们驱动先按空格取消勾选 fastapi, 然后再勾选 httpx 和 websockets (或者只选择 aiohttp),回车。

本地存储策略选择使用 当前项目。

立即安装依赖选 Y,项目管理器选 uv,等待安装完成。

内置插件和官方插件直接回车跳过,然后进入项目文件夹:

连接 LLBot
首先修改 NoneBot 配置项,参考 NoneBot 配置文档。
根据 adapter-milky 的说明,添加以下配置:
MILKY_CLIENTS='
[
{
"host": "localhost",
"port": "3010",
"access_token": "xxx",
"secure": false
}
]
'注意 port 需要和 LLBot 的 Milky HTTP 端口一致,access_token 需要和 LLBot 配置的 token 一致。
在 LLBot 中启用 Milky,可以通过以下任一方式配置:
- LLBot Desktop:Bot 配置 → 启用 Milky → 填入 http 配置保存
- LLBot WebUI(默认 http://localhost:3080):启用 Milky → 填入 http 配置保存
- 直接修改配置文件
data/config_<qq>.json:
{
"milky": {
"enable": true,
"reportSelfMessage": false,
"http": { // Milky 的 WS 和 HTTP 实际上是共用一个端口的
"port": 3010,
"prefix": "", // http api 路径前缀,可为空,默认是/api
"accessToken": ""
}
}
}LLBot 配置的 token 需要和 NoneBot 配置的一致。
连接成功后,NoneBot 日志会显示 Bot 已连接。
