Case Study

PUBG Allyは行動木と2B SLMをどう分担したか。AI NPC実装の判断軸

リアルタイム戦闘でLLMを待たない制御分離、量子化とVRAM制約、ゲーム状態の再取得、長短期記憶、非決定的出力のテストを実装順に整理する。

AI in Game DevDesync編集部

AI NPCへLLMを組み込むとき、戦闘中の移動や照準までモデルの返答待ちにしてはいけない。PUBG Allyの設計は、ゲームtickで処理する即時行動を行動木へ残し、プレイヤーの意図理解、協調、会話を2Bの小規模言語モデルへ渡した。ゲームプログラマが持ち帰るべき点は、モデル選びより先に、遅れてもよい判断と遅れを許容しにくい制御の境界を決めることである。

2026年6月25日公開のNVIDIA Technical BlogのQ&Aでは、KRAFTONのResearch LeadであるHyunseung Kim氏とProject ManagerのYujeong Son氏が実装を説明した。掲載元は共同開発先のNVIDIAで、ACEの販促導線も含む。本稿は当事者が示した構成と制約を事例として扱い、応答性や体験の評価を他タイトルへ一般化しない。また、動画表演や表情生成ではなく、ゲーム状態を読み、リアルタイムに行動する仲間AIの制御面に範囲を絞る。

導入判断で先に分ける四つの問題

  • LLMを待たずに実行する移動、照準、戦闘反応
  • 発話やゲームイベントを契機に考える意図理解と協調
  • モデルの記憶ではなく、ゲームエンジンから再取得する現在状態
  • 同じ入力でも変わり得る出力を、規約・プレイ・大規模試験で評価する方法
OFFICIAL YouTube NVIDIA GeForce — PUBG Ally Co-Playable Character Demo

表示するとYouTubeへ接続し、閲覧情報が送信される場合があります。

NVIDIA GeForce公式によるPUBG Allyの協調行動デモ。映像は機能の見え方を確認する補助資料です。NVIDIA GeForce · YouTubeで開く

System 1とSystem 2は速度だけでなく権限を分ける

PUBG Allyはプレイヤー音声と現在のゲーム状態を入力にし、発話とゲーム内行動を出力する。音声はASRで文字化され、SLMはプレイヤーの発話またはゲームイベントで起動するイベント駆動ループ上で必要な状態を観測する。発話はKRAFTON内製のTTSへ、行動はゲーム側へ渡され、行動木が実行する。ASR、SLM、TTSを含む処理はローカルで動くと説明されている。

次の表の「時間単位」「役割」「状態」は公開Q&Aの構成を整理したもの、「失敗時の扱い」「主なテスト」はその構成から導くDesync編集部の実装・検証案である。

判断軸 System 1:行動木 System 2:2B SLM
時間単位 ゲームtick。移動、照準、即時の戦闘反応を止めない 発話またはゲームイベント単位。推論完了までの揺れを受け入れる
役割 反射的な制御と、SLMが選んだ高水準行動の実行 プレイヤー意図の解釈、協調方針、自然な発話、行動意図の生成
状態 エンジン内の即時シグナルと実行条件 ASR結果と、観測ツールから必要時に取り直した平文のゲーム状態
失敗時の扱い(編集部案) 事前定義した既定行動、停止、キャンセルへ戻せる構造 期限切れ、無効な行動、古い状態をゲーム側で拒否できる構造
主なテスト(編集部案) 再現可能な状況試験、状態遷移、禁止行動、時間上限 ツール利用、意図解釈、発話と行動の整合、分布としての成功率

Q&AでKRAFTONが多くの工数を使ったと述べるのも、この境界設定である。System 2は自由にゲームを操作するのではなく、高水準の意図をゲーム側へ渡す。System 1は単なる旧式AIの残骸ではなく、応答期限と実行可能性を守る制御面になる。実装時は、モデル出力を直接キャラクターAPIへ接続せず、行動ID、対象、期限、キャンセル条件を持つ命令へ変換し、行動木側で再検証する設計が判断材料になる。これは公開構成から導く実務上の提案であり、KRAFTONが公開したAPI仕様ではない。

2B、量子化、8GBはモデル単体の数字ではない

KRAFTONはクラウドLLMも試したが、ネットワーク遅延と推論遅延の組み合わせがライブの分隊会話には遅く感じられたと説明する。そこでMistral-NeMo-Minitron-2Bを端末上で動かし、ネットワーク往復を除いた。さらにクライアント向けに量子化し、PUBGがグラフィックスにVRAMを使った後の余白へ収め、総VRAM 8GBのGPUでもPUBG Allyを動かせる構成にしたという。

ここで「2Bなら8GBで動く」と置き換えるのは危うい。公開Q&AにはGPU型番、画面解像度、画質設定、量子化方式、モデルが実際に占めるVRAM、ASRとTTSを含む総メモリ、トークン速度、端から端までの遅延分布がない。8GBはPUBG Allyの特定構成についての当事者説明であり、別ゲームの最低要件にはならない。

推論側ではKVキャッシュを使いやすくするため、固定指示と安定したゲーム文脈をなるべく変えず、各ターンでは関連するリアルタイム情報だけを更新した。これは速度だけでなく、プロンプト差分を小さくして応答時間を予測しやすくする設計である。導入試験では平均値だけでなく、戦闘負荷下の音声入力から行動受付まで、音声入力から発話開始までを別々に計測し、上位パーセンタイルとタイムアウト率を残したい。

ゲーム状態は記憶せず、必要な瞬間に再取得する

PUBG Allyは対象世界をSanhok、AI Duo、固定されたアイテム分類へ絞った。決定的なPUBG仕様を大きな教師モデルへ渡し、地名、武器、アイテム、実行可能な行動、知識検索ツールを使う条件を学習データへ落とし、端末上の生徒モデルへ蒸留したという。これは万能なゲーム知識をモデルへ期待するのではなく、扱う世界と権限を先に閉じる方法である。

変化する試合状態は別経路で扱う。Allyは自分、味方、周辺アイテム、戦闘状況などの観測ツールを呼び、エンジンが保持する値を平文で受け取る。システムプロンプトでは、このツール結果だけを現在試合の正本とし、過去ターンの記憶から答えず再観測する習慣を蒸留時にも教えた。LLMの文脈をデータベースのように扱わず、「知識」「現在状態」「実行権限」を分けた点が重要である。

一方、記憶は意図的に二層へ分けた。短期記憶は現在試合の直近発話と出来事、長期記憶は試合をまたぐ名前、好みの武器、降下地点、共有された個人情報、過去試合の結果や出来事である。現在状態の正しさには再観測を使い、継続的な関係表現には長期記憶を使う。製品化する場合は、保存対象、同意、保持期間、削除、誤記憶の訂正、アカウント共有時の分離を別の要件として決める必要があるが、Q&Aはその運用仕様を公開していない。

性能と体験の主張を読む範囲

KRAFTONはプレイテストで応答性や存在感が評価されたと説明するが、比較モデル、質問票、遅延計測値、統計処理は公開されていない。NVIDIA ACE公式ページの低遅延・小メモリという説明もベンダー自身の位置づけである。PUBG Allyの構成は設計候補として参照できるが、ACEやオンデバイス実行が他タイトルでもクラウドより良いとは、この資料だけでは判断できない。

非決定的な仲間AIは三層でテストする

KRAFTONは、期待する対話プロトコル、ツールの適切な使用、発話と行動の整合を自動評価し、候補モデルをライブのプレイテストとA/Bテストで比較した。調査票と自由記述を使い、選抜したモデルは1000人を超える実プレイヤーのフィードバックで検証したと説明する。単一の正解文と照合するのではなく、機械的な制約、実戦での比較、広い利用者評価を重ねた構成である。

それでも競技性のあるゲームでは、好感度だけで合否を決められない。導入前には次を確認したい。

  1. 制御境界:ゲームtickで完結させる行動と、SLMへ待たせる意図判断を列挙する。
  2. 権限境界:モデルが提案できる行動、行動木が拒否する条件、タイムアウト後の既定動作を定義する。
  3. 状態境界:静的知識、現在の正本、短期文脈、長期記憶を別ストアと別APIで扱う。
  4. 資源予算:最低構成と高負荷シーンで、グラフィックス、ASR、SLM、TTSのVRAMとフレーム時間を同時計測する。
  5. 遅延予算:ASR、状態取得、推論、行動受付、TTSを分解し、平均だけでなく遅い側の分布を見る。
  6. 自動評価:ツール誤用、古い状態、存在しない行動、発話と行動の矛盾、無応答、ループをシード付きで反復する。
  7. プレイ評価:勝率だけでなく、適時性、予測可能性、邪魔をしないこと、失敗からの復帰を観察する。
  8. 記憶運用:保存への同意、閲覧、訂正、削除、保持期間をUIとバックエンドの両方で確認する。

AI NPC実装で持ち帰る結論

  • 行動木はLLMの代替対象ではなく、即時制御と実行権限を守る層として残す。
  • オンデバイス化はモデル容量だけで決めず、グラフィックスと音声系を含む資源・遅延予算で判断する。
  • 現在のゲーム状態は長期記憶から推測させず、権威あるエンジン値を必要時に再取得する。
  • 非決定的な出力は、自動制約試験、A/Bプレイテスト、広い利用者評価を分けて回す。

参照した情報源

一次情報、補助報道、コミュニティ観測を役割別に表示しています。

一次情報
NVIDIA Technical Blog — Q&A: How KRAFTON Built PUBG Ally, a Co-Playable Character Powered by NVIDIA ACE

KRAFTONのResearch Lead Hyunseung Kim氏とProject Manager Yujeong Son氏への当事者Q&A本文を確認。ASR・2B SLM・内製TTSのオンデバイス構成、行動木とSLMのSystem 1/System 2分離、量子化と総VRAM 8GB構成、KVキャッシュ、閉じた対象世界、観測ツールによるゲーム状態の再取得、長短期記憶、自動評価・A/Bテスト・1000人超のプレイテストを根拠にした。NVIDIA掲載の共同プロモーションで、性能条件と評価方法の詳細が非公開である点を限界として扱った。

一次情報
KRAFTON — KRAFTON Reveals Playtest Plans for PUBG Ally, Built with NVIDIA ACE

KRAFTON公式発表本文を確認。オンデバイスSLMを使うCPCとしての位置づけ、協調・自律行動、音声対話、PUBG用語・マップ・アイテム属性、英語・韓国語・中国語対応、Arcadeでの試験計画とユーザーフィードバックによる改善方針を確認。低遅延などの表現は共同開発当事者による製品発表であり、独立した性能検証としては扱っていない。

公式資料
NVIDIA Developer — ACE for Games

NVIDIA公式ページ本文を確認。ACEが音声・知能・アニメーション向けのクラウド/オンデバイスモデル、ゲーム状態や知識と接続するGame Agent SDK、ローカル推論系を提供するというベンダー側の範囲確認に使用。低遅延・小メモリの訴求はPUBG Allyや他環境の独立評価へ一般化していない。

公式資料
NVIDIA GeForce — PUBG Ally Co-Playable Character Demo

NVIDIA GeForce公式チャンネルのPUBG Allyデモ。記事で説明する協調行動と音声対話の実際の見え方を確認する補助資料として使用し、性能や実装条件の独立検証には用いない。