SomeOddCodeGuy/WilmerAI
WilmerAI is one of the oldest LLM semantic routers. It uses multi-layer prompt routing and complex workflows to allow you to not only create practical chatbots, but to extend any kind of application that connects to an LLM via REST API. Wilmer sits between your app and your many LLM APIs, so that you can manipulate prompts as needed.
何を解決するか
WilmerAIは、単純なキーワードベースのプロンプトルーティングを越える方法を提供します。LLMがリクエストを処理する適切な専門モデルやツールを判断する際に文脈を欠いている問題、およびしばしば低品質な結果をもたらすワンショット応答の制限を解決します。
動作方法
WilmerAIの核となるのは、ノードベースのワークフローエンジンです。JSONファイルを使って、複数のLLMをオーケストレーションしたり、外部ツールを呼び出したり、カスタムスクリプトを実行するためのステップ(ノード)のシーケンスを定義します。
主なメカニズムは以下の通りです:
- 文脈に基づくルーティング:会話履歴全体を分析し、正しい専門的なワークフロー(例:"コーディング" または "クリエイティブ")にプロンプトをルーティングします。
- マルチLLMオーケストレーション:単一のワークフロー内で異なるノードが異なるLLMエンドポイント(ローカルまたはクラウド)に接続でき、各サブタスクに最適なモデルを使用できます。
- 状態保持メモリ:時系列要約、ローリング要約、ベクトルデータベース、ステートドキュメントの4つの部分からなるメモリシステムを採用し、長期的な会話文脈を維持します。
- APIゲートウェイ:OpenAIおよびOllama互換のエンドポイントを公開し、既存のフロントエンドツール(例:Open WebUIやSillyTavern)のバックエンドとして動作できます。
対象ユーザー
LLMのオーケストレーション方法を細かく制御したいユーザー、異なるハードウェア上で複数のローカルLLMを運用しているユーザー、完全に自律的で予測不能なエージェントに依存せずに、複雑で準自律的なエージェントを構築したい開発者向けに設計されています。
特徴
- ノードベースのワークフロー:複雑なタスクをJSONで定義された再利用可能で連鎖的な思考プロセスに分解します。
- 高度なルーティング:初期プロンプトルーティングおよびワークフロー内の条件付き「if/then」ロジックに、完全な会話履歴を使用します。
- 分散型LLMサポート:異なるモデルサイズを実行する複数のコンピュータにタスクを分散できます。
- プライバシー最優先:ローカルデプロイを想定しており、会話ファイルのFernet暗号化やログにおけるリクエストのマスキングのオプションを提供します。
- ツール統合:OpenAI風のツール呼び出しと、実験的なエージェント向けMCP(Model Context Protocol)サーバーのツール呼び出しをサポートします。
関連
- プロジェクト
- Dispatch
- プロジェクト
- プロジェクト
- プロジェクト