# 動的精度切り替え ## 定義 動的精度切り替えとは、LLM 推論エンジンがモデルの確信度やハードウェアの資源圧に応じて、FP16/BF16・FP8・FP4 などの数値精度を実行時に選択する技法である。目的は、品質劣化を許容範囲に収めながらスループットを最大化することにある。ソフトマックス分布のシャノンエントロピーや logit margin(最大確率と次点との差)を確信度シグナルとして用い、確信度が高い(エントロピーが低い)ときは低精度、確信度が低いときは高精度へ切り替える。層単位・トークン単位のいずれの粒度でも適用でき、ヒステリシス(enter/exit で異なる閾値)を導入することで精度のフラッピング(頻繁な往復)を防ぐ。(Source: [[@2025__OReilly__AI Systems Performance Engineering - Chapter 19 Dynamic and Adaptive Inference Engine Optimizations]] §Dynamic Precision Changes) ## 横断的知見 - (今後、他ソースとの突き合わせで蓄積する。現時点では単一ソースのみのため空。) ## 未解決の問い - FP8/FP4 の動的切り替えにおける確信度シグナル(エントロピー・logit margin)の閾値は、モデルサイズ・タスク種別(推論チェーンを持つ「thinking」モデル対通常のチャットモデル)でどの程度移植可能か。書籍は「held-out validation set で校正する」と述べるにとどまる。 - 動的精度切り替えを、[[並列化戦略]]の実行時アダプティブ並列化切り替え(第19章 "Adaptive Parallelism Strategies")や KV キャッシュの動的量子化ポリシー(→ [[KVキャッシュ量子化]])と同一の意思決定ループ(RL エージェント等)へ統合した場合、精度・並列化・キャッシュ圧縮という 3 つの行動空間の相互作用はどう扱うべきか。 - PyTorch AMP が FP8/FP4 をネイティブサポートしない現状(Transformer Engine 依存)は、フレームワークの進化でどの程度解消されるか。TE 非依存で動的精度切り替えを実装する現実的な代替経路はあるか。 ## 関連 - 概念: [[KVキャッシュ量子化]] / [[並列化戦略]] / [[カーネルオートチューニング]] - ソース: [[@2025__OReilly__AI Systems Performance Engineering - Chapter 19 Dynamic and Adaptive Inference Engine Optimizations]] - エンティティ: [[wiki/entities/AI Systems Performance Engineering|AI Systems Performance Engineering]] ## 出典 - [[@2025__OReilly__AI Systems Performance Engineering - Chapter 19 Dynamic and Adaptive Inference Engine Optimizations]](§Dynamic Precision Changes: エントロピーに基づく確信度シグナル、ヒステリシス付きトークン単位精度切り替えの実装例、Table 19-2 の精度別スループット比較)