精选理由
做 RAG 或智能体检索的团队,终于不用被五个语义相同的 chunk 塞满上下文了——Weaviate 的 MMR 一行参数就能让结果既相关又多样,值得直接上手试。
Weaviate 1.37 版本新增了最大边际相关性(MMR)算法,用于解决向量搜索中返回高度相似重复结果的问题。通过一个参数 selection= Diversity.MMR(limit=5, balance=0.5),算法在每次选择结果时惩罚与已选结果过于相似的候选,确保最终结果既相关又多样。balance 参数可调节多样性与相关性的权重,0.0 为最大多样性,1.0 为标准搜索。该功能适用于所有 near_* 查询,特别适合检索密集型智能体和标准 RAG 管道,能有效利用上下文窗口,避免浪费 slots。
AI 翻译 · 中文
Weaviate 1.37 版本新增了最大边际相关性(MMR)算法,用于解决向量搜索中返回高度相似重复结果的问题。通过一个参数 selection= Diversity.MMR(limit=5, balance=0.5),算法在每次选择结果时惩罚与已选结果过于相似的候选,确保最终结果既相关又多样。balance 参数可调节多样性与相关性的权重,0.0 为最大多样性,1.0 为标准搜索。该功能适用于所有 near_* 查询,特别适合检索密集型智能体和标准 RAG 管道,能有效利用上下文窗口,避免浪费 slots。
Your vector search just returned five pizzas. You queried "Italian food" and got margherita, margherita, margherita, margherita, and in a bold twist 𝗺𝗮𝗿𝗴𝗵𝗲𝗿𝗶𝘁𝗮. All technically correct. All useless to…