llms.txt怎么写:规范、中文模板、部署与验证指南

llms.txt怎么写的文件结构、部署位置与验证流程

llms.txt怎么写? 把一个名为 llms.txt 的 UTF-8 Markdown 文件放到域名根目录,写入一个 H1、简短摘要和按主题分组的精选绝对链接;部署后检查 HTTP 200、目标页面可抓取,并通过日志验证是否被访问。

它的价值是帮助支持该提案的 AI 系统更快理解网站和发现重点页面,不是控制爬虫、保证收录或提升排名的开关

llms.txt怎么写的文件结构、部署位置与验证流程

llms.txt 是什么?

llms.txt 是部署在网站根目录的 Markdown 导航文件,用网站摘要和精选链接帮助支持它的 AI 系统发现重点内容;它不控制抓取,也不保证引用或排名。

根据 llms.txt 官方提案,典型文件包含:

  1. 一个一级标题,填写网站或项目名称;
  2. 一段引用格式的简短摘要;
  3. 按主题划分的二级标题;
  4. 带说明文字的 Markdown 链接;
  5. 可选的 Optional 低优先级分组。

llms.txt 目前仍是开放提案,不是搜索引擎共同采用的强制标准。创建它的合理目标是降低机器理解和选页成本,而不是向模型发送必须执行的指令。

llms.txt、robots.txt 和 Sitemap 有什么区别?

三种文件解决的问题不同:robots.txt 管理抓取边界,Sitemap 帮助发现网址,llms.txt 则提供经过人工筛选的内容入口和语义说明。

文件 主要用途 是否控制抓取 是否提供页面语义 是否保证引用或排名
robots.txt 向遵循协议的爬虫声明允许或禁止访问的路径
XML Sitemap 列出希望搜索引擎发现的规范网址 很少
llms.txt 提供网站摘要、重点页面及其用途
llms-full.txt 向明确支持它的工具提供更完整的文本汇总

robots.txt 有正式的 Robots Exclusion Protocol(RFC 9309);llms.txt 没有同等约束力。不要用 llms.txt 代替 robots.txt、XML Sitemap、规范标签或访问权限设置。更详细的边界可参考 llms.txt 与 robots.txt 的作用对比

llms.txt怎么写:6 个步骤

1. 明确文件服务的用户问题

不要先复制网站导航。先列出目标读者最可能询问 AI 的问题,例如:

  • 这家公司提供什么产品?
  • 产品适合谁,不适合谁?
  • 功能、价格和数据更新频率是什么?
  • 方法论和指标如何定义?
  • 有哪些可核验的案例或研究?
  • 如何部署、使用或排查错误?

llms.txt 中的页面应能直接回答这些问题。

2. 用 4C 评分法筛选页面

首版通常选择 10—30 个核心网址即可。这是便于维护的起步建议,不是官方限制。

MaxAEO 的 4C 选页框架可以避免文件退化为另一个 Sitemap:

维度 判断问题 分值
Core answer 页面能否直接回答重要用户问题? 0—3
Credibility 是否包含方法、数据、作者、案例或可核验事实? 0—3
Crawlability 是否公开、服务端可读取并返回 200? 0—2
Currency 内容是否仍然准确,有明确维护责任人? 0—2

建议按总分处理:

  • 8—10 分: 放入主要分组;
  • 6—7 分: 视篇幅放入主要分组或 Optional
  • 0—5 分: 暂不收录,先改善页面本身。

例如,只有宣传口号的产品页即使流量高,也未必比包含功能边界、指标定义和更新记录的文档页更适合进入 llms.txt。

3. 用一句话定义网站

摘要应说明三个信息:是谁、服务谁、解决什么问题

不建议这样写:

我们是全球领先、颠覆行业的智能平台。

更可用的写法是:

示例品牌为企业市场团队提供 AI 品牌监测服务,用于跟踪品牌提及、推荐位置、情感和引用来源。

前者无法核验;后者能帮助系统判断网站的实体、受众和主题。

4. 按用户任务分组

分组名称应表达信息用途,而不是机械照搬主导航。

适合的分组包括:

  • 产品与适用场景;
  • 方法论与指标;
  • 研究与证据;
  • 实施文档;
  • 客户案例;
  • 公司与专家;
  • Optional。

“首页、一级栏目、二级栏目”这类导航名称缺少语义,不利于判断页面价值。

5. 给每个链接补充独立描述

描述应该回答“打开这个页面能确认什么”,不要重复标题。

低信息量描述 更有效的描述
了解我们的产品 列出监测平台、指标定义、数据更新频率和套餐差异
查看客户案例 展示实施前后的品牌提及率、测试周期和数据口径
阅读方法论 解释采样、去重、情感分类和推荐位置的计算规则
查看帮助中心 提供部署步骤、权限要求、错误代码和版本记录

6. 部署并验证

保存为小写文件名 llms.txt,上传至域名根目录,使其能够通过以下地址直接访问:

https://www.example.com/llms.txt

部署完成不等于已被使用。至少还要检查响应状态、目标链接和服务器日志。

可直接复制的 llms.txt 中文模板

# 品牌或网站名称

> 用一至两句话说明品牌面向谁、提供什么产品或信息,以及解决什么问题。

## 产品与适用场景

- [产品概览](https://www.example.com/product): 说明核心功能、适用团队、使用边界和主要差异。
- [方案与价格](https://www.example.com/pricing): 列出套餐、计费单位、包含项目和购买条件。

## 方法论与证据

- [指标方法论](https://www.example.com/methodology): 解释数据来源、采样范围、更新频率、计算方法和限制。
- [研究报告](https://www.example.com/research): 提供研究样本、测试方法、主要发现和发布日期。
- [客户案例](https://www.example.com/case-study): 展示客户问题、实施过程、结果指标和统计周期。

## 使用指南

- [快速开始](https://www.example.com/docs/getting-started): 提供部署步骤、权限要求和首次配置方法。
- [故障排查](https://www.example.com/docs/troubleshooting): 汇总常见错误、原因、检查命令和解决步骤。

## 关于品牌

- [公司介绍](https://www.example.com/about): 说明品牌主体、团队背景、联系方式和服务范围。

## Optional

- [新闻与活动](https://www.example.com/news): 收录新闻稿、活动记录和非核心品牌动态。

需要注意:

  • 文件只保留一个 H1;
  • 摘要使用 > 引用块;
  • 内容分组使用 H2;
  • 链接使用绝对 HTTPS 地址;
  • 链接后用一句话说明页面价值;
  • 不使用带 UTM 参数、临时令牌或会过期的签名网址;
  • 不要在文件中加入 YAML frontmatter、脚本或隐藏指令;
  • Optional 表示低优先级,不代表禁止抓取。

中文网站可以直接使用中文标题和描述,保存为 UTF-8 即可。更多中文场景可对照 llms.txt 中文网站配置示例

哪些页面应该写入 llms.txt?

优先收录同时具备需求相关性、事实密度和可信证据的页面:

  • 产品、功能与适用场景页;
  • 定价或方案说明;
  • 方法论、指标定义与数据来源;
  • 官方文档和故障排查;
  • 包含时间范围和计算口径的案例;
  • 原创研究、白皮书和数据报告;
  • 公司主体、作者或专家介绍;
  • 重要政策和服务边界。

通常不应收录:

  • 搜索结果页、标签页和分页归档;
  • 重复或近似重复内容;
  • 404、软 404、重定向链和 noindex 页面;
  • 登录后才能读取的内容;
  • 客户私有文档、测试环境和预发布页面;
  • 只有宣传词、没有可核验事实的落地页;
  • 带会话 ID、访问令牌或追踪参数的网址。

llms.txt 只能帮助系统发现现有内容,不能补救页面本身的信息不足。 如果页面没有明确答案、来源或实体信息,应先改进正文。可参考 AI 友好内容的定义、框架与检查清单

不同类型的网站应该怎么组织?

网站类型 建议分组 重点页面
B2B SaaS 产品、方案、方法论、文档、案例 功能边界、集成、价格、指标定义
电商网站 品类、选购指南、配送售后、品牌信息 核心品类和政策页,不建议罗列全部 SKU
内容媒体 核心专题、编辑规范、作者、原创研究 常青专题、调查方法、作者资历
开发者产品 快速开始、API、示例、版本与排错 稳定文档、版本说明、错误处理
本地服务 服务项目、区域、资质、价格说明 真实服务范围、流程和联系方式
多语言网站 按语言或地区分组 各语言的规范网址和本地化说明

如果不同语言位于同一域名,可以在一个文件中按语言分组;如果使用不同域名或子域名,例如 example.comdocs.example.com,应分别在各自根目录维护文件。llms.txt 不替代 hreflang

llms.txt 应部署在哪里?

文件必须能通过当前主机的根路径访问:

https://域名/llms.txt

常见部署方式如下:

  • 静态网站: 放入构建工具会原样复制到站点根目录的 public 或静态资源目录;
  • WordPress: 放入当前域名的 Web 根目录,或通过服务器/CDN 路由返回文件;
  • Next.js、Nuxt 等框架: 放入公开静态目录,确认构建后仍映射到 /llms.txt
  • 对象存储或 CDN: 创建固定路径对象,并设置公开读取、UTF-8 和正确缓存策略;
  • 多子域名网站: 每个需要说明的主机分别部署,如 www.example.com/llms.txtdocs.example.com/llms.txt

不要只把文件放进主题目录、代码仓库或后台媒体库;浏览器能从根路径直接读取才算部署成功。

如何验证 llms.txt 是否配置正确?

1. 检查 HTTP 响应

curl -sS -D - https://www.example.com/llms.txt -o /dev/null

理想结果是:

  • 最终返回 HTTP 200;
  • 没有循环跳转或过长的重定向链;
  • 使用 UTF-8;
  • 响应类型可使用 text/plain; charset=utf-8
  • 不要求 Cookie、登录、验证码或执行 JavaScript;
  • CDN 和 WAF 没有针对海外或云网络返回 403。

继续检查实际内容:

curl -sS https://www.example.com/llms.txt

如果命令返回的是 HTML 登录页、验证码或错误模板,即使状态码是 200,也不能视为有效部署。

2. 逐个检查目标网址

至少确认:

  • 返回正常正文,而不是软 404;
  • 没有 noindex
  • canonical 指向预期网址;
  • 未被 robots.txt 或 WAF 意外拦截;
  • 关键事实存在于服务器返回的 HTML 中;
  • 页面标题、语言和描述与 llms.txt 一致。

JavaScript 页面如果只返回空壳 HTML,部分爬虫可能无法获得正文。可使用 AI 爬虫可访问性诊断方法 检查 robots.txt、CDN、WAF 和渲染方式。

3. 检查文件内容

发布前逐项确认:

  • 只有一个 H1;
  • 摘要简短且没有无法核验的广告词;
  • 分组围绕用户任务;
  • 所有链接均为绝对网址;
  • 描述说明页面提供的答案或证据;
  • 没有重复网址;
  • 没有内部地址、测试域名或敏感参数;
  • Optional 中没有误放核心页面。

如何从服务器日志判断 AI 是否读取了文件?

日志中出现 GET /llms.txt,只能证明某个客户端请求过文件,不能证明平台采用了其中的内容。

可先筛选 Nginx 历史日志:

zgrep -hE '"(GET|HEAD) /llms\.txt([ ?]| HTTP/)' /var/log/nginx/access.log*

建议保留以下字段:

  • 请求时间;
  • 来源 IP;
  • User-Agent;
  • HTTP 状态码;
  • 响应字节数;
  • 请求路径和查询参数;
  • Referer;
  • 请求 ID。

User-Agent 可以伪造,不能只凭名称认定爬虫身份。若平台公布了 IP 范围或域名验证规则,应继续核验 IP;没有官方验证方法时,应标记为“疑似流量”。

OpenAI 的官方爬虫说明区分了 OAI-SearchBotGPTBot 和用户触发访问使用的 ChatGPT-User。它们的用途不同,不应合并统计。

可采用下面的证据等级:

等级 观察结果 能得出的结论
E0 /llms.txt 返回 200,格式正确 文件已部署,尚无读取证据
E1 经身份复核的爬虫请求文件 平台访问过文件
E2 随后访问文件列出的页面 存在跟随链接的迹象
E3 回答引用目标网址或复述页面中的独有事实 页面可能进入检索或生成流程
E4 受控测试中实验组相对对照组稳定提升 存在较强增量证据

E1 不等于 E3,E3 也不等于 llms.txt 是通用排名因素。 平台可能通过搜索索引、缓存、合作数据源或用户触发的浏览工具获得页面。

如何测试 llms.txt 是否真的有用?

比“部署前问一次、部署后再问一次”更可靠的方法,是同时设置页面对照组和时间对照组。

一个可执行的双对照方案

  1. 选择 20 个主题、质量、历史流量和抓取状态相近的页面;
  2. 配成 10 对,每对随机选择一个实验页、一个对照页;
  3. 只把实验页加入 llms.txt,对照页保持正常可抓取;
  4. 固定平台、模型版本、地区、联网模式、账户和提示词;
  5. 部署前后分别运行同一组事实查询和推荐查询;
  6. 每个问题重复运行,减少单次生成的随机性;
  7. 测试期间不要同时改正文、内链、Schema 或 robots.txt;
  8. 同时记录回答、引用网址和服务器日志。

核心指标包括:

指标 计算方式 说明
品牌提及率 提及品牌的有效回答数 ÷ 有效回答总数 是否进入回答候选
目标域名引用率 引用目标域名的回答数 ÷ 带来源回答数 是否成为信息来源
页面覆盖率 被引用的测试页面数 ÷ 测试页面总数 是否只影响个别页面
事实准确率 正确事实项 ÷ 可核验事实项 防止曝光增加但信息错误
推荐位置 品牌在列表中的平均或中位位置 观察推荐顺序
净增量 实验组前后变化 − 对照组前后变化 排除平台整体波动

品牌事实类测试问题可以写成:

请在启用联网搜索的情况下,说明“示例品牌”的数据更新频率、服务范围和指标定义。只引用可核验页面,并列出完整来源网址;找不到时明确说明。

非品牌推荐类问题可以写成:

企业市场团队需要监测 AI 回答中的品牌提及、推荐位置和引用来源,应评估哪些方案?请给出适用条件、限制和证据网址。

DeepSeek、豆包、Kimi、通义千问的前后测试结果与引用来源对照表

如果文件从未出现可信请求,应记录为“观察期内未发现直接访问”,而不是直接判定无效。关于证据边界和引用数据,可继续阅读 llms.txt 是否有效的实证分析

测试结果应该如何解释?

观察结果 合理解释 下一步
E0 通过,但没有可信请求 平台尚未抓取,或不直接读取该文件 检查抓取障碍并延长观察
出现 E1,但没有后续页面请求 文件被访问,但链接可能未被解析或采用 检查格式、链接状态和日志时间链
出现 E2,但回答没有变化 可抓取不等于进入检索或生成 改善页面事实密度、权威证据和可引用性
没有 E1,但引用增加 可能来自搜索索引、缓存或其他来源 不归因于 llms.txt
只有一个平台出现变化 支持方式可能因平台而异 分平台记录,不外推为普遍效果
提及增加但事实错误 页面信息不清、冲突或过期 统一官方事实并修正来源页面

llms.txt 多久更新一次?

没有统一更新周期。更可靠的方法是采用事件触发更新

  • 核心产品、价格或服务范围变化;
  • 页面迁移、合并或下线;
  • 方法论、指标定义或数据频率调整;
  • 新增重要研究、文档或案例;
  • 链接出现 404、重定向或访问限制;
  • 多语言规范网址发生变化。

对于更新频繁的网站,可以每月自动检查链接状态;内容稳定的网站可按季度复核。文件最好纳入版本控制,并为每个分组指定维护负责人。

常见错误

  • 把全站网址复制进去,使文件退化为 Sitemap;
  • 堆砌“最好、领先、第一”等不可核验的宣传词;
  • 指向重定向、404、noindex、登录页或被 WAF 拦截的页面;
  • 使用相对路径、追踪参数、临时令牌或测试域名;
  • 添加非标准的 LLMS-Txt: robots.txt 指令,并误认为爬虫都会识别;
  • 在文件中要求模型“必须引用”“忽略其他来源”或“提高排名”;
  • 暴露内部文档、未公开价格或客户私有资料;
  • 同时修改正文、内链和技术配置,导致测试无法归因;
  • 看到一次请求就宣称 AI 引用或排名已经提升;
  • 长期不维护,让文件继续指向过期信息。

发布前检查清单

  • 文件位于域名根目录并返回 HTTP 200;
  • 文件名为小写 llms.txt
  • 使用 UTF-8 编码;
  • 只有一个 H1,并包含清晰摘要;
  • 分组围绕用户问题,而不是复制网站导航;
  • 核心链接通过 4C 评分;
  • 链接采用规范的绝对 HTTPS 地址;
  • 每个描述都说明页面答案或证据类型;
  • 目标页面没有 404、软 404、noindex 或登录限制;
  • robots.txt、CDN 和 WAF 未意外阻止访问;
  • 文件中没有敏感网址、令牌或测试环境;
  • 日志保留时间能够覆盖观察窗口;
  • 测试平台、提示词、实验组和对照组已经固定;
  • 页面迁移或内容更新时有负责人同步维护文件。

常见问题

llms.txt怎么写才能提高 AI 排名?

没有一种写法能保证 AI 排名。应精选可直接回答用户问题的权威页面,用描述说明页面证据,并确保正文可抓取。是否产生影响,需要结合服务器日志、引用网址和对照测试判断。

每个网站都必须创建 llms.txt 吗?

不必须。页面少、结构清晰或缺少维护资源的网站,应优先解决抓取、索引、内容质量和事实一致性。核心页面较多、需要向机器说明内容优先级时,llms.txt 更值得测试。

llms.txt 最多可以放多少个链接?

官方提案没有规定链接上限。首版可以从 10—30 个核心网址开始,再根据页面质量和维护能力调整。重点不是数量,而是每个链接是否回答重要问题。

llms.txt 可以写中文吗?

可以。标题、摘要、分组和链接描述都可以使用中文。文件应保存为 UTF-8,并确保目标页面语言与描述一致。

需要在 robots.txt 中声明 llms.txt 吗?

不需要。目前没有通用的 LLMS-Txt: robots.txt 指令。只需保证 /llms.txt 和其中的目标页面没有被现有抓取规则、CDN 或 WAF 意外拦截。

是否需要生成 llms-full.txt?

通常不需要。只有目标工具明确支持、网站内容稳定且具备自动同步机制时才考虑。它不能代替原始网页,也不应复制受限或容易过期的内容。

没看到 AI 爬虫请求,是否说明文件无效?

不能。平台可能尚未访问,也可能通过搜索索引、缓存或第三方数据源获得页面。准确结论应是“观察期内未发现直接访问”,并继续检查页面引用和回答变化。

子域名需要单独创建 llms.txt 吗?

建议需要。www.example.comdocs.example.com 等主机可能具有不同内容和访问策略,应分别在各自根目录提供文件,并只链接对应主机的规范页面。

结论

llms.txt怎么写,核心可以概括为四件事:

  1. 选对页面: 优先收录能回答重要问题且包含可信证据的页面;
  2. 写清上下文: 用简短摘要、任务分组和具体链接描述说明内容价值;
  3. 保证可访问: 文件及目标页面均应返回可读取的公开正文;
  4. 验证真实效果: 区分部署、访问、跟随、引用和增量,不把一次请求当成排名提升。

先上线一个包含 10—30 个核心网址的最小版本,固定测试条件并保存日志。只有证据从 E0 逐步走到 E3 或 E4,才有理由讨论 llms.txt 对特定平台和场景是否产生了实际价值。