从零搭建个人 AI 知识库:Ollama + AnythingLLM + OpenClaw 实战指南 原创

温馨提示:
本文最后更新于 2026-06-25,已超过 77 天没有更新。 若文章内的图片失效(无法正常加载),请留言反馈或直接 联系我

从零搭建个人 AI 知识库:Ollama + AnythingLLM + OpenClaw 实战指南

2026 年,个人 AI 知识库已经从概念走向了实用。无论是管理技术文档、读书笔记,还是构建个人知识体系,自建 AI 知识库都提供了前所未有的便利。本文将手把手教你搭建一套完整的个人 AI 知识库系统。

一、方案选型

1.1 为什么自建

  • 数据隐私:所有数据存储本地,不经过第三方
  • 完全可控:自由选择模型、配置参数
  • 长期可用:不依赖任何 SaaS 服务
  • 成本可控:一次投入,长期使用

1.2 技术栈

组件 作用 推荐方案
本地 LLM 推理引擎 Ollama
知识库管理 文档索引与检索 AnythingLLM
AI 助手 任务编排与自动化 OpenClaw
嵌入模型 文本向量化 nomic-embed-text

二、Ollama 部署

2.1 安装 Ollama

# Linux 一键安装
curl -fsSL https://ollama.com/install.sh | sh

# 验证安装
ollama --version

2.2 下载模型

# 推荐模型组合
ollama pull llama3.2:3b        # 轻量级对话模型
ollama pull llama3.1:8b        # 主力模型
ollama pull nomic-embed-text   # 嵌入模型(用于 RAG)
ollama pull qwen2.5:7b         # 中文优化模型

# 查看已下载模型
ollama list

2.3 配置 Ollama 服务

# 允许局域网访问(可选)
export OLLAMA_HOST=0.0.0.0:11434

# 设置并发请求数
export OLLAMA_NUM_PARALLEL=4

# 设置模型加载到 GPU 的上下文大小
export OLLAMA_KEEP_ALIVE=24h

# 启动服务
systemctl start ollama
systemctl enable ollama

三、AnythingLLM 部署

AnythingLLM 是一个开源的 RAG(检索增强生成)系统,支持多种文档格式和向量数据库。

3.1 Docker 部署

# 创建数据目录
mkdir -p ~/anythingllm-data

# 启动容器
docker run -d \
  --name anythingllm \
  -p 3001:3001 \
  -v ~/anythingllm-data:/app/server/storage \
  -e STORAGE_DIR=/app/server/storage \
  -e LLM_PROVIDER=ollama \
  -e OLLAMA_BASE_PATH=http://host.docker.internal:11434 \
  -e OLLAMA_MODEL_PREF=llama3.1:8b \
  -e EMBEDDING_ENGINE=ollama \
  -e EMBEDDING_BASE_PATH=http://host.docker.internal:11434 \
  -e EMBEDDING_MODEL_PREF=nomic-embed-text \
  mintplexlabs/anythingllm:latest

3.2 配置工作空间

AnythingLLM 支持多工作空间(Workspace),每个工作空间有独立的文档库和配置:

  1. 访问 http://localhost:3001
  2. 创建管理员账号
  3. 创建多个工作空间(如”技术文档”、”读书笔记”、”项目管理”)
  4. 每个工作空间选择不同的 LLM 和嵌入模型

3.3 导入文档

AnythingLLM 支持多种文档格式:

  • PDF、TXT、Markdown
  • Word、Excel、PowerPoint
  • 代码文件(.py, .js, .ts, .go 等)
  • 网页链接(自动抓取内容)
  • GitHub 仓库(克隆后导入)

导入后,系统自动进行文档分块、向量化并存入向量数据库。

四、OpenClaw 集成

OpenClaw 作为 AI 助手,可以通过 API 与 AnythingLLM 集成,实现智能知识检索。

4.1 配置 AnythingLLM API

# 在 AnythingLLM 设置中生成 API Key
# 设置 → API 密钥 → 生成新密钥

4.2 创建 OpenClaw 技能

创建一个”知识库查询”技能,让 OpenClaw 能够自动查询 AnythingLLM:

---
name: knowledge-query
version: 1.0.0
description: 查询 AnythingLLM 知识库
---

## Workflow

1. 接收用户查询
2. 调用 AnythingLLM API 进行检索
3. 返回检索结果

4.3 API 调用示例

# 查询知识库
curl -X POST http://localhost:3001/api/v1/workspace/{workspace-slug}/chat \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "message": "什么是 RAG 检索增强生成?",
    "mode": "query"
  }'

# 响应包含:
# - 基于知识库的回答
# - 引用的文档来源
# - 相关度评分

五、进阶配置

5.1 向量数据库选择

AnythingLLM 支持多种向量数据库:

  • LanceDB:默认,轻量级,适合单机
  • Chroma:功能丰富,支持过滤
  • Qdrant:高性能,支持分布式
  • Weaviate:云原生,适合大规模

5.2 文档分块策略

合理的文档分块直接影响检索质量:

# AnythingLLM 配置建议
CHUNK_SIZE: 1000        # 每块字符数
CHUNK_OVERLAP: 200      # 重叠字符数
SEARCH_LIMIT: 5         # 检索返回的文档块数
SIMILARITY_THRESHOLD: 0.7  # 相似度阈值

5.3 多模型路由

根据任务类型自动选择模型:

  • 简单问答:llama3.2:3b(快速响应)
  • 复杂推理:llama3.1:8b(更准确)
  • 中文内容:qwen2.5:7b(中文优化)
  • 代码相关:codellama(代码专项)

六、实际应用场景

6.1 技术文档管理

将技术文档、API 文档、项目 Wiki 导入知识库,随时查询:

# 批量导入 Markdown 文档
find ./docs -name "*.md" -exec cp {} ~/anythingllm-data/import/ \;

6.2 读书笔记系统

将读书笔记、论文摘要导入,构建个人知识体系:

  • 按主题分类建立工作空间
  • 标注重要概念和引用
  • 通过对话式查询快速定位

6.3 项目知识库

将项目文档、代码注释、会议记录整合:

  • 新成员快速上手
  • 技术决策追溯
  • 代码规范查询

七、性能优化

  1. GPU 加速:确保 Ollama 使用 GPU(nvidia-smi 验证)
  2. 内存管理:OLLAMA_KEEP_ALIVE 设置为合理值,避免频繁加载模型
  3. 并发控制:OLLAMA_NUM_PARALLEL 根据 GPU 显存调整
  4. 文档预处理:导入前清理无关内容,提高检索质量

八、总结

通过 Ollama + AnythingLLM + OpenClaw 的组合,你可以搭建一套完全本地化、高度可定制的个人 AI 知识库。这套方案的优势在于:数据完全私有、模型自由选择、系统高度可扩展。无论是个人学习还是团队协作,都能显著提升知识管理效率。