【收藏向】AI领域实战:n8n+Ollama+Qwen3搭建企业级RAG检索系统-知识库

本文专为AI小白、程序员设计,全程实战导向,详细拆解n8n+Ollama+Qwen3构建企业级RAG检索系统的完整流程,包含环境搭建、模型配置、工作流创建等关键步骤,附避坑指南与常用命令,建议收藏备用,跟着操作即可快速上手企业级知识库搭建。

一、Qwen3-Embedding模型核心介绍

Qwen3-Embedding是阿里推出的高效嵌入模型,具备优异的文本向量化能力,是构建RAG系统的核心组件之一。以下是官方及权威获取渠道,方便大家下载与查阅详情:

  • 硅基流动:https://cloud.siliconflow.cn/me/models
  • 魔搭社区:https://www.modelscope.cn/search?search=Qwen3-Embedding
  • HuggingFace:https://huggingface.co/Qwen/collections

模型相关展示:

二、Ollama环境安装与配置(附自定义路径避坑)

Ollama是轻量易用的本地大模型部署工具,无需复杂配置即可快速运行各类大模型,是本次RAG系统的本地算力核心。

Ollama官方地址:https://ollama.com/

本次实操安装路径:E:\S_Software\Ollama(建议避开C盘系统盘,避免后续模型下载占用过多系统空间)

2.1 自定义安装目录创建

手动创建文件夹目录:E:\S_Software\Ollama,后续所有Ollama相关文件均放在此目录下,方便统一管理。

2.2 执行安装命令

将Ollama安装包(.exe文件)放入上述自定义目录,然后在该目录下打开CMD命令行,输入以下安装命令:

OllamaSetup.exe /DIR=E:\S_Software\Ollama

说明:DIR参数后紧跟的是手动创建的自定义路径,输入命令后回车,即可进入安装程序,此时安装路径会自动定位到我们设置的目录。

2.3 安装验证

安装完成后,在任意CMD窗口输入ollama命令,若能正常显示Ollama版本信息及命令列表,说明安装成功。

2.4 关键配置:修改模型下载目录

Ollama默认模型下载目录在C盘,容易占用系统空间,建议手动修改到自定义目录下,步骤如下:

① 创建模型存储目录+修改默认路径

在Ollama安装目录下新建models文件夹,路径为:E:\S_Software\Ollama\models

打开Ollama客户端,点击settings(设置),找到Model location(模型位置)选项,将路径修改为上述新建的models文件夹路径。

② 已有模型转移(可选)

若之前已下载过模型,先在CMD中输入ollama list查看已安装模型:

然后退出Ollama客户端,找到默认模型目录:C盘→用户→你的电脑用户名→.ollama→models,将该目录下的所有内容剪切到新建的E:\S_Software\Ollama\models目录,最后删除C盘原有的models文件夹即可。

完成后验证:重新打开Ollama,输入ollama list仍能看到原有模型,说明转移成功。

2.5 前置依赖:Node.js安装(n8n运行基础)

n8n基于Node.js运行,需先安装Node.js环境,推荐版本v22及以上,本次实操安装版本为v24.11.1。

Node.js官网下载地址:https://nodejs.cn/download/

安装说明:下载对应系统版本的安装包,一路默认安装即可;若需自定义安装路径,可自行调整(建议记录安装路径,方便后续配置)。

安装完成后,在CMD中输入以下命令全局安装n8n:

npm install -g n8n   # -g表示全局安装,可在任意目录运行,安装耗时5-10分钟左右,视网络情况而定

常见报错解决:Windows系统可能出现gyp ERR! find VS错误,Linux/macOS可能出现distutils缺失错误,具体解决方案如下:

Windows:解决gyp ERR! find VS报错

① 报错原因:n8n依赖的sqlite3模块需要本地编译,系统缺少Visual Studio的C++编译工具链。

② 解决方案:安装Visual Studio 2022版本的C++桌面开发工具(2026版本暂不兼容npm,不推荐)。

工具下载地址:

  • 最新2022版本:https://visualstudio.microsoft.com/zh-hans/visual-cpp-build-tools/
  • 旧版备用:https://visualstudio.microsoft.com/zh-hans/vs/older-downloads/

安装步骤:

  1. 运行安装包,选择“C++ 桌面开发”,勾选“Windows SDK”(Win11系统勾选Win11 SDK,Win10勾选对应版本,建议同时勾选Win10和Win11 SDK,避免兼容问题)。
  2. 自定义安装目录:该工具需占用十几G空间,建议安装到非系统盘(如D盘)。

安装完成后重启电脑,确保环境变量生效。

补充说明:若觉得安装Visual Studio繁琐,也可选择Docker安装n8n,一个命令即可完成,适合对Docker熟悉的开发者。

Linux/macOS:解决distutils缺失报错

安装Python 3.x版本,并确保distutils模块可用,以Ubuntu为例,命令如下:

sudo apt-get install python3 python3-distutils

2.6 重新安装n8n(解决报错后)

若之前安装n8n失败,需先卸载清理缓存,再重新安装,命令如下:

# 1、卸载全局n8n
npm uninstall -g n8n
# 2、强制清理npm缓存
npm cache clean --force
# 3、验证缓存完整性
npm cache verify
# 4、重新全局安装n8n
npm install -g n8n
# 5、查看n8n版本及依赖(验证安装成功)
npm list -g n8n

2.7 启动n8n并访问

环境配置完成后,在CMD中输入n8n命令即可启动服务:

启动成功后,打开浏览器,输入http://localhost:5678/setup即可进入n8n初始化页面。

三、Qwen3-Embedding本地模型下载与测试

Qwen3-Embedding模型用于将文本转化为向量,是RAG检索的核心环节,以下提供两种本地下载方式,推荐新手使用方式二(命令行直接下载,更简便)。

3.1 模型下载

方式一:HuggingFace下载+Ollama创建(进阶)

\1. 下载GGUF量化模型:访问HuggingFace地址,下载适合本地部署的GGUF格式模型(推荐Q4_K_M量化版本,平衡性能与显存占用):https://huggingface.co/Qwen/Qwen3-Embedding-4B-GGUF/tree/main

\2. 创建Modelfile:在模型下载目录下,打开CMD输入以下命令创建最简Modelfile(将路径替换为你的模型实际路径):

echo FROM E:\Ollama\Qwen3-Embedding-4B-Q4_K_M.gguf > Modelfile

\3. 创建Ollama模型:输入以下命令,将下载的模型注册为Ollama可调用的模型(qwen3_embedding为自定义模型名,可自行修改):

ollama create qwen3_embedding -f Modelfile

方式二:Ollama命令直接下载(推荐新手)

无需手动下载模型文件,直接在CMD中输入以下命令,Ollama会自动下载并部署Qwen3-Embedding模型(Q4_K_M量化版本):

ollama run hf.co/Qwen/Qwen3-Embedding-4B-GGUF:Q4_K_M

3.2 模型测试(验证可用性)

模型部署完成后,需验证是否能正常生成向量,以下是两种方式的对应测试方法:

方式一测试:curl命令调用API

Windows系统需用双引号包裹JSON,注意转义,命令如下(model名需与ollama list输出的名称一致):

curl http://localhost:11434/api/embed -d "{\"model\":\"qwen3_embedding\",\"input\":\"Hello\"}"

方式二测试:命令行直接调用+curl验证

\1. 直接调用测试:在CMD中输入以下命令,若输出一串向量数据,说明模型正常运行:

ollama run hf.co/Qwen/Qwen3-Embedding-4B-GGUF:Q4_K_M "这是一个测试文本"

效果展示:

\2. curl API测试:输入以下命令,验证模型API调用可用性:

curl http://localhost:11434/api/embed -d "{\"model\": \"hf.co/Qwen/Qwen3-Embedding-4B-GGUF:Q4_K_M\",\"input\": \"Hello World\"}"

效果展示:

四、n8n可视化搭建RAG核心工作流

n8n提供可视化拖拽式操作,无需大量编码即可完成RAG工作流搭建,核心流程为:文件读取→循环处理→向量存储→文本分块→模型配置,步骤如下:

4.1 第一步:选择触发方式

为方便测试,先选择手动触发方式(Trigger manually),后续可根据实际需求替换为定时触发、API触发等。

4.2 第二步:添加文件读取节点

用于读取本地知识库文件(如MD、PDF等),步骤如下:

  1. 添加步骤:搜索file,找到Read/Write Files from Disk节点。
  2. 选择操作:勾选Read(读取文件,因本次使用本地知识库,此选项最适配)。

\3. 配置文件路径:在File Path中输入本地知识库文件夹路径,格式为E:\\F_File\\RAG\\****表示读取该文件夹下所有文件,注意路径中的反斜杠需双写转义)。

\4. 测试验证:点击节点旁的“测试”按钮,提示成功后,可查看右侧输出结果,确认能正常读取文件夹内的文件(如MD、PDF)。

输出示例:可看到读取到的文件列表及基础信息。

4.3 第三步:添加循环处理节点(Loop over Items)

用于循环读取文件夹内的多个文件,确保每个文件都能被处理,步骤如下:

  1. 添加节点:搜索Loop over Items,选择该节点(中文文档参考:https://docs.n8ncn.io/integrations/builtin/core-nodes/n8n-nodes-base.splitinbatches/)。
  2. 配置参数:Batch Size(批次大小)默认1即可,表示每次处理1个文件,按需调整。

\3. 执行测试:点击工作流顶部的“执行”按钮,验证循环节点能正常衔接文件读取节点,处理所有文件。

4.4 第四步:添加向量存储节点

将读取的文件转化为向量并存储,步骤如下:

  1. 添加节点:在循环节点后添加Vector节点,新手推荐选择Simple Vector Store(简易向量存储,适合学习演示;生产环境可替换为Pinecone、Milvus等专业向量数据库)。
  2. 选择操作:勾选Add documents from vector store(将文档添加到向量存储,即文档向量化)。
  3. 配置Memory key:默认值即可,后续检索时需使用相同的Memory key,确保前后一致。

\4. 注意事项:此时节点会显示红色感叹号,需补充配置两个关键组件——Embedding模型配置和Document文件解析配置。

4.5 第五步:配置文件解析与语义分割

包含Embedding模型配置(关联本地Qwen3-Embedding)、Document文件解析(处理不同格式文件)、语义分割(拆分长文本,提升检索精度)三个核心子步骤:

① Embedding模型配置(关联本地Ollama)

  1. 点击向量节点的Embedding配置项,选择Ollama作为嵌入模型来源(本地部署,无需联网)。
  2. 配置连接地址:默认localhost:11434,若提示连接失败,将localhost改为127.0.0.1(本地回环地址,兼容性更强)。
  3. 选择模型:在Model下拉框中,选择已部署的hf.co/Qwen/Qwen3-Embedding-4B-GGUF:Q4_K_M模型。

② Document文件解析配置

  1. 点击向量节点的Document配置项,选择Default Data Loader(默认数据加载器,支持多种文件格式)。
  2. 配置参数:
    1. Type of Data:选择Binary(二进制,适配PDF、MD等本地文件)。
    2. Mode:默认Load All Input Data(加载所有输入数据)。
    3. Data Format:选择Auto Detect(自动解析文件格式),或根据实际文件类型手动选择。
    4. Text Splitting:选择Custom(自定义分块,提升检索精度)。

配置完成后,工作流初步形态如下:

③ 语义分割配置(关键优化)

长文本直接向量化会导致检索精度下降,需进行语义分割(按语义逻辑拆分短文本),步骤如下:

  1. 添加节点:在Document配置后添加Text Splitting(语义分割)节点。
  2. 配置参数:默认参数即可满足基础需求,进阶可调整Chunk Size(分块大小,单位为token)和Chunk Overlap(分块重叠度,建议10%-20%,保证上下文连贯性)。

五、搭建检索知识库工作流(实现问答功能)

完成文档向量化存储后,需搭建检索工作流,实现“用户提问→向量检索→模型生成答案”的完整链路,步骤如下:

5.1 完整工作流形态(文档处理链路)

文档处理链路(向量化存储)完整工作流如下,确保所有节点无红色感叹号,执行测试无报错:

运行成功提示:

5.2 新建检索工作流(问答链路)

  1. 新建工作流:点击n8n左侧“+”号,创建新工作流。
  2. 选择触发方式:选择On chat message(聊天消息触发,支持用户直接输入问题)。

5.3 添加AI Agent节点(核心问答组件)

AI Agent用于衔接对话模型与向量存储,实现“检索+生成”一体化,步骤如下:

  1. 添加节点:搜索AI Agent,选择该节点。
  2. 配置Chat Mode:选择对话模型(本次使用Deepseek,需提前获取API Key;也可使用Ollama本地部署的大模型,如Qwen3)。
    1. 获取API Key:通过硅基流动或Deepseek官方平台生成,生成后点击Create new credential创建凭证并填入。
  3. 配置Tool:添加Answer questions with vector store(使用向量存储回答问题)工具,在“描述”中填入:“该工具用于检索向量数据库中的知识库内容,辅助回答用户问题”。

配置完成后,工作流形态如下:

5.4 关联向量存储与模型

确保检索工作流能关联到之前创建的向量存储和本地Embedding模型,步骤如下:

  1. 关联向量存储:在Answer questions with vector store工具的Vector Store配置项中,选择Simple Vector Store,并确保Memory key与文档处理链路的Memory key一致。

  1. 关联对话模型:在Model配置项中,选择之前配置的Deepseek Chat model(或本地Ollama模型)。
  2. 关联Embedding模型:在Simple Vector StoreEmbedding配置项中,再次关联本地的Qwen3-Embedding模型(与文档处理链路一致)。

最终检索工作流形态:

六、测试知识库检索准确性

工作流搭建完成后,通过聊天窗口测试检索效果,验证是否能精准匹配本地知识库内容:

  1. 打开聊天窗口:点击AI Agent节点的open chat按钮,弹出对话窗口。
  2. 输入测试问题:例如“找一下ios禁止系统更新的网址”(该问题对应的答案需存在于本地知识库文件中)。

测试结果:系统能精准提取知识库中的内容进行回答,无冗余信息,排版清晰。

对比验证:直接在Deepseek官方对话中提问相同问题,无法获取本地知识库内容,说明RAG系统已生效。

优化方向:对于分段式长文本,检索精度可能受影响,可通过调整语义分块参数(如减小Chunk Size、增加重叠度)、更换更优的Embedding模型等方式优化。

补充测试:进一步提问分段式内容,通过精准提示(如“请从知识库中查找XX相关的分段内容”),可提升回答准确性。

七、必备工具:Ollama常用命令大全(收藏备用)

整理Ollama日常使用高频命令,涵盖模型下载、管理、调试等核心操作,新手建议收藏:

  1. 下载/运行模型:ollama run <模型名字>(如ollama run qwen3
  2. 清除模型上下文:/clear(对话过程中使用,清除当前会话记忆)
  3. 退出对话/关闭模型:/bye(退出当前模型对话界面)
  4. 查看模型运行细节(速度+token数):ollama run <模型名字> --verbose
  5. 查看本地已安装模型:ollama list
  6. 删除本地模型:ollama rm <模型名字>(释放存储空间)
  7. 查看模型详细信息:ollama show <模型名字>(如版本、大小、描述等)
  8. 启动Ollama服务器:ollama serve(手动启动服务,默认自动启动)
  9. 创建自定义模型:ollama create <自定义模型名> -f Modelfile(需提前创建Modelfile)

总结

本文通过n8n+Ollama+Qwen3实现了企业级RAG检索系统的本地搭建,全程实操导向,覆盖环境配置、模型部署、工作流搭建、检索测试等全流程,适合AI小白和程序员快速上手。通过该系统,可将本地文档转化为可检索的知识库,实现精准问答,后续可基于此优化向量数据库(替换为专业数据库)、优化分块策略、接入更多格式文件,提升系统性能与适用性。建议收藏本文,后续搭建过程中可随时查阅避坑指南与命令大全。

那么,如何系统的去学习大模型LLM?

作为一名从业五年的资深大模型算法工程师,我经常会收到一些评论和私信,我是小白,学习大模型该从哪里入手呢?我自学没有方向怎么办?这个地方我不会啊。如果你也有类似的经历,一定要继续看下去!这些问题啊,也不是三言两语啊就能讲明白的。

所以我综合了大模型的所有知识点,给大家带来一套全网最全最细的大模型零基础教程。在做这套教程之前呢,我就曾放空大脑,以一个大模型小白的角度去重新解析它,采用基础知识和实战项目相结合的教学方式,历时3个月,终于完成了这样的课程,让你真正体会到什么是每一秒都在疯狂输出知识点。

由于篇幅有限,⚡️ 朋友们如果有需要全套 《2025全新制作的大模型全套资料》,扫码获取~
在这里插入图片描述

为什么要学习大模型?

我国在A大模型领域面临人才短缺,数量与质量均落后于发达国家。2023年,人才缺口已超百万,凸显培养不足。随着AI技术飞速发展,预计到2025年,这一缺口将急剧扩大至400万,严重制约我国AI产业的创新步伐。加强人才培养,优化教育体系,国际合作并进是破解困局、推动AI发展的关键。

在这里插入图片描述

在这里插入图片描述

👉大模型学习指南+路线汇总👈

我们这套大模型资料呢,会从基础篇、进阶篇和项目实战篇等三大方面来讲解。
在这里插入图片描述
在这里插入图片描述

👉①.基础篇👈

基础篇里面包括了Python快速入门、AI开发环境搭建及提示词工程,带你学习大模型核心原理、prompt使用技巧、Transformer架构和预训练、SFT、RLHF等一些基础概念,用最易懂的方式带你入门大模型。
在这里插入图片描述

👉②.进阶篇👈

接下来是进阶篇,你将掌握RAG、Agent、Langchain、大模型微调和私有化部署,学习如何构建外挂知识库并和自己的企业相结合,学习如何使用langchain框架提高开发效率和代码质量、学习如何选择合适的基座模型并进行数据集的收集预处理以及具体的模型微调等等。
在这里插入图片描述

👉③.实战篇👈

实战篇会手把手带着大家练习企业级的落地项目(已脱敏),比如RAG医疗问答系统、Agent智能电商客服系统、数字人项目实战、教育行业智能助教等等,从而帮助大家更好的应对大模型时代的挑战。
在这里插入图片描述

👉④.福利篇👈

最后呢,会给大家一个小福利,课程视频中的所有素材,有搭建AI开发环境资料包,还有学习计划表,几十上百G素材、电子书和课件等等,只要你能想到的素材,我这里几乎都有。我已经全部上传到优快云,朋友们如果需要可以微信扫描下方优快云官方认证二维码免费领取【保证100%免费
在这里插入图片描述
相信我,这套大模型系统教程将会是全网最齐全 最易懂的小白专用课!!

### ### 环境准备 搭建基于 **Mem0AI**、**Ollama** 和 **Qwen2** 的中文版本地大模型运行环境,需要确保以下软件和工具的安装: - **Ollama**:用于本地运行大语言模型。 - **Git**:用于克隆 Mem0AI 的源码。 - **Python 3.10+**:用于运行 Mem0AI 的后端逻辑。 - **Docker Desktop**(可选):如果需要运行数据库服务(如 ChromaDB)。 确保系统中已安装上述工具,并配置好环境变量。 --- ### ### 拉取 Ollama 模型 首先,使用 Ollama 拉取 Qwen2 和嵌入模型: ```bash ollama pull qwen2:7b ollama pull nomic-embed-text ``` Qwen2 是阿里巴巴推出的开源大语言模型,支持中文场景[^1]。`nomic-embed-text` 是一个通用的文本嵌入模型,用于语义搜索和记忆存储。 --- ### ### 获取并配置 Mem0AI 源码 从 GitHub 获取 Mem0AI 的源码,并切换到支持 Ollama 的分支: ```bash git clone https://github.com/mem0ai/mem0.git cd mem0 git checkout user/dyadav/ollama-support ``` 该分支已经针对 Ollama 进行了适配,可以直接使用。接下来,安装 Python 依赖: ```bash python -m venv venv source venv/Scripts/activate pip install -r requirements.txt ``` --- ### ### 修改 Mem0AI 代码适配 Ollama 在 `mem0` 项目中,需要修改模型调用逻辑,使其支持 Ollama 的 API 接口。例如,在 `mem0/llm/ollama.py` 中添加以下代码: ```python import requests class OllamaLLM: def __init__(self, model="qwen2:7b"): self.model = model self.url = "http://localhost:11434/api/generate" def generate(self, prompt, history=None): payload = { "model": self.model, "prompt": prompt, "stream": False } response = requests.post(self.url, json=payload) return response.json()["response"] ``` 确保在 `config.py` 中指定使用该模型: ```python LLM_MODEL = "ollama" ``` --- ### ### 配置嵌入模型和数据库 Mem0AI 使用数据库存储记忆信息。可以选择使用 ChromaDB 或 Weaviate 作为后端。如果使用 ChromaDB,需要在 `mem0/vectorstore/chroma.py` 中配置嵌入模型为 `nomic-embed-text`: ```python from langchain.embeddings import HuggingFaceEmbeddings embeddings = HuggingFaceEmbeddings(model_name="nomic-ai/gpt4all-j") ``` 确保 `ollama` 正在运行,并且 `nomic-embed-text` 已加载。 --- ### ### 启动 Mem0AI 服务 完成配置后,启动 Mem0AI 服务: ```bash python main.py ``` 该服务将监听本地端口,提供基于 Qwen2 的中文对话接口,并支持记忆功能。 --- ### ### 验证中文对话与记忆功能 发送一个测试请求,验证模型是否能够处理中文并记住用户的历史信息: ```python from mem0 import Memory memory = Memory() user_id = "user_001" user_input = "我叫李四,我喜欢旅行。" # 存储记忆 memory.add(user_id, user_input) # 生成回复 response = memory.get_response(user_id, "你喜欢做什么?") print(response) ``` 如果一切正常,模型将返回与用户历史记忆相关的中文回复。 --- ###
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值