基于本地RAG管道的文档检索问答服务,可代理Ollama扩展检索能力
Haystack构建RAG管道,Ollama提供本地模型,ElasticSearch存取向量化数据,Docker容器化部署
方案简介
Chipper 是一个为 RAG 管道、文档切分、网页抓取和查询工作流提供 Web 界面、CLI 和模块化可扩展架构的服务,旨在用高级信息检索能力增强生成式 AI 模型。它由 Haystack、Ollama、Hugging Face、Docker、TailwindCSS 和 ElasticSearch 构建并以完全容器化的服务运行。
项目起源于作者为女友写书所做的个人工具:使用本地 RAG 和 LLM 探索角色与创意,同时保证作品私密、不经过 ChatGPT 等云服务。从几个实用脚本逐步成长为一个完全 docker 化的可扩展服务。
Chipper 还可以作为 Ollama 客户端(如 Enchanted 或 Open WebUI)与 Ollama 实例之间的代理,为任意 Ollama 客户端增加服务端知识库嵌入与 RAG 能力。适合教育者、探索者、折腾者和希望实验迭代的公司使用。
亮点与能力
- 本地与云端模型支持:用 Ollama 本地运行模型,或通过 Hugging Face API 连接远程模型
- ElasticSearch 集成:以可扩展索引高效存取向量化数据
- 文档分块:处理并把文档切分为结构化片段
- 网页抓取:提取并索引网页内容
- 音频转录:将音频文件转为文本
- CLI 与 Web UI:命令行工具或轻量自包含的 Web 界面两种访问方式
- Docker 化部署:极少配置即可在完全容器化环境运行
- 可定制 RAG 管道:按需调整模型选择、查询参数和系统提示词
- Ollama API 代理:为 Ollama 扩展检索能力,兼容 Enchanted 和 Open WebUI 等客户端
- API 安全:以 API Key 和 Bearer Token 服务认证代理 Ollama API
- 离线 Web UI:使用原生 JavaScript 与 TailwindCSS,无网络也可工作
- Edge TTS:基于 WebAssembly 的客户端 TTS 朗读输出
- 分布式处理:串联多个 Chipper 实例进行负载分摊与扩展处理
组成与分工
- Haystack:RAG 管道框架,提供
ChatPromptBuilder与OllamaChatGenerator等聊天生成器,是文档切分、嵌入与查询工作流的核心 - Ollama:本地大模型运行时,Chipper 既能对接 Ollama 实例,也可作为其 API 的中间代理
- Hugging Face:通过其 API 连接远程模型,实现云端模型支持
- ElasticSearch:向量数据库,以可扩展索引高效存储和检索向量化数据
- Docker:容器化运行时,Chipper 以完全容器化服务部署,镜像发布在 Docker Hub
- TailwindCSS + 原生 JavaScript:构建轻量、自包含且可离线工作的 Web UI
- Enchanted / Open WebUI:第三方 Ollama 客户端,经 Chipper 代理获得服务端知识库嵌入能力
使用与配置要点
安装与设置可访问 Chipper 项目网站:https://chipper.tilmangriesel.com/,也可先试用在线演示 https://demo.chipper.tilmangriesel.com/。
Web 界面:使用内置 Web 界面即可轻松设置和自定义 RAG 管道。运行 /help 命令可了解如何切换模型、更新嵌入索引等操作。代码输出支持主流编程语言的自动语法高亮。
CLI 界面:完整支持 Ollama CLI 和 API,包括反射与代理能力,并带 API Key 路由装饰。
第三方客户端:让所有第三方 Ollama 客户端获得服务端知识库嵌入,支持服务端模型选择、查询参数和系统提示词覆盖,可将 Chipper 用作集中式知识库。
推理输出:对 DeepSeek-R1 类模型,Chipper 在 UI 中抑制 "think" 输出,同时在控制台保留推理步骤。
注意事项与常见问题
- 这是一个个人项目,并非为商业或生产环境设计;若要在生产环境使用,请自行做好尽调。
- README 的安装与设置部分内容较薄,详细安装指引需访问项目网站获取。
- 关于隐私:项目初衷即让作品私密、远离 ChatGPT 等云服务,本地部署可避免数据上云。
优缺点
- ✓ 本地运行保护隐私
- ✓ 完全容器化部署简单
- ✕ 不适合商业或生产环境
- ✕ 安装文档较薄需访问项目网站
出处
本方案挖掘自开源项目 TilmanGriesel/chipper,方案内容与实施命令均来自其 README 原文。
本方案由真实开源项目挖掘整理,实施命令均来自其 README 原文,安装使用请遵循项目开源协议。