你问 ChatGPT 一个跟你业务直接相关的问题,它给了答案,列了三四个来源 —— 全是别人的站。 你的网站明明有相关内容,甚至写得更详细。
大部分解释到这儿就开始讲"要做好 GEO""要加结构化数据",但都跳过了最关键的一步区分。
| 阶段 | AI 在做什么 | 你的什么决定成败 |
|---|---|---|
| ① 检索 | 要不要去取你的页面、取不取得回来 | robots.txt、CDN 拦截、JS 渲染、服务器响应 —— 是/否问题 |
| ② 生成 | 在一堆候选里挑哪几个来源写进答案 | 内容能不能被一句话摘出来、有没有信息增量 —— 程度问题 |
所有"AI 爬虫检测工具"(包括我们那个免费的)测的都是第 ① 阶段。 它能告诉你门开没开,它对第 ② 阶段一无所知——因为那不是技术配置问题。
所以最冤的一种情况是:门开着,内容也不错,但写法让 AI 无从下手。
robots.txt 写着 Allow: /,真实爬虫却拿到 403。这通常发生在 CDN 那一层。
详见 robots.txt 放行了却还是抓不到:Cloudflare 的三处静默封锁。
很多人只放行 GPTBot,就以为对 ChatGPT 敞开大门了。但 OpenAI 把两者拆开了:
训练型:GPTBot → 抓取内容用于训练模型 检索型:OAI-SearchBot → ChatGPT 搜索时的实时检索
想被搜索结果引用,关键是 OAI-SearchBot,不是 GPTBot。
同理,Perplexity 有 PerplexityBot(索引)和 Perplexity-User(用户提问时的实时抓取)两个。
完整的训练型 / 检索型对照见 AI 爬虫全清单—— 最容易搞错的就是这一组,因为名字长得太像。
纯客户端渲染的站点,爬虫拿到的是个空壳 HTML。 检索型爬虫为了快,普遍不执行 JS——它们不会等你跑完 React 再读。
自查:浏览器右键「查看源代码」(不是"检查元素"),搜你文章里的一句话。
搜不到,就是渲染问题。或者用 curl -A "OAI-SearchBot" https://你的域名/ 看返回什么。
这是第 ② 阶段最常见的死因,也是最容易被忽略的。
假设有人问"图片压到 50KB 以下会影响画质吗"。你的文章写了一大篇,但通篇都是 「在数字图像处理领域,压缩算法的选择往往需要综合考量多种因素……」—— AI 摘不出一句能直接放进答案里的话,只能去找别人。
反过来说,如果你写了这么一句:
这就是一个可摘取的答案块:有明确断言、有条件边界、有具体数字、一句话能说完。
一个很实用的自检方法:你的文章里,有几句话能被单独摘出来还成立? 如果一句都没有,写得再长也没用。
AI 判断一个来源可不可信,很大程度上靠实体识别——这个站是谁、做什么的、有没有别的来源佐证。 只放纯文本,机器要猜。
最低成本的做法是 JSON-LD 结构化数据:Organization(你是谁)、
Article + author(谁写的)、Product / FAQPage(页面在讲什么)。
这不是排名技巧,是降低机器理解成本。
全网有五百篇文章都在讲同一件事,你的那篇是第五百零一篇 —— AI 没有任何理由选你。
信息增量可以很小,但必须真实存在:一个你自己测过的数据、一个别人没写的失败案例、 一个具体的操作步骤、一个反直觉的结论。综述型内容在 AI 检索里最不值钱, 因为 AI 自己就能综述。
这一点必须诚实说:即使上面六条全做对,也不保证被引用。 AI 选谁进答案受太多因素影响——问题怎么问的、上下文里聊了什么、这次检索到了哪些候选、 甚至模型版本。同一个问题问两遍,引用来源都可能不同。
SEO 之所以能干,是因为有排名这个可观测指标:第 3 位、第 11 位,能测、能对比、能追责。 AI 引用没有这样的指标:
所以真正能观测的只有两样东西:
能做的最好策略不是"追求被引用",而是把可摘取的答案块做扎实、把门打开、然后等。 把这当概率事件经营,别当 KPI 考核。
curl -A "OAI-SearchBot" -I https://你的域名/,看是不是 200