最近被3·15曝光的"GEO投毒"新闻震撼到了。原来我们每天用的AI搜索背后,已经有人在玩"数据污染"的游戏了。今天就来聊聊这个话题。

为什么我要关注GEO?

前几天看3·15晚会,突然看到"力擎GEO优化系统"被点名,说是利用GEO技术向AI大模型"投毒"。当时我就懵了——GEO是什么?跟SEO有什么关系?作为一个经常用Claude、Perplexity查技术资料的开发者,这个问题直接关系到我获取信息的质量。

更让我警觉的是,我在英博云平台部署模型的时候,也需要考虑模型的输出质量问题。如果训练数据被污染了,那模型岂不是也会"学坏"?

所以这篇文章,我想从一个AI学习者的角度,聊聊GEO到底是什么,3·15暴露了什么问题,以及我们开发者应该如何看待这件事。

什么是GEO?用前端的方式理解

GEO vs SEO:从"排名优化"到"答案优化"

如果你做过前端,肯定知道SEO(搜索引擎优化)。我们写代码的时候要考虑meta标签、语义化HTML、robots.txt这些东西,目的是让Google、百度能更好地收录我们的网站。

SEO的逻辑是这样的

用户搜索 → 搜索引擎返回10个蓝色链接 → 用户点击浏览 → 选择有用的

但现在AI搜索改变了游戏规则:

AI搜索的逻辑

用户提问 → AI直接给出答案 → 顺便引用2-7个信息源

看出区别了吗?

用户不再需要"挨个点开链接筛选",而是直接得到一个综合答案。这时候,传统SEO那套"争排名"的玩法就失效了。你的网站排第一又怎样?如果AI不引用你,用户可能根本不知道你的存在。

这就是GEO——Generative Engine Optimization(生成式引擎优化)——要解决的问题。

一个类比:从"竞价排名"到"被AI点名"

我用前端开发的视角打个比方:

传统SEO就像是在竞标广告位,你投入资源优化网站,争取在搜索结果列表里排得更靠前。就像我们写组件的时候,要考虑z-index的层级关系一样。

而GEO更像是让你的代码成为"官方推荐的最佳实践"。当别人问"React状态管理怎么做"的时候,AI会说:“根据XX的方案…”,然后引用你的内容。

这种"被AI点名"的价值是巨大的——它相当于AI给你的内容做了背书。

一些数据让你感受下趋势

  • 527%:2025年前5个月,AI推荐带来的流量同比增长527%
  • 50%:到2025年10月,50%的消费者已经把AI搜索作为主要信息获取方式
  • 5.15亿:中国生成式AI用户数量
  • 68%:根据AI推荐完成购买的消费者比例
  • 42亿:2025年中国GEO服务市场规模

看到这些数据,我第一反应是:这不就是当年移动互联网崛起的剧本吗?只不过这次是"AI互联网"。

3·15曝光了什么?黑帽GEO的玩法

"AI投毒"是怎么回事?

3·15曝光的核心问题是:有人利用GEO技术向AI大模型"投毒"

具体怎么操作的呢?我整理了一下:

1. 批量生成虚假软文
   ↓
2. 矩阵式发布到各种平台
   ↓
3. 污染AI的数据抓取源
   ↓
4. 操纵AI的推荐结果

比如说,某品牌想让AI推荐自己的产品。他们不是去提升产品质量或者积累真实口碑,而是:

  • 虚构信源:生成不存在的"研究报告"或"媒体报道",诱导AI采纳
  • 语义劫持:通过密集关键词干扰AI的语义理解逻辑
  • 虚假背书:捏造与权威机构的关联关系

作为开发者,我为什么觉得这很可怕?

说实话,这件事让我想到了前端开发中的"XSS攻击"和"注入攻击"。

传统Web安全里,我们防的是有人往数据库里注入恶意SQL,或者在网页里植入恶意脚本。

而"AI投毒"本质上是往AI的"知识库"里注入虚假信息。更可怕的是,AI模型一旦"学会"了这些错误信息,就会反复传播出去。

打个比方:

// 传统SQL注入
const query = `SELECT * FROM users WHERE name = '${userInput}'`;
// 恶意输入: ' OR '1'='1
// 结果: 数据库被攻破

// AI数据投毒(类比)
const aiTrainingData = fetchFromInternet();
// 恶意输入: 大量虚假信源的"权威报告"
// 结果: AI输出被操纵

两者的逻辑是相似的——都是利用系统对外部输入的"信任"来实现攻击。

一个具体的例子

假设你问AI:“2026年最好的前端框架是什么?”

正常情况下,AI会综合真实的技术文章、社区讨论、官方文档来回答。

但如果有人批量发布了上千篇软文,说"XXX框架是2026年最牛的前端框架,被硅谷大厂全面采用",即使这些内容完全是编造的,AI也可能被误导,把这个虚假信息当作"共识"输出给用户。

这就是为什么我觉得3·15的曝光很及时——它提醒了大众,AI给的答案不一定是对的。

行业如何应对?

自律公约的签署

好消息是,就在3·15前一天(3月14日),国内首部《生成式引擎优化(GEO)行业自律公约》正式签署。

公约的核心要点:

  1. 联合惩戒机制:对"AI投毒"、恶意操纵AI答案的行为主体,采取行业通报、服务限制、信息共享等措施
  2. 技术标准:明确了"白帽GEO"和"黑帽GEO"的边界
  3. 行业协作:签署单位之间共享黑名单

正规GEO应该怎么做?

这里我想分享一下我理解的"白帽GEO"——就是合规的、不作弊的GEO优化方法。

核心思路是:不是"攻击算法",而是"建设信源"

白帽GEO的逻辑:
1. 创造真正有价值的内容
2. 确保内容在可信渠道有原始锚点
3. 结构化数据便于AI理解
4. 让AI"自然地"引用你

这和我们做前端开发的思路其实是一致的——你想让搜索引擎收录你的网站,最好的办法不是黑帽SEO,而是真正做好网站的内容和体验。

从技术角度看,正规GEO要做什么?

作为开发者,我对GEO的技术实现比较感兴趣。整理了一下"白帽GEO"需要关注的技术点:

1. Schema标记(结构化数据)

<!-- 文章Schema -->
<script type="application/ld+json">
{
  "@context": "https://schema.org",
  "@type": "Article",
  "headline": "如何在英博云部署AI模型",
  "author": {
    "@type": "Person",
    "name": "一个前端开发者"
  },
  "datePublished": "2026-03-26",
  "description": "从前端视角分享AI模型部署经验..."
}
</script>

这些结构化数据能帮助AI更好地理解你的内容。就像我们给组件写PropTypes一样,是在告诉"消费者"这个内容是什么类型、有哪些属性。

2. AI爬虫的robots.txt配置

# robots.txt
User-agent: GPTBot
Allow: /

User-agent: ClaudeBot
Allow: /

User-agent: PerplexityBot
Allow: /

很多网站默认禁止AI爬虫,但如果你希望被AI引用,就需要显式允许。

3. llms.txt文件(新趋势)

这是2025年兴起的新标准,专门告诉AI系统如何解读你的网站:

# llms.txt
name: 我的技术博客
description: 一个前端开发者的AI学习笔记
contact: example@email.com
preferred_citation_format: "[文章标题] by [作者]"

4. 开篇200字原则

AI系统在评估页面相关性时,主要看开头内容。所以文章的前200字要直接回答核心问题,不要"铺垫"太多。

这一点和我们做前端性能优化的"首屏优先"原则很像——最重要的内容要最先呈现。

作为AI学习者,我的一些思考

思考1:RAG架构下的信息质量问题

我在学习大模型的过程中,接触到了RAG(检索增强生成)架构。简单说就是:

用户提问 → 检索知识库 → 把检索结果喂给大模型 → 生成回答

这个架构的好处是可以让模型获取实时信息,不受训练数据时效性的限制。但问题也很明显——如果知识库被污染了,输出就会出问题

我在英博云平台部署模型的时候,就特别注意知识库数据的质量。比如:

  • 数据源要可信(官方文档、peer-reviewed论文等)
  • 定期清理和更新
  • 对来源进行标记和权重设置

思考2:AI时代的"信息溯源"能力

3·15的曝光让我意识到,在AI时代,"信息溯源"能力变得更重要了。

以前我们可以看到10个蓝色链接,自己判断哪个可信。现在AI直接给答案,我们很容易"无脑接受"。

作为开发者,我觉得我们应该:

  1. 保持怀疑:AI的回答不一定对,尤其是涉及商业推荐的时候
  2. 看引用源:Perplexity、Kimi这些产品会标注信息来源,要养成看源头的习惯
  3. 交叉验证:重要信息用多个AI产品或搜索引擎交叉验证

思考3:前端开发者可以做什么?

既然GEO是大趋势,前端开发者能在这个领域做点什么呢?

内容层面

  • 写高质量的技术博客(比如你正在看的这篇)
  • 用结构化的方式组织内容
  • 提供可验证的代码示例

技术层面

  • 学习Schema标记的实现
  • 了解AI爬虫的工作机制
  • 探索llms.txt等新标准

产品层面

  • 思考如何在产品中集成AI搜索
  • 如何让自己的产品内容被AI正确理解和引用
  • 如何检测和防范"AI数据污染"

代码示例:检测网站的GEO友好度

作为一个前端开发者,我写了一个简单的脚本,用来检测网站的GEO友好度:

/**
 * 简易GEO友好度检测工具
 * 检测网站对AI爬虫的友好程度
 */
class GEOChecker {
  constructor(url) {
    this.url = url;
    this.results = {
      score: 0,
      details: []
    };
  }

  // 检查robots.txt中的AI爬虫配置
  async checkRobotsTxt() {
    try {
      const robotsUrl = new URL('/robots.txt', this.url).href;
      const response = await fetch(robotsUrl);
      const text = await response.text();

      const aiCrawlers = ['GPTBot', 'ClaudeBot', 'PerplexityBot', 'Anthropic'];
      const allowed = [];
      const blocked = [];

      aiCrawlers.forEach(crawler => {
        const regex = new RegExp(`User-agent:\\s*${crawler}[\\s\\S]*?(Allow|Disallow):\\s*(.*)`, 'i');
        const match = text.match(regex);

        if (match) {
          if (match[1].toLowerCase() === 'allow') {
            allowed.push(crawler);
          } else {
            blocked.push(crawler);
          }
        }
      });

      this.results.details.push({
        check: 'robots.txt AI配置',
        allowed,
        blocked,
        score: allowed.length * 10
      });

      this.results.score += allowed.length * 10;
    } catch (error) {
      this.results.details.push({
        check: 'robots.txt',
        error: '无法获取robots.txt'
      });
    }
  }

  // 检查Schema标记
  async checkSchemaMarkup() {
    try {
      const response = await fetch(this.url);
      const html = await response.text();

      const schemaTypes = ['Article', 'Organization', 'FAQ', 'HowTo', 'BreadcrumbList'];
      const found = [];

      schemaTypes.forEach(type => {
        if (html.includes(`"@type":"${type}"`) || html.includes(`"@type": "${type}"`)) {
          found.push(type);
        }
      });

      this.results.details.push({
        check: 'Schema标记',
        found,
        score: found.length * 15
      });

      this.results.score += found.length * 15;
    } catch (error) {
      this.results.details.push({
        check: 'Schema标记',
        error: '无法解析页面'
      });
    }
  }

  // 检查llms.txt
  async checkLlmsTxt() {
    try {
      const llmsUrl = new URL('/llms.txt', this.url).href;
      const response = await fetch(llmsUrl);

      if (response.ok) {
        this.results.details.push({
          check: 'llms.txt',
          exists: true,
          score: 20
        });
        this.results.score += 20;
      } else {
        this.results.details.push({
          check: 'llms.txt',
          exists: false,
          score: 0
        });
      }
    } catch (error) {
      this.results.details.push({
        check: 'llms.txt',
        exists: false,
        score: 0
      });
    }
  }

  // 运行所有检查
  async runAll() {
    await Promise.all([
      this.checkRobotsTxt(),
      this.checkSchemaMarkup(),
      this.checkLlmsTxt()
    ]);

    return {
      url: this.url,
      totalScore: this.results.score,
      maxScore: 100,
      rating: this.getGrade(this.results.score),
      details: this.results.details
    };
  }

  getGrade(score) {
    if (score >= 80) return 'A - 非常友好';
    if (score >= 60) return 'B - 良好';
    if (score >= 40) return 'C - 一般';
    if (score >= 20) return 'D - 需要改进';
    return 'F - 不友好';
  }
}

// 使用示例
const checker = new GEOChecker('https://example.com');
checker.runAll().then(result => {
  console.log('GEO友好度检测结果:');
  console.log(JSON.stringify(result, null, 2));
});

这个脚本会检查:

  1. robots.txt是否允许AI爬虫
  2. 页面是否有Schema结构化数据
  3. 是否有llms.txt文件

你可以用它来检测自己网站的GEO友好度,然后针对性地优化。

总结与展望

核心收获

  1. GEO是AI时代的"新SEO":用户行为从"搜索-浏览-筛选"变成"提问-得答案",优化目标从"排名"变成"被引用"

  2. 3·15曝光的是"黑帽GEO":通过数据投毒、虚假信源来操纵AI输出,这是违法违规的

  3. 正规GEO的核心是"建设信源":创造真正有价值的内容,让AI"自然地"引用你

  4. 技术层面有很多可以做的:Schema标记、AI爬虫配置、llms.txt等

  5. 作为AI用户要保持警惕:AI的回答可能被污染,要学会溯源和验证

对读者的建议

如果你是前端开发者,正在学习AI:

  1. 关注GEO趋势,这可能是你下一个技能增长点
  2. 给自己的博客/网站做GEO优化,实践出真知
  3. 用AI搜索时保持批判性思维
  4. 考虑在自己的产品中如何应对"数据污染"问题

如果你在做AI相关的产品或部署:

  1. 重视知识库的数据质量
  2. 考虑信源可信度的评估机制
  3. 关注行业的自律规范和技术标准

后续学习计划

接下来我准备深入研究几个方向:

  1. RAG系统中如何做信源质量评估
  2. llms.txt标准的详细规范
  3. 英博云平台上部署带有"数据清洗"能力的AI应用

如果你对这些话题感兴趣,欢迎关注我的后续文章。

参考资源


Logo

AtomGit 是由开放原子开源基金会联合 CSDN 等生态伙伴共同推出的新一代开源与人工智能协作平台。平台坚持“开放、中立、公益”的理念,把代码托管、模型共享、数据集托管、智能体开发体验和算力服务整合在一起,为开发者提供从开发、训练到部署的一站式体验。

更多推荐