Repolode
microsoft

microsoft/LLMLingua

Microsoft製のPythonライブラリ。重要度の低いトークンを取り除き、性能をほぼ維持しながらLLMのプロンプトとKV cacheを最大20倍圧縮します。

スター
6,767
フォーク
444
未解決の Issue
125
最終コミット
先月

これは何?

LLMLinguaは、Microsoft Researchが開発した大規模言語モデル向けのプロンプト圧縮ツールキットです。小規模な学習済み言語モデルを使って意味への寄与が小さいトークンを見つけて削除することで、重要な情報を保ったまま長いプロンプトを短縮します。性能への影響を最小限に抑えつつ最大20倍の圧縮を実現するとしており、推論を高速化するKV cacheの圧縮にも対応しています。

このリポジトリには複数の手法が含まれています。LLMLinguaは初期の手法で、LongLLMLinguaは長文コンテキストや検索拡張(RAG)の用途に向けて開発され、情報が中間部分で見落とされる問題に対処します。LLMLingua-2はBERTレベルのエンコーダーを用いたタスク非依存のトークン分類器です。また、脱獄の意図を検出するSecurityLinguaも含まれています。構造化プロンプト圧縮では、プロンプト内の各セクションにタグを付け、それぞれ異なる圧縮率を指定できます。

pipでPythonパッケージをインストールし、compress_promptメソッドやstructured_compress_promptメソッドを備えたPromptCompressorクラスを使って利用します。Prompt flow、LangChain、LlamaIndexとの統合も済んでいます。

主な機能

  • 01重要度の低いトークンをプロンプトから取り除いて短縮し、最大20倍の圧縮を実現します。
  • 02KV cacheを圧縮し、LLMの推論を高速化します。
  • 03長文コンテキストやRAGプロンプト向けにLongLLMLinguaを提供します。
  • 04BERTレベルのエンコーダーを基盤とする、より高速なタスク非依存の圧縮器LLMLingua-2を提供します。
  • 05タグを使ってセクションごとに圧縮率を指定する構造化圧縮に対応します。
  • 06pipでインストールでき、Pythonから利用できます。

ユースケース

  • RAGパイプラインで、長い文書や検索した文章を限られたLLMのコンテキストウィンドウに収める。
  • GPT-4などのモデルに長いプロンプトを送るアプリケーションで、APIコストを削減する。
  • 推論内容を保ちながら、chain-of-thoughtやfew-shotの例を圧縮する。
  • SecurityLinguaモデルを使い、ユーザープロンプトに含まれる脱獄の意図を検出する。

クイックスタート

  1. 1

    PyPIからLLMLinguaをインストールする

    pip install llmlingua
  2. 2

    PromptCompressorをインポートし、デフォルトのモデルでプロンプトを圧縮する

使う前に知っておきたいこと

  • 圧縮品質は選択したモデルによって異なり、十分な速度を得るにはGPUが必要なモデルもあります。
  • 量子化モデルなど、一部のモデルオプションではoptimumやauto-gptqなどの追加パッケージが必要です。

トピック

よくある質問

LLMLingua とは?
Microsoft製のPythonライブラリ。重要度の低いトークンを取り除き、性能をほぼ維持しながらLLMのプロンプトとKV cacheを最大20倍圧縮します。 LLMLinguaは、Microsoft Researchが開発した大規模言語モデル向けのプロンプト圧縮ツールキットです。小規模な学習済み言語モデルを使って意味への寄与が小さいトークンを見つけて削除することで、重要な情報を保ったまま長いプロンプトを短縮します。性能への影響を最小限に抑えつつ最大20倍の圧縮を実現するとしており、推論を高速化するKV cacheの圧縮にも対応しています。
LLMLingua は無料で使えますか?ライセンスは?
LLMLingua は MIT ライセンスのオープンソースです。商用製品で使う前にライセンス条件を確認してください。
LLMLingua は今もメンテナンスされていますか?
半年以内に更新あり。LLMLingua の最終コミットは 2026年9月10日 です。
LLMLingua は何に使えますか?
RAGパイプラインで、長い文書や検索した文章を限られたLLMのコンテキストウィンドウに収める。 GPT-4などのモデルに長いプロンプトを送るアプリケーションで、APIコストを削減する。 推論内容を保ちながら、chain-of-thoughtやfew-shotの例を圧縮する。 SecurityLinguaモデルを使い、ユーザープロンプトに含まれる脱獄の意図を検出する。
LLMLingua のインストール方法は?
PyPIからLLMLinguaをインストールする: pip install llmlingua PromptCompressorをインポートし、デフォルトのモデルでプロンプトを圧縮する
LLMLingua はどこで入手できますか?
ソースコードとインストール手順は GitHub にあります:https://github.com/microsoft/LLMLingua

概要はプロジェクトの README をもとに AI が生成しています。GitHub の数値は毎日更新されます。

関連プロジェクト