网易首页 > 网易号 > 正文 申请入驻

AI搜索悄悄退化成关键词匹配,两周没人发现反而更靠谱了?

0
分享至

这件事听起来像个笑话:我自己搭的语义搜索引擎,后端挂了整整两周,我毫不知情,还用得挺开心。直到偶然翻日志才发现,它早就不跑向量了,纯靠最原始的关键词匹配撑了两周。尴尬归尴尬,但搞清楚它为什么没直接挂掉之后,我觉得这部分一点也不尴尬。

我在一个小型MCP服务器上部署了Codicil,专给AI编程助手当文档搜索引擎用。跑Runbook、配置笔记、家庭实验室杂七杂八的记录,总共就我一个用户,没人盯着运维。几个月来它一直对接正经的Ollama实例用nomic-embed-text做嵌入,每次查询都是真正的语义检索。后来因为别的原因我把那台Ollama机器下线了,嵌入服务直接断连。

两周后我才偶然发现这事。具体什么线索让我起了疑心已经记不太清,反正翻日志的时候才意识到,系统已经靠关键词回退方案跑了很久。

它不是没挂,是挂了也不吭声

大多数同类工具有一个统一的失败模式:嵌入服务一挂,万事休矣。没向量就没搜索,干脆报错拉倒。我在写Codicil的时候偏不想走这条路,于是把代码里散落着一堆"要是这东西没了该怎么办"的处理逻辑,没集中放在一起,但每一处都管用。

这套朴素到近乎粗暴的容错机制,事后复盘有四层安全网。第一层:嵌入主机连不上?直接退回到从磁盘grep原始文件。第二层:索引是空的或者压根没建?同样的关键字回退。第三层:重建索引跑到一半崩了?新数据块先写入再删旧块,就算中途崩溃残留的也是过期数据,而不是空白。第四层更实际——一个长期运行的serve进程跟cron定时触发的索引任务抢同一个存储时,真撞上过。后来直接上了排他锁,用fcntl.flock(file_descriptor, LOCK_EX | LOCK_NB)把后来者直接拒掉,连碰数据的机会都不给。

这些技术哪项都不高深,写起来却烦人,也容易被跳过。我第一次就没写全,所以进程竞态的事才真实发生过。

关键词搜索输得明白,但站得稳

说实话,关键词搜索比语义搜索差远了。它不懂同义词,只会数字符重叠。把相同查询放在两边跑,语义模型大部分时候都赢。但前提是嵌入主机得在线——我那个偏偏离线两周,而我毫无察觉。这就引出一个挺荒诞的结论:在你的基础设施偶尔掉线时,一个会降级的差方案,比一个彻底罢工的好方案有用得多。

调试过程中还揪出个更蠢的bug,事后看简直写在脸上。Chroma建集合的时候,第一次写入就锁死向量维度。我最初让不同嵌入模型共用同一个集合,一换模型再次写入就会默默出错。现在每个嵌入模型单独建集合,用模型名的SHA-256前12位做区分,彻底隔离。

没人盯的系统,得自己照顾自己

回看整件事,最值钱的教训不是回退机制多聪明,而是设计假设的根本翻转:不假设依赖的服务永远在线,转而假设它们随时会消失。这种思维下写出来的代码,天然带着怀疑论气质——每个外部调用都要想好"对方不在了我怎么办"。做出来的系统可能不够优雅,但皮实。

写这些容错代码没有技术难度,纯粹是纪律问题。技术栈里每个"先放着回头再加"的防御逻辑,最终都会变成生产环境里的真实故障。进程竞态那次就是活证。

Codicil显然还有一堆可改进的地方,比如埋点监控让系统能主动喊一声"我已经退化到关键词模式了",而不是默不作声。但我依然认为它代表了健壮软件的一种被低估的构建哲学:真正的可靠不是保证所有依赖都万无一失,而是当依赖层层崩塌时,你还能在残垣断壁上继续干活。哪怕干得糙一点。

特别声明:以上内容(如有图片或视频亦包括在内)为自媒体平台“网易号”用户上传并发布,本平台仅提供信息存储服务。

Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.

相关推荐
热点推荐
历史上“最懒”的诗人:一生就写了一首诗,只有两句,人人都会背

历史上“最懒”的诗人:一生就写了一首诗,只有两句,人人都会背

凉州辞
2026-07-21 11:40:03
飞机上一儿童私自打开客舱充气救生衣,南航客服回应:确有该情况,乘务长和安全员发现后立即介入,已对设备进行更换,未影响飞行安全

飞机上一儿童私自打开客舱充气救生衣,南航客服回应:确有该情况,乘务长和安全员发现后立即介入,已对设备进行更换,未影响飞行安全

大风新闻
2026-07-21 21:46:02
C929或将提前交付!国产宽体机用上自研发动机,波音空客彻底急了

C929或将提前交付!国产宽体机用上自研发动机,波音空客彻底急了

荒野科技
2026-07-21 11:19:57
网红边牧被盗杀案已移送检察院,盗窃者被取保候审,警方对“锄头”估值2300元,狗主人将提起民事诉讼

网红边牧被盗杀案已移送检察院,盗窃者被取保候审,警方对“锄头”估值2300元,狗主人将提起民事诉讼

封面新闻
2026-07-21 21:59:40
细思极恐!韩寒、蒋方舟、贾浅浅、贾平凹,背后竟是同1个操盘手

细思极恐!韩寒、蒋方舟、贾浅浅、贾平凹,背后竟是同1个操盘手

简单的视角
2026-07-20 16:11:57
伊朗媒体称美海军第五舰队司令部发生爆炸

伊朗媒体称美海军第五舰队司令部发生爆炸

新华社
2026-07-21 18:00:04
罗德里获金球奖引争议!阿根廷媒体:耻辱+被抢劫 8球4助输给0球0助

罗德里获金球奖引争议!阿根廷媒体:耻辱+被抢劫 8球4助输给0球0助

我爱英超
2026-07-21 07:32:06
英国新首相上台就掀桌子,直接废除撒切尔计划,对华态度曝光

英国新首相上台就掀桌子,直接废除撒切尔计划,对华态度曝光

月光作笺a
2026-07-21 19:57:15
中国海警局公布全程监管菲转运伤员现场画面

中国海警局公布全程监管菲转运伤员现场画面

环球网资讯
2026-07-21 21:31:20
让身体炎症全部消失的 20 个习惯清单

让身体炎症全部消失的 20 个习惯清单

今日养生之道
2026-07-12 08:34:20
美军连炸9天,全面大战即将打响,伊朗突发政变?穆杰塔巴先跑了

美军连炸9天,全面大战即将打响,伊朗突发政变?穆杰塔巴先跑了

烟雨洛神生
2026-07-20 17:41:35
诺兰新片《奥德赛》首周末全球狂揽26亿,成今年真人电影开画冠军

诺兰新片《奥德赛》首周末全球狂揽26亿,成今年真人电影开画冠军

浅遇时光
2026-07-22 00:07:53
台湾2300万人都必须接受中国共产党!这是不可逆转的大趋势

台湾2300万人都必须接受中国共产党!这是不可逆转的大趋势

花折亦度无情
2026-07-20 16:07:16
朝鲜从中国定制两万辆电动自行车,长远意义比进口汽车还大?

朝鲜从中国定制两万辆电动自行车,长远意义比进口汽车还大?

守望东北亚
2026-07-19 06:25:06
老祖宗识人术:男看耳朵,女看嘴,准得可怕

老祖宗识人术:男看耳朵,女看嘴,准得可怕

风起见你
2026-07-20 17:27:10
阿根廷记者:梅西昨天告诉队友,他已完成在国家队的最后一战

阿根廷记者:梅西昨天告诉队友,他已完成在国家队的最后一战

懂球帝
2026-07-21 16:00:24
还要诛心?西班牙夺冠巡游现“约架”海报,亚马尔拿帕雷德斯开涮

还要诛心?西班牙夺冠巡游现“约架”海报,亚马尔拿帕雷德斯开涮

星耀国际足坛
2026-07-21 19:45:01
李采明,任上被查!

李采明,任上被查!

荆头条
2026-07-21 11:51:52
1993年,92岁的张学良在台北见到冯巩,念珠忽然掉落在地,他望着对方愣了几秒,颤声问道:这孩子好面熟,祖上莫非是河间冯大帅?

1993年,92岁的张学良在台北见到冯巩,念珠忽然掉落在地,他望着对方愣了几秒,颤声问道:这孩子好面熟,祖上莫非是河间冯大帅?

磊子讲史
2026-07-21 19:15:02
半个科技圈大佬们,去世界杯组局了!

半个科技圈大佬们,去世界杯组局了!

互联网坊间八卦
2026-07-21 12:52:00
2026-07-22 01:08:49
固件更新中
固件更新中
有态度网友ytd
396文章数 58关注度
往期回顾 全部

科技要闻

OpenAI高管:Kimi K3强到没法用"蒸馏"解释

头条要闻

建于山体内 特朗普首次明确点名伊朗第四大核设施

头条要闻

建于山体内 特朗普首次明确点名伊朗第四大核设施

体育要闻

“不会进球”的前锋,在世界杯决赛进球了

娱乐要闻

谢贤被曝已火葬,狄波拉携儿女送别

财经要闻

百虾竞速上车:4条路线争夺车载AI话语权

汽车要闻

WAIC专访|易启未来余志勇:网易孵化按摩机器人 能识穴会“手法”

态度原创

本地
手机
游戏
亲子
军事航空

本地新闻

杭州诗意路名,自带氛围感

手机要闻

iOS 27 Beta4推送:国行Siri AI继续跳票,但细节更新已实装!

好好的二游看板娘,怎么就堕落成了爱而不得的重女胖鹈鹕?

亲子要闻

孩子咳嗽先别乱喂药!这5类常见用药误区,家长要避开

军事要闻

美伊再开打 战局出现新变化

无障碍浏览 进入关怀版