你不了解的GEO:AI可见性解读
一小时让 AI 找到你的内容。
微信 ezpoda免费咨询:AI编程 | AI模型微调| AI私有化部署
AI模型价格对比 | AI工具导航 | ONNX模型库 | Tripo 3D | Meshy AI | ElevenLabs | KlingAI | ArtSpace | Phot.AI | InVideo
最近有几位朋友联系我我,说他们问 AI 问题时,我的开源工具出现了。我并没有刻意做过什么,所以我想:为什么不花一个小时把事情好好结构化一下呢?做完之后,我发了一条快速推文,但笔记很乱。大家看起来真的很感兴趣,所以我决定把它写成一篇正式的文章供参考。
我讨厌刷排名或生成垃圾内容。这篇文章不会教你捷径。它是关于帮助 AI 更好地理解你已经拥有的内容。
我调查了为什么会这样,发现 AI 搜索运行在完全不同的逻辑上。传统 SEO 是为了挤进前 10 名,但 AI Overview 83% 的引用来自前 10 名之外的页面。AI 奖励清晰的结构和可靠的来源,而不是 PageRank。我的项目不算大,但 README 和文档写得足够好,以至于 AI 在更大网站内容单薄的地方挑选了它们。这可能就是为什么朋友们在他们的 AI 结果中看到 Pake 和 MiaoYan 的原因。
AI 搜索增长很快:2025 年上半年同比增长 527%,到 2026 年 2 月 ChatGPT 每周活跃用户达到 9 亿,转发流量转化率大约是传统搜索的 5 倍。但它仍占总转发流量的不到 1%。这是一个品牌可见度策略,而不是流量策略。值得花一小时设置,而不是一周,因为你的产品才是你真正的竞争优势,而不是这个。

1、使用 robots.txt 区分爬虫类型
大多数人把 robots.txt 当作一个开关:要么屏蔽 AI 爬虫,要么全部允许。但 AI 爬虫有几种类型,它们做的事情不同。
训练爬虫(GPTBot、ClaudeBot、Meta-ExternalAgent、CCBot)会获取你的内容来训练模型。屏蔽它们可以让你的内容不进入训练数据,但不会影响当前的 AI 搜索结果。
搜索和检索爬虫(OAI-SearchBot、Claude-SearchBot、PerplexityBot)会实时获取内容来回答用户查询。屏蔽这些,你就会从 AI 搜索中消失。
用户触发的获取器(ChatGPT-User、Claude-User、Perplexity-User、Google-Agent)只有当有人把你的 URL 粘贴到聊天窗口时才会触发。屏蔽它们,用户问“总结这个页面”时就什么都得不到。
选择退出令牌(Google-Extended、Applebot-Extended)不是真正的爬虫。它们是你要在 robots.txt 中声明的信号,以选择退出 AI 训练。
未声明的爬虫(Bytespider、xAI 的 Grok bot)不会自我标识,也不一定遵守规则。
我的做法:允许搜索/检索和用户触发的爬虫,屏蔽训练和未声明的爬虫。
# Search & retrieval: allow
User-agent: OAI-SearchBot
Allow: /
User-agent: Claude-SearchBot
Allow: /
User-agent: PerplexityBot
Allow: /
# User-triggered: allow
User-agent: ChatGPT-User
Allow: /
User-agent: Claude-User
Allow: /
# Training: block
User-agent: GPTBot
Disallow: /
User-agent: CCBot
Disallow: /
# Opt-out tokens
User-agent: Google-Extended
Disallow: /
# Undeclared: block
User-agent: Bytespider
Disallow: /2、编写你的 llms.txt 并交叉链接你的网站
llms.txt 是一个新标准,类似于 robots.txt,但专为 AI 消费而设计。你在网站根目录放置一个 Markdown 文件,描述你的网站是做什么的、关键页面以及背后是谁。AI 系统在爬取你的内容时会优先考虑这个文件。
BuiltWith 跟踪了超过 84 万个部署了 llms.txt 的网站,包括 Anthropic、Cloudflare、Stripe 和 Vercel。但在 SE Ranking 对 30 万个域名的调查中,采用率只有 10%。现在还很早期,而早期就是优势。
格式很简单:
# Your Project Name
> One-line description of what this is.
## Links
- [Documentation](https://yoursite.com/docs)
- [GitHub](https://github.com/you/project)
- [Blog](https://yoursite.com/blog)
## About
Short paragraph explaining the project, its purpose,
key features, and what makes it different.
创建完你的之后,提交到 directory.llmstxt.cloud、llmstxt.site,以及通过 PR 提交到 GitHub 上的 llms-txt-hub 仓库。
我还做了一件有趣的事:让每个网站的 llms.txt 互相引用对方。我维护着 tw93.fun、weekly.tw93.fun 和 yobi.tw93.fun。每个网站的 llms.txt 都链接到其余的,形成一个网状结构。AI 爬虫通过任何一个网站进入后,都能跟随链接发现其他所有内容。

这些更改在爬虫重新访问你的网站后生效,通常几天之内。之后,在 ChatGPT 中搜索你的项目名称试试。引用来源和描述准确性应该会提升。

3、提供完整内容和 Markdown 路由
llms.txt 是摘要。llms-full.txt 是完整版本,通常 30-60KB,包含项目描述、FAQ、使用场景、竞品对比和 README 摘录。Mintlify 的 CDN 分析显示 llms-full.txt 的流量是 llms.txt 的 3-4 倍。找到摘要的 AI 系统想要完整版本。
Markdown 路由更进一步。Evil Martians 推荐为网站上的每个页面提供 .md 版本。一个 15,000 token 的 HTML 页面会变成一个 3,000 token 的 Markdown 文档,噪声减少 80%。

告诉 AI 你有 Markdown 版本的最简单方法,是在页面的 <head> 中添加这个:
<link rel="alternate" type="text/markdown" href="/page.md" />Claude Code 和 Cursor 在获取文档时已经会发送 Accept: text/markdown 头。这是标准的 HTTP/1.1 内容协商,从 1997 年就有了。
4、向搜索引擎平台注册你的网站
前面部分的 robots.txt 和 llms.txt 工作让你的内容对 AI 可读,但 AI 必须先找到你。ChatGPT 的搜索运行在 Bing 上,Google AI Overview 使用 Google 自己的索引,Perplexity 也依赖搜索 API。如果你的页面没有被搜索引擎索引,上面所有的结构化工作都没有意义。所以第一步是确保 Google 和 Bing 已经索引了你的网站。
设置很简单:前往 Google Search Console,通过 DNS 或 HTML 文件上传验证你的域名,然后提交你的 sitemap URL(通常是 yoursite.com/sitemap.xml)。检查“页面”索引报告,看哪些页面被索引了,哪些有问题。如果重要页面没有被索引,使用 URL 检查工具手动请求索引。
你可能觉得 Bing 不重要,但 Copilot、DuckDuckGo 和 Yahoo 底层都运行在 Bing 的索引上。在 Bing Webmaster Tools 注册,提交你的 sitemap,并查看 AI Performance 面板,看 AI 引用你内容的频率。同时,在那里设置 IndexNow,这样当你发布新内容时 Bing 会立即收到通知,而不是等待爬虫来发现。
设置 IndexNow 意味着在网站根目录放置一个 API key 文件,然后每次发布时向 api.indexnow.org/indexnow 发送一个包含变更 URL 列表的 POST 请求。Bing 会在几分钟内接收到。许多静态站点生成器和 CMS 平台都有可用的 IndexNow 插件。

Google Search Console 还没有 AI 专属面板,但提交 sitemap 并监控索引状态仍然值得做。Google 的 AI Overviews 比传统结果拉取的范围更广,所以即使不在前 10 名的页面也能出现在 AI 生成的答案中。
Perplexity 的用户比你想象的要多。他们在 pplx.ai/publisher-program 运行了一个发布者计划。一旦被批准,你会获得 80/20 的收入分成,并能访问引用分析数据。
5、我为 AI 建了一个专用的知识站点
与其等待 AI 从分散的来源抓取信息,不如给它一个单一入口,所有内容都组织好。
知识站点应该提供三层:概述(llms.txt)、完整版本(llms-full.txt,30-60KB),以及每个核心项目的独立知识页面。添加结构化的 JSON API,让 AI 工具可以编程方式获取数据。从 GitHub API 等上游来源实时拉取数据,并使用定期刷新的缓存,维护成本接近零。
容易忽略的一点是:给 AI 一个叙事结构,而不仅仅是项目列表。如果你有多个项目,写一段描述把它们连接起来,它们之间的关系、你的技术方向、整体画面。当 AI 回答“这个人是谁”或“这个团队做什么”时,连贯的叙事比平铺的列表效果好得多。
我的实现叫做 Yobi(来自日语 呼び / よび,意思是“呼叫”或“召唤”)。它提供 llms.txt 概述、50KB 的 llms-full.txt、每个项目的页面,以及四个 JSON 端点(/api/profile、/api/projects、/api/blog、/api/weekly),这些端点从 GitHub API 实时拉取数据,使用 ISR 缓存每小时刷新。技术栈:在 Vercel 上使用 Next.js + TypeScript。

JSON API 返回带有实时 GitHub 数据的结构化项目数据:

6、给每个项目一个自己的页面
每个项目都需要一个独立的页面,而不是列表中的一行,而是一个自包含的 Markdown 文档,包含可引用的摘要、核心功能、竞品对比、使用案例和安装命令。Ahrefs 发现被引用的页面标题与用户查询的语义相似度更高,自然语言的 URL slug(如 /projects/pake)比不透明 ID(如 /page?id=47)被引用的次数更多。

URL 结构很重要。/projects/pake 在模型读一行内容之前就告诉它这个页面是关于什么的。/page?id=47 什么都没告诉它。
7、将结构化数据同步到你的主域名
子域名的权威性低于根域名。发现 example.com 的 AI 爬虫不会自动找到 docs.example.com 或 api.example.com。如果你的 llms.txt、项目页面和 API 数据分散在不同子域名,AI 可能只看到部分画面。
解决办法是将关键结构化数据镜像到主域名上,让 example.com/llms.txt、example.com/projects/xxx.md 和 example.com/api/projects.json 都位于同一个屋檐下。AI 爬虫通过搜索索引发现你的主站,然后无需离开就能找到一切。实现方式包括定时 CI 同步、构建时获取或反向代理。我使用 GitHub Action 每晚将子域名数据同步到博客仓库。

启动新站点时,使用检查清单来避免遗漏。核心项目:robots.txt(分类爬虫权限)、llms.txt(带交叉引用的站点摘要)、sitemap(提交给搜索引擎)、Bing Webmaster Tools(启用 IndexNow)、Google Search Console(监控索引)。每个网站的 llms.txt 都应引用其他网站,形成发现网状结构。
做这项工作时最容易掉入的陷阱是,看到每一种 GEO 技术都激动不已,想把它们全加上,结果搞得一团糟,忘记了什么才是重要的。
8、这些没用
<meta name="ai-content-url"> 和 <meta name="llms">:没有规范,没有任何主要 AI 系统采用。
/.well-known/ai.txt:有多个相互竞争的提案,没有真正被采用。等出胜者再说。
带 AI 提示的 HTML 注释:解析器在 AI 看到内容之前就会剥离注释。
通过 User-Agent 嗅探提供 Markdown:对机器人和人类返回不同内容属于伪装。Google 会惩罚你。
非官方的 AI meta 标签:除非有主要 AI 提供商明确文档支持,否则只是噪声。
9、JSON-LD 没有你想象的那么有用
我最初以为 JSON-LD 对 AI 可见度会很强大。更深入的研究显示情况更复杂。SearchVIU 做了一个实验,只把数据放在 JSON-LD 中而不显示在页面上。他们测试的五个 AI 系统都没能找到它。Mark Williams-Cook 的后续实验显示,LLM 把 <script type="application/ld+json"> 当作纯文本,读取里面的文字,而不理解结构化语义。
唯一确认的例外是 Bing/Copilot,它使用 JSON-LD 来丰富其搜索索引。保留现有的 JSON-LD(它对 Bing/Copilot 和传统富结果有帮助),但不要指望添加它就能让 ChatGPT 或 Claude 更多地引用你。
10、研究数据怎么说
普林斯顿和 IIT Delhi 在 KDD 2024 发表的 GEO 论文发现,添加权威引用可提升 AI 可见度 115%,相关统计数据提升 33%,来自可信来源的直接引用提升 43%。

我的朋友 @yaojingang 一直在认真研究 GEO。他的 geo-citation-lab 在三个平台上运行了 602 个提示,并抓取了数万页面进行特征分析。他的完整报告值得一读。以下是对内容创作者最有用的模式。
具体性。带有真实数据、清晰定义和并排对比的页面,比模糊、泛泛的页面影响高出 50% 以上。逐步结构也有明显帮助。纯 FAQ 格式实际上有害。那些告诉你“添加 FAQ 来提升分数”的 GEO 工具给出的建议与数据矛盾,这也验证了我从自己页面中移除 FAQ 部分的决定。
内容深度。AI 不偏好短摘要。它偏好可以切成可复用片段的长内容。高影响页面平均接近 2000 字,带有 10+ 个标题。低影响页面平均只有 170 字,差距超过 10 倍。甜蜜点是 1000 到 3000 字。
相关性。所有机械的 SEO 指标(标题层级、meta 描述、关键词密度)预测能力都不如一个单一变量:你的页面内容是否真正回答了用户的问题。
平台差异。ChatGPT 引用来源更少,但每个都用得很深;其每次引用的影响是 Google 的 5 倍以上。Perplexity 撒网更宽,引用的来源是其两倍以上。要被 ChatGPT 引用,就在单个页面上做深。要被 Perplexity 引用,就做宽。
内容类型。官网、新闻和行业垂直领域大约占引用来源的 80%。但百科风格和解释性页面对新闻页面的影响是其 3 倍。英语内容占全球引用样本的 83% 以上,因此面向国际受众的项目需要英语版本。
11、被检索不等于被引用
ChatGPT 在一次会话中检索的所有页面中,只有 15% 会出现在最终答案中。其余 85% 从未被引用。进入检索池只是第一个障碍。模型仍需决定哪些页面值得引用。
Ahrefs 发现被引用的页面标题与用户查询的语义相似度明显更高,带有描述性自然语言 URL slug 的页面比不透明 ID 的页面被引用更多。这就是为什么 llms.txt 和 Markdown 路由有帮助:它们给模型一个干净、明确的信号,表明你的页面覆盖什么内容。
品牌通过第三方来源被引用的频率是自己域名的 6.5 倍。有人在 Reddit 或 Hacker News 上赞扬你的项目,比你自己的营销文案更有分量。这正是为什么拥有结构良好的 llms.txt 很重要:它给模型一个可引用的锚点,即使触发查询的对话发生在其他地方。
有一些 AI SEO 审计工具会给你的网站打分,并告诉你添加 FAQ 部分、信任页面或更多文字。不要让分数驱动你的决策。测试很简单:你添加的每一段是否包含页面上已经没有的信息?如果不是,就不要添加。我曾经给 Yobi 添加了一个 FAQ,只是重述了 About 部分已经说过的话,纯粹是为了提高分数。那是填充。我把它删掉了。
这里的一切都是为了帮助 AI 准确理解你拥有的内容,给它一个干净的工作环境。这比任何捷径都持久。
基本配置大约需要一小时。知识端点和每个项目的页面需要更长时间,但一旦数据结构就位,维护就很容易。每日同步会自动运行。
给爬虫几天时间来抓取更改,然后在 ChatGPT、Perplexity 或 Claude 中搜索你的名字或项目。引用应该会更准确。

AI 引用归因仍然不可靠。CJR 和 Tow Center 测试了 200 个 AI 生成的引用,发现 153 个有部分或完全错误。做结构化工作是因为它让你的内容更容易被准确访问,但不要把 AI 引用当作用户看到了你确切文字的证明。机制仍在改进。
如果你有自己的产品、博客或网站,试试看。你也可以把这篇文章交给 Claude Code,让它处理大部分设置工作。
原文链接:You Didn't Know GEO: AI Visibility Principles, Practices, and Trade-offs
汇智网翻译整理,转载请标明出处