>多模式检索仪(RAG)系统正在通过整合多种数据类型(TEXT,图像,音频和视频)来彻底改变AI,从而获得更多细微差别和上下文感知的响应。 这超过了传统的抹布,这仅关注文本。 一个关键的进步是通讯嵌入,为视觉和文本数据创建了一个统一的空间,从而实现了无缝的跨模式交互。 高级模型会生成高质量的嵌入,改善信息检索并弥合不同内容形式之间的差距,最终丰富用户体验。
学习目标
- 掌握了多模式抹布的基本原理及其优势比传统抹布。
- 了解嵌入统一文本和图像嵌入空间中的作用。
- 比较剪辑模型的somic视觉嵌入,分析性能基准。
- >使用somic Vision和Text Embeddings在Python中实现多模式的RAG系统。
- 学习从PDF中提取和处理多模式检索的文本和视觉数据。
*本文是*** 数据科学blogathon的一部分。
目录的
>
什么是多模式的抹布?-
nive vision嵌入-
>杂志嵌入的性能基准-
python实施多模式抹布,带有通知嵌入-
>步骤1:安装必要的库-
>步骤2:设置OpenAI API键并导入库- >
步骤3:从PDF- 中提取图像
步骤4:从PDF- 提取文本
步骤5:保存提取的文本和图像-
步骤6:块文本数据-
>步骤7:加载名词嵌入模型-
步骤8:生成嵌入-
>步骤9:将文本嵌入在qdrant - 中存储
>步骤10:将图像嵌入在qdrant - 中
>步骤11:创建一个多模式猎犬-
步骤12:用兰链构建多模式抹布-
查询模型-
结论-
常见问题-
什么是多模式的抹布?
>多模式抹布代表了一个显着的AI进步,这是通过合并多种数据类型来基于传统抹布的。与主要处理文本的传统系统不同,多模式抹布处理并同时集成了多个数据表格。这导致了更全面的理解和背景感知的反应。
键多模式抹布组件:
- >数据摄入:来自各种来源的数据是使用专用处理器摄入的,确保验证,清洁和归一化。
>
- >向量表示:>使用神经网络(例如,图像的剪辑,文本的剪辑,bert for Text)来处理统一的矢量嵌入,保留语义关系。
>
使用索引技术(HNSW,FAISS),将> >向量数据库存储:- 嵌入嵌入在优化的矢量数据库(例如qdrant)中,以有效检索。
查询处理:
>传入查询被分析,转换为与存储数据相同的向量空间,并用于识别相关模态并生成用于搜索的嵌入。
-
nive vision嵌入
解决剪贴模型限制:
>
>剪辑以零拍功能出色时,其文本编码在图像检索之外的任务中表现不佳(如MTEB基准测试所示)。 Nimic Embed Vision通过将其视觉编码器与嵌入式文本潜在空间保持一致来解决这一点。
媒体嵌入视觉与提名嵌入文本一起训练,冻结文本编码器并在图像文本对上训练视觉编码器。这样可以确保最佳的结果和与名词嵌入文本嵌入的向后兼容性。
>
>杂志嵌入的性能基准
剪辑模型虽然在零拍功能方面令人印象深刻,但在语义相似性(MTEB基准)等单峰任务中显示出弱点。通用嵌入视觉通过将其视觉编码器与名词嵌入文本潜在空间保持一致,从而克服了这一点,从而在图像,文本和多模式任务(Imagenet Zero-Shot,MTEB,MTEB,DataComp Benchmarks)中产生了强大的性能。
python实施多模式抹布,带有通知嵌入
本教程构建了一个多模式抹布系统,从包含文本和图像的PDF检索信息(使用带有T4 GPU的Google Colab)。
>步骤1:安装库
安装必要的Python库:OpenAI,QDRANT,Transformers,Torch,Pymupdf等
>步骤2:设置OpenAI API键并导入库
>
>设置OpenAI API密钥并导入所需的库(Pymupdf,PIL,Langchain,OpenAI等)。 (为简短而省略了代码。)
步骤3:从PDF
中提取图像
>使用pymupdf从PDF提取图像,然后将其保存到目录中。 (为简短而省略了代码。)
步骤4:从PDF
提取文本
>使用pymupdf从每个PDF页面中提取文本。 (为简短而省略了代码。)
步骤5:保存提取的数据
>保存提取的图像和文本。 (为简短而省略了代码。)
步骤6:块文本数据
>使用Langchain'sRecursiveCharacterTextSplitter
将提取的文本分为较小的块。 (为简短而省略了代码。)
>步骤7:加载名词嵌入模型
>使用拥抱面孔的变形金刚加载Nomic的文本和视觉嵌入模型。 (为简短而省略了代码。)
步骤8:生成嵌入
生成文本和图像嵌入。 (为简短而省略了代码。)
>步骤9:将文本嵌入在qdrant
中存储
>将文本嵌入在QDrant集合中。 (为简短而省略了代码。)
>步骤10:将图像嵌入在qdrant
中
>将图像嵌入在单独的QDrant集合中。 (为简短而省略了代码。)
>步骤11:创建一个多模式猎犬
>创建一个函数,以根据查询检索相关的文本和图像嵌入。 (为简短而省略了代码。)
步骤12:用兰链构建多模式抹布
>使用Langchain处理被检索的数据并使用语言模型(例如GPT-4)生成响应。 (为简短而省略了代码。)
查询模型
>示例查询演示了系统从PDF中从文本和图像中检索信息的能力。 (示例查询和输出省略了,但在原始中存在。
结论
钥匙要点
多模式抹布整合了多种数据类型,以更全面地理解。
nive vision嵌入统一视觉和文本数据以改进信息检索。
该系统使用专门的处理,向量表示和存储以进行有效检索。
以上是用假嵌入增强破布系统的详细内容。更多信息请关注PHP中文网其他相关文章!