LocalGPT 总结 (Summary of LocalGPT)
LocalGPT 是一个基于 Rust 构建的本地 AI 助手,旨在在本地设备上运行,保护用户数据隐私。它受到 OpenClaw 的启发并兼容其文件格式。
核心特点:
- 单文件执行: 无需 Node.js、Docker 或 Python 等依赖。
- 本地化运行: 完全在本地设备上运行,数据安全。
- 持久化记忆: 使用 Markdown 文件作为知识库,支持全文和语义搜索。
- 自主任务: 通过 "心跳" 功能自动执行任务。
- 多接口: 提供 CLI 命令行界面、Web UI 网页界面和桌面 GUI 图形界面。
- 多 LLM 提供商: 支持 Anthropic (Claude)、OpenAI 和 Ollama 等大型语言模型。
- OpenClaw 兼容: 兼容 SOUL、MEMORY、HEARTBEAT Markdown 文件和技能格式。
安装:
使用 cargo install localgpt 命令安装。 cargo install localgpt --no-default-features 用于无桌面 GUI 的 headless 安装,适用于服务器和 CI/CD 环境。
快速上手:
localgpt config init 初始化配置。
localgpt chat 启动交互式聊天。
localgpt ask "问题" 提问。
localgpt daemon start 启动守护进程,实现后台运行、HTTP API 和 Web UI。
工作原理:
LocalGPT 使用 Markdown 文件存储知识,主要文件包括:
MEMORY.md: 长期知识库。
HEARTBEAT.md: 任务队列。
SOUL.md: 角色和行为指导。
knowledge/: 结构化知识库(可选)。
这些文件使用 SQLite FTS5 进行快速关键词搜索,使用 sqlite-vec 进行语义搜索。
配置:
配置信息存储在 ~/.localgpt/config.toml 文件中,包含模型选择、API 密钥、心跳设置和工作空间路径等。
CLI 命令:
chat: 交互式聊天。
ask: 单次提问。
daemon: 控制守护进程 (start, stop, status, heartbeat)。
memory: 管理记忆 (search, reindex, stats)。
config: 管理配置 (init, show)。
HTTP API:
守护进程运行时,提供以下 API 接口:
/health: 健康检查。
/api/status: 服务状态。
/api/chat: 与助手聊天。
/api/memory/search: 搜索记忆。
/api/memory/stats: 记忆统计。
技术栈:
LocalGPT 使用 Rust, Tokio, Axum, SQLite (FTS5 + sqlite-vec), fastembed, eframe 等技术构建。
项目地址: https://github.com/localgpt-app/localgpt