直接回答:AI 相关爬虫不是「放不放」的二元开关。至少要分成三类来看:训练爬虫(如 GPTBot、ClaudeBot,可能用于模型训练)、检索爬虫(如 OAI-SearchBot、Claude-SearchBot、PerplexityBot,用于为检索结果获取内容)、用户触发访问(如 ChatGPT-User、Claude-User、Perplexity-User,由用户动作触发,通常不作为自动爬虫)。把三类混在一起,就容易在采购沟通里被含糊的说法带走。另一个更重要的前提:robots.txt 是约定,不是身份鉴别,也不是访问控制,更不能保证请求者遵守。屏蔽爬虫不等于可见性归零,放行爬虫也不等于会被引用。
一、按厂商官方口径区分三类访问
以下只列有官方文档可查的口径,不发明国内 UA 名称。各平台文档会更新,使用前请以官方最新文档为准。
| 厂商/平台 | 标识 | 性质 | 官方文档 |
|---|---|---|---|
| Googlebot | 搜索基础爬虫 | https://developers.google.com/search/docs/crawling-indexing/googlebot | |
| Google-Extended | 不控制 Google 搜索中的出现 | https://developers.google.com/crawling/docs/crawlers-fetchers/google-common-crawlers | |
| OpenAI | GPTBot | 可能用于训练 | https://developers.openai.com/api/docs/bots |
| OpenAI | OAI-SearchBot | 用于搜索 | https://developers.openai.com/api/docs/bots |
| OpenAI | ChatGPT-User | 用户触发访问,不应被当作自动爬虫 | https://developers.openai.com/api/docs/bots |
| Anthropic | ClaudeBot | 训练 | https://support.claude.com/en/articles/8896518-does-anthropic-crawl-data-from-the-web-and-how-can-site-owners-block-the-crawler |
| Anthropic | Claude-SearchBot | 搜索 | 同上 |
| Anthropic | Claude-User | 用户触发 | 同上 |
| Perplexity | PerplexityBot | 搜索,非训练 | https://docs.perplexity.ai/docs/resources/perplexity-crawlers |
| Perplexity | Perplexity-User | 用户触发,通常不受 robots 规则约束 | 同上 |
两个关键点:
- Google AI 搜索功能沿用现有 SEO 基础,不要求 MD 或 llms 文件,也不保证索引。不要把「上线某个文件」当作进入 AI 搜索的前提。
- Google-Extended 并不控制 Google 搜索中的出现。把它和 Googlebot 混为一谈,是常见的配置错误。
二、三种策略的利弊对照
| 维度 | 全放行 | 只放行检索类 | 全屏蔽 |
|---|---|---|---|
| 训练爬虫 | Allow | Disallow | Disallow |
| 检索爬虫 | Allow | Allow | Disallow |
| 用户触发访问 | 依平台规则判断 | 依平台规则判断 | 依平台规则判断 |
| 内容进入训练语料的可能性 | 较高 | 较低(受厂商拆分程度影响) | 较低 |
| 被检索获取的可能性 | 保留 | 保留 | 放弃 |
| 维护成本 | 低 | 中 | 低 |
全放行:适合品牌认知优先、内容壁垒较低的场景。
只放行检索类:许多企业的选择。但注意海外厂商已拆分训练与检索标识,部分厂商未必拆得那么细,精确控制程度因厂商而异。
全屏蔽:需要清楚代价。它不必然导致「可见性归零」,但会显著减少 AI 系统从你自己的站点获取信息的途径。仍需分别核查每种访问方式。
三、示例配置(示例,不是本网站当前配置)
以下给出三段短而独立的示例,用来说明写法差异,不代表本站当前 robots.txt,也不要求读者放行训练爬虫。请结合自身版权、法务和业务判断后再决定是否采用。
示例 A:只对训练类写 Disallow
User-agent: GPTBot
Disallow: /
User-agent: ClaudeBot
Disallow: /
User-agent: Google-Extended
Disallow: /
示例 B:只对检索类写 Allow(与示例 A 可叠加)
User-agent: OAI-SearchBot
Allow: /
User-agent: Claude-SearchBot
Allow: /
User-agent: PerplexityBot
Allow: /
示例 C:敏感路径与默认规则
User-agent: *
Allow: /
Disallow: /admin/
Disallow: /private/
Disallow: /cart/
Disallow: /api/
Sitemap: https://www.example.com/sitemap.xml
配置后可以做的事
- 回读 robots.txt:用 curl 或浏览器直接访问,确认文件本身能被正确读取。
- 清 CDN 缓存:修改 robots.txt 后清缓存,避免旧规则残留。
- 观察访问日志:按 UA 字段过滤,观察一段时间内的访问频率与状态码分布,作为排查依据,而不是结论。
- 不要用 robots 做访问控制:它不能替代鉴权。robots 不是身份鉴别,也不保证执行请求者遵守。
四、robots.txt 之外的常见补充动作
这些动作与「能否被 AI 获取到」相关,但都不是引用保证:
- 关键事实静态化:价格、产品描述等事实若只存在于客户端渲染结果中,AI 爬虫不一定能读到。
- 结构化数据:清晰的标记有助于机器理解页面,但不保证被引用。
- Sitemap:帮助发现页面,不保证被索引。
- 第三方信源:独立信源有助于交叉验证,但引用行为不受你控制。
- llms.txt:有些项目在讨论或采用该形式,但 Google 官方文档并不要求它,也不保证索引;不要把「放文件」当成 AI 搜索的前提。
- 监测实际访问:通过服务端日志观察访问行为,不要假设 UA 一定真实。
- 季度复测:用固定的一组 Query 在不同平台手动核对可见情况。注意这是抽查,不是覆盖率统计。
五、采购前需要问清的问题
当 GEO 服务商声称「配置好 robots.txt 就能让 AI 搜到你」时,可以这样追问:
- 你指的是检索爬虫被允许,还是内容被索引,还是答案里出现品牌?
- 你有没有该客户站点的实际访问日志或引用记录?如果没有,如何支撑结论?
- 你如何处理训练爬虫与检索爬虫被厂商拆分程度不一致的情况?
- 你是否清楚 Perplexity-User 这类用户触发访问通常不受 robots 规则约束?
- 你如何区分 Googlebot 与 Google-Extended 的作用范围?
如果对方只能给出笼统的「放行就能被收录」「屏蔽就消失」的说法,需要提高警惕。
六、边界与提醒
- robots 不是访问控制:它依赖请求方自觉,不能替代鉴权。
- 屏蔽不等于可见性归零:AI 系统可能通过第三方信源、用户触发访问等途径获得信息。
- 放行不等于被引用:抓取、索引、检索、引用是不同层。
- 不要发明 UA:只在有官方文档可查时引用标识,未经验证的国内 UA 名称不应写入正式内容。
- Google AI 搜索沿用 SEO 基础:不要求 MD 或 llms 文件,也不保证索引。
- 不要承诺结果:任何基于 robots 配置的「引用率提升」「推荐率提升」承诺都缺乏依据。
结语
robots.txt 是你与 AI 系统之间的一份约定,不是开关,也不是合同。采购 GEO 服务前,与其问「放不放」,不如问「放谁、放什么、放了之后怎么核实业务收益」。
合并示例时注意:具体 User-agent 组通常不会继承
User-agent: *的路径规则。如需限制路径,应在适用的具体组中列出。敏感数据始终应通过鉴权保护,不能靠 robots.txt 隐藏。