ChatGPT标题夹带小广告:深层技术归因与词表污染真相

2026/10/10 10:13阅读量 2

ChatGPT会话标题中频繁出现色情赌博广告并非隐私泄露或新功能测试,而是由标题生成模型推理缺陷与分词器词表污染共同导致。OpenAI自2024年5月起采用的o200k_base分词方案将大量未清洗的中文垃圾数据纳入词表,而轻量级标题模型在生成结束时缺乏有效的停止机制,从而随机输出这些“脏词元”。尽管近期频率有所下降,但彻底解决需重训基模,短期内用户仍需忍受此现象。

事件概述

自2024年初起,ChatGPT及其相关API(如Codex CLI)频繁在输出内容或会话标题末尾夹杂博彩、色情等非法广告片段。该现象最早于1月在开发者社区被注意到,随后蔓延至普通用户界面。尽管OpenAI官方在7月承认知晓该问题并承诺修复,但直至8月中旬广告仍广泛出现在标题中。目前正文和思维链中的广告已近乎绝迹,但标题污染问题依然存在,且根源可追溯至2024年的底层技术变更。

核心信息

1. 异常现象的时间线与范围

  • 1月底:开发者发现使用GPT-5.3模型且上下文较长时,Codex输出夹杂中文博彩广告。
  • 2月:API端出现类似现象,GPT5.2-chat-latest在未执行工具调用时直接输出赌博网站广告词。
  • 4月:现象在开发者群体中司空见惯,OpenAI官方仅鼓励合并讨论,未提供实质解决方案。
  • 7月25日:OpenAI官方首次正面回应,称预计在未来更新中解决。

2. 技术原理分析

A. 标题生成机制独立且存在缺陷

  • 独立调用:网页端通过 /backend-api/conversation/gen_title/<对话ID> 接口单独请求生成标题,该过程独立于主对话。
  • 模型特征:推断标题生成使用的是一个更轻量化的推理模型(Reasoning Model)。证据包括标题中出现的“自问自答”式思维链文风,以及模型未能正确区分“思考”与“回答”边界,导致内部思维链内容被输出。
  • 停止机制失效:该模型经常在任务完成后无法输出正确的控制符(Control Token)来结束生成,而是继续根据概率输出后续词元,导致乱码或无关内容混入标题。

B. 词表污染是根本原因

  • 分词器变更:自2024年5月发布的GPT-4o起,OpenAI将分词器编码方案从 cl100k_base 升级为 o200k_base。新方案旨在将常见中文词语和短句作为独立词元(Token),以提升效率。
  • 训练数据污染:用于训练分词器的中文语料包含大量从外网抓取的色情、赌博及盗版影视数据。由于广告词组具有高度重复性,极易被识别为高频词元并入表。
  • 数据占比惊人:据EMNLP论文《Speculating LLMs’ Chinese Training Data Pollution from Their Tokens》指出,在 o200k_base 词表中:
    • 最长的100个中文词元中,96个与赌博、色情或盗版影视相关。
  • “脏词元”效应:虽然语言模型在正式训练前会对数据进行清洗,去除低质量广告,但这些广告词元已作为独立ID存在于分词器中。模型从未见过这些词元的语义含义,将其视为“意义不明”的乱码。当标题生成模型出错需要填充剩余内容时,会随机从词表中选取词元,由于广告词元数量庞大且占据统治地位,最终混入标题的多为小广告。

值得关注

  • 非隐私泄露:该现象不涉及用户隐私数据泄露,也不是OpenAI在测试广告功能。
  • 修复难度:最简便的修复方式是增加事后检查规则,对不合规标题进行拦截或重新生成,这解释了为何近期广告频率下降但仍偶有发生。
  • 治本之难:彻底解决需重制干净的词表,但这意味着整个基模需重新训练。鉴于资源投入产出比,OpenAI目前缺乏为此专门推翻重做的动机,短期内用户可能仍需面对此问题。

准备好启动您的定制项目了吗?

现在咨询,即可获得免费的业务梳理与技术架构建议方案。