RAGFlow完整部署教程-MacOS版

16 阅读21分钟

💡 本教程专为非技术人员编写,每一步都有详细说明

🎯 目标:在 MacOS 本地搭建企业级知识库(使用 1.5B 小模型实验)

⏰ 预计耗时:1-2 小时(含下载时间)


📋 目录


✅ 准备工作

1. 检查系统要求

**硬件要求: **

  • MacOS 版本:11.0 或更高(建议 12.0+)

  • CPU:4核心或更多

  • 内存:8GB 或更多(推荐 16GB)

  • 硬盘空间:至少 50GB 可用空间

  • 网络:稳定的互联网连接(需要下载约 10GB 数据)

**如何查看系统信息: **

  1. 点击屏幕左上角的  图标

  2. 选择"关于本机"

  3. 查看 macOS 版本、处理器、内存信息


2. 需要安装的软件(本教程会逐步安装)

| 软件 | 用途 | 大小 |

|-----|------|------|

| Homebrew | MacOS 软件包管理器(类似应用商店) | 约 100MB |

| Docker Desktop | 容器管理工具(用于运行 RAGFlow) | 约 500MB |

| Ollama | 本地大模型运行工具 | 约 200MB |

| Qwen2-1.5B 模型 | 小型语言模型 | 约 1GB |

| nomic-embed-text | 文档向量化模型 | 约 500MB |

| RAGFlow | 企业级知识库系统 | 约 5GB |

总计:约 7-10GB 下载量


🚀 第一阶段:安装基础环境

步骤 1.1:安装 Homebrew(MacOS 必备工具)

**Homebrew 是什么? **

Homebrew 是 MacOS 的软件包管理器,可以让你通过命令行快速安装软件,就像 App Store 一样,但更强大。

**安装步骤: **

  1. **打开终端(Terminal) **

   - 方法 1:按 Command + 空格,输入 Terminal,回车

   - 方法 2:在"应用程序" → "实用工具" → "终端"

  1. 复制并粘贴以下命令到终端,按回车


/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"

  1. 等待安装(可能需要 5-10 分钟)

   - 安装过程中会要求输入 Mac 的登录密码(输入时不显示字符,这是正常的)

   - 看到 ==> Installation successful! 表示安装成功

  1. 验证安装


brew --version

看到类似 Homebrew 4.x.x 的版本号表示成功。


步骤 1.2:安装 Docker Desktop

**Docker 是什么? **

Docker 是一个容器管理工具,可以让软件在独立的环境中运行,避免各种配置冲突。RAGFlow 需要 Docker 来运行。

**安装步骤: **

**方法 1:通过 Homebrew 安装(推荐) **

  1. 在终端输入以下命令


brew install --cask docker

  1. 等待下载和安装(约 5-10 分钟,取决于网速)

  2. 启动 Docker Desktop

   - 在"应用程序"中找到"Docker"图标

   - 双击打开

   - 首次启动需要授权,点击"允许"

   - 等待 Docker 引擎启动(右上角状态栏看到鲸鱼图标变绿)

**方法 2:官网下载安装(备选) **

  1. 访问:www.docker.com/products/do…

  2. 下载 MacOS 版本(选择对应芯片:Intel 或 Apple Silicon)

  3. 打开下载的 .dmg 文件

  4. 将 Docker 图标拖到"应用程序"文件夹

  5. 启动 Docker Desktop

**验证安装: **


docker --version

docker compose version

看到版本号表示安装成功。


步骤 1.3:配置 Docker 资源(重要)

RAGFlow 需要足够的内存和存储空间,我们需要调整 Docker 的资源限制。

  1. 打开 Docker Desktop

  2. **点击右上角的齿轮图标(设置) **

  3. **选择 "Resources"(资源) **

  4. **调整以下参数: **

   - **CPUs(CPU 核心) **:设置为 4 或更多

   - **Memory(内存) **:设置为 8GB 或更多(推荐 12GB)

   - **Swap(交换空间) **:设置为 2GB

   - **Disk image size(磁盘大小) **:设置为 60GB 或更多

  1. **点击 "Apply & Restart"(应用并重启) **

  2. 等待 Docker 重启完成


🤖 第二阶段:安装 Ollama 和模型

步骤 2.1:安装 Ollama

**Ollama 是什么? **

Ollama 是一个轻量级的大模型运行工具,可以在本地运行各种开源大模型(如 Qwen、Llama 等),无需依赖云服务。

**安装步骤: **

  1. 在终端输入以下命令


curl -fsSL https://ollama.com/install.sh | sh

  1. 等待安装完成(约 1-2 分钟)

  2. 验证安装


ollama --version

看到版本号表示成功。


步骤 2.2:下载 Qwen2-1.5B 模型(主要对话模型)

**Qwen2-1.5B 是什么? **

这是阿里云开源的小型语言模型,参数量 1.5B(15亿),大小约 1GB,适合本地实验使用。

**下载步骤: **

  1. 在终端输入以下命令


ollama pull qwen2:1.5b

  1. 等待下载(约 5-10 分钟,取决于网速)

   - 你会看到下载进度条

   - 显示 success 表示下载完成

**说明: ** 这个模型将用于回答用户问题。


步骤 2.3:下载嵌入模型(用于文档向量化)

**嵌入模型是什么? **

嵌入模型用于将文档转换为向量(数字表示),这样系统才能理解文档内容并进行语义检索。

**下载步骤: **

  1. 在终端输入以下命令


ollama pull nomic-embed-text

  1. 等待下载(约 3-5 分钟)


步骤 2.4:验证模型安装

**查看已安装的模型: **


ollama list

你应该看到类似输出:


NAME                    ID              SIZE    MODIFIED

qwen2:1.5b             abc123def       1.0 GB  2 minutes ago

nomic-embed-text       xyz789ghi       550 MB  1 minute ago


步骤 2.5:启动 Ollama 服务

**在终端输入: **


ollama serve

**注意: **

  • 这个终端窗口需要保持打开状态(不要关闭)

  • 你会看到 Listening on 127.0.0.1:11434 表示服务已启动

  • 可以新开一个终端窗口继续后续操作

**如何新开终端窗口: **

  • Command + T 在当前终端新开一个标签页

  • 或者按 Command + N 打开新的终端窗口


步骤 2.6:测试 Ollama(可选但推荐)

**在新的终端窗口中测试: **


curl http://localhost:11434/api/tags

如果返回 JSON 格式的模型列表,说明 Ollama 运行正常。

**或者直接对话测试: **


ollama run qwen2:1.5b "你好,请介绍一下自己"

模型应该会用中文回复你。按 Ctrl + D 或输入 /bye 退出对话。


🏗️ 第三阶段:部署 RAGFlow

步骤 3.1:下载 RAGFlow 代码

**克隆 RAGFlow 仓库: **

  1. **创建工作目录(建议) **


# 在桌面创建一个文件夹用于存放项目

cd ~/Desktop/企业知识库

  


# 如果文件夹不存在,先创建

mkdir -p ~/Desktop/企业知识库

cd ~/Desktop/企业知识库

  1. 下载 RAGFlow 代码


git clone https://github.com/infiniflow/ragflow.git

**如果提示 **git: command not found** **


# 安装 git

brew install git

  


# 然后重新执行克隆命令

git clone https://github.com/infiniflow/ragflow.git

  1. 进入 RAGFlow 目录


cd ragflow


步骤 3.2:配置 RAGFlow 环境变量

**创建配置文件: **


# 进入 docker 目录

cd docker

  


# 复制配置文件模板

cp .env.example .env


步骤 3.3:编辑配置文件(关键步骤)

**打开配置文件进行编辑: **


# 使用 nano 编辑器(MacOS 自带)

nano .env

**需要修改的配置项: **

找到以下配置并修改(使用键盘方向键移动光标):


# ============ Ollama 配置(重要)============

# 找到这一行并修改

OLLAMA_API_BASE=http://host.docker.internal:11434

OLLAMA_API_KEY=ollama  # 可以保持默认

  


# ============ 默认模型配置 ============

# 对话模型

LLM_MODEL=qwen2:1.5b

  


# 嵌入模型

EMBEDDING_MODEL=nomic-embed-text

  


# ============ 向量数据库配置(使用 Elasticsearch)============

# 确保以下配置存在

VECTOR_DB=elasticsearch

  


# ============ 其他重要配置 ============

# 如果需要修改端口(默认 9380)

# RAG_SERVER_PORT=9380

  


# 数据存储目录(默认即可)

# RAG_DATA_DIR=./data

**保存文件: **

  • Ctrl + O(保存)

  • Enter(确认)

  • Ctrl + X(退出)


步骤 3.4:启动 RAGFlow

**启动所有服务: **


# 确保在 ragflow/docker 目录下

docker compose up -d

**第一次启动说明: **

  • 需要下载多个 Docker 镜像(约 5-8GB)

  • 整个过程可能需要 20-30 分钟(取决于网速)

  • 你会看到类似这样的输出:


[+] Running 8/8

 ✔ Network ragflow_default       Created

 ✔ Container ragflow-mysql       Started

 ✔ Container ragflow-redis       Started

 ✔ Container ragflow-es          Started

 ✔ Container ragflow-minio       Started

 ✔ Container ragflow-ragflow     Started


步骤 3.5:查看启动状态

**检查所有容器是否正常运行: **


docker compose ps

你应该看到类似输出:


NAME                    STATUS              PORTS

ragflow-mysql           Up 2 minutes        3306/tcp

ragflow-redis           Up 2 minutes        6379/tcp

ragflow-es              Up 2 minutes        9200/tcp, 9300/tcp

ragflow-minio           Up 2 minutes        9000/tcp, 9001/tcp

ragflow-ragflow         Up 2 minutes        0.0.0.0:9380->9380/tcp

**所有服务的 STATUS 都应该是 "Up"(运行中) **


步骤 3.6:查看日志(排查问题)

**如果有服务启动失败,查看日志: **


# 查看所有服务日志

docker compose logs

  


# 查看 RAGFlow 主服务日志

docker compose logs ragflow

  


# 实时查看日志(按 Ctrl+C 退出)

docker compose logs -f


步骤 3.7:等待服务完全启动

**RAGFlow 需要初始化数据库和服务,第一次启动需要等待 3-5 分钟。 **

**如何确认启动完成? **


# 查看 RAGFlow 日志,等待看到类似输出:

docker compose logs ragflow | grep "Application startup complete"

或者直接访问:http://localhost:9380

如果能看到登录页面,说明启动成功!


⚙️ 第四阶段:配置 RAGFlow

步骤 4.1:首次访问 RAGFlow

  1. 打开浏览器(推荐使用 Chrome 或 Safari)

  2. 访问地址http://localhost:9380

  3. 你会看到 RAGFlow 的欢迎页面


步骤 4.2:创建管理员账号

**首次访问需要注册账号: **

  1. **点击"注册"或"Sign Up" **

  2. 填写信息

   - 邮箱:随意填写(如 admin@local.com,不需要真实邮箱)

   - 昵称:你的名字或公司名

   - 密码:设置一个强密码(至少 8 位)

  1. 点击"注册"完成

  2. 使用刚才的账号密码登录


步骤 4.3:配置模型(核心步骤)

登录后,需要配置 Ollama 模型:

1. 进入模型配置页面

  • 点击右上角的"设置"图标(齿轮)

  • 选择"模型管理"或"Model Management"

2. 添加对话模型(LLM)

点击"添加模型"或"Add Model"按钮:

**配置对话模型: **


模型类型(Model Type):Ollama

模型名称(Model Name):qwen2:1.5b

API 地址(API Base):http://host.docker.internal:11434

API Key:ollama(保持默认)

最大 Token(Max Tokens):2048

温度(Temperature):0.7

点击"测试连接"或"Test Connection",确保连接成功。

点击"保存"。

3. 添加嵌入模型(Embedding)

再次点击"添加模型":

**配置嵌入模型: **


模型类型(Model Type):Ollama Embedding

模型名称(Model Name):nomic-embed-text

API 地址(API Base):http://host.docker.internal:11434

API Key:ollama(保持默认)

点击"测试连接",确保成功。

点击"保存"。


步骤 4.4:设置默认模型

在"模型管理"页面:

  1. 设置默认对话模型

   - 找到 qwen2:1.5b

   - 点击"设为默认"或"Set as Default"

  1. 设置默认嵌入模型

   - 找到 nomic-embed-text

   - 点击"设为默认"


📚 第五阶段:创建知识库并测试

步骤 5.1:创建知识库

  1. 回到主页,点击"知识库"或"Knowledge Base"

  2. **点击"创建知识库"或"Create Knowledge Base" **

  3. 填写知识库信息

   - 名称:企业文档库(或你喜欢的名字)

   - 描述:公司内部文档、规章制度、操作手册等

   - 语言:中文(Chinese)

  1. 选择解析策略

   - 自动解析(推荐):适用于大多数文档

   - 深度解析:适用于复杂的表格和图文混排

   - OCR 解析:适用于扫描件和图片

  1. **点击"创建" **


步骤 5.2:上传测试文档

**准备测试文档: **

建议先准备一些简单的文档进行测试:

  • PDF 文档(如公司介绍、产品说明)

  • Word 文档

  • Markdown 文档

  • 文本文件

**上传文档: **

  1. 进入刚创建的知识库

  2. **点击"上传文档"或"Upload Documents" **

  3. 选择文件(支持批量上传)

  4. 等待上传和解析

   - 系统会自动解析文档

   - 提取文本内容

   - 生成向量嵌入

   - 存储到向量数据库

**解析时间: **

  • 小文档(< 10 页):1-2 分钟

  • 中等文档(10-50 页):3-5 分钟

  • 大文档(> 50 页):5-10 分钟


步骤 5.3:查看文档解析结果

**检查文档是否解析成功: **

  1. 在知识库中找到上传的文档

  2. 点击文档名称查看详情

  3. 检查以下信息

   - 文档状态:应该显示"已完成"或"Completed"

   - 分块数量:显示文档被分成了多少个片段

   - 向量数量:显示生成了多少个向量

**如果状态是"失败"或"Failed": **

  • 查看错误信息

  • 检查文档格式是否支持

  • 尝试重新上传


步骤 5.4:配置检索策略(优化检索效果)

**在知识库设置中配置: **

  1. 点击知识库右上角的"设置"图标

  2. 配置检索参数


检索方式:

  ✅ 向量检索(Vector Search)

  ✅ 关键词检索(Keyword/BM25)

  ✅ 混合检索(Hybrid)- 推荐

  


Top K:5

  (从知识库中检索前 5 个最相关的文档片段)

  


相似度阈值:0.7

  (只返回相似度 > 0.7 的结果)

  


重排序(Rerank):启用

  (对检索结果进行二次排序,提高准确率)

  1. **点击"保存" **


步骤 5.5:创建对话应用

**基于知识库创建问答应用: **

  1. **点击"应用"或"Applications" **

  2. **点击"创建应用"或"Create Application" **

  3. 选择应用类型

   - **问答助手(Q&A Assistant) ** - 推荐

   - 对话机器人(Chatbot)

   - API 服务

  1. 配置应用


应用名称:企业知识库助手

关联知识库:企业文档库(选择刚才创建的知识库)

对话模型:qwen2:1.5b

嵌入模型:nomic-embed-text

  1. **配置提示词(Prompt) **:


你是一个企业知识库智能助手,专门负责回答员工关于公司文档、规章制度、操作流程等问题。

  


**你的职责:**

1. 根据提供的文档内容,准确回答用户的问题

2. 如果文档中没有相关信息,请明确告知用户

3. 回答时要简洁、专业、易懂

4. 如果需要,可以引用文档原文作为依据

  


**回答格式:**

- 直接回答用户的问题

- 如果有多个答案,分点列出

- 最后注明信息来源(文档名称和页码)

  


**相关文档内容:**

{context}

  


**用户问题:**

{query}

  


**你的回答:**

  1. 高级配置(可选):


上下文窗口(Context Window):2048 tokens

历史对话轮数(Chat History):5 轮

流式输出(Streaming):开启(实时显示回答)

引用来源(Show Citations):开启(显示答案来源)

  1. **点击"创建" **


步骤 5.6:测试问答效果

**在对话界面测试: **

  1. 打开刚创建的应用

  2. 在对话框中输入问题,例如:

   - "请介绍一下公司的组织架构"

   - "员工请假流程是什么?"

   - "如何申请报销?"

  1. 查看回答

   - 回答是否准确

   - 是否标注了引用来源

   - 是否有文档页码

  1. 测试多轮对话

   - "刚才的流程有哪些步骤?"

   - "第二步需要准备什么材料?"


步骤 5.7:评估检索效果

**检查以下指标: **

| 评估维度 | 标准 | 优化建议 |

|---------|------|---------|

| 准确性 | 回答与文档内容一致 | 调整提示词,增加"严格根据文档回答"的要求 |

| 覆盖度 | 能找到相关文档片段 | 增加 Top K 值(5 → 10) |

| 相关性 | 检索结果与问题高度相关 | 调整相似度阈值(0.7 → 0.75) |

| 响应速度 | < 5 秒 | 使用更小的 Top K 或升级硬件 |

| 引用准确性 | 正确标注文档来源 | 确保开启了"Show Citations" |


🎨 第六阶段:优化配置

优化 6.1:文档分块策略优化

**为什么需要优化分块? **

文档分块的大小直接影响检索效果:

  • 分块太大:包含太多无关信息,影响准确性

  • 分块太小:上下文不完整,影响理解

**推荐配置: **


分块大小(Chunk Size):500 tokens

重叠部分(Overlap):50 tokens

分块策略(Strategy):语义分块(Semantic Chunking)

**如何配置: **

  1. 进入知识库设置

  2. 找到"文档处理"或"Document Processing"

  3. 调整分块参数

  4. 重新处理文档(如果需要)


优化 6.2:检索策略优化

**混合检索配置(推荐): **


向量检索权重:0.7

关键词检索权重:0.3

启用重排序(Reranking):是

Top K:5

相似度阈值:0.70

**适用场景: **

  • 专业术语多:增加关键词检索权重

  • 语义理解重要:增加向量检索权重


优化 6.3:提示词优化

**针对不同场景优化提示词: **

**场景 1:严格问答(不允许编造) **


你是一个企业知识库助手。请严格根据以下文档内容回答问题。

如果文档中没有相关信息,请回答"抱歉,我在知识库中没有找到相关信息"。

绝对不要编造或猜测答案。

  


文档内容:{context}

问题:{query}

**场景 2:友好助手(可以引申) **


你是一个友好的企业知识库助手。请根据文档内容回答问题,

如果文档中信息不完整,可以基于常识进行合理补充,但要明确说明哪些是文档内容,哪些是补充说明。

  


文档内容:{context}

问题:{query}

**场景 3:专业顾问(详细解释) **


你是一个专业的企业知识顾问。请根据文档内容提供详细、专业的回答。

回答时要包括:

1. 直接答案

2. 相关背景说明

3. 注意事项

4. 相关政策或流程

  


文档内容:{context}

问题:{query}


优化 6.4:模型参数调优

**Temperature(温度)参数: **


0.3 - 0.5:适合事实性问答(推荐用于企业知识库)

0.7 - 0.9:适合创意性对话

1.0+:高度随机,不推荐

**Top P(核采样): **


0.9 - 0.95:平衡准确性和多样性(推荐)

0.8:更保守,更准确

1.0:完全随机

**Max Tokens(最大输出长度): **


512:简短回答

1024:中等长度回答

2048:详细回答(推荐)


优化 6.5:性能优化

**如果遇到响应慢的问题: **

  1. 减少 Top K 值:10 → 5 → 3

  2. 调整 Docker 内存


# 在 Docker Desktop 设置中增加内存到 12-16GB

  1. 使用更小的分块

500 tokens → 300 tokens

  1. 禁用部分检索策略

只使用向量检索,关闭 BM25

  1. 限制并发请求

同时只处理 1-2 个请求


🔄 替换更大模型指南

当你在本地验证完功能后,可以轻松替换为更大的模型以获得更好的效果。

方案 A:升级到 Qwen2-7B(中等规模)

**硬件要求: **

  • 内存:16GB+

  • 存储:额外 5GB

**步骤: **

  1. 下载模型


ollama pull qwen2:7b

  1. 在 RAGFlow 中修改模型配置

   - 进入"模型管理"

   - 编辑对话模型

   - 将模型名称改为 qwen2:7b

   - 保存并测试

  1. 无需重新上传文档(嵌入模型不变)

  2. 重新测试问答效果


方案 B:升级到 Qwen2-72B 或 DeepSeek(大规模,推荐服务器)

**硬件要求: **

  • GPU:RTX 4090 / A100

  • 显存:24GB+

  • 内存:32GB+

**步骤: **

  1. 在服务器上安装 Ollama

  2. 下载大模型


# Qwen2-72B

ollama pull qwen2:72b

  


# 或 DeepSeek

ollama pull deepseek-coder:33b

  1. 修改 RAGFlow 配置

   - 将 Ollama API 地址改为服务器地址

   - 修改模型名称

  1. 测试并对比效果


方案 C:使用云端 API(无需本地资源)

**支持的服务: **

  • OpenAI GPT-4

  • 阿里云通义千问(Qwen)

  • 百度文心一言

  • DeepSeek API

**步骤: **

  1. 在 RAGFlow 模型管理中添加 API 模型

  2. 配置 API Key

  3. 选择使用 API 模型

  4. 注意:嵌入模型仍然推荐使用本地 Ollama(成本考虑)


🆘 常见问题解决

问题 1:Docker 启动失败

**现象: ** docker compose up -d 报错

**解决方案: **


# 1. 检查 Docker 是否运行

docker ps

  


# 2. 检查端口占用

lsof -i :9380

  


# 3. 清理并重启

docker compose down -v

docker compose up -d

  


# 4. 查看详细错误日志

docker compose logs


问题 2:Ollama 连接失败

**现象: ** RAGFlow 无法连接到 Ollama

**解决方案: **


# 1. 确认 Ollama 正在运行

curl http://localhost:11434/api/tags

  


# 2. 检查 Docker 配置

# 确保 .env 中使用 host.docker.internal

  


# 3. 重启 Ollama

pkill ollama

ollama serve

  


# 4. 测试连接

curl http://host.docker.internal:11434/api/tags


问题 3:文档解析失败

**现象: ** 上传的文档一直显示"处理中"或"失败"

**解决方案: **

  1. 检查文档格式

   - PDF 是否加密?(需要先解密)

   - Word 是否损坏?(尝试重新保存)

   - 文件大小是否过大?(建议 < 50MB)

  1. 查看解析日志

docker compose logs ragflow | grep "parse"

  1. 尝试不同的解析策略

   - 自动解析 → 深度解析

   - 或启用 OCR

  1. 重新上传

   - 删除失败的文档

   - 重新上传


问题 4:回答不准确

**现象: ** 答案与文档内容不符

**优化方案: **

  1. 调整检索参数

Top K: 3510(逐步增加)

相似度阈值: 0.70.75(提高门槛)

  1. 优化提示词

添加"严格根据文档内容回答"的要求

添加"如无相关信息请明确告知"的要求

  1. 检查文档质量

文档是否完整?

文档是否有乱码?

关键信息是否被正确提取?

  1. 调整分块策略

减小分块大小:500 → 300 tokens

增加重叠:50 → 100 tokens


问题 5:响应速度慢

**现象: ** 回答等待时间过长(> 10 秒)

**优化方案: **

  1. 减少检索数量

Top K: 1053

  1. 增加 Docker 资源

在 Docker Desktop 中增加 CPU 和内存

  1. 使用更小的模型

qwen2:1.5b → qwen2:0.5b(如果效果可接受)

  1. 优化分块

减少分块数量:删除冗余文档

  1. 检查系统资源

# 查看 CPU 和内存使用情况

top

  


# 查看 Docker 容器资源使用

docker stats


问题 6:内存不足

**现象: ** 系统卡顿或提示内存不足

**解决方案: **

  1. 使用更小的模型

ollama pull qwen2:0.5b  # 只需 500MB

  1. 限制 Docker 内存

在 Docker Desktop 设置中限制最大内存

  1. 关闭其他应用

释放系统内存

  1. 停止不必要的 Docker 容器

docker ps -a

docker stop <container_id>


问题 7:无法访问 Web 界面

**现象: ** 浏览器打开 http://localhost:9380 无法访问

**解决方案: **


# 1. 检查 RAGFlow 容器是否运行

docker compose ps

  


# 2. 检查端口映射

docker compose ps | grep 9380

  


# 3. 查看日志

docker compose logs ragflow

  


# 4. 尝试重启

docker compose restart ragflow

  


# 5. 检查防火墙设置

# 确保 9380 端口未被阻止

  


# 6. 尝试其他端口

# 修改 .env 中的 RAG_SERVER_PORT=9381

# 重新启动服务


问题 8:模型下载失败

**现象: ** ollama pull 下载中断或失败

**解决方案: **


# 1. 检查网络连接

ping ollama.com

  


# 2. 使用代理(如果网络受限)

export HTTP_PROXY=http://127.0.0.1:7890

export HTTPS_PROXY=http://127.0.0.1:7890

  


# 3. 重试下载

ollama pull qwen2:1.5b

  


# 4. 手动下载模型文件

# 访问 Ollama 官网或镜像站下载

# 然后导入本地

  


# 5. 使用国内镜像(如有)

# 参考社区提供的镜像源


📊 性能监控与优化

监控指标

**系统资源监控: **


# 查看 Docker 容器资源使用

docker stats

  


# 查看系统整体资源

top

  


# 查看磁盘使用

df -h

**关键指标: **

  • CPU 使用率:< 80%

  • 内存使用:< 90%

  • 响应时间:< 5 秒

  • 磁盘空间:保留 > 20GB


性能测试

**简单压力测试: **


# 使用 Apache Bench(需要安装)

brew install ab

  


# 测试并发(10 个并发,100 个请求)

ab -n 100 -c 10 -p request.json -T application/json http://localhost:9380/api/chat


🎓 下一步学习

进阶功能

  1. API 集成

   - 将知识库集成到企业微信

   - 集成到钉钉机器人

   - 开发自定义前端

  1. 多知识库管理

   - 按部门创建不同知识库

   - 设置访问权限

   - 知识库联合检索

  1. 知识图谱

   - 启用 GraphRAG

   - 构建实体关系

   - 增强推理能力

  1. 多模态支持

   - 图片理解

   - 视频字幕提取

   - 音频转文字

✅ 部署检查清单

在完成所有步骤后,请确认以下检查项:

  • Docker Desktop 正常运行

  • Ollama 服务正常运行(ollama list 可以看到模型)

  • RAGFlow 所有容器状态为 "Up"(docker compose ps

  • 可以访问 http://localhost:9380

  • 成功登录 RAGFlow

  • 模型配置正确并测试连接成功

  • 创建了测试知识库

  • 成功上传并解析了测试文档

  • 创建了问答应用

  • 测试问答效果符合预期

**如果以上所有项都完成,恭喜你成功部署了企业级知识库! **


**后续迁移到服务器只需要: **

  1. 在服务器上重复相同的安装步骤

  2. 下载更大的模型(如 Qwen2-7B 或 72B)

  3. 导出本地知识库数据

  4. 导入到服务器

  5. 配置域名和 SSL 证书