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,可將多個對話並排分組顯示於網格或欄位中。

相關

  • 專案
  • 專案
  • 專案
  • 專案
  • 專案