AI・機械学習
上級
プロンプト圧縮(LLM)(プロンプトアッシュク)
LLMのコンテキスト長とコストを削減するため入力プロンプトを意味を保ちつつ短縮する技術。LLMLingua・AutoCompress等が代表実装。
0 回閲覧
0 いいね
2026/6/6 更新
関連タグ
LLM
プロンプト最適化
コスト削減
LLMLingua
コンテキスト圧縮
プロンプト圧縮(LLM)とは
プロンプト圧縮(Prompt Compression)はLLMに送信する前に入力プロンプトをクライアント側で短縮し、APIコストとレイテンシを削減しながら意味的な情報損失を最小化する技術群の総称。2024〜2025年にかけて実用化が進んだLLM最適化の重要分野。
主要アプローチと実装
トークン重要度スコアリング(LLMLingua系)
LLMLingua(Microsoft Research, 2023): 小規模なLM(Phi-2等)で各トークンのperplexityを計算し、高perplexity(情報密度が高い)トークンを優先的に残す。最大20xの圧縮率。
LLMLingua-2(2024): トークン分類タスクとして圧縮を再定式化。速度を大幅改善(LLMLingua比6倍高速)。RAGコンテキストの圧縮に特に有効。
from llmlingua import PromptCompressor
compressor = PromptCompressor()
result = compressor.compress_prompt(
context,
ratio=0.5, # 50%圧縮
question=query
)
要約トークン変換(AutoCompress系)
AutoCompress(2023): 長文テキストをfine-tunedエンコーダーで固定長の「メモリトークン」に変換し、元のテキスト代わりにLLMに入力する。
ICAE(2024): In-context Autoencoder。テキストをコンパクトな潜在ベクトルに符号化。
圧縮率と精度のトレードオフ
| 圧縮率 | 精度維持率(目安) | 推奨ユースケース |
|---|---|---|
| 2x | 95〜98% | 高精度要件 |
| 5x | 88〜93% | 一般RAG |
| 10x | 78〜85% | コスト優先 |
| 20x | 65〜75% | 概要把握のみ |
実装上の考慮点
タスク適合性: 要約・QA系タスクでは効果的。コード生成・数式・固有名詞が多いタスクでは精度低下が大きい。
言語対応: 英語中心。日本語は2025年時点でLLMLingua-2が部分対応。
圧縮コスト: 小規模モデルでの事前処理コストが発生する。大量リクエストで償却。
プロンプトキャッシングとの組み合わせ: 圧縮後プロンプトをキャッシュすることでダブルの削減効果。
プロンプトキャッシングとの使い分け
- プロンプト圧縮: 毎回内容が変わる動的コンテキスト(検索結果・ユーザー入力)に有効
- プロンプトキャッシング: 静的なシステムプロンプト・固定ドキュメントに有効
- 組み合わせ: 固定部はキャッシング、動的部は圧縮で最大削減