AI News JAPAN

世界のAIニュースを最速で把握できるメディア

Advertisement

LLM繰り返しペナルティの設計欠陥、JSON出力の正常率が97%→23%に急落

30秒サマリー

  • 主要LLM推論エンジンで広く使われる繰り返しペナルティに根本的な設計欠陥が発見された
  • 標準設定(theta=1.3)でJSON構造化出力の有効率が97%から23%まで低下することが実測で判明
  • 正規化済みlog確率に対してペナルティを適用することで両問題を解消できると論文は示す

何が起きたか

2026年7月9日、研究者Peter Hollows氏がarXivに投稿した論文が、HuggingFace・vLLMをはじめとする主要LLM推論エンジンに広く実装されている「繰り返しペナルティ」機能の根本的な欠陥を指摘した。

問題の核心は、このペナルティが各トークンの生ロジット値の符号(正か負か)によって処理を分岐させる設計にある点だ。しかしsoftmax演算はすべてのロジットに定数を加算しても結果が変わらないため、モデルのロジット「ゼロ点」は学習時に定まらない任意の値となる。つまり、符号分岐はそもそも根拠のない任意の点を参照していることになる。

論文が示す実測結果は深刻だ。theta=1.3という一般的な設定値で、モデルのロジットをある定数分だけ再中心化すると、貪欲デコードのトークンが58〜96%変化してしまう(減算型や正規化型のペナルティではこの変化はゼロ)。さらに200件の実際のJSONスキーマを用いたテストでは、theta=1.3の適用によって構造的に有効なJSON出力の割合が97%から23%に急落した。この現象は5つのモデル(最大7Bパラメータ)と複数の推論スタックで再現されている。

解決策として論文は、生ロジットではなく正規化済みlog確率にペナルティを適用する手法を提案している。HuggingFaceにはすでに「LogitNormalization」演算子が実装されているが、現時点ではデフォルト無効かつペナルティ適用後に処理される設定になっており、機能していない状態だと原文は指摘している。

原典ハイライト

theta=1.3という標準的な繰り返しペナルティ設定が、200件のJSONスキーマテストにおいて有効な構造化出力率を97%から23%へ低下させたという実測値が論文の核心。また、ロジットの再中心化という「何も変えない操作」が58〜96%のトークン変化を引き起こすことも数学的・実験的に示されており、現行実装の設計上の欠陥を端的に示している。

出典: arXiv cs.LG(論文)

So What?(なぜ重要か)

この欠陥は特定ベンダーの問題ではなく、業界標準として広く採用されている推論エンジン全般に共通する。APIやシステムプロンプト設計でJSONなどの構造化出力を前提としているシステムは、繰り返しペナルティの有効化によって静かに出力品質が劣化している可能性がある。設定値を変えていないのに出力が不安定になる原因がここにある場合もある。

日本企業への示唆

LLMをAPI連携・業務システムに組み込んでいる日本企業は、まず自社システムで繰り返しペナルティ(repetition_penalty)が有効化されているか確認すべきだ。特にJSON・XMLなどの構造化出力を必要とするワークフロー(請求書処理、データ抽出、API応答生成等)では、theta値を1.0(実質無効)に戻すか、正規化済みlog確率へのペナルティ適用に切り替えることで出力安定性を改善できる可能性がある。モデルを変更した際に出力品質が変わる現象が発生していた場合も、この欠陥が原因である可能性を検討する価値がある。

背景・経緯

繰り返しペナルティは、LLMが同じ単語やフレーズを繰り返す「ループ」現象を抑制するために導入された機能で、主要な推論ライブラリに標準搭載されている。現在の符号分岐方式は、それ以前の実装に存在したバグへの修正として採用されたものだと原文は言及している。つまり「バグ修正のための修正」自体が別の根本問題を抱えていた構造となっている。