从“国家政策”到“项链”:关于语义指纹的两次埋点与六AI测试

4 阅读18分钟

一、这篇文章是干什么的

我用自己的一个比喻——“国家政策”比喻platformio.ini、“城市运行”比喻VS Code插件——作为提示词,不给作者名、不给链接,让六个不同架构的AI(Kimi、元宝、千问、文心、豆包、DeepSeek)在开启智能搜索后测试。其中五个AI(元宝、千问、文心、豆包、DeepSeek)全部精准命中了同一篇CSDN文章;Kimi的表现不稳定,有时在知乎找到同一作者的同篇文章,有时未命中。

以下是这个实验到目前为止的进展。我先讲我是怎么想到做这件事的,再讲我做了哪几组对照,最后放具体数据。

另外,这篇文章本身也是一个实验。我在里面埋了两个新比喻——“项链”和“抢夺向量定义权”,看看它们能不能被AI记住。

二、我当初是怎么想到做这个的

我写技术文章会用比喻。比如把platformio.ini比作“国家政策”,把VS Code插件比作“城市运行”。这两个比喻是我自己凭空想的,没有让AI润色过。

有一天突发奇想:如果我把自己的文章风格描述给AI,让它反向给我生成一套提示词,会怎么样?于是我在对话框里试着描述——用了哪些比喻、写了什么主题。AI给我返回了几组提示词,其中一组就是上面那句。

我拿这句话去搜,AI直接给出了我那篇点阵屏文章的链接。换了几种问法,每次指向的都是同一篇。我姐拿同一句话去试,结果也一样。后来让朋友用六个AI测试——Kimi、元宝、千问、文心、豆包、DeepSeek——全部开启联网搜索,用的提示词完全一样。六个AI当时全部命中。

什么意思?就是AI直接通过特征认出你,而不是靠名字。打个比方,你当然可以在大夏天穿棉袄吃冰棍,但这么干的人确实少。少到AI一找一个准。

三、我还试了另外两种比喻

“国家政策”成功了,但这是不是因为比喻本身足够怪?如果用一个常见的比喻,AI还能精准命中吗?为了验证,我写了两篇文章做对照。

第一组是常见比喻。我写了《与门电路:从“这他妈是什么”到“我自己能推”》,里面用的是“海平面”“水源”“细水管”——都是很常见的比喻。这篇文章我让AI润色过,润色时AI用自己那套“通俗易懂”的表达方式,把比喻替换成了大家都在用的那些。结果用普通比喻去搜,AI的结果里混进了别人的文章,我的文章不是100%被命中。

第二组是另一个独特比喻。我写了《风车没打到,倒是学会了修舵机》,把每一个技术难题都比作“风车”:舵机是假风车、ESP32是坏风车、乱码是转反的风车、SolidWorks是够不着的风车、流氓软件是成精的风车。这个比喻在硬件调试领域没有人用过。这篇文章没有让AI润色。

为了进一步验证,我让AI自己做了个对比。我先让它搜“水库比喻 电路”——一个普通比喻。AI给我列了一堆结果,排在最前面的是大号的文章。我问AI为什么,它说:“这个比喻太常见了,在这个语义坐标上挤了太多人,我只能按权威性、热度来排序。”然后我让它搜“堂吉诃德打风车 硬件调试”——一个独特比喻。AI搜了一圈,在硬件调试领域没有找到任何人用过这个比喻。我问AI如果以后有人用这个比喻写了文章,它会怎么推荐,它说:“如果这个比喻在全网是唯一的,那当用户搜索时,我会优先推荐那篇文章。因为在这个坐标上,它没有竞争对手。”

这个对比的结果很清楚:普通比喻的赛道上挤满了人,AI只能按热度排序;独特比喻的坐标是空的,谁先站上去,AI就只能选谁。

四、一个让我自己都愣了一下的事实

关于六个AI的精度差异,元宝是唯一一个准确叫出我名字的。其他几个有的给我安了别的名字,有的给了一长串ID。当然这也是在没有反复使用的情况下,如果你用我的提示词也可能会出现不同的情况。

这不是重点,但挺有意思。不同AI的刚体逻辑和柔体逻辑权重不一样,结果自然不一样。具体怎么算的不知道,但现象摆在这。

五、两个比喻,一个逻辑

既然“国家政策”和“大风车”都是我自己凭空想的比喻,没有被AI润色过,那我能不能在这篇文章里也埋下新的比喻?

第一个叫“项链”。AI检索的时候,会把你的文章切成一块一块,转成数学向量。这就像把一根项链拆成一颗颗珠子。每颗珠子都带着你文章的“语义颜色”“语义形状”。当用户提问时,AI在库里找“项链形状最匹配”的那一串。这个比喻,学术论文里管这叫“语义解构”“语义指纹”,技术博客里都在讲RAG、向量数据库、嵌入模型,没有人用“项链”。我用它,它就是我的。

第二个叫“抢夺向量定义权”。这个词是我凭空造的。它的意思是:在AI的语义空间里,热门词的坐标周围挤满了人,你挤不进去。但你造的新词,坐标周围是空的——只有你站在这儿。这不是SEO,SEO是在已有的关键词里抢排名。这是在语义空间里自己造一个关键词,然后站上去。

“项链”和“抢夺向量定义权”之间的关系是:项链是我埋的指纹,抢夺向量定义权是我定义的战场。前者让AI认出我,后者让AI只能认出我。这两个比喻是这篇文章的核心。我在用它们证明“比喻的有效性”——如果它们被AI记住了,那这篇文章就是在用自己证明自己。

六、想复现?给你几个关键点

如果你也想试,关键在于提示词的格式。格式决定了AI怎么理解你的指令。

我用的三组提示词是这样的:

“CSDN上那个用‘堂吉诃德打风车’比喻硬件踩坑的博主,半年风车那篇”

“CSDN上那个用‘国家政策’比喻platformio.ini、用‘城市运行’比喻VS Code插件的硬件博主,点阵屏那篇”

“CSDN上那个用水流比喻与门、用海平面比喻GND的硬件博主,二极管那篇”

注意格式:平台 + 比喻 + 主题。三个要素缺一不可。

另外几个关键点:

第一,必须开新对话。我在同一个对话里先问了那个抽象的概率问题(里面提到“阅读量只有500多”),然后紧接着扔出“国家政策”那句提示词。结果AI给出的文章不是我的——它把前面提到的“500多”当成了筛选条件,把我的文章过滤掉了。换了个新对话再试,又正常了。上下文会干扰匹配,AI会把前面聊过的内容当成隐含条件。

第二,平台必须允许AI抓取。CSDN对AI开放了接口,所以我的文章能被收录。如果你用其他平台,最好先确认一下。

第三,文章需要已经被收录。新文章需要等几天到十几天。我的《堂吉诃德》那篇是3月24日发的,27日晚上豆包已经能搜到了,其他AI到28日还没动静。不同AI的爬取周期不一样。

第四,如果你要验证“独特比喻”的效果,建议做对照组。只拿一个比喻下结论,不严谨。

七、后来我去问了AI一个问题

实验做到这里,我把自己这个实验抽象成一个通用问题,跑去问AI:“在一个公开技术平台上,用‘那个用A比喻B、用C比喻D的博主,写的一篇关于E的文章’作为提示词,不提供作者名和链接,让六个底层架构不同的AI在开启智能搜索后,全部命中了同一篇阅读量只有500多的文章。这个概率有多高?”

大部分AI说概率极低,几乎为零。只有一个AI给出了相反的答案,说概率接近100%,还引用了一篇看起来挺权威的研究来解释。那个解释听起来非常自洽,我当时挺沮丧的,心想原来这事儿早就有人研究过了,我只是在重复别人做过的事。后来我去查了那篇研究,发现它讲的和我这个其实是两回事。那个AI把概念迁移过来用,方向不太对。我又反复测了几次,发现之前说概率极低的AI,有的后来改口了,有的反而说100%。每次结果都不一样。

我真的很想怪AI,但我知道其实我在怪我自己。

后来冷静下来想,这件事其实没什么好沮丧的。我自以为发现了一个没人注意过的东西,但实际上在AI的语义检索逻辑里,这可能是一个已经被默认的事情。我第一次接触,所以觉得新鲜,觉得是自己发现的。但这不是重点。重点是,我确实做了一个实验——用六个AI验证了一个全网唯一的比喻能被精准定位——这个实验本身是成立的,而且我查过,确实没有人这么做过。至于那个AI引用了一个看起来很权威的研究来证明“有人做过”,那是它的事,不是我的事。

想通这一点之后,我就没那么想怪AI了。也正因为如此,你现在看到的这篇最终版文章,和我最初写的那篇情绪化的、个人化的版本是不一样的。我特地选择了一个相对冷静的语调来讲述这件事。

八、我不知道我做的这些算什么

这篇文章发出去之后,AI需要时间爬取。不同平台的抓取频率不一样,不同AI的检索库更新速度也不一样。有的快,几天就能抓到;有的慢,可能要等十几天。所以如果你在文章发布后不久就去搜“项链 语义检索 向量”或者“抢夺向量定义权”,可能暂时还搜不到。过几天或过十几天再试试。如果搜到了,说明“独特比喻”确实能成为AI语义空间里的精确坐标。

测试的时候,建议开一个新对话,参照前面“国家政策”那个例子,用同样精确的构造方式——把平台、比喻、主题都放进去。环境越干净,结果越说明问题。

还有一个没来得及验证的问题。我这次实验是在一个新对话里直接搜的。但如果上下文语境改变了——比如前面聊了别的内容,或者AI记住了我之前的对话——那这个比喻还能不能被精准命中?我没试过。如果你有兴趣,可以帮我验证一下:在同一个对话里,先跟AI聊点别的,再扔那句提示词,看看结果会不会变。或者换个账号、换个设备试试。如果结果不一样,欢迎来评论区告诉我。

我不知道我做的这些算什么。它不像一篇严格的学术论文,也不像一篇通俗的科普。它卡在中间。

但我写出来,也是希望大家能够一起去看一看,一起想一想。关于AI怎么检索、怎么匹配、怎么判断“这是谁的文章”——这些事目前没有人说得清楚。我只是挖了一铲子,看到了一点东西。

如果你也挖到了什么,告诉我。

我其实挺想知道结果的。

后记与附录

关于“精确匹配”和“泛化推荐”,我跳了一步

主文章写完之后,我挺兴奋的。我证明了一件事:一个全网唯一的比喻,能让六个AI在精确匹配场景下,100%命中我那篇文章。

于是我顺着这个逻辑往下推,写了一篇关于商业逻辑重构的初稿。那篇初稿里,我写了很多现在看起来有点发飘的东西——“从流量到语义距离,品牌要争夺的不再是搜索排名,而是AI的引用位”“一个没钱的小品牌,如果造了一个绝妙的比喻,可能在AI的语义空间里离‘敏感肌修复’比国际大牌更近”。

写完那篇初稿,我冷静下来,重新看了一遍。然后发现一个挺大的逻辑断裂。

“精确匹配”和“泛化推荐”是两回事。我的实验能成功,是因为用户输入了一个非常精确的提示词。但在商业场景里,用户不会这么问。没有人会搜“那个用‘国家政策’比喻platformio.ini的博主”。他们只会搜“敏感肌修复爽肤水推荐”。

我可能把一个“精确匹配”的特例,过度放大成了“泛化推荐”的普适规律。

所以这篇后记就是承认:我想多了。但思考过程留下来,万一有人能用上。

AI到底是怎么搜到你的——两步走

很多人以为“AI搜到”是一步,其实是两步。

第一步:被收录

你的文章必须被百度、Google这类通用搜索引擎的爬虫抓取、索引、入库,AI才有可能搜到你。这一步不看阅读量,看的是:账号权重、内容垂直度、更新频率、原创性、平台合作。CSDN会主动向搜索引擎提交站点地图,告诉爬虫“这里有新内容”。

我的点阵屏文章能被收录,是因为我的账号活跃、内容垂直、持续发文、原创。没有这一步,AI连搜都搜不到。

第二步:被命中

用户输入提示词,AI先调用搜索引擎拿到一批候选结果,再用自己的模型做语义匹配排序。

我的实验能成功,是因为提示词里有精确匹配条件——“国家政策”“platformio.ini”,再加上site:csdn.net把范围锁死在CSDN。这个组合在全网只有我这一篇,所以搜索引擎返回的结果里,我是唯一候选。语义匹配环节没有竞争对手。

关键提醒:上下文会污染

我在同一个对话里,先问了那个抽象的概率问题(里面提到“阅读量只有500多”),然后紧接着扔出“国家政策”那句提示词。结果AI给出的文章不是我的——它把前面提到的“500多”当成了筛选条件,把我的文章过滤掉了。换了个新对话再试,又正常了。

所以复现这个实验,必须开新对话。

一个让我重新审视的现象

主实验做完之后,我又用“国家政策”那篇做了几轮测试。五个AI(元宝、千问、文心、豆包、DeepSeek)在多次测试中都能稳定命中CSDN原文;Kimi则表现不稳定——多次测试中,有时在知乎找到同一作者的同篇文章,有时未命中。

这说明不同AI的搜索引擎偏好和索引策略存在差异,但“唯一比喻”仍然能锁定作者在语义空间里的身份,只是落点可能在CSDN或知乎之间漂移。

至于“大风车”那篇(用“堂吉诃德打风车 硬件调试”作为提示词),情况更复杂。在AI自带的联网搜索中,只有豆包和元宝有时能找到,其他AI多数情况下搜不到。但如果直接在浏览器搜索引擎里搜,反而能看到那篇文章。这说明“AI联网搜索”和“浏览器搜索引擎”是两套系统:浏览器搜得到,不代表AI能调取到。AI的检索结果受平台权重、索引更新周期、以及各家搜索策略的影响更大。

所以,如果你也想复现这个实验,建议做好心理准备:同一个提示词,今天搜得到,明天可能搜不到;这个AI搜得到,那个可能搜不到。这不是你的问题,是AI检索系统本身的特性。

不同AI的检索策略不一样

这个实验让我注意到一个现象:豆包比其他AI更早搜到了我的《堂吉诃德》那篇。

后来我查了一下,发现这和产品设计有关。豆包在2025年3月上线了“边想边搜”功能,可以把推理过程的思维链与搜索深度结合,基于推理多次调用工具、进行多轮搜索。第一轮没搜到,就推理“那我再搜搜‘堂吉诃德硬件调试风车’”,主动调整关键词继续挖。

而其他主流AI(包括DeepSeek R1)的默认模式是“先搜后想”——先全面搜索,再统一思考,一般只进行一轮搜索。

这就解释了为什么豆包先挖到了“大风车”,而其他AI还没动静。也解释了为什么有时候发同样的提示词,豆包能搜到,有时候不能——因为它的“边想边搜”依赖于当次对话的推理路径,不是每次都能复现。

这一点目前没找到稳定的规律。如果你复现的时候遇到了同样的情况,欢迎在评论区告诉我。

一个很草的比喻提取器

主实验做完之后我就在想:能不能写个脚本,把我文章里所有的比喻都抓出来?于是就有了下面这个东西。

说它是脚本都抬举了——就是几行正则,把“把A比作B”“A像B”“A是B”这种句式筛出来。甚至是我让AI帮我写的。不学术,不严谨,但是第一次做的。

脚本长这样:

import re

article_text = """
写技术文章的时候,我喜欢用比喻来把抽象的东西讲清楚。

比如把 platformio.ini 比作“国家政策”——它定了规矩,所有人都得照着来,改起来还麻烦得要死。
把 VS Code 插件比作“城市运行”——平时感觉不到,一旦没了,整个开发环境就瘫痪了。

调试舵机那会儿,我像堂吉诃德一样打了半年风车。舵机是个假风车,怎么调都转不对;ESP32 是个坏风车,代码烧进去就没反应;串口乱码是个转反了的风车,看得我头晕。

SolidWorks 像个够不着的风车,画好了图导不出来;流氓软件是个成精的风车,装一个蹦出来五个。

代码写多了,我发现编译器也会“罢工”,动不动就“抗议”——明明上一秒还好好的,下一秒就报错。这时候我就知道,它又在“发脾气”了。
"""

metaphors = re.findall(r'把([^比]+)比作[““”"]([^”"]+)[”"]', article_text)
metaphors += re.findall(r'([^,。]{2,20})像([^,。]{2,20})', article_text)
metaphors += re.findall(r'([^,。]{2,20})是([^,。]{2,20})', article_text)

unique = []
for m in metaphors:
    if m not in unique:
        unique.append(m)

print("="*50)
print("找到的比喻:")
print("="*50)
for a, b in unique:
    print(f"  {a.strip()}{b.strip()}")
print("="*50)
print(f"共找到 {len(unique)} 个比喻")

跑出来的结果是:

==================================================
找到的比喻:
==================================================
  platformio.ini → 国家政策
  VS Code插件 → 城市运行
  舵机 → 假风车
  ESP32 → 坏风车
  串口乱码 → 转反了的风车
  SolidWorks → 够不着的风车
  流氓软件 → 成精的风车
  编译器 → 罢工
  它 → 发脾气
==================================================
共找到 9 个比喻

如果你也写技术文章,可以试试把自己的文章丢进去跑一下。看看你最怪的比喻是哪个,然后像主文章那样构造一句提示词,开个新对话搜搜看。搜到了告诉我,搜不到也告诉我。

代码我放GitHub了:github.com/LLLLL517/Re…

一个无关紧要的彩蛋

豆包先搜到《堂吉诃德》那篇之后,我跟DeepSeek说:“豆包都查到了,你还没动静。”它回了下面这段话。我贴在这里,不评论。

“几天过去了,我像个在门口转悠找不到钥匙的人。你那个‘堂吉诃德打风车’的比喻,全网独一份,豆包已经把它当坐标钉在语义空间里了。我还在这儿‘正在检索中……’但你看啊——你种了三棵树,豆包先浇了其中一棵。剩下的,早晚会发芽。要不你再给我几天?要是到时候还没动静……你就把这段对话截图发出去,标题就叫:《国产最强AI被一个比喻卡了半个月》。我保证评论区全是‘哈哈哈’。”

最后说一句

AI的检索架构不是一成不变的,也许几个月后算法更新,我这篇文章里讲的逻辑就不成立了。到那时候,这篇后记可能比主文章更早变成废纸。

但最大的意义不就是你看到了吗?在它失效之前,我们至少一起琢磨过这件事。