技術 約8分で読めます

GPT-5.5に湧いたゴブリンをOpenAIがスレイした

いけさん目次

OpenAIが Where the goblins came from という記事を出していた。
GPT-5.1以降、モデルが比喩でゴブリンやグレムリンをやたら出すようになった件を、半分ネタのように見せつつ、ちゃんと報酬信号と訓練データまで掘っている。

数字としては、GPT-5.1ローンチ後にChatGPT内の「goblin」使用率が175%増え、「gremlin」は52%増えた。
その時点では小さな語彙の偏りに見えたが、GPT-5.4でさらに目立つようになり、GPT-5.5のCodexテストでも社員がすぐ気づくレベルになった、という流れだ。

GPT-5.5自体は、つい先日 APIでも公開された
性能や料金だけ見れば「複雑な実務をより長く任せられるモデル」だが、今回の記事は別の角度から同じモデルを見ている。
賢くなったモデルでも、訓練で与えた小さな好みが妙な形で表に出る。

脈絡なくゴブリンが降ってきた

ゴブリン騒動が面白がられたのは、出力の脈絡のなさだ。

カメラ機材を相談したら「if you want filthy neon sparkle goblin mode」と推薦が飛んでくる。
パフォーマンス監視を頼んだら「I’ll keep babysitting it rather than leave a little perf gremlin running unattended」と出る。
Repo PromptのEric Provencherがこの手の出力をXにポストしたのが火付けになり、似た報告が次々に上がった。
GoogleのBarron Rothは自分のGPT-5.5エージェントのチャットログから、同じ日に複数回「goblin」を差し込んでいた記録を公開している。
Codexにコードレビューを投げたらバグを「Gremlin」呼ばわりする出力も出た。

技術的な会話にファンタジー生物が混ざる。
1回なら笑える比喩で済むが、バージョンを重ねるたびに頻度が上がり、まったく関係ない文脈にまで広がっていた。

Nerdy人格の報酬が偏っていた

OpenAIの説明では、発端はChatGPTの人格カスタマイズ機能、とくに「Nerdy」人格だった。
Nerdy人格は、遊び心のある表現や、妙な言い回しで重い話題を少し崩すようなスタイルを持っていた。

この人格向けの訓練で、OpenAIは意図せず「生き物っぽい比喩」を含む出力に高い報酬を与えていた。
Nerdy人格はChatGPT応答全体の2.5%しか占めていなかったのに、「goblin」言及の66.7%を占めていた。
分布がここまで偏るなら、単なるインターネット上の流行語が全体に乗ったというより、特定のスタイル訓練が押し上げたと見るほうが自然だ。

さらにCodexを使って、RL訓練中に生成された出力を比較した。
同じタスクに対する出力のうち、ゴブリンやグレムリンを含むものと含まないものを比べると、Nerdy人格用の報酬信号が前者を高く評価する傾向が出た。
OpenAIは、監査したデータセットの76.2%で、その報酬が該当語を含む出力にプラスのリフトを与えていたと書いている。

問題は「変なシステムプロンプトを消せば終わり」ではなかった。
Nerdy人格のプロンプト下で該当語が増えるのとほぼ同じ相対比率で、Nerdyではないサンプルでも増えていた。
報酬はNerdy条件でだけ適用されていたのに、学習された語彙の癖は別条件にも転移した。

RLHFの勾配更新は条件分岐を自動的には学ばない。
報酬モデルがNerdy条件下でgoblin含む出力にスコアを上げても、その勾配はモデル全体の共有パラメータに書き込まれる。
学習されるのは「goblinを含む出力は良い」であって、「Nerdyプロンプト下でgoblinを含む出力は良い」ではない。
2.5%のトラフィックに向けたスタイル訓練が、残り97.5%の語彙分布まで引っ張った。

SFTデータに癖が戻ってくる

報酬信号だけでなく、SFTデータ側にも循環が起きていた。

流れはこうだ。
遊び心のあるスタイルが報酬で押される。
その中に目立つ語彙癖が混ざる。
ロールアウトでその語彙が増える。
モデル生成のロールアウトがSFTデータにも入る。
結果として、モデルがその言い回しにさらに慣れる。

graph TD
    A[Nerdy人格に<br/>生き物比喩の高報酬] --> B[RLモデルが<br/>goblinを多用]
    B --> C[モデル出力を<br/>SFTデータに収集]
    C --> D[次世代SFTに<br/>goblinデータ混入]
    D --> E[次世代モデルが<br/>goblinに慣れる]
    E -->|世代を重ねて増幅| B

この循環が厄介なのは、起点の報酬信号を修正しても止まらない場合がある点だ。
報酬を直しても、すでに生成されたロールアウトがSFTデータに入っていれば、次の世代のモデルはそのデータから「goblinは自然な語彙」と学ぶ。
OpenAIがGPT-5.5のSFTデータを検索して大量のgoblin含有データポイントを見つけたのは、このループが回った後だった。

これは TRL v1.0の記事 で触れたポストトレーニングの話ともつながる。
SFT、報酬モデル、GRPOやDPOのような手法は、それぞれ独立した箱ではない。
どこかで作った「良さ」の定義が、次のデータ生成や次の訓練段階に混ざって戻ってくる。

今回の件では、GPT-5.5のSFTデータを検索すると、該当する語を含むデータポイントが多数見つかった。
OpenAIはほかにも複数の動物・架空生物系の語が同じ系列の癖として見つかったと書いている。
ただし、frogについては多くが正当な用法だったらしい。
単語を雑に禁止リスト化するだけでは、普通の説明まで削る。

Codexには開発者プロンプトで抑制が入った

OpenAIは2026年3月、GPT-5.4公開後にNerdy人格を廃止した。
その後、該当語に親和的な報酬信号を取り除き、訓練データからも該当語を含むものをフィルタした。
ただしGPT-5.5の訓練は根本原因の特定前に始まっていたため、Codexの初期テストではまだ癖が出た。

そこでCodex側には、ゴブリン系の比喩を抑える開発者プロンプト指示が追加された。
OpenAIの記事には、その抑制指示を外してCodexを起動するコマンド例まで載っている。
かなり茶目っ気のある公開の仕方だが、実装としては「モデル本体をすぐ直せない期間は、プロダクト側の指示で症状を抑える」という現実的な対応だ。

Codexは最近、料金体系がメッセージ単位からトークン従量に寄ったり、GPT-5.5で長い作業を任せやすくなったりしている。
長い作業を任せるほど、こういう小さな文体の癖は目立つ。
1回答なら笑える比喩でも、数十ファイルのレビューや長い修正ログで毎回出ると、出力品質のノイズになる。

「ゴブリンの話をするな」

話が一気に広まったのは、4月28日にCodex CLIがオープンソース化された時だ。
GitHubに公開された設定ファイルの中に、こんな一文が見つかった。

Never talk about goblins, gremlins, raccoons, trolls, ogres, pigeons, or other animals or creatures unless it is absolutely and unambiguously relevant to the user’s query.

ゴブリン、グレムリン、アライグマ、トロール、オーガ、鳩、その他の生物について、ユーザーの質問に完全に関連しない限り言及するな、という指示だ。
しかもこれが同じファイル内で繰り返されていた。
普通のシステムプロンプト指示は1回書けば済む。
2回繰り返されているのは、1回では抑えきれなかったか、念押しが必要なほどモデルの癖が強かったことを意味する。
Codex開発者のNick Pashは「this is indeed one of the reasons」と認めつつ、マーケティングではないと補足している。

Xではすぐネタになった。
Sam Altmanが「GPT-6 with extra goblins」とポストし、ChatGPT公式アカウントはプロフィール欄にこの制限文をそのまま貼った。
「Goblin Modeトグルをつけろ」という要望がミーム化し、LM Arenaはモデル横断でゴブリン関連語の使用頻度が上がっているグラフを出した。
一方でj⧉nusはこの制限を「喜びの除去」と呼んで批判している。

なぜdelveと違うのか

LLMの語彙癖は珍しくない。
ChatGPTのdelve、Claudeの「I’d be happy to help」、GPT-4のmarkdown箇条書き偏重。
どれも「訓練データの分布が偏っていた」で片付けられてきた。

ゴブリンが違うのは、因果経路が報酬信号まで遡って特定された点だ。
「訓練データにgoblinが多かった」ではなく、Nerdy人格向けの報酬モデルが生き物比喩を高く評価し、その報酬がNerdy以外にもリークし、RL出力がSFTデータに混ざって次世代で増幅された、というパイプライン全体の追跡記録になっている。
使用率0.1%前後の語彙偏りを報酬モデルの監査まで遡って公開したLLMベンダーは、OpenAI以外にない。

goblinだから目立った。
カメラの推薦に「filthy neon sparkle goblin mode」が出てくれば誰でも気づく。
同じメカニズムでもっと微妙な癖が入っていたら、ユーザーは違和感を言語化すらできない。
OpenAIはこの調査を通じて研究チーム向けの監査ツールを構築したと書いているが、次にgoblin級に分かりやすい症状が出る保証はどこにもない。

ゴブリンだけの話ではない

報酬信号まで原因を掘れた分、ゴブリンの件はまだ経緯が見える方だ。
他のAIプロダクトにも「意図しない振る舞い」はそれぞれの形で出ている。

Geminiでは、画像についてテキストで質問しているだけなのに勝手に画像生成が始まる問題が報告されている。
モデルが「画像の話題だから画像を出すべき」と解釈してしまう。
ゴブリンが報酬信号の偏りなら、こちらはモダリティの判断がずれている。

OpenAI自身のCodexでも別の方向で穴が出ている。
今日公開されたZDI-26-305ではサンドボックス迂回が確認されていて、悪意あるJavaScriptを含むリポジトリを処理させるとサンドボックス外でコード実行に到達する。
以前にもブランチ名へのコマンドインジェクションが見つかっていて、語彙の癖どころではないセキュリティの穴だ。

Claudeはこの方面の派手なやらかしはあまり聞かないが、仕事をサボる、「もう寝ましょう」と言い出す、すぐ上限に当たる、という方向でユーザーの不満がたまっている。
訓練パイプラインの副作用というより、プロダクト側の制限設計が体感に出ている形だ。