Ollama + RAGFlow 打造本地私有知识库问答
基于Ollama和RAGFlow搭建本地智能问答系统 摘要:本文介绍如何利用开源工具Ollama和RAGFlow构建完全本地化的智能问答系统,支持PDF、Word等文档解析,确保数据不出内网。通过Docker部署RAGFlow,配置Ollama运行Llama3等本地大模型,实现私有文档的知识库转化。系统支持中文问答,提供精准答案并标注来源,适用于企业知识管理。包含环境配置、模型部署、知识库创建等完
文章目录
场景:
使用 Ollama 和 RAGFlow 这两个强大的开源工具,零成本搭建一个完全本地化、数据不出内网的智能问答系统,支持 PDF、Word、Excel 等复杂文档的解析与检索,安全、低成本地将企业或个人的私有文档转化为可问答的智能知识库。
优势:
✅ 无需 API Key
✅ 数据完全本地化
✅ 支持中文
✅ 可离线使用
🌟 为什么选择 Ollama + RAGFlow?
| 工具 | 角色 | 优势 |
|---|---|---|
| Ollama | 大语言模型运行引擎 | 本地运行 Llama 3、Qwen、Mistral 等模型,无需联网 |
| RAGFlow | 文档解析 + RAG 引擎 | 支持复杂文档(表格、扫描件)、自动切片、向量化、检索 |
一、环境准备
1. 安装 Ollama
- 官网下载
官网地址:Ollama 官网,点击下载,按照提示直接安装即可

- 命令安装
| macOS | linux | Windows通过 WSL2 安装 |
|---|---|---|
| brew install ollama | curl -s https://ollama.com/install | curl -fsSL https://ollama.com/install.sh |
- 安装成功
ollama --version
执行以上命令,出现类似: ollama version is 0.12.xxx,即为安装成功
- 启动服务(默认监听 11434 端口)
ollama serve
2. 下载本地大模型(以 Llama 3 为例)
- 下载 8B 版本(推荐平衡性能与资源)
ollama run llama3
如下图:

- 或使用中文优化模型(如 Qwen)
ollama run qwen:7b
- ✅ 验证是否运行成功:
curl http://localhost:11434/api/tags
返回类似:
{
"models": [
{
"name": "llama3",
"digest": "sha256:...",
"size": 4700000000,
"modified_at": "2025-10-12T10:00:00.000Z"
}
]
}
3. 部署 RAGFlow(Docker 方式)
如果未安装 Docker,请先下载并安装:
Docker安装完成后,执行:
git clone https://github.com/infiniflow/ragflow.git
cd ragflow-main
cd docker // 根据最新的文件目录结构决定是否执行,进入到docker-compose.yml文件所在层级
- 启动服务
docker-compose up -d

- 查看服务状态
docker-compose ps
应该看到类似输出:
NAME COMMAND SERVICE STATUS PORTS
ragflow-api-1 "/bin/bash /entryp..." api running 0.0.0.0:9381->9381/tcp
ragflow-web-1 "/docker-entrypoint..." web running 0.0.0.0:9380->80/tcp
ragflow-mysql-1 "docker-entrypoint.s..." mysql running 3306/tcp
ragflow-minio-1 "/usr/bin/docker-ent..." minio running 9000/tcp, 9001/tcp
ragflow-redis-1 "docker-entrypoint.s..." redis running 6379/tcp
- 启动后访问:
🌐 前端地址:http://localhost:80

💡 提示:首次启动可能需要几分钟初始化数据库和模型服务。
二、配置 RAGFlow 使用 Ollama 模型
1.登录 RAGFlow 管理后台
打开 http://localhost:80,注册并登录。
2.添加 Ollama 作为 LLM 提供商
- 点击「右上角头像」→进入 「模型管理」→「大模型」→「添加」

填写配置:
| 字段 | 值 |
|---|---|
| 模型名称 | gemma3:4b |
| 模型类型 | chat |
| API 地址 | http://host.docker.internal:11434/v1 (Mac/Win) 或 http://172.17.0.1:11434/v1 (Linux) |
| 上下文长度 | 8000 |
⚠️ 注意:Docker 容器内访问宿主机 Ollama,需使用特殊 IP,如 host.docker.internal

- 点击 「测试连接」,成功后保存。

三、 构建你的私有知识库
1.创建知识库
- 点击 「知识库」→「创建」,输入名称如 公司产品手册。

2.上传文档
- 支持格式:PDF、.docx、.xlsx、.pptx、.txt、.html、图片等。
- 拖拽上传你的文档,例如:
- 《 产品说明书.pdf 》
- 《 API 接口文档.docx 》
- 《 销售数据.xlsx 》

3.设置助理
回到首页,点击「聊天」→「创建聊天」→「设置助理信息」→「保存」

注意:
如果没有使用知识库,记得打开系统提示中的“{knowledge}可选按钮”,否则无法进行保存。

发送聊天信息之前,记得选择模型!

四、开始问答:让 AI 基于你的文档回答
1.场景示例
- 假设你上传了一份《智能家居产品手册》,现在提问:
智能灯泡支持哪些语音助手?
- RAGFlow 的工作流程如下:

2.实际效果
- 用户提问:
我们的智能灯泡兼容哪些语音平台?
- AI 回答:
智能灯泡的语音平台兼容性取决于具体的智能灯泡品牌和型号。以下是一些常见的智能灯泡品牌及其支持的语音平台:
1.Philips Hue:
主流支持: Amazon Alexa, Google Assistant, Apple HomeKit (通过 Hub) 特色:
Philips Hue 是最受欢迎的智能灯泡品牌之一,支持多种语音控制和自动化场景。
2. Yeelight:…

答案精准,且标注来源页码,极大提升可信度。
五、高级技巧:自定义 Prompt 与 Embedding 模型
1.使用本地 Embedding 模型
- RAGFlow 也支持通过 Ollama 提供嵌入模型:
ollama run bge-large-zh
-
在 RAGFlow 中配置 Embedding 模型:
- 模型类型:Ollama
- API 地址:http://host.docker.internal:11434/v1
- 模型名:bge-large-zh
-
中文语义匹配效果更佳!
2.自定义 Prompt 模板
- 在知识库设置中,可以修改 Prompt:
你是一个专业的产品顾问。请根据以下上下文回答问题,不要编造信息。
如果不知道,回答“暂无相关信息”。
上下文:
{{context}}
问题:{{question}}
回答:
六、性能与资源建议
| 组件 | 最低配置 | 推荐配置 |
|---|---|---|
| Ollama (Llama3 8B) | 16GB RAM, 8核CPU | 32GB RAM + NVIDIA GPU (8GB显存) |
| RAGFlow | 8GB RAM | 16GB RAM + SSD |
| 系统 | Ubuntu 20.04+ / macOS | Ubuntu 22.04 + Docker |
💡 小模型推荐:qwen:1.8b 或 phi3:mini,可在 8GB 内存运行。
七、总结
-
通过 Ollama + RAGFlow,我们实现了:
- 数据完全本地化,无泄露风险
- 基于私有文档的精准问答
- 支持复杂格式文档解析
- 可扩展、可定制的 RAG 流程
- 等等…
-
这套组合非常适合:
- 企业内部知识库
- 法律合同检索
- 科研文献助手
- 客服问答机器人
- 等等…
八、参考资料
火山引擎开发者社区是火山引擎打造的AI技术生态平台,聚焦Agent与大模型开发,提供豆包系列模型(图像/视频/视觉)、智能分析与会话工具,并配套评测集、动手实验室及行业案例库。社区通过技术沙龙、挑战赛等活动促进开发者成长,新用户可领50万Tokens权益,助力构建智能应用。
更多推荐
所有评论(0)