llms.txt:被ChatGPT和引用的行业标准 Perplexity
llms.txt 文件是一个简单的约定:放置在您网站根目录下的一个 Markdown 文件,用于以人工智能可读的方式展示网站内容。其目标是帮助像 ChatGPT、Perplexity 或 Claude 这样的模型理解您的网站,并在理想情况下正确引用它。本指南涵盖精确规格、与 llms-full.txt 的区别、逐步部署方法,以及对人工智能响应中可见性(GEO)的实际影响——不会过度宣传。
#为什么需要 llms.txt 文件
现代网页对机器来说极难解析:菜单、Cookie 横幅、脚本、广告区块、嵌套的 HTML。人类会不假思索地过滤掉这些内容;语言模型却必须猜测有用内容在哪里,而且它的上下文窗口有限。结果就是:当 AI 读取您的网页时,其 token 预算中很大一部分都耗在了无关信息上。
llms.txt 解决了这一问题。它是一个 Markdown 格式的文本文件,放在您域名的根目录下(地址为 /llms.txt),为 AI 提供一份清晰简洁的网站概览:网站介绍什么,以及应访问哪些页面了解详情。这一想法直接受到 robots.txt(告诉爬虫可以访问哪些位置)和 sitemap.xml(列出 URL)的启发,但面向的是 LLM 阅读,而非传统的索引爬虫。
#llms.txt 规范
只需 1 小时,即可在您的电脑上拥有专属的免费 ChatGPT — LM Studio、Ollama、Open WebUI、您的文档,无需云端。
- 在线空间,终身可用
- PDF + 文件
- 终身更新
格式刻意保持极简,完全基于标准 Markdown,且按严格顺序排列,以确保程序可解析:
- 一个H1标题
- 网站或项目的名称。这是该规范中唯一必需的元素。
- 一个引用块
- 用一句摘要描述网站,并在句首加上 >。强烈建议提供这句摘要:它往往是 AI 最先阅读的内容。
- 自由格式的段落
- 零个或多个文本块(无标题)用于提供上下文:网站面向哪些用户,如何阅读,是否存在特定约定。
- H2章节
- 每个 H2 标题下都汇集了一份指向您重要页面的 Markdown 链接列表,格式为 [标题](url): 可选的页面说明。
- 一个名为“Optional”的章节
- 一个标题必须恰好为 Optional 的 H2 二级标题,其中的链接被标记为次要链接:赶时间的 AI 可以忽略这些链接,以节省上下文空间。
#llms.txt 与 llms-full.txt
这两个文件的用途不同,也不要求两者都具备。
- llms.txt
- 一个索引。简短、结构化的文件,列出您的网页并附有简要描述。AI 会读取该索引以理解网站架构,然后查找感兴趣的页面。这是优先创建的文件。
- llms-full.txt
- 将网站(或文档)的全部内容拼接成一个大型 Markdown 文件。AI 可以一次性读入,无需发起其他请求。对于需要完整载入长上下文的技术文档,这很方便。
实际应用中:博客或指南目录等内容型网站使用 llms.txt;如果您的内容是希望能整份“粘贴”到 LLM 中的文档,则可额外使用 llms-full.txt。注意,llms-full.txt 很容易达到数兆字节——只有在适合您的具体情况时才生成。
#逐步创建您的文件
- 01列出真正重要的页面不要把所有内容都包含进来。请选择 10 到 50 个体现您价值的页面:核心指南、产品页和关键文档。目标是建立一个有用信息密集的索引,而不是复制一份 sitemap。
- 02编写头部信息先用一个H1标题写出网站名称,再用一个引用块,以一句话准确概括您网站上的内容。请如实描述:AI在介绍您时,往往会原样引用这句话。
- 03按H2标题分组链接按主题划分章节(例如「安装」、「硬件」、「RAG」)。每个链接后需在冒号后添加一段简短说明,说明该页面提供了什么内容。这些说明有助于AI选择合适的页面。
- 04添加 Optional 部分将辅助页面(法律声明、联系、关于)放入该部分,让 AI 知道这些页面属于次要内容。
- 05验证Markdown请确认 Markdown 语法有效,且所有链接均使用绝对 URL 并能正常访问。语法错误会使文件失去作用。
#部署到静态网站或 WordPress 上
文件必须能通过 https://votre-domaine.fr/llms.txt 这一确切地址访问,并以纯文本形式提供(Content-Type 为 text/plain 或 text/markdown)。具体方法取决于您的托管环境。
在静态网站(Hugo、Astro、Eleventy,或一个简单的 HTML 文件夹)上,操作很简单:将 llms.txt 文件放在发布目录的根目录下(通常为 public/ 或 static/),与 robots.txt 放在同一位置。网站会自动对外提供该文件。
WordPress 没有专门的字段。有三种选择:通过 FTP/SFTP 将文件放到根目录(与 wp-config.php 同级);使用较新的 SEO 插件(多个插件,包括 Yoast 和 Rank Math 的部分版本,都能生成 llms.txt);或添加一条规则,通过某个端点提供该文件。FTP 方式仍然最简单,行为也最容易预期。
#GEO:让 AI 答案引擎引用您的内容
GEO(Generative Engine Optimization,生成式引擎优化)之于 ChatGPT、Perplexity 或 Google 的 AI Overviews,就如同 SEO 之于传统搜索:它是一系列让内容出现在 AI 生成的回答中并被引用的做法。根本变化很简单:在答案引擎上,用户阅读的是综合摘要,点击次数少得多。重要的不再只是出现在搜索结果第一页,而是成为 AI 采用并明确注明的来源。
llms.txt 遵循这一思路:为模型提供清晰的访问途径,使其能够获取划分合理、描述明确的内容。不过,我们需要准确说明因果关系,因为许多文章正是在这一点上夸大其词。
- 真正有助于GEO的要素
- 内容基于事实,划分为清晰的章节,在页面开头直接回答问题,并为数据标注日期和来源。无论有没有 llms.txt,答案引擎都会青睐这样的内容。
- llms.txt 文件的作用
- 帮助理解您的网站结构,并提供 AI 可以复用的描述。它能让机器更容易理解网站内容,但并不是什么神奇的排名信号。
#llms.txt 无法实现的功能(我们坦诚地说)
需注意两个结构性限制。首先,llms.txt 并不会阻止任何人,也不会强制任何人:一个不了解 llms.txt 的爬虫仍会正常读取您的 HTML 内容——要控制 AI 爬虫的访问,应配置 robots.txt(以及 AI 爬虫的 user-agent 指令),而非 llms.txt。其次,文件本身无法弥补内容质量的不足:如果您的页面信息模糊或过时,再漂亮的索引也无法使其变得可引用。
那么,为什么还要部署它?因为成本几乎为零,而且这个过程会促使您理清网站的架构和相关描述(这也有助于读者和传统 SEO);如果它迅速普及,您也已经做好了准备。这是一份低成本的保险,而不是魔法棒。
#实践经验:哪个LLM 的部署
我们已在 哪个LLM 的根目录下发布 llms.txt 文件数月。具体来说,该文件在构建时根据我们的指南目录生成:每篇指南对应一行,按类别(安装、硬件、RAG 等)分组,描述取自 meta 字段。这保证了只要指南存在,文件就不会过时。
- 我们观察到的情况
- 无法单独将引用数量的提升归因于某个文件:同时存在太多变量在变动(新内容、知名度、搜索引擎演进等)。因此,我们不会声称存在可量化的具体效果。
- 可量化的实际收益
- 这次生成工作促使我们为每篇指南准备简短、准确且不含行话的描述。这番整理在各处都发挥了作用:元标签、搜索预览,以及编辑内容的一致性。
- 成本
- 生成脚本写好后,就无需维护。正是这种收益与成本之比,说明了保留它的价值,无论它对 GEO 的实际影响究竟有多大。
我们的立场是:部署它,是为了保持规范、提前做好准备,而不是因为有人承诺这样就能让您的内容被引用。请把主要精力放在真正重要的地方——内容本身的质量和结构上。
#深入了解
这些指南进一步介绍了本文涉及的概念,重点是 AI 如何检索和引用信息:
- 理解RAG
- 「RAG 是什么以及它如何工作」解释了人工智能如何检索外部内容以进行回答——这正是 llms.txt 所试图简化的核心机制。
- 可靠性与引用信息
- 《幻觉:为什么您的本地 LLM 会编造内容,以及如何减少这种情况》说明了标明来源和组织结构为何对可靠回答如此重要。
- 来源笔记本
- 《本地运行 NotebookLM:开源替代方案》具体展示了如何基于一组来源材料进行带有来源引用的问答。
有反馈、发现了错误,或想补充说明?请告诉我们,让这份指南对每个人都更有帮助。