mostlygeek/llama-swap
Reliable model swapping for any local OpenAI/Anthropic compatible server - llama.cpp, vllm, etc
解決する課題
複数の生成AIモデルをローカルで実行する場合、多くの場合、異なる推論サーバーを手動で起動・停止する必要があり、手間がかかる上にリソースを浪費します。このプロジェクトはこれらのサーバー管理を自動化し、さまざまなモデル(LLM、画像生成、音声処理など)を必要に応じて実行し、手動介入なしでホットスワップできるようにします。
仕組み
これは、ローカルの推論サーバー(llama.cpp、vllm、ComfyUIなど)の前に配置される、Goベースの軽量なリバースプロキシとして機能します。特定のモデルにAPIリクエストを送信すると、ツールがリクエストされたモデルIDを検出し、対応するサーバーがまだ実行されていない場合は自動的にロードしてリクエストをルーティングします。OpenAIおよびAnthropic API互換のエンドポイントをサポートしているため、既存のAIツールやワークフローとシームレスに統合できます。
対象ユーザー
独自のハードウェアで複数のローカルAIモデルを実行しており、プロセスを手動で管理することなく、推論スタックを管理するための統一された自動化インターフェースを求める開発者やパワーユーザー向けに設計されています。
主な特徴
- 自動モデル切り替え: 受信したAPIリクエストに基づいて、モデルを動的にロードおよびアンロードします。
- 幅広い互換性: OpenAIおよびAnthropic APIエンドポイントをサポートし、さらにllama.cpp、Stable Diffusion、音声処理サーバーへの特化したサポートも提供します。
- リソース管理: TTLベースの自動アンロード、同時モデルマトリックス、カスタムリクエストフィルタリングなどの機能を備えています。
- 組み込みモニタリング: テスト、リアルタイムログストリーミング、詳細なトークン/システムメトリクスを確認できるWeb UIを提供します。
- 簡単なデプロイ: 最小限の構成で単一のバイナリとして配布され、さまざまなGPUバックエンド向けの統合Dockerイメージとしても利用可能です。
関連
- Dispatch
- プロジェクト
- プロジェクト
- プロジェクト