Hacker News 中文摘要

RSS订阅

我向ChatGPT、Claude、Perplexity和Gemini发起提示并观察Nginx日志 -- I prompted ChatGPT, Claude, Perplexity, and Gemini and watched my Nginx logs

文章摘要

通过分析nginx日志发现,AI流量(如ChatGPT、Claude等)与常规推荐流量在用户代理、访问模式等方面存在显著差异,这有助于区分真实用户与AI爬虫行为。

文章总结

标题:从Nginx日志看AI流量与推荐流量的区别

主要内容概述

文章通过分析Nginx服务器日志,探讨了AI助手(如ChatGPT、Claude等)在回答用户问题时是否实时抓取网页内容,以及如何区分AI流量和真实用户点击流量。作者设置了一个专门的Nginx探测工具,通过向主流AI助手提问并记录服务器日志,揭示了不同AI助手的行为模式。

关键发现

  1. 两种流量信号

    • AI提供方抓取:AI助手直接访问源网站,通常带有专用用户代理(User-Agent)且无推荐来源(referrer)。
    • 真实用户点击:用户阅读AI回答后,点击引用链接访问网站,表现为普通浏览器流量,推荐来源为AI助手。
  2. AI助手的行为差异

    • 明确标识的AI助手

      • ChatGPT:使用ChatGPT-User/1.0用户代理,从多个IP地址同时抓取多个候选页面。
      • Claude:每次抓取前先请求robots.txt,用户代理为Claude-User/1.0
      • Perplexity:直接抓取页面,用户代理为Perplexity-User/1.0,但有时会从索引中回答而不抓取。
      • Meta AI:使用meta-webindexer/1.1用户代理,但行为与文档中描述的Meta-ExternalFetcher不一致。
      • Manus:用户代理中带有Manus-User/1.0后缀,完整渲染页面内容。
    • 未明确标识的AI助手

      • Gemini(Google):未观察到实时抓取,完全依赖自身索引。
      • Copilot(Microsoft):以普通浏览器(Chrome)形式抓取,无法与真实用户区分。
      • Grok(xAI):同样以普通浏览器(Safari/Chrome)形式抓取,无标识。
  3. 可测量的内容

    • AI抓取流量:通过用户代理(如ChatGPT-UserClaude-User等)识别。
    • 真实用户流量:通过推荐来源(如chatgpt.comclaude.ai等)识别。
    • 需注意的混淆信号:搜索引擎爬虫(如GooglebotBingbot)和训练爬虫(如GPTBot)不属于实时抓取流量。

实用建议

  • 如果希望阻止特定AI助手抓取,可通过robots.txt文件针对其用户代理设置限制。
  • 对于未明确标识的AI助手(如Copilot、Grok),无法仅通过日志区分其流量。
  • 可通过工具(如robots.txt检查器)快速查看当前网站的AI爬虫权限设置。

附录:主流AI爬虫分类

| 爬虫名称 | 公司 | 类型 | 文档链接 | |------------------------|------------|----------------|----------| | ChatGPT-User | OpenAI | 实时抓取 | 链接 | | Claude-User | Anthropic | 实时抓取 | 链接 | | Perplexity-User | Perplexity | 实时抓取 | 链接 | | Googlebot | Google | 搜索引擎索引 | 链接 | | Bingbot | Microsoft | 搜索引擎索引 | 链接 |

总结

通过Nginx日志可以清晰识别部分AI助手的实时抓取行为,但部分助手(如Gemini、Copilot、Grok)的流量无法与普通用户区分。网站管理员应根据需求调整robots.txt设置,并注意不同AI助手的行为差异。

评论总结

总结评论内容:

  1. 对文章内容的兴趣与肯定
  • 认为是有趣的实践方法:"Looks like a very fun exercise, I will try it out as well" (评论1)
  • 对AI访问模式的研究兴趣:"I'm curious about the header of their requests" (评论3)
  1. 对AI写作风格的批评
  • 认为文章有明显AI写作痕迹:"This article is absolutely jammed with AI tells" (评论5)
  • 批评表达不清晰:"the writing on this is so painful to read...written by an LLM" (评论7)
  1. 关于AI访问网站的技术讨论
  • 指出不同AI访问模式的差异:"Claude tends to fetch top-of-message URLs first, while GPT often fetches the last one mentioned" (评论10)
  • 强调需要区分不同访问目的:"multiple ways these tools access your site...only one is 'using it for training'" (评论8)
  1. 对数据真实性的质疑
  • 发现IP地址可能被故意模糊:"IPs listed...are from reserved ranges...intentionally obfuscated" (评论9)
  • 质疑数据收集方法:"it doesn't mention whether it actually hit the endpoint during the test" (评论7)
  1. 幽默/讽刺性评论
  • 调侃AI服务特点:"ChatGPT DDoS-lite, Claude the polite one" (评论6)
  • 暗示安全漏洞:"for the user-agent 'ChatGPT-User' I can return my prompt injection text" (评论2)