Communitygithub.com

LocalContextRouter

ドキュメントの各ページをテキスト、OCR、画像のいずれでマルチモーダルモデルに送るかを事前に判断するルーターです。ビジョントークンのコストを削減します。macOS対応。

LocalContextRouter とは?

LocalContextRouterは、マルチモーダルAIモデルにPDFを処理させる前に、各ページの内容を分析して最適な処理方法を自動選択するプリフライトツールです。テキスト主体のページはそのままテキストとして、画像のみのページはオンデバイスOCRでテキスト化し、表やグラフを含むページのみ画像としてモデルに送ることで、不要なビジョントークンの消費を大幅に削減します。macOS上でローカルに完全オフライン動作し、ドキュメントが外部に漏れることはありません。出力はJSON形式で、節約されたトークン数とページごとの処理方法が得られるため、コストを気にするユーザーや大量のPDFを処理するワークフローに特に有効です。

対応~Claude Code~Codex CLI~Cursor
npx skills add sid732/LocalContextRouter

お気に入りのAIに質問する

このエージェントスキルを事前に読み込んだ状態で新しいチャットを開きます。

ドキュメント

Local Context Router

マルチモーダルモデルがPDFを読むとき、テキストを抽出すると同時にすべてのページを画像にレンダリングし、両方に対して料金が発生します。散文が大半のページでは画像は無駄なコストです。このプリフライトを先に実行し、各ページに必要な情報だけをモデルに送りましょう。

使用するタイミング

ユーザーが共有したPDF、スキャン、スクリーンショットを読む前、要約する前、または抽出する前に使用します。

必要条件

localcontextrouter パッケージがインストールされている必要があります(pip install localcontextrouter、macOS)。これにより、以下のコマンドで使用する localctx コマンドが提供されます。

実行

ドキュメントをルーティングし、JSONを読み取り、ビジュアルページをフォルダにレンダリングします:

localctx <path-to-document> --json --vision-dir ./lcr-pages

localctx コマンドが利用できない場合は、localcontextrouter がインストールされたPythonでバンドルされたスクリプトを実行します(スクリプトは同じパッケージをインポートします):

python scripts/preflight.py <path-to-document> --json --vision-dir ./lcr-pages

結果の活用

JSONには tokens_saved と pages 配列が含まれます。各ページには source、text、text_tokens、image_tokens、image が含まれます:

  • source: "text": text を直接使用します。画像は添付しないでください。
  • source: "ocr": ページが画像のみで、オンデバイスでOCR処理済みです。text を使用します。
  • source: "vision": ページは表、グラフ、または図です。image の画像を添付してモデルが読み取れるようにします。text はあくまで大まかなフォールバックです。

テキストページとOCRページを読み取り順に組み立て、ビジョンページにのみ画像を添付し、ユーザーがコストを気にする場合は tokens_saved を伝えます。

注意事項

すべてローカルかつオフラインで実行されます。ドキュメントはマシンの外部に出ることはありません。

関連スキル