llms.txt 是什么?必须做吗?
llms.txt 是一份放在站点根目录的纯文本说明文件,用 Markdown 格式向大模型说明站点是做什么的、有哪些重要页面。它不是官方强制标准,也不是必须项。它是一种低成本的补充说明,成本极低、收益不确定,适合在基础工程做扎实之后顺手补齐。
llms.txt 被反复提起,又被反复误解。这篇文章把它的作用与边界讲清楚:它是一份低成本的站点自述文件,不是强制标准,也替代不了 robots.txt。理解边界,才知道该不该做、怎么做。
近两年做官网的人多多少少都听过 llms.txt 这个词。它被反复提起,却又经常被误解:有人把它当成「面向 AI 的搜索引擎提交入口」,也有人觉得它只是又一个没人会读的文件。两种理解都不准确。
先把结论放在前面:llms.txt 是一份放在站点根目录的纯文本说明文件,用 Markdown 的格式,向大模型和 AI 检索工具说明「这个站点是做什么的、有哪些重要页面」。它不是一个官方强制标准,也替代不了 robots.txt;它的价值在于用低成本把站点的关键信息显式地告诉机器。理解它的作用与边界,比争论它「有没有用」更重要。
llms.txt 的主张很简单:既然站点会给搜索引擎提供 sitemap.xml、给爬虫提供 robots.txt,那也可以给大语言模型提供一份专供阅读的说明文件。
这个约定的提出者是 Anthropic,其思路是:与其让模型在一堆 HTML 里猜测站点结构,不如由站点主动提供一份简洁、结构化的说明。文件本身采用 Markdown 格式,通常包含一段站点简介,再按若干分区列出重要页面及其链接和一句话说明。
生成式引擎在处理与站点相关的问题时,可能借助类似资料来理解「这是哪家公司、提供什么、有哪些关键内容」。需要注意措辞:是「可能借助」,不是「一定读取」。llms.txt 目前不是被各家厂商普遍承诺支持的协议,它的效果取决于具体产品的实现。把它当作一份「低成本的补充说明」,而不是「确定生效的开关」,才是合理的预期。
从工程角度看,站点与机器之间天然存在一次「信息不对称」:站点清楚自己的全部内容,而机器只能看到被它抓取到的那一部分,剩下全靠推断。llms.txt 的用意就是主动缩小这个不对称——不等机器来猜,而是直接说明。这个思路和给搜索引擎提供 sitemap.xml 是同一逻辑:与其被动等待被发现,不如把清单交出去。理解这一点,就不会对它抱有不切实际的期待,也不会因为它不是标准就完全否定。
要说清楚边界,一个直接的办法是把两边各自列出来。
它可能解决的问题:
它不能解决的问题:
llms.txt 管的是「如果你要了解我,这里是简介」,职责不同。llms.txt 是站点层面的总览,两者层级不同。llms.txt 也无济于事。一句话:llms.txt 是「锦上添花」的说明文件,不是「雪中送炭」的补救措施。
llms.txt 使用 Markdown 语法,整体结构通常是:
需要强调的是:这里的「一级标题」是文件内部的 Markdown 写法,与我们网站文章正文不使用 # 的规则是两回事,不要混淆。
下面用占位标签表示层级([H1] 对应 Markdown 的一级标题,[H2] 对应二级标题,正式文件里写对应的井号语法即可):
```text [H1] 公司名称
一句话说明公司是做什么的、服务哪类客户。
[H2] 核心页面
[H2] 服务
[H2] 说明
```
关键在于「信息准确、结构清晰、链接可用」,而不在于把文件写得多长。文件越长,越容易出现与官网不一致的内容,反而增加机器判断的负担。
在实践中,下面几类写法比较常见,也容易带来反效果,值得避开。
/about.html 而不写完整域名,机器无法确认指向哪里。| 文件 | 回答的问题 | 主要格式 | 位置 |
|---|---|---|---|
| robots.txt | 哪些路径可以抓 | 指令行 | 站点根 |
| sitemap.xml | 有哪些页面 | XML | 站点根 |
| llms.txt | 这是什么、重点在哪 | Markdown | 站点根 |
三者都以站点根为家,但分工不同:一个管准入,一个管清单,一个管自述。它们可以并存,不建议互相替代。
这是最容易被混淆的一点,单独讲清楚。
三者的关系是互补而不是替代:robots.txt 决定机器能不能进来,sitemap.xml 告诉机器有哪些内容,llms.txt 帮助机器理解内容的组织与重点。实践中,一个常见的错误是只加了 llms.txt,却让 robots.txt 误拦了关键路径——那样的话,说明文件写了也没用。
关于抓取与索引的基础处理,我们在 技术能力 中有更系统的分层说明。
llms.txt 按约定放在站点的根目录,即 https://你的域名/llms.txt。这一点与 robots.txt、sitemap.xml 一致,都要求返回 HTTP 200 且内容类型为纯文本。如果你的站点部署在子路径下(例如 https://example.com/site/),文件仍应放在该站点根下,而不是整站域名根下混放。
部署后建议做几项基础验证:
https://域名/llms.txt,确认返回 200 且显示纯文本内容,而不是 404 或下载文件。text/plain,避免被当成二进制下载。这几项都不涉及复杂工具,手工核对一遍即可完成。
另外两点容易被忽略。其一,站点若同时存在 http 与 https、或带不带 www 的多个版本,应确保任一版本访问 llms.txt 都能得到同一份内容,避免出现「有的地址有、有的地址没有」的尴尬。其二,文件更新后要留意缓存,CDN 或浏览器缓存可能仍返回旧版本,必要时先刷新缓存再验证,否则容易误判为「没生效」。
这是最需要诚实回答的一节。
从公开信息看,llms.txt 目前是一个由厂商提出、社区讨论、逐步被部分工具尝试采纳的约定,它还不是所有主流 AI 产品都承诺支持的标准。不同产品是否读取、以什么方式读取,都可能有差异。因此在现有阶段,比较稳妥的判断是:
llms.txt 只需要不长的工时,且不影响其他任何优化。换一个角度看:llms.txt 的价值不只在「被读取」,还在于它强迫团队把站点的对外口径统一梳理一遍。这份梳理本身就是内容治理的一部分,即便某个引擎没读它,梳理的成果也会体现在官网各处。
还有一个判断角度:把 llms.txt 看作「AI 可读性的最低配置」,而不是「优化手段」。最低配置的意思是——它让你不至于因为「站点没有向机器做任何自述」而吃亏,但它不承诺额外收益。真正的收益仍然来自内容本身:能不能把用户真正关心的问题讲清楚。把 llms.txt 当成地基的一部分去补,而不是当成一次「优化动作」去期待回报,心态会更稳。
顺带说明一个常见的落地方案:如果站点规模不大,llms.txt 完全可以手工维护,不必引入自动生成工具。手工的好处是内容可控、口径好核对;等到站点页面成百上千再考虑自动化也不迟。过度工程化反而会让这份本该简洁的文件变得难以维护。
如果决定把 llms.txt 做起来,可以按下面的顺序推进。
llms.txt 的更新与官网改版绑定,避免站点改了、文件没改。关于站点信息如何被机器理解的整体思路,可以参考 GEO 生成式引擎优化服务 的方法说明;具体执行中的疑问,我们在 常见问题 中也有汇总,进一步沟通可走 联系我们。
llms.txt 不是万能钥匙,也不是无用装饰。它是一份低成本的站点自述:把「我是谁、我有什么」用机器能读的格式讲清楚。它的上限取决于模型产品的采纳情况,但它的下限很低——即使只被当作一次口径梳理,也值得做。
对企业的实际建议是:把基础工程(可抓取、结构化数据、口径一致、内容质量)放在优先位置,llms.txt 作为其中的一环顺手补齐。不要因为它「可能有用」就高估它,也不要因为它「不是标准」就完全忽略。
本文由广州科芃科技有限公司技术团队整理。我们建议把 llms.txt 纳入站点基础设施统一管理,先保证口径一致与可抓取,再考虑这类补充说明文件,顺序不要颠倒。
llms.txt 是一份放在站点根目录的纯文本说明文件,用 Markdown 格式向大模型说明站点是做什么的、有哪些重要页面。它不是官方强制标准,也不是必须项。它是一种低成本的补充说明,成本极低、收益不确定,适合在基础工程做扎实之后顺手补齐。
按约定放在站点根目录,即 https://你的域名/llms.txt,要求返回 HTTP 200 且内容类型为纯文本 text/plain。如果站点部署在子路径下,文件应放在该站点根下,而不是整站域名根下混放。部署后务必逐个检查链接是否可用、口径是否与官网一致。
robots.txt 管的是「哪些路径可以抓」,决定机器能不能进来;sitemap.xml 管的是「有哪些页面」,列出希望被收录的清单;llms.txt 管的是「这是什么、重点在哪」,用自然语言加链接介绍站点。三者互补而非替代。一个常见错误是只加 llms.txt,却让 robots.txt 误拦了关键路径。
它目前是由厂商提出、社区讨论、被部分工具尝试采纳的约定,还不是所有主流 AI 产品都承诺支持的标准。是否读取、以什么方式读取都可能有差异。因此合理预期是:成本极低,收益不确定,不写也不致命。它的附加价值是倒逼团队统一站点对外口径。
常见错误包括:把概述段落写成营销文案、为了覆盖更多页面而堆砌几十个链接、使用相对链接而非完整 URL、文件里的公司名称与官网口径不一致、以及官网已改版而文件长期不更新。核心原则是信息准确、结构清晰、链接可用,而不是把文件写得很长。