llms.txt 与 robots.txt 有什么区别?
两个文件,两种不同职责。一个发布建议性的抓取规则,另一个提供经过筛选的内容地图。两者都不是访问控制机制。
最近更新:
简短回答
robots.txt 为遵循规则的客户端(例如 Googlebot 或 Bingbot)发布抓取规则。它传达哪些网址应该或不应该被抓取,但不构成授权或技术访问控制。
llms.txt 是一个上下文层。它告诉 AI 语言模型,你网站上的哪些页面最有助于理解你的业务。它完全不是访问控制机制,既不授予也不拒绝抓取权限。它是一份以 Markdown 编写的精选阅读列表,由 Answer.AI 的 Jeremy Howard 于 2024年9月 提出。
两个文件都无法取代另一个。它们运行在 Web 技术栈的不同层,服务于不同受众。
robots.txt 的作用
该 robots.txt 文件位于域名根目录(/robots.txt),并使用 Robots
Exclusion Protocol(REP)传达抓取权限。典型条目如下:
User-agent: Googlebot
Disallow: /private/
Allow: / robots.txt 的主要特征:
- 受众: 各种网络爬虫、搜索引擎机器人、AI 训练爬虫、链接检查器和归档机器人。
- 格式: 纯文本。使用定义好的语法编写的键值对(User-agent、Allow、 Disallow、Crawl-delay、Sitemap)。
- 用途: 抓取策略。它告诉遵循规则的抓取工具应该和不应该 抓取哪些内容。
- 效果: 合规爬虫不会请求被 Disallow 的 URL。不合规爬虫 可能会忽略它。
- 标准状态: 被广泛采用的行业约定;IETF 于 2022 年发布了信息类 RFC(RFC 9309)。
- 它不做什么: robots.txt 不会告诉爬虫你的内容含义、哪些页面最重要,或在回答与你有关的问题时应使用什么背景信息。
llms.txt 的作用
一个 llms.txt 文件可以位于域名根路径,也可以位于更具体的路径,例如
/docs/llms.txt. 它是一个 Markdown 文档,不是键值配置文件。一个 最小有效文件如下:
# My Product
> A short, factual description of what this site is about.
## Documentation
- [Getting started](https://example.com/docs/start/): first steps for new users.
- [API reference](https://example.com/docs/api/): complete endpoint documentation.
## Optional
- [Blog](https://example.com/blog/): articles and updates. llms.txt 的主要特征:
- 受众: 明确支持该约定的兼容智能体、RAG 流水线和开发者工具。
- 格式: Markdown。包含一个必需标题(H1)、一个可选的块引用说明,以及包含 Markdown 链接列表的 H2 章节。
- 用途: 上下文与策展。它会把兼容客户端指向精选资源; 但不保证答案准确,也不保证后续使用。
- 效果: 读取 llms.txt 的工具会把它作为抓取你内容的起点。 它不授予也不限制访问权限。
- 标准状态: 一个社区提案。不是 IETF 或 W3C 标准。由 Jeremy Howard 在 llmstxt.org 维护。
- 它不做什么: llms.txt 不控制谁可以抓取你的网站。它不会提高你的 Google 排名。它不是 robots.txt 的替代品。
并列比较
| 属性 | robots.txt | llms.txt |
|---|---|---|
| 位置 | /robots.txt | /llms.txt 或一个作用域路径 |
| 格式 | 纯文本,键值对 | Markdown |
| 主要受众 | 所有网络爬虫 | AI/LLM 客户端和智能体框架 |
| 函数 | 建议性爬取规则 | 上下文与筛选(该读什么) |
| 强制执行抓取访问控制? | 否 | 否 |
| 影响 Google 排名? | 间接影响(阻止抓取会妨碍索引) | 否 |
| 正式标准? | IETF RFC 9309 | 社区提案(llmstxt.org) |
| 推出年份 | 1994 | 2024 |
| 必需部分 | User-agent + Disallow/Allow | H1 标题(其他内容均为可选) |
为何二者互为补充
爬取策略层和可选资源映射层可以无冲突共存。一个 谨慎的部署会像这样:
- 使用 robots.txt 表达抓取偏好。 如果你希望兼容的 AI 系统 读取你的内容,请确保你没有在 robots.txt 中意外阻止 AI 爬虫 user-agent。许多站点在 2023–2024 年 AI 训练数据争议期间加入了全站 bot 阻止;请检查你的规则,确保合法的检索爬虫(而不是训练爬虫,如果你想区分)可以访问你的公开页面。
- 为明确且兼容的客户端使用 llms.txt。 该地图可以提供经过筛选的快捷路径, 但发布并不能证明客户端会发现、读取或跟随它。
- 确保 llms.txt 本身未被阻止。 如果 robots.txt 禁止机器人访问根目录, 它们可能无法抓取
/llms.txt也一样。请确认你的 robots.txt 没有阻止 AI 系统读取你想让它们访问的文件。
常见问题
llms.txt 会替代 robots.txt 吗?
不能。robots.txt 为遵守规则的客户端发布建议性抓取规则;llms.txt 为兼容的智能体提供精选地图。每种文件都只能用于解决它实际对应的问题。
我可以使用 llms.txt 阻止 AI 爬虫吗?
不能。llms.txt 不具备访问控制功能。要阻止特定的 AI 爬虫,请将其用户代理字符串添加到 robots.txt 的 Disallow 规则中。例如,要阻止 GPTBot:
User-agent: GPTBot
Disallow: / llms.txt 不会被当作权限文档来读取。发布它不会给爬虫任何 额外的访问权限,而这些权限本来就不存在。
AI 爬虫会遵守 robots.txt 吗?
提供方会发布针对爬虫的 robots.txt 指南,但 REP 仍然只是建议性规范。一个
Disallow 规则会向符合规范的客户端传达意图。如果内容不得被抓取,请使用身份验证、网络策略或服务器端授权来保护它。
继续阅读
- llms.txt 与 robots.txt 与 sitemap.xml 的比较,完整的三方比较。
- AI 爬虫解析,GPTBot、ClaudeBot 和 PerplexityBot 的工作方式。
- 如何创建 llms.txt,通过模板分步完成。
- 验证器,检查你现有的 llms.txt 文件。