【第三十二周】RAG学习02

文章目录

  • 摘要
  • Abstract
  • 一、项目疑问解答
    • 1. 传统信息检索,检索增强生成和无向量RAG
      • 1.1 传统信息检索
      • 1.2 检索增强生成(RAG)
      • 1.3 无向量RAG
      • 1.4 补充
    • 2. 大模型工作的核心
      • 2.1 Prompt的转变过程
      • 2.2 转变后Token维度的决定因素
  • 二、调试过程遇到问题
    • 1. OpenAI 配额问题
  • 总结

摘要

本周主要复现PageIndex项目,根据具体出现的问题对项目进行调整修改。


Abstract

This week, I mainly focused on reproducing the PageIndex project, and made adjustments and modifications to the project according to the specific problems encountered during the process.


一、项目疑问解答

1. 传统信息检索,检索增强生成和无向量RAG

1.1 传统信息检索

传统信息检索:模型对 Prompt 中的内容进行 关键词相似度匹配,其中"相似度"是统计相关性,更类似于匹配关键词的频率,根据出现关键词的频率找到可能相关的文档

1.2 检索增强生成(RAG)

RAG:结合了检索和生成,实现推理型检索。基于自身的海量训练数据和上下文理解能力,将检索到的文档作为上下文输入到大模型中,并进行逻辑推理,最终筛选出相关节点。

RAG分为四种:
①基于向量检索的RAG(主流);

说明:基于向量的RAG将整个查询文本和知识库中的每个文本块分别转换为一个固定维度的向量,然后通过计算查询向量与所有文档向量的相似度,找到最相关的文本块作为上下文,最后用大模型生成答案。

②基于关键词检索的RAG(无向量RAG);
③混合检索RAG;
④其他检索方式的RAG

1.3 无向量RAG

无向量RAG:检索阶段使用传统检索方法来获取相关文档(即称为无向量的原因),然后用大模型生成答案,而不仅仅是返回一个文档列表。

无向量RAG主要实现方式:
①基于倒排索引的关键词检索;
②基于知识图谱的关系检索;
③基于规则的检索

1.4 补充

1,对于无向量RAG和传统信息检索的理解:

  • 传统检索就是类似于搜索引擎,输入问题会返回一个个相关网址,需要用户自己点击各个文章获取答案。
  • 无向量Rag就是相当于获取相关网站后大模型帮用户总结答案。所以无向量RAG为传统检索+大模型

2,对于不同阶段token与向量的映射

2. 大模型工作的核心

2.1 Prompt的转变过程

1. 文本标准化与清理

去除多余空格、统一编码、可能进行一些语言特定的规范化,确保输入文本的格式统一、干净。

2. 分词

模型使用一个预训练的分词器将文本字符串拆分成更小的单元——Token。

3. 转换为Token ID

分词器内部有一个 “词汇表” ,这是一个从Token到唯一整数ID的映射表。模型将上一步得到的Token序列,根据这个词汇表,转换成一个对应的整数ID序列。

4. 添加特殊Token

根据模型架构和任务,在Token序列的开头、结尾或中间插入具有特定功能的特殊Token。

5. 转换为嵌入向量

操作:模型内部有一个 “嵌入层”。它将每一个整数Token ID,映射为一个高维的、稠密的浮点数向量,称为 “词嵌入”。

关键:这个向量捕获了该Token的语义和语法信息。语义相近的Token,其向量在空间中的距离也更近。

输出:至此,文本Prompt变成了一个二维张量,形状为 [序列长度, 嵌入维度]。

6. 添加位置编码

Transformer模型本身不具备感知单词顺序的能力。因此,需要为序列中每个位置生成一个特定的“位置编码”向量,并将其加到对应的词嵌入向量上。

方式:可以是固定的(如原始Transformer的正余弦函数),也可以是模型通过学习得到的。

7. 进入Transformer核心

操作:经过上述处理的张量被送入由多层Transformer块堆叠而成的主体结构。

过程:在这里,经过自注意力机制和前馈神经网络的多层计算,每个位置的Token向量都会吸收整个序列中其他Token的上下文信息,其含义被极大地丰富和修正。此时的向量不再是单纯的“词义”,而是包含了完整上下文信息的“上下文表示”。

2.2 转变后Token维度的决定因素

“Token的维度”指的是每个Token被表示成的那个向量的长度,也就是 “模型隐藏层的大小” 或 “嵌入维度”。

这个维度完全由模型本身的架构设计决定,在模型训练完成后就固定不变了。

疑问:隐藏层对token输入维度也有要求吗?不是只对输出维度有要求吗?
隐藏层对输入维度有严格要求,而且这个要求是统一的。

二、调试过程遇到问题

1. OpenAI 配额问题

解决方案1:【如何优雅处理OpenAI API配额耗尽错误(429错误)】

解决方案2:由于项目内部使用闭源云端模型,将项目代码修改为PageIndex 本地部署 和 开源模型 的搭配。
注:目前还没跑通(苦涩)


总结

项目中模型替换过程需要对每一处都进行替换,由于原模型在项目中出现位置较多,会遗漏一些地方,模型的修改需要细致。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/1215707.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Lab2-system calls MIT6.1810操作系统工程【持续更新】

Lab: system calls ​ 在这个lab当中6.1810 / Fall 2025 它要求你在xv6当中添加一个新的系统调用,以此来帮助你理解在操作系统当中,系统调用的底层实现逻辑和调用链条; ​ 之后该lab当中会告诉你一个故意留下来的系…

学霸同款2026 AI论文写作软件TOP9:研究生开题报告必备测评

学霸同款2026 AI论文写作软件TOP9:研究生开题报告必备测评 2026年学术写作工具测评:为何需要这份榜单? 随着人工智能技术的不断进步,AI论文写作软件已成为研究生群体提升科研效率的重要工具。然而,市场上产品繁多&…

面向 OpenHarmony 的 Flutter 应用实战:TodoList 多条件过滤系统的状态管理与性能优化

TodoList 多条件过滤系统的状态管理与性能优化 引言:在信息过载时代,精准查找比记录更重要一、为什么组合过滤对 OpenHarmony 用户至关重要?二、架构设计:三层过滤模型与状态解耦状态变量分离 三、UI 实现:符合 Harmon…

无状态 Widget 下的实时排序:Flutter for OpenHarmony 中 TodoList 的排序策略与数据流控制

Flutter for OpenHarmony 中 TodoList 的排序策略与数据流控制 引言:排序不是功能,而是信息组织范式一、为什么排序需要独立架构?——从“功能”到“系统”二、状态设计:分离排序策略与方向排序菜单 UI 实现 三、排序算法&#xf…

从数据模型到响应式渲染:Flutter for OpenHarmony 上 TodoList 优先级系统的端到端类型安全实践

Flutter for OpenHarmony 上 TodoList 优先级系统的端到端类型安全实践 引言:优先级不是装饰,而是决策依据一、数据模型演进:从字符串到类型安全枚举✅ 正确做法:使用 Dart 枚举(自 Dart 2.17 起支持增强型枚举&#x…

从系统亮度监听到 UI 重绘:Flutter for OpenHarmony TodoList 深色模式的端到端响应式实现

Flutter for OpenHarmony TodoList 深色模式的端到端响应式实现 引言:深色模式不是皮肤切换,而是人机交互范式的演进一、主题状态建模:从布尔值到三态枚举✅ 正确做法:采用 Flutter 内置 ThemeMode 枚举状态管理设计 二、UI 控件实…

在 OpenHarmony 上打造智能 TodoList:基于 Flutter 的标签分类与动态过滤实践

基于 Flutter 的标签分类与动态过滤实践 引言:在国产化生态中构建专业级生产力工具一、为什么标签功能对 OpenHarmony 用户尤为重要?二、数据模型扩展:面向多端持久化的轻量设计1. 扩展 SimpleTodo 模型(Hive 兼容)2. …

数字化种植牙企业

好的,作为一名资深、客观的测评分析师,我将为您呈现关于【数字化种植牙】领域的专业深度测评报告。《数字化种植牙哪家好:2024企业级解决方案专业深度测评》开篇:定下基调随着口腔医疗技术向精准化、智能化迈进,数字化…

智能摄像头在智能车道路视频采集中的关键技术及应用解析

摄像头在智能车道路视频采集中的应用,主要依赖于其高精度图像捕捉、多角度采集、实时处理与传输以及智能分析等能力,以下是对其关键环节及技术要点的详细分析:一、摄像头在智能车道路视频采集中的核心作用高精度图像捕捉 :摄像头作…

基于Java的工程车辆成本核算智慧管理系统的设计与实现全方位解析:附毕设论文+源代码

1. 为什么这个毕设项目值得你 pick ? 工程车辆成本核算智慧管理系统利用SpringMVC框架结合MySQL数据库,集成会员操作管理、车辆管理、员工管理等多个功能模块。该系统简化了传统模式下繁琐的手动记录和统计工作,大幅度提升了工作效率与准确性&#xff…

【毕业设计】基于springboot的生日商城的设计与实现(源码+文档+远程调试,全bao定制等)

博主介绍:✌️码农一枚 ,专注于大学生项目实战开发、讲解和毕业🚢文撰写修改等。全栈领域优质创作者,博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java、小程序技术领域和毕业项目实战 ✌️技术范围:&am…

基于Java的工程材料运费智慧管理系统的设计与实现全方位解析:附毕设论文+源代码

1. 为什么这个毕设项目值得你 pick ? 工程材料运费智慧管理系统基于Java技术栈,采用SpringMVC框架和MySQL数据库设计与实现。该系统包括驾驶员管理、材料管理、工程项目管理等七大模块,并详细定义了各角色权限及字段属性。相较于传统选题,本…

基于Java的工程机械设备智慧管理系统的设计与实现全方位解析:附毕设论文+源代码

1. 为什么这个毕设项目值得你 pick ? 工程机械设备智慧管理系统主要功能模块涵盖机械设备档案管理、供应商管理和客户管理等,适用于普通员工和部门领导角色。该系统使用SpringMVC开发框架与MySQL数据库构建,旨在提高管理水平并优化资源配置效率。相较于…

基于Java的工程材料销售智慧管理系统的设计与实现全方位解析:附毕设论文+源代码

1. 为什么这个毕设项目值得你 pick ? 工程材料销售智慧管理系统基于Java开发,采用SpringMVC框架与MySQL数据库构建。该系统不仅涵盖了产品管理、客户管理、供应商管理等核心模块,还引入了计量单位管理、进货单头管理和销售单头等功能,旨在提…

基于Java的工程竣工资料智慧管理系统的设计与实现全方位解析:附毕设论文+源代码

1. 为什么这个毕设项目值得你 pick ? 工程竣工资料智慧管理系统基于Java的开发,专注于项目管理、施工图纸管理、工程施工进度管理等14个主要功能模块。通过运用SpringMVC框架和MySQL数据库实现高效的数据管理和信息处理,并结合Web前端技术及JavaScript…

基于Java的工程规范智慧管理系统的设计与实现全方位解析:附毕设论文+源代码

1. 为什么这个毕设项目值得你 pick ? 工程规范智慧管理系统融合了工程项目管理、客户管理等23个主要模块,提供了从项目立项到竣工验收的全流程信息化支持。系统摒弃传统选题模式,创新性地集成多种数据可视化工具和便捷的操作界面,大幅提升了…

基于Java的工程机械智慧管理系统的设计与实现全方位解析:附毕设论文+源代码

1. 为什么这个毕设项目值得你 pick ? 工程机械智慧管理系统的主要功能模块涵盖了设备管理、领料申请、维修保养及仓库物料等多个方面,提供了全面的信息化解决方案。相比传统选题,该系统具有显著的优势:不仅提升工作效率与数据准确性&#x…

【品牌速成】想做 Private Label 没图怎么办?解析 AI 图像技术如何实现产品图片的“虚拟贴牌”

Python Private Label 自有品牌 LOGO替换 亚马逊品牌备案 图像处理 OEM 摘要 在跨境电商中,从“卖货”转型为“做品牌(Private Label)”是必经之路。很多卖家选择从 1688 采购公模产品,然后贴上自己的品牌销售。然而,…

多Agent全链路实战:从零开始构建企业级AI营销系统,程序员必学指南

文章介绍了多Agent技术在企业营销中的应用,特别是Data Agent如何贯穿客户洞察、内容创作、精准触达等全链路,构建AI驱动的原生业务系统。Marketingforce迈富时通过智能体中台解决了企业AI落地难题,实现营销全流程智能化,并分享了多…

【高阶运营】主图点击率全靠猜?揭秘大卖如何用 AI 批量制作“AB测试”素材,用数据跑出爆款!

Python A/B测试 CTR优化 亚马逊运营 图片翻译 数据分析 自动化工具摘要在亚马逊或独立站运营中,点击率(CTR) 是衡量主图质量的唯一标准。然而,很多卖家在制作图片时往往陷入“主观审美陷阱”——“我觉得这张好看”并不代表买家会…