HKUDS/nanobot
Ultra-lightweight, open-source, self-hosted personal AI agent framework in Python with WebUI, tools, memory, MCP, multi-agent workflows, automation, and chat apps
解决的问题
nanobot 是一个自托管的个人 AI 代理框架,旨在提供一种轻量级、私密的替代方案,以应对大型 AI 平台。它解决了在长时间运行的任务中保持持久 AI 工作流的问题——即目标、记忆和聊天上下文能够跨任务持续存在,同时允许用户完全掌控自己的技术栈,包括选择 LLM 提供商以及与代理交互的界面。
如何工作
该项目围绕一个小型代理循环展开,该循环管理来自各种接口的消息,并使用 LLM 判断是否需要调用工具。它集成了多个关键组件:
- 接口:用户可以通过内置的 WebUI、原生终端客户端(TUI),或集成的聊天应用(如 Telegram、Discord、Slack 和 WeChat)与代理交互。
- 工具与集成:支持 Model Context Protocol (MCP) 服务器、shell 访问、网络搜索和图像生成。
- 记忆:使用名为 "Dream" 的系统来管理会话历史和长期记忆。
- 自动化:包含一个网关,可在后台运行长期目标和定时自动化任务。
- 连接性:提供 OpenAI 兼容 API 和 Python SDK,用于外部集成。
适用人群
适用于希望拥有可扩展和可定制的自托管 AI 代理的个人,从通过引导式安装的非技术用户,到希望在本地环境中构建可编程代理网关的开发者。
亮点
- 多通道覆盖:连接多种聊天应用(Telegram、Discord、Slack 等)和基于浏览器的 WebUI。
- 模型自由:支持 OpenAI 兼容 API、本地 LLM(通过 Ollama、vLLM)、以及备用模型。
- 轻量核心:内部结构清晰,避免使用复杂的编排层。
- 持久工作流:支持定时自动化和长期记忆。
- 工作台 UI:提供 WebUI,可将多个对话并排分组显示在网格或列中。
相关
- 项目
- 项目
- 项目
- 项目
- 项目