RAG技术入门基础教程(非常详细),RAGFlow项目从入门到精通,收藏这一篇就够了!

AI挖0day漏洞?!AI黑客来了?!全球首个AI漏洞挖掘“神器“ 🤖 AI 自动挖 0day?一周实测 vulnhuntr:是神器还是智商税? 阅读详情

在自然语言处理的广阔领域中,大模型如 GPT-4o、Qwen-2、Llama 4 等展现出了强大的语言理解与生成能力,为智能交互带来了革命性的变化。但它们也并非十全十美,知识滞后、幻觉生成、私有数据泄露等问题,限制了其在行业场景中的应用。就在这时,RAG 技术应运而生,凭借独特的 “检索外部知识库 - 注入大模型提示词 - 生成精准答案” 逻辑,成为了解决这些痛点的关键钥匙。

如今,RAG 技术已经广泛应用于金融、医疗、企业服务等多个领域。在金融领域,它助力合规问答,帮助金融从业者快速准确地获取合规信息,应对复杂多变的监管要求;医疗领域,RAG 技术实现病历检索,为医生提供更全面的患者信息,辅助精准诊断;企业内部,它搭建起知识库,提高员工信息获取效率,促进知识共享与协作;客服场景中,RAG 技术让智能客服更加智能,能够快速准确地回答客户问题,提升客户满意度 。可以说,RAG 技术正悄然改变着我们获取信息和交互的方式,为各行业带来了新的机遇与变革。

一、RAG 技术深度剖析

(一)RAG 技术原理揭秘

RAG,即检索增强生成(Retrieval-Augmented Generation),是一种将信息检索与自然语言生成相结合的 AI 架构模式。它的核心流程可以简单概括为三个步骤:首先,当用户提出问题时,系统会把这个问题转换成一个检索请求;接着,检索模块依据这个请求,在外部知识库中进行搜索,筛选出与问题相关的信息;最后,生成模块将检索到的信息与原始问题一同作为输入,利用大语言模型生成最终的回答。

以金融领域的合规问答为例,当用户询问 “最新的金融监管政策对理财产品投资门槛有何影响” 时,RAG 系统会迅速在包含最新金融监管文件的知识库中检索相关内容,找到如《关于规范金融机构资产管理业务的指导意见》等文件中的具体条款,再结合这些条款,通过大语言模型生成准确且详细的回答 ,告知用户理财产品投资门槛的变化情况以及背后的政策依据。

RAG 技术的出现,成功弥补了大语言模型的知识边界问题。大语言模型虽然在训练时学习了海量数据,但知识固定在训练时间点,无法获取实时信息,也难以覆盖所有专业领域的深度知识。而 RAG 通过动态检索外部信息,让大语言模型在回答问题时有了 “最新资料” 的辅助,有效解决了这一局限性。同时,它还能减少大语言模型容易出现的 “幻觉” 问题,生成更可靠、更具可解释性的答案 。

(二)技术分支与架构演进

随着技术的不断发展,RAG 逐渐形成了五大技术分支体系,每一个分支都有其独特的优势和应用场景。

基于微调的 RAG(Fine-tune RAG)采用了 “轻量微调” 方案,通过 LoRA、QLoRA 等技术对检索器或生成器进行局部微调。这种方式无需全量训练,就能让模型快速适配特定行业数据,比如法律条文、医疗术语等。以法律行业为例,通过对法律条文相关数据的微调,模型能够更准确地理解和回答诸如 “根据最新的民法典,合同违约的赔偿标准是什么” 之类的专业问题,大大提高了回答的准确性和专业性 ,同时成本降低 60% 以上。

基于预训练的 RAG(Pre-trained RAG)则受益于主流预训练模型,如 BGE-M3、E5-v3 等,这些模型已内置 RAG 适配能力。它们支持多语言检索与跨领域迁移,无需额外开发就能轻松对接向量数据库。这使得 RAG 在处理跨国公司的多语言文档检索,或者需要在不同领域知识间切换的复杂任务时,能够快速准确地提供服务,极大地拓展了 RAG 的应用范围 。

基于推理结合的 RAG(Reasoning RAG)融合了智能体(Agent)技术,为检索流程带来了智能化的自主规划能力。在多轮追问场景中,当用户询问 “某网络攻击事件的详细情况及应对措施”,接着进一步追问 “该应对措施的具体实施步骤有哪些” 时,它能根据前一轮的生成结果动态调整检索策略,分步骤检索相关信息,从而更全面、深入地回答用户的复杂问题 ,提升了在复杂场景下的解答质量。

增量 RAG(Incremental RAG)是 2025 年核心新增分支,它解决了传统 RAG “更新必重建” 的效率痛点。通过增量向量更新技术,新上传的文档可快速融入检索体系,实现知识库实时更新无需重新索引。在企业的知识管理中,当有新的产品技术文档或业务流程更新时,员工能在新数据上传后 10 秒内即可通过 RAG 系统检索到相关内容,大大提高了知识获取的时效性 。

多模态 RAG(Multimodal RAG)突破了单一文本检索的限制,支持图片、音频、视频、表格等多格式数据的统一检索。在医疗场景中,它可以通过图片 OCR 提取病历信息,结合音频问诊记录生成诊断建议;在教育领域,它能根据学生上传的图片、视频作业以及文本提问,提供综合性的学习指导 ,为用户提供更加丰富和全面的服务。

在架构方面,RAG 正从通用流水线架构向行业定制化架构转变。以网络安全领域为例,针对威胁情报分析、漏洞分析、合规审计等不同场景,RAG 形成了专用的解决方案。在威胁情报分析中,RAG 架构能够快速检索和分析海量的安全日志、威胁情报报告等数据,及时发现潜在的安全威胁;在漏洞分析场景下,它能精准匹配漏洞信息,提供详细的漏洞修复建议 ,满足了行业对专业性和精准性的高要求。

(三)多模态融合与轻量化部署

多模态融合是 RAG 技术发展的一个重要方向,它让 RAG 能够处理更加丰富多样的数据类型。除了传统的文本、表格、图片外,如今的 RAG 已支持 PCAP 流量日志、恶意代码样本、漏洞扫描报告等异构安全数据的解析与检索。在网络安全监测中,通过对 PCAP 流量日志的分析,RAG 可以检测出异常的网络流量模式,结合恶意代码样本的行为描述,准确判断是否存在网络攻击,并及时发出警报 。

在医疗领域,多模态 RAG 同样发挥着重要作用。它可以将患者的 X 光影像、CT 扫描结果等图像数据,与病历文本、医生的音频诊断记录等信息进行融合分析,为医生提供更全面、准确的诊断依据。例如,当分析一位疑似肺部疾病患者的病情时,多模态 RAG 能够同时解读 X 光影像中的肺部阴影特征,以及病历中记录的症状描述和过往病史,帮助医生做出更精准的诊断 。

轻量化部署也是 RAG 技术的一大优势,它能够很好地适配边缘计算与内网隔离需求。在网络安全领域,满足了 “数据不出内网” 的核心诉求。通过支持百亿参数级安全大模型,如 SecLLM、安全版 Llama 3 的本地轻量化部署,企业可以在内部网络环境中安全、高效地运行 RAG 系统 。

在一些对数据安全要求极高的金融机构中,轻量化部署的 RAG 系统可以在内部服务器上运行,对客户的交易数据、账户信息等进行分析和处理,确保敏感数据不会泄露到外部网络。同时,在工业生产中的边缘设备上,轻量化的 RAG 模型可以实时分析设备的运行数据,预测设备故障,实现预防性维护 ,提高生产效率和设备可靠性。

二、RAGFlow 项目实战

(一)项目简介与优势

RAGFlow 是一款备受欢迎的开源 RAG 引擎,基于深度文档理解构建,为用户提供了强大且灵活的检索增强生成能力,支持个人与企业级部署,在自然语言处理领域中展现出独特的魅力。它的设计理念是让用户能够轻松地将 RAG 技术应用到实际项目中,无论是搭建企业内部的智能知识库,还是开发面向客户的智能问答系统,RAGFlow 都能提供有力的支持 。

RAGFlow 具备出色的易用性,其简洁直观的界面设计,使得即使是对技术不太熟悉的用户,也能快速上手。通过简单的操作步骤,用户就能完成从数据上传、模型配置到问答测试的整个流程,大大降低了技术门槛。同时,RAGFlow 还具有高度的可扩展性,它支持多种数据格式和来源,包括文档库、数据库、API 等,能够无缝整合不同来源的数据,满足多样化的业务需求 。

在功能方面,RAGFlow 不断推陈出新。它新增的网络安全专用模板,针对网络安全领域的特殊需求进行了优化,能够更准确地解析和处理网络安全相关的文档,如 CVE/CNVD 漏洞库、安全设备日志、合规条款文档等。通过这些专用模板,RAGFlow 可以自动识别漏洞等级、合规条款编号等关键字段,为网络安全从业者提供更专业、更高效的服务 。

RAGFlow 的异构数据解析能力也十分强大,它能够处理 PCAP 流量日志、恶意代码样本、漏洞扫描报告等多种异构安全数据。对于 PCAP 流量日志,RAGFlow 可以通过协议解析提取关键特征;对于恶意代码样本,它能通过反编译提取行为描述;对于漏洞扫描报告(PDF/Excel 格式),RAGFlow 能够实现自动解析 。这使得 RAGFlow 在网络安全场景中能够全面地分析和利用各种数据,为安全决策提供更丰富的信息支持。

(二)实战步骤详解

接下来,让我们以 Windows 环境为例,详细介绍 RAGFlow 的实战步骤。

首先是环境准备与安装。在 Windows 环境下安装 RAGFlow,需要先启用 WSL 2(Windows Subsystem for Linux 2)。以管理员权限打开 PowerShell,执行以下命令:

wsl --install

自动安装WSL 2与Ubuntu系统

wsl --set-default-version 2

设置默认WSL版本为2

安装完成后重启电脑,然后验证 WSL 状态,执行wsl --list --verbose,当状态显示为 “Running” 时即可 。

接着要安装 Docker Desktop 4.20+,这是运行 RAGFlow 的重要依赖。安装完成后,执行docker run hello-world,如果成功输出相关信息,说明 Docker 安装正常。为了避免磁盘空间不足,建议将 Docker 镜像路径设置为非 C 盘,比如 “D:\Docker\data”。同时,在 Docker Engine 配置中添加国内镜像源,如 “https://hub-mirror.c.163.com” 和 “https://registry.cn-hangzhou.aliyuncs.com”,以加速镜像拉取 。

完成上述准备工作后,就可以拉取并启动 RAGFlow 了。打开命令行,执行以下命令:

git clone https://gitee.com/ragflow/ragflow.git

cd ragflow/docker

进入Docker配置目录

如果需要配置版本,可以编辑.env 文件,将 “RAGFLOW_VERSION=dev” 改为稳定版,比如 “RAGFLOW_VERSION=v1.8.0”。最后,执行docker-compose -f docker-compose.yml up -d,即可在后台启动所有服务。访问 “http://localhost:8080”,如果出现登录界面,说明启动成功,默认账号为 “admin”,密码需根据实际情况获取 。

安装完成后,就可以开始构建企业漏洞知识库了。首先要配置安全专用大模型,这里我们选择本地部署 Ollama 与安全模型。执行ollama pull secllm:7b拉取 7B 参数的安全专用模型,然后执行ollama run secllm:7b启动模型,默认端口为 11434 。

在 RAGFlow 中配置模型时,需要填写以下信息:

模型名称:SecLLM-7B;

基础 URL:http://host.docker.internal:11434(Windows Docker 访问本地 Ollama);

模型标识:secllm:7b 。

登录 RAGFlow 后,点击右上角头像,选择 “模型设置”,再点击 “新增模型”,模型类型选择 “Ollama”,填写上述信息,点击 “测试连接”,显示 “连接成功” 后即可保存 。

接下来准备知识库数据,我们可以下载 CVE 2025 年漏洞库(https://nvd.nist.gov/vuln/data-feds),导出企业内部 Nessus 漏洞扫描报告(PDF 格式),并整理《网络安全法》《数据安全法》合规条款文档 。

上传并解析文档时,点击 RAGFlow 左侧的 “知识库”,选择 “新建知识库”,命名为 “企业漏洞合规知识库”。上传准备好的文档,选择 “网络安全专用解析模板”,然后点击 “开始解析”,系统会自动完成文本分片、向量嵌入与索引构建,这个过程大约需要 5 - 10 分钟,具体时间视数据量而定 。

最后创建安全助理并进行实战问答。点击左侧的 “助理”,选择 “新建助理”,命名为 “漏洞合规问答助理”,选择刚才创建的 “企业漏洞合规知识库” 和 “SecLLM-7B” 模型,并配置提示词模板,比如 “基于提供的漏洞库与合规文档,准确回答用户问题,标注信息来源与可信度评分” 。

现在就可以进行实战问答了。例如,当我们提问 “CVE-2025-1234 漏洞的 CVSS 评分、影响范围及修复方案是什么?”,RAGFlow 会输出包含评分(如 CVSS 9.8)、受影响系统(如 Windows Server 2022)、修复步骤(如安装微软 KB5034441 补丁)的结果,并标注来源为 “NVD 数据库 2025-03-15 公告”。再如,提问 “企业收集用户个人信息时,需遵守《个人信息保护法》的哪些要求?”,RAGFlow 会列出知情同意、最小必要、安全存储等要求,并标注来源为《个人信息保护法》第 13 - 17 条 。

(三)常见问题与解决方法

在 RAGFlow 项目实操过程中,可能会遇到一些问题,下面为大家汇总并提供相应的解决方法。

如果在解析文档时出现异常,比如文档解析卡在 1% 以下,首先点击 “parsing status” 栏旁边的红色叉号,然后重新启动解析过程。如果问题仍然存在且 RAGFlow 是本地部署的,可以检查 RAGFlow 服务器日志,执行docker logs -f ragflow-server,确认其是否正常运行;检查 task_executor.py 进程是否存在;检查 RAGFlow 服务器是否能够访问hf-mirror.com或huggingface.com 。

当遇到内存优化相关问题时,对于 8GB 显存设备,可以采用以下优化方案:

def optimize_vram():

torch.cuda.empty_cache()

with torch.no_grad():

for param in model.parameters():

param.data = param.data.cpu()

torch.cuda.empty_cache()

显存回收增强版

建议在文档加载完成后、向量生成前以及推理结果返回后调用这个函数,以避免内存不足导致进程崩溃 。

如果出现 “Error: Range of input length should be [1, 30000]” 错误,这是由于匹配搜索条件的块太多。可以通过以下步骤解决:点击页面顶部中间的 Chat,右键点击所需对话,选择 “Edit”,再选择 “Prompt engine”,减少 TopN 和 / 或提高 Similarity threshold,最后点击 “OK” 确认更改 。

若无法访问https://huggingface.co,本地部署的 RAGFlow 默认从 Huggingface 下载 OCR 和嵌入模型,若无法访问该网站,会导致 PDF 解析失败并出现类似 “FileNotFoundError: [Errno 2] No such file or directory: ‘/root/.cache/huggingface/hub/models–InfiniFlow–deepdoc/snapshots/be0c1e50eef6047b412d1800aa89aba4d275f997/ocr.res’” 的错误。解决方法是停止所有容器并移除相关资源,进入 ragflow/docker 目录,执行docker compose down;在 ragflow/docker/.env 文件中取消注释 “

HF_ENDPOINT=https://hf-mirror.com”;最后重新启动服务器,执行docker compose up -d 。

三、总结与展望

(一)技术优势总结

RAG 技术以其独特的优势,在自然语言处理领域中开辟了一片新天地。它巧妙地解决了大语言模型长期以来存在的知识滞后问题,通过实时检索外部知识库,让模型在回答问题时能够获取最新的信息。这一特性在金融、医疗等对知识时效性要求极高的领域中,发挥着至关重要的作用。例如,在金融市场瞬息万变的情况下,RAG 技术能够及时检索到最新的金融政策、市场动态等信息,为投资者提供准确的决策建议 。

RAG 技术在数据安全性方面也有着出色的表现。它支持全链路本地部署,从文档解析、向量存储到生成回答,所有环节均在企业内网完成,有效防止了数据泄露的风险,符合《数据安全法》《个人信息保护法》等相关法规的严格要求。对于企业来说,尤其是那些涉及敏感信息的行业,如医疗、金融等,RAG 技术提供了一种安全可靠的解决方案 。

在可解释性方面,RAG 技术让答案更加透明可信。当生成回答时,它会自动关联原始文档片段,标注信息来源,用户可以清晰地追溯答案的出处,验证其准确性。在学术研究领域,研究人员可以通过 RAG 技术快速检索相关文献,并根据标注的信息来源进行深入研究,提高研究效率和质量 。

RAGFlow 作为一款优秀的开源 RAG 引擎,进一步推动了 RAG 技术的落地应用。它提供了简洁易用的操作界面,降低了技术门槛,使得企业和个人开发者能够轻松上手,快速搭建起自己的 RAG 系统。通过 RAGFlow,企业可以高效地构建私有知识库,实现智能问答、知识检索等功能,提升企业的知识管理水平和运营效率 。

(二)未来发展趋势

展望未来,RAG 技术将在多个方向上迎来新的突破和发展。与大语言模型 Agent 的深度融合将是一个重要的趋势。通过这种融合,RAG 系统将具备更强大的自主决策和任务执行能力,能够实现安全事件的端到端自动化处置。在网络安全领域,当检测到网络攻击时,RAG 系统可以自动分析攻击特征,检索相关的安全策略和解决方案,并自动执行相应的防御措施,大大提高了安全响应的速度和准确性 。

多模态检索能力的提升也将为 RAG 技术带来更广阔的应用前景。未来,RAG 系统将能够更精准地处理和检索视频、音频等非文本数据,实现攻击流量可视化分析、恶意代码行为识别等复杂场景的应用。在视频监控领域,RAG 系统可以通过分析视频中的图像和音频信息,实时监测异常行为,如盗窃、火灾等,并及时发出警报 。

构建行业级共享知识库也是 RAG 技术未来发展的重要方向之一。通过整合行业内的各种知识和数据,RAG 系统可以实现漏洞情报、攻击手法等信息的共享和协同防御。在网络安全行业,不同企业可以通过共享知识库,共同应对网络威胁,提高整个行业的安全防护水平 。

RAG 技术正处于快速发展的阶段,它已经在多个领域展现出了巨大的潜力和价值。随着技术的不断进步和应用的深入,相信 RAG 技术将为我们的生活和工作带来更多的便利和创新 。

如何学习大模型 AI ?

由于新岗位的生产效率,要优于被取代岗位的生产效率,所以实际上整个社会的生产效率是提升的。

但是具体到个人,只能说是:

“最先掌握AI的人,将会比较晚掌握AI的人有竞争优势”。

这句话,放在计算机、互联网、移动互联网的开局时期,都是一样的道理。

我在一线互联网企业工作十余年里,指导过不少同行后辈。帮助很多人得到了学习和成长。

我意识到有很多经验和知识值得分享给大家,也可以通过我们的能力和经验解答大家在人工智能学习中的很多困惑,所以在工作繁忙的情况下还是坚持各种整理和分享。但苦于知识传播途径有限,很多互联网行业朋友无法获得正确的资料得到学习提升,故此将并将重要的AI大模型资料包括AI大模型入门学习思维导图、精品AI大模型学习书籍手册、视频教程、实战学习等录播视频免费分享出来。

在这里插入图片描述

第一阶段(10天):初阶应用

该阶段让大家对大模型 AI有一个最前沿的认识,对大模型 AI 的理解超过 95% 的人,可以在相关讨论时发表高级、不跟风、又接地气的见解,别人只会和 AI 聊天,而你能调教 AI,并能用代码将大模型和业务衔接。

  • 大模型 AI 能干什么?
  • 大模型是怎样获得「智能」的?
  • 用好 AI 的核心心法
  • 大模型应用业务架构
  • 大模型应用技术架构
  • 代码示例:向 GPT-3.5 灌入新知识
  • 提示工程的意义和核心思想
  • Prompt 典型构成
  • 指令调优方法论
  • 思维链和思维树
  • Prompt 攻击和防范
  • …

第二阶段(30天):高阶应用

该阶段我们正式进入大模型 AI 进阶实战学习,学会构造私有知识库,扩展 AI 的能力。快速开发一个完整的基于 agent 对话机器人。掌握功能最强的大模型开发框架,抓住最新的技术进展,适合 Python 和 JavaScript 程序员。

  • 为什么要做 RAG
  • 搭建一个简单的 ChatPDF
  • 检索的基础概念
  • 什么是向量表示(Embeddings)
  • 向量数据库与向量检索
  • 基于向量检索的 RAG
  • 搭建 RAG 系统的扩展知识
  • 混合检索与 RAG-Fusion 简介
  • 向量模型本地部署
  • …

第三阶段(30天):模型训练

恭喜你,如果学到这里,你基本可以找到一份大模型 AI相关的工作,自己也能训练 GPT 了!通过微调,训练自己的垂直大模型,能独立训练开源多模态大模型,掌握更多技术方案。

到此为止,大概2个月的时间。你已经成为了一名“AI小子”。那么你还想往下探索吗?

  • 为什么要做 RAG
  • 什么是模型
  • 什么是模型训练
  • 求解器 & 损失函数简介
  • 小实验2:手写一个简单的神经网络并训练它
  • 什么是训练/预训练/微调/轻量化微调
  • Transformer结构简介
  • 轻量化微调
  • 实验数据集的构建
  • …

第四阶段(20天):商业闭环

对全球大模型从性能、吞吐量、成本等方面有一定的认知,可以在云端和本地等多种环境下部署大模型,找到适合自己的项目/创业方向,做一名被 AI 武装的产品经理。

  • 硬件选型
  • 带你了解全球大模型
  • 使用国产大模型服务
  • 搭建 OpenAI 代理
  • 热身:基于阿里云 PAI 部署 Stable Diffusion
  • 在本地计算机运行大模型
  • 大模型的私有化部署
  • 基于 vLLM 部署大模型
  • 案例:如何优雅地在阿里云私有部署开源大模型
  • 部署一套开源 LLM 项目
  • 内容安全
  • 互联网信息服务算法备案
  • …

学习是一个过程,只要学习就会有挑战。天道酬勤,你越努力,就会成为越优秀的自己。

如果你能在15天内完成所有的任务,那你堪称天才。然而,如果你能完成 60-70% 的内容,你就已经开始具备成为一名大模型 AI 的正确特征了。

这份完整版的大模型 AI 学习资料已经上传优快云,朋友们如果需要可以微信扫描下方优快云官方认证二维码免费领取【保证100%免费】

在这里插入图片描述

RagFlow从入门到精通(一) RAG技术在24年开始火起来,所谓RAG就是增强检索,使得我们自己的数据内容挂载到LLM上,这样LLM可以基于我们的内部知识以及其自有知识来对话。使用RAG后我们的内部知识不需要出局,本地部署的RAG系统即可带来LLM+自有知识库的新体验。 阅读详情

相关推荐

OpenClaw 接入 RAGFlow,让你的“龙虾”更懂企业

目前发布的 RAGFlow skill 为基础版本,侧重于底层知识库能力的对接。接入该 Skill 后,可直接通过 OpenClaw 调用 RAGFlow 的核心服务,下面以飞书平台为例进行功能展示。知识库运维管理通过飞书直接对 RAGFlow 知识库进 CRUD(增删改查)能力的全流程控制。基础操作:支持知识库的创建、详情查询、总览获取。属性维护:支持对已有知识库名称、解析方式及描述的更新。文档自动化处理直接通过飞书上传、解析、管理 RAGFlow 文件。多文件管理。

528

【万字详解】手把手带你一步步搭建RAGFlow(超干货)

本篇给大家介绍一下RAGFlow的本地搭建,以下过程基于Ubuntu24,其它Linux系统的搭建方法也基本相同。先来温补一下,RAGFlow是一个基于对文档深入理解的开源 RAG(检索增强生成)引擎。它的作用是可以让用户创建自有知识库,根据设定的参数对知识库中的文件进行切块处理,用户向大模型提问时,RAGFlow先查找自有知识库中的切块内容,接着把查找到的知识库数据输入到对话大模型中再生成答案输出。它能凭借引用知识库中各种复杂格式的数据为后盾,为用户提供真实可信,少幻觉的答案。

qingkahui24689的博客 5万+

专有钉钉小程序(浙政钉)开发搭建流程总览

最近公司有一个项目要做浙政钉,让我来负责做。靠,我一脸懵,开发了两年多不知道浙政钉是啥,感觉我眼界还是低了。然后就去百度、同事问了一圈才知道就是个钉钉小程序嘛,然后发布到浙政钉上了。就搭建项目跑起来我都肥了很多事,中间走了很多坑。正好领导让我写《钉钉小程序前端开发流程》,这想着也写个博客吧。下面就是整个流程及我所遇到的坑!

m0_53910290的博客 6356

一文读懂RAGFlow:从 0 到 1教你搭建RAG知识库

RAGFlow是一种融合了数据检索与生成式模型的新型系统架构,其核心思想在于将大规模检索系统与先进的生成式模型(如Transformer、GPT系列)相结合,从而在回答查询时既能利用海量数据的知识库,又能生成符合上下文语义的自然语言回复。该系统主要包含两个关键模块:数据检索模块和生成模块。数据检索模块负责在海量数据中快速定位相关信息,而生成模块则基于检索结果生成高质量的回答或文本内容。

python12345_的博客 8024

右腿驱动电路设计:从共模干扰原理到生物电采集实战

在生物电信号采集领域,共模干扰是影响测量精度的核心挑战之一,其本质源于环境电磁场通过容性耦合在人体表面产生的感应电流。根据欧姆定律,由于人体组织阻抗的不均衡性,共模电流会在不同测量点产生差异化的压降,从而转化为难以滤除的差分噪声。为解决这一问题,右腿驱动技术应运而生,它通过负反馈原理主动抵消干扰,显著提升系统的共模抑制比。该技术广泛应用于心电图、脑电图等医疗电子设备中,是确保微弱生理信号质量的关键环节。本文结合工程实践,深入剖析了右腿驱动电路中的仪表放大器选型、反馈环路稳定性设计以及PCB布局布线要点,为高

weixin_31476015的博客 444

机器学习发展历史及现状(重要的期刊,会议,大牛总结)

1 引言 机器学习是指通过计算机学习数据中的内在规律性信息,获得新的经验和知识,以提高计算机的智能性,使计算机能够像人那样去决策。随着各行业对数据的需求量增多,对处理和分析数据的效率要求变高,一系列机器学习算法应运而生。机器学习算法主要是指通过数学及统计方法求解最优化问题的步骤和过程。针对不同的数据和不同模型需求,选择和使用适当的的机器学习算法可以更高效地解决一些实际问题。本文将从机器学习的起源...

Oscar2018的博客 5万+

基于RAG的企业智能客服项目,已拿70万offer!

基于 RAG 构建一套企业智能客服系统📖。

m0_59164520的博客 1444

FreeCAD MCP实战:用自然语言驱动AI建模,效率提升10倍

MCP(Model Context Protocol)是一种让AI模型调用外部工具和数据的协议标准,通过标准化通信层解决AI与CAD软件之间的交互难题。其原理是向AI暴露工具清单,AI根据自然语言需求自动选择工具并填充参数。在工程实践中,这一技术显著降低了CAD建模门槛,将重复性操作从手动点击转为语音指令,适用于批量零件生成、参数化设计等场景。FreeCAD作为开源CAD,凭借开放的Python API和脚本化能力,成为落地MCP的理想平台。本文基于FreeCAD MCP的实操经验,分享环境搭建、自然语言建

weixin_31188927的博客 324

RAG Flow搭建AI医疗助手入门基础教程(非常详细),搭建AI医疗助手入门到精通,收藏这一篇就够了!

对于医疗问答AI回答胡说八道,RAGFlow是一个效果非常好的医疗问答AI助手方案,体验完胜于目前市面上其他医疗问答AI和前沿的医疗领域大模型。

h1453586413的博客 5682

【python爬虫实战】Python 抓取京东商品信息与评论,做竞品分析

本项目通过爬取京东平台商品数据,实现了完整的电商竞品分析流程。文章首先介绍了项目目标和技术栈,包括Python、Requests、BeautifulSoup等工具。然后详细解析了京东页面结构,包括商品列表页、详情页和评论页的特点。核心部分展示了商品列表爬取、评论数据获取以及竞品分析三个关键步骤的代码实现,每部分都包含运行结果和原理讲解。通过情感分析和关键词提取,项目能够对比不同产品的用户评价差异。最后,文章还讨论了合规性考量、优化建议和常见问题解答。该方案不仅适用于市场调研,也为企业制定营销策略提供了数据支

2503_91057718的博客 1万+

当vCenter的证书过期、Root密码过期、Root密码遗忘同时发生时的解决方法与步骤

vCenter,强制修改root密码,修改SSO User密码,修复证书过期问题

OCTSJimmy的专栏 5547

RAGFlow是什么?一文读懂RAGFlow,入门到精通,看这一篇就够了

RAGFlow是一种融合了数据检索与生成式模型的新型系统架构,其核心思想在于将大规模检索系统与先进的生成式模型(如Transformer、GPT系列)相结合,从而在回答查询时既能利用海量数据的知识库,又能生成符合上下文语义的自然语言回复。该系统主要包含两个关键模块:数据检索模块和生成模块。数据检索模块负责在海量数据中快速定位相关信息,而生成模块则基于检索结果生成高质量的回答或文本内容。

jennycisp的博客 8936

【AI理论学习】手把手推导扩散模型:Diffusion Models(DDPM)

生成扩散模型DDPM如下图所示分为前向、逆向两个过程,它首先通过不断往原始清晰数据中添加噪声使其变成标准高斯噪声(前向过程),而后期望从标准高斯噪声中还原原始数据(逆向过程)。若能实现,那便可从已知的标准高斯分布中采样一个噪声数据,而后利用DDPM模型生成符合原始数据分布的新数据。 Diffusion模型包含两个过程:数学符号:y∝xy\propto xy∝x:y正比于x,即y随着x增大而线性增大。 条件概率:贝叶斯公式:p(A∣B)=p(B∣A)×p(A)p(B)p(A|B)=\frac{p(B|A)\

小哲的博客 1511

大模型RAG入门到实战基础教程(非常详细),大模型RAG入门到精通,收藏这一篇就够了!

大模型(Large Language Model,LLM)的浪潮已经席卷了几乎各行业,但当涉及到专业场景或行业细分域时,通用大模型就会面临专业知识不足的问题。相对于成本昂贵的“Post Train”或“SFT”,基于RAG的技术方案往成为一种更优选择。本文从RAG架构入手,详细介绍相关技术细节,并附上一份实践案例。本文列举了LLM的问题。简单介绍了什么是 RAG ,以及 RAG 的流程。最后使用了一个简单的LangChain代码示例来展示 RAG 的使用。最后对比了 RAG 和微调的区别,方便大家选型。

2401_85377976的博客 1579

浅聊开关电源6:大学生电赛(电源类)之LCL并网滤波器设计(PCB设计,STM32F4xx程序与Simulink仿真)

关于LCL并网滤波器设计的一些小分享

xjtuymh的博客 3652

深度学习工具包 DeepLearningToolbox

深度学习工具包Deprecation notice.-----This toolbox is outdated and no longer maintained.There are much better tools available for deep learning than this toolbox, e.g. [Theano](http://deeplearning.net/software/theano/), [torch](http://torch.ch/) or [tensorflow](http://www.tensorflow.org/)I would suggest you use one of the tools mentioned above rather than use this toolbox.Best, Rasmus.DeepLearnToolbox================A Matlab toolbox for Deep Learning.Deep Learning is a new subfield of machine learning that focuses on learning deep hierarchical models of data.It is inspired by the human brain's apparent deep (layered, hierarchical) architecture.A good overview of the theory of Deep Learning theory is[Learning Deep Architectures for AI](http://www.iro.umontreal.ca/~bengioy/papers/ftml_book.pdf)For a more informal introduction, see the following videos by Geoffrey Hinton and Andrew Ng.* [The Next Generation of Neural Networks](http://www.youtube.com/watch?v=AyzOUbkUf3M) (Hinton, 2007)* [Recent Developments in Deep Learning](http://www.youtube.com/watch?v=VdIURAu1-aU) (Hinton, 2010)* [Unsupervised Feature Learning and Deep Learning](http://www.youtube.com/watch?v=ZmNOAtZIgIk) (Ng, 2011)If you use this toolbox in your research please cite [Prediction as a candidate for learning deep hierarchical models of data](http://www2.imm.dtu.dk/pubdb/views/publication_details.php?id=6284)```@MASTERSTHESIS\{IMM2012-06284, author = "R. B. Palm", title = "Prediction as a candidate for learning deep hierarchical models of data", year = "2012",}```Contact: rasmusbergpalm at gmail dot comDirectories included in the toolbox-----------------------------------`NN/` - A library for Feedforward Backpropagation Neural Networks`CNN/` - A library for Convolutional Neural Networks`DBN/` - A library for Deep Belief Networks`SAE/` - A library for Stacked Auto-Encoders`CAE/` - A library for Convolutional Auto-Encoders`util/` - Utility functions used by the libraries`data/` - Data used by the examples`tests/` - unit tests to verify toolbox is workingFor references on each library check REFS.mdSetup-----1. Download.2. addpath(genpath('DeepLearnToolbox'));Example: Deep Belief Network---------------------```matlabfunction test_example_DBNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit RBM and visualize its weightsrand('state',0)dbn.sizes = [100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);figure; visualize(dbn.rbm{1}.W'); % Visualize the RBM weights%% ex2 train a 100-100 hidden unit DBN and use its weights to initialize a NNrand('state',0)%train dbndbn.sizes = [100 100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);%unfold dbn to nnnn = dbnunfoldtonn(dbn, 10);nn.activation_function = 'sigm';%train nnopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.10, 'Too big error');```Example: Stacked Auto-Encoders---------------------```matlabfunction test_example_SAEload mnist_uint8;train_x = double(train_x)/255;test_x = double(test_x)/255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit SDAE and use it to initialize a FFNN% Setup and train a stacked denoising autoencoder (SDAE)rand('state',0)sae = saesetup([784 100]);sae.ae{1}.activation_function = 'sigm';sae.ae{1}.learningRate = 1;sae.ae{1}.inputZeroMaskedFraction = 0.5;opts.numepochs = 1;opts.batchsize = 100;sae = saetrain(sae, train_x, opts);visualize(sae.ae{1}.W{1}(:,2:end)')% Use the SDAE to initialize a FFNNnn = nnsetup([784 100 10]);nn.activation_function = 'sigm';nn.learningRate = 1;nn.W{1} = sae.ae{1}.W{1};% Train the FFNNopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.16, 'Too big error');```Example: Convolutional Neural Nets---------------------```matlabfunction test_example_CNNload mnist_uint8;train_x = double(reshape(train_x',28,28,60000))/255;test_x = double(reshape(test_x',28,28,10000))/255;train_y = double(train_y');test_y = double(test_y');%% ex1 Train a 6c-2s-12c-2s Convolutional neural network %will run 1 epoch in about 200 second and get around 11% error. %With 100 epochs you'll get around 1.2% errorrand('state',0)cnn.layers = { struct('type', 'i') %input layer struct('type', 'c', 'outputmaps', 6, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %sub sampling layer struct('type', 'c', 'outputmaps', 12, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %subsampling layer};cnn = cnnsetup(cnn, train_x, train_y);opts.alpha = 1;opts.batchsize = 50;opts.numepochs = 1;cnn = cnntrain(cnn, train_x, train_y, opts);[er, bad] = cnntest(cnn, test_x, test_y);%plot mean squared errorfigure; plot(cnn.rL);assert(er<0.12, 'Too big error');```Example: Neural Networks---------------------```matlabfunction test_example_NNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);% normalize[train_x, mu, sigma] = zscore(train_x);test_x = normalize(test_x, mu, sigma);%% ex1 vanilla neural netrand('state',0)nn = nnsetup([784 100 10]);opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samples[nn, L] = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.08, 'Too big error');%% ex2 neural net with L2 weight decayrand('state',0)nn = nnsetup([784 100 10]);nn.weightPenaltyL2 = 1e-4; % L2 weight decayopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex3 neural net with dropoutrand('state',0)nn = nnsetup([784 100 10]);nn.dropoutFraction = 0.5; % Dropout fraction opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex4 neural net with sigmoid activation functionrand('state',0)nn = nnsetup([784 100 10]);nn.activation_function = 'sigm'; % Sigmoid activation functionnn.learningRate = 1; % Sigm require a lower learning rateopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex5 plotting functionalityrand('state',0)nn = nnsetup([784 20 10]);opts.numepochs = 5; % Number of full sweeps through datann.output = 'softmax'; % use softmax outputopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex6 neural net with sigmoid activation and plotting of validation and training error% split training data into training and validation datavx = train_x(1:10000,:);tx = train_x(10001:end,:);vy = train_y(1:10000,:);ty = train_y(10001:end,:);rand('state',0)nn = nnsetup([784 20 10]); nn.output = 'softmax'; % use softmax outputopts.numepochs = 5; % Number of full sweeps through dataopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, tx, ty, opts, vx, vy); % nntrain takes validation set as last two arguments (optionally)[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');```[![Bitdeli Badge](https://d2weczhvl823v0.cloudfront.net/rasmusbergpalm/deeplearntoolbox/trend.png)](https://bitdeli.com/free "Bitdeli Badge")

RAGFlow完全指南:从0到1搭建RAG知识库,一篇文章全面掌握!非常详细收藏这一篇就够了!

最近随着Deepseek的火爆,如何高效地整合海量数据与生成式模型成为了技术领域内的一大热点。传统的生成模型在回答复杂问题时常常依赖于预训练数据的广度与深度,而检索增强生成(Retrieval-Augmented Generation,简称RAG)则有效结合了检索与生成的优势,为各类应用场景提供了更为灵活、高效的解决方案。

2401_84204413的博客 5240

win10 跳过U8环境检测的IE WebControls.rar

win10 安装u8的时候 提示IE WebControls 不通过,这个工具可以欺骗u8的检查。 跳过U8环境检测的IE WebControls。提示导入失败后,重新检测通过。

手把手带你搭建RAGflow,专业AI知识库的开源工具,RAGflow零基础入门到精通,看这一篇就够了!

在大模型应用的蓬勃发展中,检索增强生成(Retrieval-Augmented Generation,RAG)技术占据了举足轻重的地位。它就像是大模型的智慧助手,通过从外部知识库中检索相关信息,并将其融入到大模型的回答生成过程中,有效提升了大模型回答的准确性、可靠性和时效性,在问答系统、智能客服、文档摘要等多个领域都发挥着关键作用。上图是一个常见的AI应用的数据流向图,文档分块之后向量化存储到向量数据库,然后输入文本内容,形成prompt,从向量数据库检索相关的知识背景,发送给LLM之后,返回结果。

2401_85375298的博客 9289

Devexpress16.2.6破解工具

Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具

VC中sqlite的使用

在VC中对sqlite的使用,实现数据库大批数据的快速插入,读取数据库中的数据在ListCtrl中显示

一文读懂RAGFlow,从 0 到 1教你搭建RAG知识库,收藏这一篇就够了!!

最近随着Deepseek的火爆,如何高效地整合海量数据与生成式模型成为了技术领域内的一大热点。传统的生成模型在回答复杂问题时常常依赖于预训练数据的广度与深度,而检索增强生成(Retrieval-Augmented Generation,简称RAG)则有效结合了检索与生成的优势,为各类应用场景提供了更为灵活、高效的解决方案。

2401_85325397的博客 2万+

RAGflow分片与解析终极指南(超详细),从入门到精通,吃透这篇就够了!

在使用智能系统处理海量文档时,你是否遇到过这样的困扰:输入问题后,得到的答案要么答非所问,要么信息碎片化,无法精准命中需求?其实,这背后很大程度上是知识切片环节出了问题。而 RAGflow 的分片策略,就像是一把精准的 “手术刀”,能巧妙解决这些难题,让知识检索变得既精准又高效。

xx_nm98的博客 2387

Ragflow 是什么?零基础入门到精通,看这篇就够了!赶紧收藏!

Ragflow 是什么?零基础入门到精通,看这篇就够了!赶紧收藏!

qq_46094651的博客 2049

突破RAG落地瓶颈:RAGFlow开源文档解析实战指南​,大模型入门到精通,收藏这篇就足够了!

本文较长,建议点赞收藏,如果对你有所帮助,记得告诉身边有需要的朋友。

pythonhy的博客 1287

RAGFlow:深度文档理解型RAG引擎技术解析,大模型入门到精通,收藏这篇就足够了!

RAGFlow 是聚焦复杂文档解析的开源 RAG 引擎,以 “高精度检索 + 可解释性回复” 为核心,专注解决企业非结构化数据(如扫描件、复杂表格、多图 PDF 等)的智能处理难题,填补了传统 RAG 工具在专业文档理解上的短板。

瓦罗兰特顶级C位的博客 853

基于DeepSeek+RAGFlow的企业知识库搭建,大模型入门到精通,收藏这篇就足够了!

随着大语言模型LLM在各个场景的落地应用,RAG(Retrieval-Augmented Generation,检索增强生成)成为提升模型实用性和准确性的关键技术。

2301_81888214的博客 1008

Ubuntu部署RAGflow详细过程,大模型入门到精通,收藏这篇就足够了!

RAGFlow也改进了很多工作流设计方面的内容,这些都是以后慢慢去测试的,目的是能够准确地满足个人业务。本次采用的操作系统是ubuntu22.02版本。

Y525698136的博客 1239

【2025版】用Ollama+RAGflow打造私有知识库,从零基础到精通,精通收藏这篇就够了!

Ollama 是一个本地运行的大语言模型(LLM)工具平台,允许用户在本地设备上运行和管理大模型,而无需依赖云服务。它支持多种开源模型,并提供了用户友好的接口,非常适合开发者和企业使用。Usage:serve 启动 Ollama 服务create 从 Modelfile 创建一个模型show 查看模型详细信息run 运行一个模型stop 停止正在运行的模型pull 从注册表拉取一个模型push 将一个模型推送到注册表list 列出所有可用的模型ps 列出当前正在运行的模型。

Libra1313的博客 2093

2024 RAG 框架选型攻略(非常详细),十大最佳框架从入门到精通,收藏这一篇就够了!

RAG 框架的世界多种多样,发展迅速,我们探讨的十个框架都具有独特的优势和功能。项目的具体要求你需要的定制化程度和灵活性框架的可扩展性和性能特点围绕框架的社区规模和活动可用文档和支持的质量通过仔细评估这些因素并尝试使用不同的框架,你可以找到最适合你需求的 RAG 解决方案,帮助你构建更智能、更能感知上下文的人工智能应用程序。对于希望在其应用程序和服务中利用人工智能力量的开发人员和组织机构来说,随时了解 RAG 技术的最新发展情况至关重要。

老皮的博客 615
上一篇: 震惊!阿里这套“眼脑手“AI架构让知识库自动更新,小白也能秒变专家!
下一篇: 腾讯 AI 战略全景拆解(非常详细):人才、组织、开源全维度复盘,看这一篇就够了!
Python_金钱豹
博客等级 码龄5年 1万+粉丝 2835原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值