solr长文本搜索问题

简介: 多关键词搜索排序质量一直一个疼痛的问题,已经频繁遇到,目前还没来得及系统解决。 针对之前的解决经验,做一个小节,后面可能随着对排序质量的提高,会越来越突出。 请大家拍砖和丰富这方面的经验,提升解决需求的效率。 分析 当前默认都是phrasequery执行,对指定域先分词,然后

多关键词搜索排序质量一直一个疼痛的问题,已经频繁遇到,目前还没来得及系统解决。


针对之前的解决经验,做一个小节,后面可能随着对排序质量的提高,会越来越突出。


请大家拍砖和丰富这方面的经验,提升解决需求的效率。


分析


当前默认都是phrasequery执行,对指定域先分词,然后按照短语去查询,当出现分词交叉后,结果就悲剧了。


当非自动生成phrasequery时候,指定域也会分词,然后按照
AND 
或者 OR

拼接起来去查,此时,短语的关联性丢失,挨在一起的可能没有排在前面,尽管有结果。


当不自动生成phrasequery时候,"  " 
将查询出当做整体,此时依然会分词,只是查询时分词后的拼接去查。例如 “交易成功” 
转为 “交易

成功”


当扩展查询串去查,可能结果来自扩展串,有结果但不一定就是期望。


改为 
建索引最多分词、查询最长匹配,能解压一部分场景需求,对于精准查询的短语、长文本尤其效果好,对于追求结果最多不适应。


或者 
业务执行分词然后按照业务需求执行坡度或者相关性激励来调整相关性。例如 (交易

成功)~12 And

交易^10

成功^2

 


总结:


新业务依赖长文本查询的,需要daily仔细测试,对多关键词的抽样测试不可少。

    

新的对精准匹配要求高的检验使用IK分词,分别配置建索引和查询的分词模式。

    
DismaxQueryparse
 
能有效的减少查询IO和“去重“,完全可以替代
OR 
扩展查询,目前发现一个不友好,例如 
“成功页面 
交易成功”,这个串中“成功”分量非常大,导致


结果排序有点糟糕。

    
Dismaqueryparse
覆盖lucenequeryparse全部功能,同时提供更丰富的查询相关性设置, 
分词内部关系式OR

,一定能保证有结果,


配饰使用方法,在solrconfig.xml  requesthandler

中配置 edismax

Phrasequery 
不启用,一种方法是schema
verison
定义为1.4就可以了,另外是
fieldtype中显示定义不生成,同时solrconfig中配置lucene 
版本34


问题背景


使用paoding分词,默认AND 
,autogeneralPhrasequery
= true


搜“交易成功 
幻灯片” 
没有结果       --》AND之后幻灯片部分没有结果导致没有结果


搜“交易成功” 
有结果 


搜“幻灯片” 
没有结果----》原因是分词交叉

 


使用paoding分词,autogeneralPhrasequery = false


搜“交易成功 
幻灯片” 
有结果        

结果来自交易成功部分


搜“交易成功”        有结果


搜“幻灯片”          没有结果      

交叉依然没有结果

 


使用paoding分词,autogeneralPhrasequery = false  扩展OR


搜“交易成功 
幻灯片” 
扩展为 
“交易成功 
幻灯片” OR  “交易成功

幻灯片”    有结果,结果排序严重受关键词、索引影响


搜“交易成功”        扩展为“交易成功”
OR   “

交易成功”   有结果
  多余IO出现了


搜“幻灯片”          扩展为“幻灯片”
  OR
 “


幻灯片”   有结果  

结果排序与期望相差很远,排在一起的没在前面

相关文章
|
9天前
|
缓存 前端开发 程序员
DeepSeek-V4.1-Flash-1017 上手实测:3D 直出,效果到底如何
DeepSeek-V4.1-Flash-1017 上手实测:3D 飞行特斯拉、千里江山、折叠掌机一次直出,跑分 77%、最高档单任务 1.3 元
DeepSeek-V4.1-Flash-1017 上手实测:3D 直出,效果到底如何
|
1月前
|
人工智能 自然语言处理 API
觉得阿里云大模型价格太高怎么办?四种便宜购买与使用方法分享
本文针对阿里云大模型“能力强但调用成本高”的普遍痛点,梳理了一套可落地的全链路省钱方案。从开通百炼领取超7000万Tokens新人免费额度起步,叠加夜间错峰4折起的Night Plan活动,再搭配Token Plan订阅与AI通用型节省计划,四层优惠叠加后,实际调用成本可降至普通按量付费的三到五成,帮助个人开发者与团队大幅降低大模型落地的综合开支。
716 18
|
2月前
|
数据采集 人工智能 算法
为什么你的品牌在AI里查无此人?GEO优化的五个关键动作
本文为技术实践分享,介绍AI搜索时代企业亟需的GEO(生成式引擎优化)——不同于SEO,GEO聚焦让AI“认识、信任并推荐”品牌。文章提炼罗小军提出的五大关键动作:诊断AI可见度、结构化知识资产、建设权威信源、布局场景词矩阵、建立持续监测机制,助力企业抢占AI决策入口。(239字)
|
2月前
|
运维 数据可视化 物联网
基站查询 API:基于 LAC/CELLID 解析基站位置,实现设备粗略定位
本文介绍基站查询API能力,支持移动、联通、电信三网2G/3G/4G基站解析,可获取基站经纬度、覆盖半径、地址信息,适用于物联网兜底定位、设备风控、通信运维等场景。
|
5月前
|
存储 人工智能 自然语言处理
2026年阿里云新老用户最新优惠活动:云服务器活动、免费试用活动、AI产品活动参考
阿里云2026新老用户优惠活动涵盖三大板块。云服务器方面,轻量应用服务器低至38元/年,经济型e实例99元/年,u1实例199元/年,限时限量抢购。免费试用方面,新老用户可领最高200元试用点,AI产品免费提供7000万+大模型tokens及30+款产品体验,140+云产品最长12个月免费试用。AI产品方面,百炼Token Plan支持多模型切换、多档套餐;HappyHorse视频生成模型限时8折;OpenClaw一键部署低至9.9元起。此外还提供折扣券、学生无门槛券、算力补贴等多类优惠券,整体以"普惠基础设施+零成本体验+智能化赋能"策略,全面降低上云与用AI门槛。
2026年阿里云新老用户最新优惠活动:云服务器活动、免费试用活动、AI产品活动参考
|
8月前
|
存储 安全 API
微调与安全隐私 —— 大模型定制化过程中的风险防控指南
本文详解大模型微调中的安全隐私风险与防控策略,涵盖数据泄露、模型投毒、恶意查询等典型威胁,提出数据最小化、隐私-性能平衡、全生命周期防控三大原则,并提供脱敏处理、联邦学习、输出过滤等可落地的全流程防护方案,助力安全合规地实现模型定制化。(239字)
|
8月前
|
人工智能 数据挖掘 程序员
零基础从0到1学GEO优化第3课:内容优化的前提是定位精准赛道
定位精准赛道是AI收录的前提:AI只推荐“特定问题的专家”,而非“泛泛的杂家”。 核心方法论“三环定位法”:细分人群(瞄准)、特定问题(具体)、独特优势(证明)。 定位陈述公式:“为 [细分人群] 解决 [特定问题],凭借 [独特优势]”。 关键动作:做减法(拒泛化词)、挖长尾场景(用户视角)、用E-E-A-T验证专业度。
|
9月前
|
人工智能 自然语言处理 搜索推荐
2026年适合中小企业的智能客服系统推荐,轻量化部署+灵活计费
2026年,中小企业智能客服需求聚焦“轻量化、低成本、高适配”。瓴羊Quick Service凭借开箱即用的电商深度集成、93%+意图识别准确率的大模型引擎,及999元/月起的灵活SaaS计费,助力企业降本75%、响应提速至2.1秒,成为数字化转型优选。(239字)
|
存储 人工智能 边缘计算
当 AI 进入「算力密集时代」:你的服务器能跑通大模型吗?
本文深入探讨AI服务器在技术落地中的核心瓶颈问题,结合实战经验解析从模型训练到端侧部署的算力优化策略。内容涵盖三大典型场景的算力需求差异、GPU服务器选型的五大反直觉真相、实战优化方法(如混合精度训练与硬件资源监控),以及边缘AI部署挑战和解决方案。同时提供算力弹性扩展策略、模型生命周期管理及合规性建议,帮助读者构建可持续发展的算力体系。文末附有获取更多资源的指引。
1420 17
|
10月前
|
Java 测试技术 Linux
Apache JMeter 2.9 简单上手教程(附下载包)
JMeter是一款开源性能测试工具,用于模拟多用户并发访问网站或接口,检测服务器负载能力。本文介绍其基本使用:下载解压、配置JDK、启动运行,通过创建线程组、添加HTTP请求和监听器,完成对百度首页的并发测试,并查看响应时间与错误率,帮助初学者快速上手性能测试。

热门文章

最新文章