ResumeForAI. all research

我拿真实简历量了一遍,发现网上流传的那套说法有两处不对

13 August 2026

前几天看到一篇讲「AI 怎么筛简历」的文章https://www.quora.com/How-does-AI-actually-read-a-resume-What-is-it-even-looking-for

写得挺好,逻辑也清楚。里面有一段大意是这样的:

早年的系统靠关键词匹配,你写 managed projects,岗位要求写 project management,笨一点的匹配器就认不出来。但现在不一样了,现在的系统用的是语义匹配,它知道这两个是一回事,也知道 Python 和 Django 是相关的。它把岗位描述和简历都变成向量,算相似度,给出的是一个分数,不是简单的关键词命中。

我看到这段的第一反应是:听起来很合理,但这是它应该怎么工作。

我前阵子刚好拿真实简历量过一遍它实际怎么工作。发现2个不小的漏洞。

测试数据和分析方法

12 份真实简历,来自 9 个人。其中有一个人给了我同一段职业经历的三个不同写法,这个后面是重点。招聘启事 9 份,也都是真的。

做法是把每份招聘启事拆成一条条具体要求,然后一条一条判:这份简历里,有没有东西能支持这条要求。规则在读简历之前就定死了——职称本身不算证据,你得能指出简历上具体哪句话;同义词、上位词、能合理推出来的都算,不做字符串对比。另外配了对照组,就是故意把不相关领域的简历和岗位配在一起,看判定结果会不会分开。

有三件事我得先讲清楚,不然后面的数字你没法判断:

样本很小。12 份不叫研究,叫探针。

判定的是最顶流的语言模型,不是招聘经理。

13 组配对里只有 1 组是两个判定者独立做的(一致率大概 87%),剩下的都是单个判定者做的。所以「两名独立裁判」这种话我不能说。

好,下面是正题。

第一处:整篇丢进去,语义匹配基本上是失效的

我手上刚好有一个天然的对照组,就是前面说的那三份简历。

同一个人,同样的雇主,同样的年份,同样的学历,同样那几段经历。唯一的区别是写法。

人工一条一条判下来,三份能拿出证据的比例分别是 44%、24%、27%。最好的那份差不多是最差那份的两倍。这个差距不小,人扫一眼就能感觉出来。

然后我把三份完整简历分别编码成向量,跟同一份岗位描述算余弦相似度,得到 0.6584、0.6551、0.6660。

人工看到的差距是 0.21,向量看到的差距是 0.011。

差了快二十倍。

但真正让我停下来的不是这个,是顺序反了。人工判定 B 最好,向量把 B 排到了最后一名,把人工认为证据最少的那份排到了第一。

这就不是「同义词认得不够准」的问题了。这是它连好坏都分不出来。

其实想想也不奇怪。一份简历一千多个词,压成一个几百维的向量,那点因为写法产生的差别,会被整体语义冲掉。三份简历讲的是同一个人的同一段经历,在向量空间里它们本来就该长得很像——它们确实很像,像到看不出区别。

有意思的是,同样这批数据,我把简历按条目拆开再分别编码,区分度立刻从 0.011 回到 0.25,跟人工的 0.29 差不多。

所以结论不是「AI 读不懂简历」,是 AI 读不懂整篇丢进去的简历,切开就读得懂了。

这个区别对求职者其实挺重要的:你写得好不好能不能被看见,取决于对面用的是哪一种。而这件事你完全无从得知。

第二处:缺的东西不是同义词,是压根没写

那篇文章隐含的建议是,把说法换成岗位描述里的用词,让机器认得出来。

但我这批数据里,领域相符的配对下,一半以上的岗位要求在简历里找不到任何依据。

我不打算给你一个精确数字,因为不存在这么一个数字。不同配对之间波动特别大,从 25% 到 82% 都有,两轮加起来平均下来大概 55%。这个波动本身就是发现:同样一批要求,不同的人差三倍。

至于缺的是什么:每天用什么工具,缺三成左右;负责多大范围——带几个人、多少预算、哪些市场、端到端做到哪一步——也缺三成左右。而沟通、协作这类软技能只缺 7%,是唯一不缺的。因为人人都写。

我还做了一个不用任何模型的检验:数一下「岗位描述里出现、简历里完全没出现的实词」占多大比例,然后跟「能拿出证据的比例」做相关。结果是很强的负相关,ρ 大概在 −0.7 到 −0.8 之间。

也就是说,缺口的主要原因不是「换了个说法机器没认出来」,是这件事根本没被写下来。

(这里得交代一句:把同一个人的三个版本去重之后只剩 8 个样本,这个相关性方向不变但达不到统计显著。所以我认为方向是可信的,强度存疑。)

三个具体的人

数字看多了没感觉,说三个具体的。

第一个,一位持牌财务顾问,简历上一张证照都没写。

她在一家大保险公司做持牌顾问,按当地监管要求,她几乎不可能不持有相应资格。但简历里一个字没提。判定结果:无证据。

同一个人做过四份金融销售的岗位,工具那一栏写了 Salesforce、Apollo、Notion、Canva——没有 Excel。

不是她不会用 Excel,是这事太日常了,日常到不值得写。

第二个,多写七年履历,只多答上了一条要求。

版本 J 比版本 C 多出七年完整的工作经历,还有更多品牌相关的细节。34 条要求,它只多翻了 1 条。

「简历写得更全一点」这个建议,在这个例子里基本没起作用。

第三个,同一段经历写成概括句,证据少了一半。

版本 B 写的是具体的动作和数字:做了哪些渠道、投放数据多少、金额什么量级、怎么追踪评估的。同一个人在另外两个版本里,把这些压成了一句 Led overall brand communication strategy。

证据从 15 条掉到 8 条。同一段经历,同一个人,就是换了个写法。

那篇文章哪里说得对

解析很重要,排版会毁掉解析,结构化的数据比自由文本好读——这几点我完全同意,没有异议。

它没说到的是:它默认简历里的信息是齐的,问题只出在机器认不认得出来。

但我这批数据里,最大的损失发生在更前面一步。那件事压根没被写下来。排版再干净,同义词换得再准,没写就是没写。

顺便说一句,那篇文章自己有句话我觉得特别关键:不同厂商之间的「智能」程度差异巨大。

这句话其实等于承认了,任何关于「机器会怎么处理你的简历」的通用建议都是没根据的。

包括我这篇。所以我把方法、数据、还有每一处我觉得不可靠的地方都写下来了,你自己判断。

对我们求职者意味着什么?

下面这五条只是从上面那些缺口里直接读出来的:

写出你每天真的在用的工具名字。越觉得「这还用写吗」的,越要写。

写出你负责的范围。带几个人,多少预算,哪些市场,端到端做到哪一步。

动词加对象加量级。「做了什么」比「负责什么」有信息量得多。

把形容自己的词删掉。Self-motivated、Team player、Mature 这几个,在我的数据里换来的「有证据」是零。

一件事一行,别合并成概括句。上面版本 B 和版本 C 的差别,主要就是这一条。


方法说明、判定规则原文、还有聚合之后的数据都在这里:\[https://drive.google.com/file/d/1vMhM6RknIic\_udqNzv2Tak-4L5J6-UA1/view?usp=sharing\]

分享这篇研究