Gecko:Google 的通用文本嵌入模型
Google 开发的 Gecko 是一种通用文本嵌入模型,通过从大型语言模型(LLM)中蒸馏知识,旨在成为高性能的通用模型。Gecko 在文档检索、语义相似性和分类等多种任务上表现出色,采用了一种新颖的训练方法。
训练方法与数据集
Gecko 的训练基于一个名为 FRet(Few-shot Prompted Retrieval) 的微调数据集,该数据集通过 LLM 生成的查询构建而成。LLM 还被用于挖掘与查询相关的正负段落。
训练步骤
Gecko 的训练分为两个主要步骤,均依赖于 LLM 生成和排序数据:
- 生成多样化的(查询,段落)对:
从大量未标记的段落开始,使用少量样本提示的 LLM 为每个段落生成相关任务和查询。然后,使用预训练的嵌入模型对任务和查询进行嵌入,找到最近的段落,并通过 LLM 重新排序这些段落,从而获得正负段落。 - 检索与排序:
使用现有的嵌入模型检索与查询最相似的前 N 个段落,并通过 LLM 对这些段落进行排序,确定正目标和负目标。
关键创新与优势
Gecko 的核心创新在于使用 FRet 数据集和 LLM 重新排序段落,这显著提升了模型性能。Google 指出,重新排序步骤是提高质量的关键,因为生成查询的最佳答案段落通常与原始段落不同。
此外,Gecko 的另一个优势在于为多样化的任务生成查询和段落,并精心格式化训练数据。
性能表现
在 MTEB 基准测试 中,Gecko 在其类别中表现最佳,甚至与基于 7 倍大模型或 5 倍高维嵌入的系统竞争。在低端模型中,Gecko 的 256 维嵌入表现优于所有现有的 768 维嵌入模型,使其成为一个极具吸引力的紧凑文本嵌入模型。
文本嵌入的应用
文本嵌入是自然语言处理中的基础工具,将非结构化文本转换为与意义、语义和关系相关的向量表示。其应用包括文档检索、文本聚类、语义搜索、相似性评分和文本分类等。
公开与开源
目前,Google 尚未开源 Gecko,其公开方式和时间表尚不明确。
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用。你还可以使用@来通知其他用户。