最近,ClawdBot(已更名为OpenClaw)火爆全球,它是一个可以在本地部署的个人AI助手,它可以接入多种聊天App,你直接在聊天软件发个消息,它就能自动调用本地部署的ClawdBot帮你完成任务。随时随地,无时无刻,只要你掏出手机给它发个消息,它就能帮执行任务,ClawdBot让你拥有了一个7x24小时为你服务的AI助手。ClawdBot的本质是一个智能体,只不过它能与各种聊天软件连接。如果没有与聊天软件连接的功能,你只能在本地与它对话,而借助聊天应用,即使你在外地,掏出手机,通过聊天软件与ClawdBot对话,它接收到消息后执行任务,完成任务后将执行结果通过聊天软件发送给你。ClawdBot虽然强大,但它的代码量很庞大,目前约43万行代码,无论你是想学习它的原理还是二次开发,都是比较困难的。近日,香港大学数据智能实验室开源一个超轻量级的个人AI助手项目:nanobot。nanobot仅使用了约4000行(仅约为ClawdBot的1%),就实现了一些核心的功能。作者介绍,该项目受到ClawdBot的启发。https://github.com/HKUDS/nanobotnanobot仅约4000行代码,非常轻量,意味着你可以从头到尾快速阅读源码,了解学习该项目是如何开发的。代码量小也意味着你可以根据自己的需要在它的基础上进行二次开发,添加一些自己想要的功能。轻量级的项目依赖的环境也更简单,部署使用也更便捷。nanobot的架构和很多开源智能体框架的架构差不多,不同的是它多了一个channels模块,用来连接聊天App。- LLM:核心是LLM,LLM可以是本地部署的,也可以是API。
- 连接聊天App:nanobot中有一个channels模块,用于打通Telegram、WhatsApp这些聊天软件。
如何使用:安装nanobot+本地部署LLM或使用LLM API+连接聊天Appnanobot只是帮你实现了整个框架代码,本地安装nanobot后,需要你自己配置或部署大模型,配置你自己的聊天App。所以第一步是安装nanobot,第二步本地部署LLM或配置LLM API Key,第三步是配置聊天App。git clone https://github.com/HKUDS/nanobot.gitcd nanobotpip install -e .
uv tool install nanobot-ai
在~/.nanobot/config.json文件中配置大模型API Key:{ "providers": { "openrouter": { "apiKey": "sk-or-v1-xxx" } }, "agents": { "defaults": { "model": "anthropic/claude-opus-4-5" } }, "webSearch": { "apiKey": "BSA-xxx" }}
webSearch是配置网络搜索的,当你需要使用搜索功能时,要配置该项。配置完成后,在本地命令行通过如下命令可以与nanobot进行聊天:nanobot agent -m "你好,nanobot"
如果你想通过手机或电脑上的聊天软件与nanobot进行对话,那还需要配置聊天软件。如果要让nanobot调用你本地的大模型,你需要通过vLLM先在本地部署大模型,部署后,启动本地vLLM服务:vllm serve "模型名字" --port 8000
在~/.nanobot/config.json文件中配置本地大模型(apiKey可以是任何非空字符串):{ "providers": { "vllm": { "apiKey": "dummy", "apiBase": "http://localhost:8000/v1" } }, "agents": { "defaults": { "model": "meta-llama/Llama-3.1-8B-Instruct" } }}
配置完成后,在本地命令行通过如下命令可以与nanobot进行聊天:nanobot agent -m "你好,nanobot"
nanobot目前支持Telegram和WhatsApp,以下以配置Telegram为例。- 打开 Telegram,搜索 @BotFather
(2)在~/.nanobot/config.json文件中配置channels{ "channels": { "telegram": { "enabled": true, "token": "YOUR_BOT_TOKEN", "allowFrom": ["YOUR_USER_ID"] } }}
所有准备工作都完成了,现在你可以在Telegram与你的创建的bot对话,随时让nanobot帮你完成任务。