上周帮同事找一份去年Q3的销售报表,他在公司文档系统里输‘销售报表 2023 Q3’,结果跳出17页无关结果——有会议纪要、差旅单、甚至一封发给IT部的打印机报错邮件。最后靠翻‘共享盘/财务/季度归档’这个路径才找到。不是他不会搜,是系统没把‘销售报表’和‘2023 Q3’真正关联起来。
评测不是看速度,是看“找得准不准”
很多人以为搜索快就是好,其实办公场景里,“快”只是基础。真正卡脖子的是准确率:搜‘客户合同模板’,别跳出5个不同版本的Word草稿;搜‘张伟 离职交接’,别混进‘张伟 项目周报’或者‘王伟 离职’。
常用评测指标就三个,不用记公式,记住它干啥用就行:
- 查准率(Precision):搜出的10条结果里,真相关的有几条?比如搜‘报销流程图’,结果里有7个是PDF流程图,2个是旧版Excel表格,1个是茶水间照片——那查准率就是70%。
- 查全率(Recall):所有相关文档共12份,系统只搜出了9份,漏了3份——查全率就是75%。
- MRR(Mean Reciprocal Rank):你最想要的那个结果排第几名?如果排第1,得分是1;排第3,得分是1/3≈0.33。反复测几十次取平均,值越接近1越好。
自己动手测一测,不用工具也能验
在公司内网或NAS上建个小样本库:放10份真实文档,比如‘采购申请_v2.1.docx’‘会议室预约表_202404.xlsx’‘信息安全守则_2023修订版.pdf’……再列5个典型查询词,像‘新版采购申请’‘4月会议室’‘2023安全守则’。
让3位同事分别搜,记录:
— 每人前3条结果里,有几个真相关?
— 最想要的那份文档,出现在第几条?
— 有没有搜‘报销’却弹出‘包销’‘爆销’这种错别字干扰?
代码级小提醒(运维或IT可参考)
如果你们用Elasticsearch搭内部搜索,别光调match,试试加phrase匹配和boost权重:
{
"query": {
"multi_match": {
"query": "销售报表 2023 Q3",
"fields": ["title^3", "content", "filename^2"],
"type": "most_fields"
}
}
}重点看title^3和filename^2——标题和文件名比正文更值得信,直接给高权重。别让‘2023’在正文里出现10次,就压过标题里的‘Q3销售报表’。
搜索算法不是黑盒,它每天都在处理你的命名习惯、文件夹结构、甚至你随手打的错别字。评测不是为了打分,是让系统听懂人话——毕竟,谁也不想为找一个PDF,手动点开23个文件夹。