TheoLeeCJ/SemIf-OpenJev
Semantic ifs from open models, on a 3090 at home. Independent; not affiliated with Jev or TypeSafe.
何を解決するか
SemIf は、完全なテキスト応答を生成するオーバーヘッドなしに、オープンソースの LLM を使って高速かつ型付きの判断を行う方法を提供します。モデルが文や JSON オブジェクトを生成してソフトウェアがその解析を行う必要がなくなるため、リクエストのルーティングやタスクの再試行など、小さな判断を繰り返すエージェントワークフローの遅延を大幅に削減できます。
動作方法
自己回帰的にトークンをサンプリングするのではなく、SemIf はモデルの出力層から特定の型付きオプションの確率(logits)を1回のフォワードパスで直接読み取ります。
主な技術的特徴:
- 実行時定義の基準:判断基準とオプションはリクエストと共に提供されます。
- 共有状態の認識:長文のコンテキスト(状態)を一度だけ事前読み込みし、複数の異なる判断基準を並列で分岐処理できるため、スループットが大幅に向上します。
- マルチバックエンド対応:PyTorch、Apple Silicon(MLX/MPS)、および llama.cpp を通じた CPU 動作をサポートしています。
- 温度補正:各ワークロードに応じた温度スケーリングを実装しており、モデルの信頼度(確率)が実際の精度と一致するようにします。
対象ユーザー
構造化されたオプションに基づいて、高速で信頼性が高く、監査可能な意味的判断を必要とする AI エージェントや自動化ワークフローを開発する開発者。
主な特徴
- 高速性:コンパクトな JSON 配列の生成よりも、直接 logits を読み取る方法は最大 5.21 倍高速です。
- オープンソースの代替:Jev などの閉鎖型サービスのインターフェースパターンを再現しています。
- 効率的な状態再利用:シリアルプレフィックスの再利用と並列サフィックス処理をサポートし、同じ状態上で複数の判断を効率的に処理できます。
- ブラウザ対応:待機リストなしで即座にテスト可能な WebGPU デモを含んでいます。
関連
- プロジェクト
- プロジェクト
- プロジェクト
- プロジェクト