コンテンツにスキップ
OmniRoute source

Compression Engines (日本語)

圧縮コンボは、ルーティングコンボに割り当てられる名前付き圧縮プロファイルです。

  • compression_combos: モード、パイプライン、RTK 設定、言語設定、およびデフォルトマーカーを保存
  • compression_combo_assignments: 圧縮コンボをルーティングコンボにマッピング
  • ランタイム統合では、汎用コンボのオーバーライドより先に、割り当てられた圧縮コンボを解決
  • 分析には compression_combo_id と engine を含む

ダッシュボード上の場所: Dashboard -> Context & Cache -> Compression Combos。

ルート 目的
/api/settings/compression グローバル圧縮設定(mcpAccessibility 設定を含む)
/api/compression/preview 任意の圧縮モードをプレビュー
/api/compression/language-packs 利用可能な Caveman 言語パックを一覧表示
/api/context/caveman/config Caveman 設定のエイリアス
/api/context/rtk/config RTK のデフォルト値と設定
/api/context/rtk/filters RTK フィルターカタログ
/api/context/rtk/test RTK プレビュー/テストエンドポイント
/api/context/rtk/raw-output/[id] 認証済みの秘匿化済み生出力の復元
/api/context/combos 圧縮コンボの CRUD
/api/context/combos/[id]/assignments ルーティングコンボ割り当ての CRUD
/api/context/analytics 圧縮分析のエイリアス

管理ルートには、管理者認証または API キーポリシーのチェックが必要です。

圧縮機能では、5 つの MCP ツールを公開しています。

ツール スコープ 目的
omniroute_compression_status read:compression 設定、分析、キャッシュ統計
omniroute_compression_configure write:compression グローバル設定を更新
omniroute_set_compression_engine write:compression モードと任意のパイプラインを設定
omniroute_list_compression_combos read:compression 圧縮コンボを一覧表示
omniroute_compression_combo_stats read:compression コンボ/エンジン分析を取得

埋め込みは圧縮されません。 open-sse/handlers/embeddings.ts は、いかなる圧縮エンジンも呼び出しません。リクエスト/レスポンス本文は変更されることなく、そのままエグゼキューターに渡されます。現時点では、これはランタイムチェックではなく構造上の保証です(埋め込みとチャット補完は別個のハンドラーで処理されます)。したがって、#8034 のベクトル歪みに関する懸念が埋め込みパスに影響する余地はありません。

モデル/エンドポイント単位の除外フィルター(#8034)。 チャット補完では、オペレーターは圧縮対象から常に除外するモデル ID/provider/model ターゲットを指定できます。これは、将来的に圧縮処理が埋め込みに隣接するパスの近くに組み込まれた場合に有用なガードレールであり、バイト単位で完全に同一のプロンプトが重要となるモデル(決定論的評価、キャッシュ依存のプレフィックスなど)にも一般的に役立ちます。

  • 設定フィールド: グローバル圧縮設定の exclusions?: string[] (GET/PUT /api/settings/compression)。既存の key_value 圧縮 名前空間(src/lib/db/compression.ts)を介して永続化されます。新しいテーブルは追加されません。
  • ダッシュボードタブ: Dashboard → Compression → Exclusions (/dashboard/compression/exclusions)。
  • パターン構文: ワイルドカードは * のみです。パターン内のその他すべての正規表現メタ文字は マッチング前にエスケープされるため、gpt-5.6 はリテラル文字列のみに一致し、gpt-5x6 には一致しません(ReDoS に対して安全で、処理量が有界であり、ネストした量指定子はありません)。パターンは、大文字と小文字を区別せずに モデル ID 単体と provider/model の複合表現の両方に対して照合されます。gpt-5-6、openai/gpt-5-6、 openai/* はすべて機能し、* のみを指定するとすべてのモデルが除外されます。
  • マッチング: open-sse/services/compression/exclusions.ts 内の isCompressionExcluded() / normalizeCompressionExclusions()。chatCore.ts は圧縮設定を解決した直後、 いずれのエンジンも実行される前に除外対象をチェックし、一致した場合は 圧縮がグローバルに無効化されている場合とまったく同様に扱います。そのため、リクエスト本文は バイト単位で同一であることが保証されます。スキップは分析で確認できるよう、 writeCompressionSkip(..., "excluded") によって記録されます。
  • デフォルト(リストが空または未指定): #8034 より前の動作と同一で、何も除外されません。
  • LLMLingua-2 (SLM) には、同じ場所に配置されたオプション依存関係が必要です。 ワーカーがプロダクションビルドで動作するには、@atjsh/llmlingua-2 とその peer 依存関係が dist/node_modules に同じ場所で配置されている必要があります(scripts/build/colocateOptionals.mjs、#4286 を参照)。これらがない場合、エンジンはフェイルオープンします(元のテキストを返します)。ワーカーの解決は import.meta.url に依存しなくなりました(スタンドアロンバンドルでは機能しないため)。代わりに、ランタイムの cwd / argv[1] を基準にします。
  • Caveman の言語パック de / fr / ja は部分的です。 これらには context + filler + structural ルールが含まれていますが、dedup / ultra パックは含まれていません。そのため、これらの言語では ultra 強度は full より強くありません(各言語固有のルールのみを使用します。外国語テキストを壊してしまう英語の dedup/ultra ルールへの暗黙的なフォールバックはありません)。en / es / id / pt-BR は完全です。部分的なパック向けの dedup.json + ultra.json のコントリビューションを歓迎します。
  • スタック型テレメトリには、圧縮を行ったエンジンのみが一覧表示されます。 エンジンは実行されたものの削減率が 0 % だったスタック型パイプラインのステップは stats:null を返すため、engineBreakdown には表示されません。このため、スキップされたステップと区別できません。「実行済み、0 %」と「スキップ済み」を区別するには内訳モデルの変更が必要となるため、対応は延期されています。

この領域の主要なゲートは以下の通りです。

ターミナルウィンドウ
node --import tsx/esm --test tests/unit/compression/rtk-*.test.ts tests/unit/compression/pipeline-integration.test.ts tests/unit/compression/context-compression-api.test.ts
node --import tsx/esm --test tests/unit/compression/*.test.ts tests/golden-set/*.test.ts tests/integration/compression-pipeline.test.ts tests/unit/api/compression/compression-api.test.ts
node --import tsx/esm --test tests/unit/compression/mcpAccessibility*.test.ts
npm run typecheck:core

OmniRoute ソースコード (a58000c7685f)

HagiCode

HagiCode は構造化ワークフロー、マルチエージェント実行、Hero Dungeon ビューを備えたエージェント型コーディングワークスペースです。

よりスマートで速く、楽しいエージェント型ワークフローで、使いやすいソフトウェアを形にします。

HagiCode ライトテーマのメイン画面
  • Smart構造化ワークフローは意図をアイデアから変更のリリースまで実行可能な道筋にします。
  • Efficientマルチエージェントのワークフローで調査、実装、レビューを並行して進めます。
  • FunHero Dungeon により長時間のコーディングを視覚的で協力的な体験にします。
HagiCode を見る