来源:互联网 更新时间:2026-08-19 13:54
Milvus 3.0创新性地推出词法与语义高亮功能,精准化解Agent搜索中存在的噪音问题,显著降低上下文成本,极大提升检索效率。核心要点如下:1. RAG与Agent在搜索过程中所面临的噪音问题及其产生的影响(如上下文成本居高不下、噪音严重分散注意力等)2. Milvus 3.0的Highlight功能:词法与语义相结合的高亮解决方案3. 词法高亮的具体实现方式(通过BM25/TextMatch进行匹配,实现Token级别的高亮展示)
当RAG与Agent深入应用时,常常会遭遇这样的状况:检索结果看似并无差错,但模型输出的结果却总差那么点意思,而且上下文成本始终居高不下。这其中的根本缘由在于,为了能完整召回所有相关内容,一次query往往会捞出三五段,甚至多达十段的文档给LLM。倘若每篇文档都有几千字,那么一个query就会消耗数万个token。然而问题是,这10篇文档中,真正有用的句子可能仅有几十句,其余的全是噪音。大量噪音的灌入,不仅浪费了token,还分散了LLM的注意力。
对于人类用户而言亦是如此,在电商、客服RAG中,经常会出现几千字的技术文档、几十页的合同或者很长的客服记录,阅读者打开文档后,再逐段去寻找“重点”,不仅搜寻过程麻烦,还需要多一个文档下载的步骤。为了解决这一难题,在Milvus 3.0中,我们引入了全新的Highlight能力,它能够对与查询相关的文本进行词法(BM25搜索文本或显式的TextMatch查询匹配token)或者语义层面的高亮:短文本直接展示匹配内容,长文本则截取重点及附近上下文,如此一来,既降低了大模型的上下文长度,也让电商、知识库等场景的检索变得更加高效、直观。以下便是对本次高亮能力升级的详细解读。
查询与结果文本 → analyzer → token匹配 → 原文位置 → 高亮结果在使用方面,它具有两种灵活的配置方式。如果是配合BM25搜索使用,只需开启highlight_search_text=True,系统便会直接用当前的搜索关键词生成高亮。例如,搜索“BM25混合搜索”,返回的标题“BM25与混合搜索的配置方法”会自动标注出匹配的关键词,让用户一眼就能看到命中点。倘若需要自定义匹配规则,或者给向量搜索结果补充关键词匹配证据,也可以通过highlight_query显式指定TextMatch条件,灵活设置目标字段和匹配文本。from pymilvus import LexicalHighlighter, MilvusClientclient = MilvusClient(uri="http://localhost:19530")highlighter = LexicalHighlighter(pre_tags=[""],post_tags=[""],highlight_search_text=True,)results = client.search(collection_name="document_titles",data=["BM25混合搜索"],anns_field="title_sparse",search_params={"metric_type": "BM25"},limit=10,output_fields=["title"],highlighter=highlighter,)
当前显式词法高亮查询支持TextMatch。它仅在已经返回的结果中查找并标记匹配token,不会扩大候选集,也不会重新排序。它同样可以用于向量搜索结果,为结果补充指定关键词的匹配证据。当目标字段变为长正文时,词法高亮不会返回完整文本,而是以片段的形式输出匹配内容。词法高亮的结果以fragment组织。默认fragment_size为100个字符,num_of_fragments为5。因此,对于超过100个字符的文本,高亮结果通常不会覆盖全文,而是自动返回匹配位置附近的fragment。如果多个匹配落在同一个fragment范围内,它们会合并到同一个片段;如果匹配分布在文本的不同位置,则会按原文顺序生成多个fragment,直至达到num_of_fragments的限制。例如,搜索“BM25调优”后,一篇文档可能分别在“索引配置”“查询参数”和“性能排查”章节中间出现相关内容。此时,可以进一步调整fragment参数,控制上下文范围和返回数量:highlighter = LexicalHighlighter(highlight_search_text=False,highlight_query=[{"type": "TextMatch","field": "title","text": "BM25混合搜索",}],pre_tags=[""],post_tags=[""],)
结果可能包含:highlighter = LexicalHighlighter(pre_tags=[""],post_tags=[""],highlight_search_text=True,fragment_offset=30,fragment_size=160,num_of_fragments=3,)
要是希望展示更完整的上下文,可以通过fragment_offset和fragment_size调整片段范围;num_of_fragments用于控制最多返回多少段。fragment按匹配内容在原文中的先后顺序返回,不会按照BM25分数重新排序。这些片段会随每个搜索结果的highlight字段返回。即便正文没有作为普通输出字段返回,Milvus也能够取得高亮所需的文本并生成片段,从而避免为了展示少量重点而返回完整正文。["...创建稀疏索引时,BM25 的参数会影响...","...查询阶段可以通过这些配置完成 BM25 调优...","...排查延迟时,需要同时检查 BM25 查询参数...",]
在使用时,只需通过SemanticHighlighter传入查询语句、待分析的文本字段和对应的模型部署ID,返回结果就会包含带高亮标记的片段,以及对应的语义相关性分数。其中,queries提供需要理解的问题,input_fields指定需要分析的文本字段。返回结果中除了相关片段,还可以包含对应的片段分数。在场景方面,语义高亮适合长文档问答、RAG引用、客服知识库和查询改写较多的场景。它寻找的是语义关联,而不是要求查询和文档共享相同token。from pymilvus import SemanticHighlighterhighlighter = SemanticHighlighter(queries=["怎样恢复无法登录的账号"],input_fields=["content"],pre_tags=[""],post_tags=[""],model_deployment_id="your-model-deployment",)results = client.search(collection_name="support_articles",data=[query_embedding],anns_field="embedding",search_params={"metric_type": "COSINE"},limit=10,output_fields=["title"],highlighter=highlighter,)
阅读推荐官宣开源|Milvus 3.0正式发布Milvus 3.0开源解读之backfill|亿级AI数据,如何做高效特征回填Milvus 3.0开源解读|从Kafka、Pulsar到Woodpecker,数据库如何低延迟、低成本的写入Milvus 3.0开源解读之Manifest|AI数据管理,应该彻底放弃文件中心架构Milvus 3.0开源解读之,数据库原生聚合排序如何取代应用侧Pandas胶水代码Milvus 3.0开源解读之Regex |从=~到NGRAM,如何选择最优性价比的正则过滤Milvus 3.0开源解读之Snapshot|无需复制embedding数据的Milvus Collection视图Milvus 3.0开源解读|自定义词典如何优化BM25与Text Match的专业词理解能力Milvus 3.0开源解读|如何借助原生TEXT类型和LOB高效管理原始文本


登录查看剩余70%内容
腾讯ima怎么把微信内容一键导入知识库?
黄金价格不断创新高!黄金稳定币XAU、PAXG市值达11亿美元
CC币价格预测(2026-2035):Canton币今日价格走势+长期价格预测
新浪互联网热点小时报丨2026年07月26日16时_今日实时互联网热点速递
2026鸣潮账号交易安全指南:五大交易平台对比与风险避坑分析
腾讯ima怎么创建共享知识库?
今日比特币暴涨分析:Metaplanet的比特币BTC投资推动股价上涨17%
新浪机器学习热点小时报丨2026年07月25日18时_今日实时机器学习热点速递
新浪人工智能热点小时报丨2026年07月30日18时_今日实时人工智能热点速递
蚂蚁庄园今日答案7月21日(今日已更新) 蚂蚁庄园今天正确答案是什么呢
比特币(BTC)核心周期指标复刻历史走势 价格或跌破5.8万美元关键支撑位
Celestia价格预测2026-2032:TIA币能否引领山寨币上涨行情?历史价格回顾
2026年三角洲行动账号交易指南:5大交易平台对比与安全选购建议
车载冰箱重置到出厂设置几步?
抖音怎么取消申请退货退款?抖音上取消退货怎么操作
腾讯ima知识库怎么分类管理?
短剧《史上最强洪荒修为》剧情介绍
WorkBuddy微信版怎么获得积分?
Windy卫星云图怎么看?云层变化识别技巧
TRUMP价格走势与WEPE预售进展解析
手机号码测吉凶
本站所有软件,都由网友上传,如有侵犯你的版权,请发邮件haolingcc@hotmail.com 联系删除。 版权所有 Copyright@2012-2013 haoling.cc