Aller au contenu

SGLang

SGLang sert des modèles à poids ouverts via une API HTTP compatible OpenAI. OpenClaw se connecte à SGLang en utilisant la famille de fournisseurs OpenAIAPIOpenClawopenai-completions avec la découverte automatique des modèles disponibles.

PropriétéValeur
ID du fournisseursglang
Pluginintégré, enabledByDefault: true
Variable d’environnement d’authentificationSGLANG_API_KEY (toute valeur non vide si le serveur n’a pas d’authentification)
Indicateur d’intégration--auth-choice sglang
APICompatible OpenAI (OpenAIopenai-completions)
URL de base par défauthttp://127.0.0.1:30000/v1
Espace réservé de modèle par défautsglang/Qwen/Qwen3-8B
Utilisation en streamingOui (supportsStreamingUsage: true)
TarificationMarqué comme externe-gratuit (modelPricing.external: false)

OpenClaw découvre automatiquement les modèles disponibles depuis SGLang lorsque vous activez cette option avec OpenClawSGLANG_API_KEY. Utilisez sglang/* dans agents.defaults.models pour garder la découverte dynamique lorsque vous configurez également une URL de base SGLang personnalisée. Voir Découverte de modèles (provider implicite) ci-dessous.

  1. Démarrer SGLang

    Lancez SGLang avec un serveur compatible OpenAI. Votre URL de base doit exposer des points de terminaison /v1 (par exemple /v1/models, /v1/chat/completions). SGLang s’exécute généralement sur :

    • http://127.0.0.1:30000/v1
  2. APIDéfinir une clé API

    Toute valeur fonctionne si aucune authentification n’est configurée sur votre serveur :

    Fenêtre de terminal
    export SGLANG_API_KEY="sglang-local"
  3. Exécuter l'intégration ou définir un modèle directement

    Fenêtre de terminal
    openclaw onboard

    Ou configurez le modèle manuellement :

    {
    agents: {
    defaults: {
    model: { primary: "sglang/your-model-id" },
    },
    },
    }

Lorsque SGLANG_API_KEY est défini (ou qu’un profil d’authentification existe) et que vous ne définissez models.providers.sglangOpenClaw, OpenClaw interrogera :

  • GET http://127.0.0.1:30000/v1/models

et convertir les ID renvoyés en entrées de model.

Utilisez une configuration explicite lorsque :

  • SGLang s’exécute sur un hôte/port différent.
  • Vous souhaitez épingler les valeurs contextWindow/maxTokens.
  • Votre serveur nécessite une véritable clé API (ou vous souhaitez contrôler les en-têtes).
{
models: {
providers: {
sglang: {
baseUrl: "http://127.0.0.1:30000/v1",
apiKey: "${SGLANG_API_KEY}",
api: "openai-completions",
models: [
{
id: "your-model-id",
name: "Local SGLang Model",
reasoning: false,
input: ["text"],
cost: { input: 0, output: 0, cacheRead: 0, cacheWrite: 0 },
contextWindow: 128000,
maxTokens: 8192,
},
],
},
},
},
}
Comportement de type proxy

SGLang est traité comme un backend /v1OpenAIOpenAI compatible OpenAI de type proxy, et non comme un point de terminaison OpenAI natif.

ComportementSGLang
Mise en forme des requêtes OpenAI uniquementNon appliqué
service_tier, Réponses store, indicateurs de cache de promptNon envoyés
Mise en forme du payload compat raisonnementNon appliquée
En-têtes d’attribution cachés (originator, version, User-Agent)Non injectés sur les URL de base SGLang personnalisées
Dépannage

Serveur injoignable

Vérifiez que le serveur est en cours d’exécution et qu’il répond :

Fenêtre de terminal
curl http://127.0.0.1:30000/v1/models

Erreurs d’authentification

Si les requêtes échouent avec des erreurs d’authentification, définissez une véritable SGLANG_API_KEY qui correspond à la configuration de votre serveur, ou configurez le provider explicitement sous models.providers.sglang.

Model selection

Choisir les providers, les références de models et le comportement de basculement.

Référence de configuration

Schéma de configuration complet incluant les entrées de provider.