LM Warden

Aider を自分の GPU で。

OpenAI 互換プロバイダーを通じて、提供中のモデルで Aider を使います。

Aider からのリクエストの行き先 Aider は、OPENAI_API_BASE に warden を、OPENAI_API_KEY に warden のキーを設定して LM Warden にリクエストを送ります。LM Warden はキーを確認し、OpenAI Chat Completions 形式でリクエストを受け付け、キーの優先度に従ってリクエストをキューに入れ、レプリカ ルーターに渡します。ルーターは各セッションを、そのキャッシュをすでに保持しているレプリカ (GPU ごとに一つ置かれたモデルのコピー) に留めます。 Aider OPENAI_API_BASE the warden, at /v1 OPENAI_API_KEY vw_…, the warden key POST /v1/chat/completions LM Warden checks the key: one per app speaks OpenAI Chat Completions scheduler, key priority usage, latency and live stats per key Replica router a session goes back to the replica that holds its cache one model copy per GPU your GPUs: vLLM or llama.cpp replica 0, GPU 0 replica 1, GPU 1 replica 2, GPU 2 a conversation stays on its replica
Aider からのリクエストの行き先 Aider は、OPENAI_API_BASE に warden を、OPENAI_API_KEY に warden のキーを設定して LM Warden にリクエストを送ります。LM Warden はキーを確認し、OpenAI Chat Completions 形式でリクエストを受け付け、キーの優先度に従ってリクエストをキューに入れ、レプリカ ルーターに渡します。ルーターは各セッションを、そのキャッシュをすでに保持しているレプリカ (GPU ごとに一つ置かれたモデルのコピー) に留めます。 Aider OPENAI_API_BASE the warden, at /v1 OPENAI_API_KEY vw_…, the warden key POST /v1/chat/completions LM Warden checks the key: one per app speaks OpenAI Chat Completions scheduler, key priority usage, latency, live stats per key Replica router a session goes back to the replica that holds its cache replica 0 GPU 0 replica 1 GPU 1 replica 2 GPU 2 your GPUs: vLLM or llama.cpp a conversation stays on its replica
Aider からのリクエストの行き先:Connect が書き込む二つの設定、中央に warden、その先に GPU ごとに一つのモデルのコピー。

テキストによる説明: Aider は、OPENAI_API_BASE に warden を、OPENAI_API_KEY に warden のキーを設定して LM Warden にリクエストを送ります。LM Warden はキーを確認し、OpenAI Chat Completions 形式でリクエストを受け付け、キーの優先度に従ってリクエストをキューに入れ、レプリカ ルーターに渡します。ルーターは各セッションを、そのキャッシュをすでに保持しているレプリカ (GPU ごとに一つ置かれたモデルのコピー) に留めます。

プロトコル
OpenAI Chat Completions
サポート
ローカル モデルのみ

ローカル モデルのみで、Chat Completions を使います。Aider はテキスト形式で編集するので、モデルにツール呼び出しは不要です。メタデータ ファイルは、Aider が不明なモデルについて警告するのを止め、コンテキスト サイズを設定するだけです。

要件

  • 32,768 トークン以上のコンテキストで最もよく動きます。

セットアップ

コンソールでは、Connect が warden のアドレス、キー、選んだモデルを入れてこれらのファイルを書き出します。ここではプレースホルダーを使って示しています。

ローカル モデル

Aider の OpenAI プロバイダーの接続先をこの warden に設定します。

シェル
export OPENAI_API_BASE=https://your-warden/v1
export OPENAI_API_KEY=vw_YOUR_KEY
aider --model openai/your-served-model-name
.aider.model.metadata.json (.aider.model.metadata.json)
{
  "openai/your-served-model-name": {
    "max_input_tokens": 32768,
    "max_output_tokens": 8192,
    "max_tokens": 8192,
    "input_cost_per_token": 0,
    "output_cost_per_token": 0,
    "litellm_provider": "openai",
    "mode": "chat"
  }
}
起動ごとのセッション ID (省略可)
# Run this instead of `aider ...`: it writes a fresh session id per launch.
SID=$(python3 -c 'import uuid; print(uuid.uuid4())')
cat > .aider.model.settings.yml <<EOF
- name: openai/your-served-model-name
  extra_params:
    extra_headers:
      X-Session-Id: $SID
EOF
aider --model openai/your-served-model-name

公式ドキュメント:https://aider.chat/docs/llms/openai-compat.html (2026-10-04 時点)。