Comfyui-Easy-RAG
use rag with model in comfyui
Nodes (6)
The unglamorous first step that makes RAG possible
Frontier-model answers grounded in your own documents
Fully local, uncensored RAG chat that won't eat your VRAM
The fastest way to get a local LLM chatting inside ComfyUI
Why this pack ships 22MB of ready-made prompt libraries
The node that actually does the 'R' in RAG
🧠 ComfyUI Easy RAG
为 ComfyUI 带来极其简单、高效且强大的本地 RAG(检索增强生成)与大语言模型工作流体验。
</div>🌟 核心特性 (Key Features)
- 📄 多格式文档解析:一键无缝加载并解析
TXT,MD,JSON,PDF等常见文档格式。 - 🧠 高效本地向量引擎:基于
FAISS的强大向量检索,完全本地化运行,百分百保护您的数据隐私。 - 🤖 双驱动大模型接入:
- 本地私有部署 (LM Studio):无缝对接本地多模态大模型,支持完全离线运行与视觉能力。
- 云端强大算力 (External API):原生支持 OpenAI 兼容格式的外部 API(如 DeepSeek, GPT-4o, Claude 等),享受顶级逻辑推理能力。
- 🖼️ 动态多图输入:API 节点会随连接自动增加图片输入口,并按顺序将多张图片或图片批次发送给视觉模型。
- ⚡ 极致的显存优化 (VRAM Optimization):专为 ComfyUI 环境定制的显存调度机制。在检索和文本生成结束后,自动卸载语言模型与 Embedding 模型,确保您后续的图像生成工作流(如 SDXL, FLUX)拥有充足显存。
- 🗂️ 预制语料系统:支持从特定系统目录极速加载海量预制文本、设定集与数据集。
- 🌍 原生国际化支持:严格遵循 ComfyUI 官方 i18n 标准,内置完美的中文(简体)与英文界面双语切换。
🧩 节点一览 (Nodes Overview)
本插件提供了一套完整的从“数据输入”到“检索生成”的节点链:
| 节点名称 (Node Name) | 功能描述 (Description) |
| :--- | :--- |
| 📄 EasyRAG - Document Loader | 核心文档加载器。支持上传和解析 input 目录下的多种格式文档。 |
| 📚 Rag 预制文档加载 | 从系统配置的原始语料库(Original Corpus)中批量加载数据。 |
| 🏗️ EasyRAG - Vector Store Builder (FAISS) | 将文档切片(Chunking)并使用 Embedding 模型构建、持久化本地向量数据库。 |
| 💬 EasyRAG - LM Studio API (Advanced) | 调用本地 LM Studio 服务的高级问答节点,支持 RAG 检索、动态多图输入与精细参数调节。 |
| 💬 EasyRAG - LM Studio API (Simple) | 极简版的本地对话节点,支持动态多图输入,适合快速搭建轻量级工作流。 |
| ☁️ EasyRAG - 外部 API (高级) | 通过 API Key 调用兼容 OpenAI 接口的云端多模态模型,支持 RAG 与动态多图输入。 |
🛠️ 安装指南 (Installation)
1. 克隆项目
将本仓库克隆到你的 ComfyUI 自定义节点目录中:
cd ComfyUI/custom_nodes
git clone https://github.com/your-username/Comfyui-Easy-RAG.git
2. 安装依赖
进入插件目录并安装所需的 Python 依赖:
cd Comfyui-Easy-RAG
pip install -r requirements.txt
(核心依赖包含:faiss-cpu, sentence-transformers, requests, pypdf)
3. 重新启动
重启你的 ComfyUI 即可在节点菜单 RagPrompt 分类下找到所有功能。
📂 目录与模型准备 (Setup & Directories)
为了让插件发挥最大威力,请按照以下结构放置你的模型和数据:
1. 向量模型 (Embedding Models)
文本转换为向量必需的核心模型。请将其放置在 ComfyUI 的 embeddings 目录下(推荐使用 bge-small-zh-v1.5 等优秀的轻量级模型)。
ComfyUI/models/embeddings/
└── bge-small-zh-v1.5/
├── config.json
├── pytorch_model.bin
└── ...
2. 向量数据库 (Vector Database)
此目录由插件自动生成和管理,无需手动干预。你构建的索引将永久保存在:
ComfyUI/models/RAG/VectorDB/<你的索引名称>/
3. 预制语料库 (Prebuilt Corpus)
供 Rag 预制文档加载 节点使用。文档或文件夹可以直接放在 RAG 根目录;旧版的 Original 子目录仍然兼容。VectorDB 是向量索引专用目录,不会显示为预制文档:
ComfyUI/models/RAG/
├── 你的提示词库.txt
├── 你的资料文件夹/
├── Original/ # 兼容旧版目录
└── VectorDB/ # 向量索引目录,不作为文档读取
4. 系统提示词预设 (System Prompts)
你可以将常用的系统提示词(txt 或 md 格式)放入以下任一目录,即可在 API 对话节点的下拉菜单中调用:
ComfyUI/custom_nodes/Comfyui-Easy-RAG/systemprompt/
ComfyUI/models/RAG/SystemPrompts/
ComfyUI/models/RAG/SystemPrompts 的目录名不区分大小写,例如 systemprompts、SYSTEMPROMPTS 也可以被识别。该目录不会作为普通预制文档读取。
🚀 快速上手 (Quick Start)
构建一个完整的 RAG 对话工作流仅需 4 步:
- 加载文档:使用
Document Loader节点选择你的 PDF 或 TXT 文件。 - 构建向量库:将文档连接至
Vector Store Builder,选择本地 Embedding 模型并为索引命名。 - 连接大模型:将生成的
RAG 索引输出连接到外部 API (高级)或LM Studio API节点。 - 开始对话:在对话节点中输入你的问题(如:“总结这份文档的核心观点”),点击 Queue Prompt 运行!
💡 搭配 LM Studio 使用的提示:
- 请确保 LM Studio 已经在本地运行。
- 在 LM Studio 左侧菜单开启
Local Server(默认监听http://127.0.0.1:1234)。 - 加载任意你想使用的 LLM 模型即可。
🤝 贡献与支持 (Contributing)
欢迎提交 Issues 和 Pull Requests!如果你觉得这个项目对你有帮助,请在 GitHub 上为它点亮一颗 ⭐!
License: MIT License