LM Warden

Aider sur vos propres GPU.

Aider sur un modèle servi via son fournisseur compatible OpenAI.

Où va une requête envoyée par Aider Aider envoie ses requêtes à LM Warden : OPENAI_API_BASE pointe vers le warden et OPENAI_API_KEY contient une clé du warden. LM Warden vérifie la clé, interprète la requête au format OpenAI Chat Completions, la place en file d’attente selon la priorité de la clé, puis la confie au routeur de réplicas, qui maintient chaque session sur le réplica détenant déjà son cache (une copie du modèle par 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
Où va une requête envoyée par Aider Aider envoie ses requêtes à LM Warden : OPENAI_API_BASE pointe vers le warden et OPENAI_API_KEY contient une clé du warden. LM Warden vérifie la clé, interprète la requête au format OpenAI Chat Completions, la place en file d’attente selon la priorité de la clé, puis la confie au routeur de réplicas, qui maintient chaque session sur le réplica détenant déjà son cache (une copie du modèle par 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
Où va une requête envoyée par Aider : les deux paramètres que génère Connect, le warden au centre, puis une copie du modèle par GPU.

En clair : Aider envoie ses requêtes à LM Warden : OPENAI_API_BASE pointe vers le warden et OPENAI_API_KEY contient une clé du warden. LM Warden vérifie la clé, interprète la requête au format OpenAI Chat Completions, la place en file d’attente selon la priorité de la clé, puis la confie au routeur de réplicas, qui maintient chaque session sur le réplica détenant déjà son cache (une copie du modèle par GPU).

Protocole
OpenAI Chat Completions
Prise en charge
Modèles locaux uniquement

Modèles locaux uniquement, via Chat Completions. Aider modifie le code au moyen de formats texte : le modèle n’a donc pas besoin d’appel d’outils. Le fichier de métadonnées sert uniquement à éviter qu’Aider signale un modèle inconnu et à définir sa taille de contexte.

Prérequis

  • Fonctionne au mieux avec au moins 32 768 jetons de contexte.

Configuration

Dans la console, Connect génère ces fichiers avec l’adresse de votre warden, votre clé et le modèle choisi. Ils sont présentés ici avec des valeurs fictives.

Modèles locaux

Faites pointer le fournisseur OpenAI d’Aider vers ce warden.

Shell
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 de session par lancement (facultatif)
# 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

Documentation officielle : https://aider.chat/docs/llms/openai-compat.html (consultée le 2026-10-04).