Providers
SGLang
SGLang sert des modèles à poids ouverts via une API HTTP compatible OpenAI. OpenClaw se connecte à SGLang à l’aide de la famille de fournisseurs openai-completions, avec découverte automatique des modèles disponibles.
| Propriété | Valeur |
|---|---|
| ID du fournisseur | sglang |
| Plugin | inclus, enabledByDefault: true |
| Variable d’environnement d’authentification | SGLANG_API_KEY (toute valeur non vide si le serveur n’a pas d’authentification) |
| Indicateur d’onboarding | --auth-choice sglang |
| API | compatible OpenAI (openai-completions) |
| URL de base par défaut | http://127.0.0.1:30000/v1 |
| Espace réservé du modèle par défaut | sglang/Qwen/Qwen3-8B |
| Utilisation du streaming | Oui (supportsStreamingUsage: true) |
| Tarification | Marquée comme gratuite externe (modelPricing.external: false) |
OpenClaw découvre aussi automatiquement les modèles disponibles depuis SGLang lorsque vous l’activez avec SGLANG_API_KEY et que vous ne définissez pas d’entrée explicite models.providers.sglang — voir Découverte de modèles (fournisseur implicite) ci-dessous.
Premiers pas
Démarrer SGLang
Lancez SGLang avec un serveur compatible OpenAI. Votre URL de base doit exposer
les points de terminaison /v1 (par exemple /v1/models, /v1/chat/completions). SGLang
s’exécute couramment sur :
http://127.0.0.1:30000/v1
Définir une clé API
Toute valeur fonctionne si aucune authentification n’est configurée sur votre serveur :
export SGLANG_API_KEY="sglang-local"
Exécuter l’onboarding ou définir directement un modèle
openclaw onboard
Ou configurez le modèle manuellement :
{
agents: {
defaults: {
model: { primary: "sglang/your-model-id" },
},
},
}
Découverte de modèles (fournisseur implicite)
Lorsque SGLANG_API_KEY est défini (ou qu’un profil d’authentification existe) et que vous ne
définissez pas models.providers.sglang, OpenClaw interroge :
GET http://127.0.0.1:30000/v1/models
et convertit les ID renvoyés en entrées de modèle.
Configuration explicite (modèles manuels)
Utilisez une configuration explicite lorsque :
- SGLang s’exécute sur un hôte/port différent.
- Vous voulez verrouiller les valeurs
contextWindow/maxTokens. - Votre serveur exige une vraie clé API (ou vous voulez 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,
},
],
},
},
},
}
Configuration avancée
Comportement de type proxy
SGLang est traité comme un backend /v1 compatible OpenAI de type proxy, et non comme un
point de terminaison OpenAI natif.
| Comportement | SGLang |
|---|---|
| Façonnage des requêtes propre à OpenAI | Non appliqué |
service_tier, Responses store, indications de cache de prompt |
Non envoyés |
| Façonnage de charge utile compatible avec le raisonnement | Non appliqué |
En-têtes d’attribution masqué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 répond :
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 vraie SGLANG_API_KEY qui correspond
à la configuration de votre serveur, ou configurez explicitement le fournisseur sous
models.providers.sglang.