nanobot: 一个具有多渠道聊天集成和持久记忆的超轻量级自托管 AI agent 运行时
nanobot: 一个具有多渠道聊天集成和持久记忆的超轻量级自托管 AI agent 运行时
它解决了什么问题
nanobot 是一个自托管、超轻量级的个人 AI agent 运行时。它解决了运行个人 AI agent 时需要复杂、单体式平台的问题,该 agent 可以维护持久的工作流、记住长期上下文,并能在保持用户完全所有权和可定制性的同时,跨多个聊天平台进行交互。
它是如何工作的
它围绕一个小的 agent 循环展开,从中接收来自各种聊天渠道的消息,并由 LLM 决定何时触发特定工具。它没有采用沉重的编排层,而是将记忆和技能作为上下文拉取进来。该系统支持带有回退机制的模型路由,并可以作为长期运行的网关部署在本地机器或服务器上。
它是为谁设计的
它专为想要拥有一个私有的、自托管的 AI agent 并将其集成到现有聊天应用(如 Telegram、Discord 或 Slack)或通过 WebUI 使用的用户而设计,同时也为想要通过可读、可扩展的代码库来构建个人自动化的开发者而设计。
亮点
- 多渠道覆盖: 连接到 Telegram、Discord、Slack、WeChat、Email、Mattermost 和 Feishu。
- 模型灵活性: 支持 OpenAI-compatible APIs、本地 LLMs(通过 Ollama 或 vLLM)以及图像生成。
- 工具集成: 包括用于 shell access、web search、web fetch、MCP (Model Context Protocol) 和 cron jobs 的内置工具。
- 长期记忆: 使用 "Dream" 来维护会话历史和长期记忆。
- 开发者友好: 提供 Python SDK 和 OpenAI-compatible API 用于外部集成。
Sources
- undefinedHKUDS/nanobot