RAG 系统中的关键技术:从 Embedding 到 Reranker

如果无法正常显示,请先停止浏览器的去广告插件。
分享至:
1. RAG 系统中的关键技术: 从 Embedding 到 Reranker 王峰 @ Jina AI Berlin · Beijing · Shenzhen 2024年05月18日 felix.wang@jina.ai
2.
3. About Me 2021 - now, 研发总监, Jina AI 2020- 21, 高级研究员, 虎牙 2018 - 19, 高级研究员, 腾讯 2011 - 18, 博士, 香港浸会大学 王峰,本科毕业于山东大学,并于2016年获得香港浸会大学计算机博士学位。曾就职于腾讯和虎 牙科技工作,目前担任 Jina AI 研发总监,主要负责向量 Embedding 和重排 Reranker 模型的 训练和开发工作。此外,王峰博士具有非常丰富的开源项目开发和运营经验,对开源事业充满热 情,是 Jina、clip-as-service、rungpt 等开源项目的核心贡献者或管理者。
4. 为什么需要检索增强生成(RAG) ? LLM 大语言模型目前存在的问题 ● 幻觉:简而言之就是“胡说八道” ○ 在专业领域后果严重 ● 知识更新:训练数据过时而产生的知识更 新问题 ● 私域数据 ● 各种 limit ○ ○ 包括Token长度 大海捞针(needle in a haystack) RAG是一种结合了大语言模型和外部知识库的技 术,通过在生成答案之前从外部知识库中检索相 关信息,来提高答案的准确性。
5. RAG 是如何工作的?
6. 通用 Embedding 模型
7. jina-embeddings-v2: 8K 向量模型 ● 融合ALiBi,使用 750Gb 语料,训练 jina-bert-v2 ● 基于步骤 1 的 jina-bert-v2,使用3.8亿无标签的文本对数据,训练向量模型 ● 基于步骤 2 的向量表示模型,使用300万有标签的正负样本构成文本三元组数据,微调向量模型 Pairwise Data Web Text Jina BERT Jina Embedding Pairs Pairs + Hard Negatives Jina Embedding Full
8. Jina BERT v2 模型框架 Attention with Linear Biases (ALiBi) ❌ Positional Embeddings ✔️ Relative Biases Source: Vaswani et al. “Attention is all you need”. NeurIPS 2017. arXiv:1706.03762 (2017).
9. Jina BERT v2 模型框架 Train short, Test Long Attention with Linear Biases (ALiBi) ❌ Positional Embeddings ✔️ Relative Biases Source: Press, Ofir et al. “Train Short, Test Long: Attention with Linear Biases Enables Input Length Extrapolation”. ICLR 2022. arXiv:2108.12409 (2021). ● ALiBi is able to maintain language modeling perplexity when inferencing on sequences that are longer than the training data
10. 训练Embedding模型
11. 弱监督数据训练 Pairwise Data Web Text Jina BERT Jina Embedding Pairs Pairs + Hard Negatives Jina Embedding Full
12. 弱监督数据训练 Bi-Encoder (Two-Tower) Architecture Mean Pooling Jina BERT Source: https://www.sbert.net/docs/training/overview.html (25.10.2023)
13. 弱监督数据训练 ● 3阶段数据清理,得到3.8亿条高质量文本对, 1700亿个token ○ 去重 ○ 语种过滤 ○ 一致性过滤 ● 根据数据集质量重采样
14. 强监督数据训练 Pairwise Data Web Text Jina BERT Jina Embedding Pairs Pairs + Hard Negatives Jina Embedding Full
15. 强监督数据训练 ● 收集MSMarco, Natural Questions,NLI,fever, ESCI(EN)数据集 ● 构造高质量正负样本三元组共300万条 ○ 针对检索任务,使用Hard negative mining ○ (anchor, positive, negative_1, ..., negative_15)
16. MTEB 评测结果 • 唯一开源的8k长度向量模型 • 性能与ada-002齐平 • 提供更多的模型大小选择 • Base: 137M, 768 • Small: 33M, 512
17. 长文本任务评估 包含召回和聚类两个任务,覆盖4个数据集
18. RAG任务评估
19. Jina-embeddings-v2 双语模型训练
20. 训练数据分布
21. 多任务模型精调 ● 对于每个任务,我们定义一个特定的损失 函数。 ● 目前我们只关注检索和 STS 任务, ● 训练数据: ○ ○ ○ 对 于 检 索 任 务, 我 们 将 MSMarco 和 Natural Questions (NQ)等几个数据集 成具有一个正数和多个负数的元组格式 STS 数据集包含两个文本值 q 和 p的三元 组,以及相似性分数 t 使用机器翻译将一些数据集翻译成其他目标 语言 损失函数
22. 模型性能 model size dim de-de de-en distiluse-base-multilingual- cased-v2 0.53GB 768 41.11 47.51 multilingual-e5-large 2.24GB 1024 52.59 77.09 cohere-embed-v3 unknown 1024 52.65 jina-embeddings-v2-base-de 1.25GB 768 54.71 77.48
23. Jina 8K 向量模型 ● ● ● ● 支持 8192 输入长度 HF开源向量模型 性能与闭源商业模型齐平 双语 Embedding 模型支持包括: ○ ○ ○ 德语/英语 中文/英文 西班牙语/英文 ● 代码 Code 向量模型: ○ 支持 30 中编程语言
24. 如何使用 Jina Embedding 模型? ● ● ● ● ● ● ● 官方 API 服务:jina.ai/embeddings 开源地址:huggingface.co/jinaai AWS Marketplace 支持 8192 输入长度 性能与闭源商业模型齐平 双语 Embedding 模型支持包括: ○ 德语/英语 ○ 中文/英文 ○ 西班牙语/英文 代码 Code 向量模型: ○ 支持 30 中编程语言
25. 引入重新排序(ReRank) 搜索准确性提升 20%
26. 什么是 Rerank 模型? ReRank 模型是对RAG检索返回的结果进行重新 排序的模型。 为什么需要 Rerank 模型呢? ● 召回率与上下文窗口问题 ● 文本Embedding向量存在信息丢失,影响 检索准确率 ● 大模型对长文本处理能力的限制 通过使用rerank模型来改善召回的同时,并让大 模型产生更高质量的回答。
27. 混合检索 Hybrid Search
28. 向量检索和 Reranker 模型之间的差异
29. Jina Reranker模型:基于 Jina-Bert-v2 ● 预训练:基于Jina BERT v2,支持 8K 上下 文输入; ● 分阶段训练:逐步提升模型排序能力; ● 迁移学习:将Embedding模型学习到的知 识迁移到Reranker模型; ● 训练数据:使用和Embedding模型相同来 源的训练数据;
30. Jina Reranker 效果评测
31. Jina Turbo Reranker 模型 如何进一步提高搜索的效率和速度?=> 蒸馏
32. Turbo 模型的排序质量和速度
33. 如何使用 Jina Reranker? ● 官方 API 服务:jina.ai/reranker ● 开源地址: huggingface.co/jinaai ● AWS Marketplace ● BYOC with Kubernetes
34.
35. 查看官网,了解更多:https://jina.ai/ Thanks for your attention jina.ai @JinaAI_ felix.wang@jina.ai Berlin · Beijing · Shenzhen

首页 - Wiki
Copyright © 2011-2024 iteam. Current version is 2.139.0. UTC+08:00, 2024-12-27 01:22
浙ICP备14020137号-1 $访客地图$