Passer au contenu principal

vLLM

vLLM peut servir des modèles open source (et certains modèles personnalisés) via une API HTTP compatible OpenAI. OpenClaw se connecte à vLLM à l’aide de l’API openai-completions. OpenClaw peut aussi détecter automatiquement les modèles disponibles depuis vLLM lorsque vous l’activez avec VLLM_API_KEY (n’importe quelle valeur fonctionne si votre serveur n’impose pas d’authentification) et que vous ne définissez pas d’entrée explicite models.providers.vllm.
PropriétéValeur
ID du fournisseurvllm
APIopenai-completions (compatible OpenAI)
Authentificationvariable d’environnement VLLM_API_KEY
URL de base par défauthttp://127.0.0.1:8000/v1

Premiers pas

1

Démarrer vLLM avec un serveur compatible OpenAI

Votre URL de base doit exposer des points de terminaison /v1 (par ex. /v1/models, /v1/chat/completions). vLLM s’exécute généralement sur :
http://127.0.0.1:8000/v1
2

Définir la variable d’environnement de clé API

N’importe quelle valeur fonctionne si votre serveur n’impose pas d’authentification :
export VLLM_API_KEY="vllm-local"
3

Sélectionner un modèle

Remplacez par l’un des ID de modèle de votre vLLM :
{
  agents: {
    defaults: {
      model: { primary: "vllm/your-model-id" },
    },
  },
}
4

Vérifier que le modèle est disponible

openclaw models list --provider vllm

Détection de modèles (fournisseur implicite)

Lorsque VLLM_API_KEY est défini (ou qu’un profil d’authentification existe) et que vous ne définissez pas models.providers.vllm, OpenClaw interroge :
GET http://127.0.0.1:8000/v1/models
et convertit les ID retournés en entrées de modèle.
Si vous définissez explicitement models.providers.vllm, la détection automatique est ignorée et vous devez définir les modèles manuellement.

Configuration explicite (modèles manuels)

Utilisez une configuration explicite lorsque :
  • vLLM s’exécute sur un hôte ou un port différent
  • Vous voulez épingler les valeurs contextWindow ou maxTokens
  • Votre serveur exige une vraie clé API (ou vous voulez contrôler les en-têtes)
{
  models: {
    providers: {
      vllm: {
        baseUrl: "http://127.0.0.1:8000/v1",
        apiKey: "${VLLM_API_KEY}",
        api: "openai-completions",
        models: [
          {
            id: "your-model-id",
            name: "Modèle vLLM local",
            reasoning: false,
            input: ["text"],
            cost: { input: 0, output: 0, cacheRead: 0, cacheWrite: 0 },
            contextWindow: 128000,
            maxTokens: 8192,
          },
        ],
      },
    },
  },
}

Notes avancées

vLLM est traité comme un backend /v1 compatible OpenAI de type proxy, et non comme un point de terminaison OpenAI natif. Cela signifie :
ComportementAppliqué ?
Mise en forme native des requêtes OpenAINon
service_tierNon envoyé
store de ResponsesNon envoyé
Indications de cache de promptNon envoyées
Mise en forme de charge utile de compatibilité du raisonnement OpenAINon appliquée
En-têtes d’attribution OpenClaw cachésNon injectés sur les URL de base personnalisées
Si votre serveur vLLM s’exécute sur un hôte ou un port non par défaut, définissez baseUrl dans la configuration explicite du fournisseur :
{
  models: {
    providers: {
      vllm: {
        baseUrl: "http://192.168.1.50:9000/v1",
        apiKey: "${VLLM_API_KEY}",
        api: "openai-completions",
        models: [
          {
            id: "my-custom-model",
            name: "Modèle vLLM distant",
            reasoning: false,
            input: ["text"],
            contextWindow: 64000,
            maxTokens: 4096,
          },
        ],
      },
    },
  },
}

Dépannage

Vérifiez que le serveur vLLM est en cours d’exécution et accessible :
curl http://127.0.0.1:8000/v1/models
Si vous voyez une erreur de connexion, vérifiez l’hôte, le port et que vLLM a démarré avec le mode serveur compatible OpenAI.
Si les requêtes échouent avec des erreurs d’authentification, définissez une vraie VLLM_API_KEY correspondant à la configuration de votre serveur, ou configurez explicitement le fournisseur sous models.providers.vllm.
Si votre serveur vLLM n’impose pas d’authentification, toute valeur non vide pour VLLM_API_KEY fonctionne comme signal d’activation pour OpenClaw.
La détection automatique exige que VLLM_API_KEY soit défini et qu’aucune entrée explicite models.providers.vllm ne soit présente. Si vous avez défini le fournisseur manuellement, OpenClaw ignore la détection et utilise uniquement les modèles que vous avez déclarés.
Plus d’aide : Dépannage et FAQ.

Liés

Sélection de modèle

Choisir les fournisseurs, les références de modèle et le comportement de basculement.

OpenAI

Fournisseur OpenAI natif et comportement des routes compatibles OpenAI.

OAuth et authentification

Détails d’authentification et règles de réutilisation des identifiants.

Dépannage

Problèmes courants et comment les résoudre.