Hacker News 中文摘要

RSS订阅

我们如何为RAG索引图像 -- How we index images for RAG

文章摘要

Kapa.ai开发了一种高效处理技术文档中图像的方法,通过廉价视觉模型在索引阶段生成图像描述并存储为文本,查询时仅检索文本描述而非原图。这种方法使查询开销仅增加1%-6%,却显著提升了回答质量。研究发现技术文档中的图像主要分为两类:补充说明型和独立信息型,前者增强文本理解,后者提供文本未涵盖的关键信息。

文章总结

Kapa.ai如何为RAG构建图像索引系统

Kapa.ai开发的人工智能助手能够从技术文档中回答问题。该平台处理的知识库包含数百万张图像:截图、架构图、电路示意图、带注释的UI操作指南等。团队花费数月时间研究如何让这些图像在RAG(检索增强生成)流程中发挥作用。

核心解决方案

Kapa.ai采用"一次描述,多次使用"的策略: - 不在查询时处理图像:而是在索引阶段使用经济型视觉模型为每张图像生成描述 - 将描述存储为文本:与普通文本块一起检索 - 成本效益显著:索引是一次性成本,查询开销仅比纯文本高1%-6%,回答质量却有统计学意义上的显著提升

技术文档中图像的作用

分析数千个真实客户问题后,发现图像主要分为两类: 1. 说明性图像(占多数):用视觉形式强化文本内容,如展示具体点击位置的截图 2. 关键性图像:包含独特信息的图表、规格表等,这些信息往往仅存在于图像中

实验证明,提供图像上下文时,LLM评判者明显更倾向于选择含图像的答案(p < 0.05)。

为何实时多模态处理不可行

测试GPT 5.1和Claude 4.6 Sonnet后发现三大根本问题: 1. 经济成本过高:图像使GPT查询成本增加27%,Claude增加51% 2. 物理容量限制:平均查询涉及20-30张图像,远超模型负载上限 3. 检索效果不佳:现有技术难以准确匹配技术图表中的精细细节

生产环境的关键要素

图像过滤

  • 使用启发式规则初步过滤(排除小图像、极端比例等)
  • 基于多模态嵌入构建零样本分类器,准确率达96.8%
  • 对模糊图像(准确率59.8%)采取容忍策略

描述生成

  • 上下文比模型规模更重要:提供图像前后文本可显著提升描述质量
  • 小模型(如GPT 5.4 mini)性价比最高,效果接近昂贵模型

存储方式

  • 独立存储描述块优于内联方式
  • 在图像密集型项目中,独立存储使查询成本仅增加6%(内联方式增加19%)

实施效果

| 指标 | 纯文本基准 | 加入图像描述后 | |------|-----------|---------------| | 答案引用图像比例 | 0% | 10%-64% | | 回答质量 | 基准 | 显著提升(p<0.05) | | 单次查询成本 | 基准 | +1%至6% | | 延迟 | 基准 | 亚秒级增加 | | 索引成本 | 无 | 一次性投入 |

图像放置准确率达94%-99%。这一方案通过将视觉处理前置为一次性工作,实现了成本与效果的最佳平衡。

评论总结

以下是评论内容的总结:

  1. 对cookie弹窗的负面体验
  • 主要观点:用户对cookie弹窗表示强烈反感
  • 关键引用: "That cookie popup just makes me wanna leave and never come back"(这个cookie弹窗让我想离开再也不回来)
  1. 支持图像文本描述方法的观点
  • 主要观点:提前用视觉模型生成图像文本描述并存储是有效方法
  • 论据:已在Obsidian中手动实践,显著改善文本搜索效果;符合"eager"处理模式
  • 关键引用: "This is what I've been doing in my Obsidian infodump...the improvements in outcomes is very real"(这正是我在Obsidian中一直做的...效果改善非常明显) "With media ingestion this is called 'eager' processing...makes all the sense in the world"(在媒体处理中这叫"eager"处理...完全合理)
  1. 对方法的改进建议
  • 主要观点:应考虑LLM的非确定性特点,可能需要重新处理数据
  • 论据:新模型可能发现旧模型遗漏的上下文信息
  • 关键引用: "My only concern is...new models will reveal new information about your data"(我唯一担心的是...新模型会揭示数据的新信息)
  1. 实际应用反馈
  • 主要观点:该方法已成功实践两年,比多模态更经济高效
  • 论据:需要人工更新图像说明;对特定图像问题需要调整架构
  • 关键引用: "I have been doing this since 2 years ago...it works really well"(我两年前就开始这样做...效果很好) "It is cost efficient than multi-modal"(比多模态更经济高效)
  1. 替代方案建议
  • 主要观点:为什么不使用多模态嵌入模型
  • 关键引用: "why not a multimodal embedding model?"(为什么不使用多模态嵌入模型?)
  1. 技术细节讨论
  • 主要观点:关注描述的具体内容和混合图像的处理
  • 关键引用: "How descripting is the caption...include colour, shapes, etc?"(描述有多详细...包括颜色、形状等吗?) "视觉分块思路可以。但图文混合的图怎么办?"(视觉分块思路可行。但图文混合的图像怎么办?)
  1. 开源实现
  • 主要观点:已有开源框架实现类似功能
  • 关键引用: "We have it in our open-source framework"(我们的开源框架中已有此功能)