SGLang
SGLang は OpenAI 互換 の HTTP API でオープンソースモデルを提供できます。OpenClaw は openai-completions API を使って SGLang に接続します。
SGLANG_API_KEY(サーバーが認証を要求しない場合は任意の値で可)を設定し、明示的な models.providers.sglang エントリを定義しなければ、OpenClaw は SGLang の利用可能なモデルを自動検出することもできます。
クイックスタート
- OpenAI 互換サーバーとして SGLang を起動します。
ベース URL は /v1 エンドポイント(例: /v1/models、/v1/chat/completions)を公開する必要があります。SGLang は通常以下で動作します:
http://127.0.0.1:30000/v1
- オプトイン(認証未設定の場合は任意の値で可):
export SGLANG_API_KEY="sglang-local"
- オンボーディングを実行して
SGLangを選択するか、モデルを直接設定:
openclaw onboard
{
agents: {
defaults: {
model: { primary: "sglang/your-model-id" },
},
},
}
モデル自動検出(暗黙的プロバイダー)
SGLANG_API_KEY が設定されている(または認証プロファイルが存在する)状態で、models.providers.sglang を定義しない場合、OpenClaw は以下にクエリします:
GET http://127.0.0.1:30000/v1/models
返された ID をモデルエントリに変換します。
models.providers.sglang を明示的に設定した場合、自動検出はスキップされ、モデルを手動で定義する必要があります。
明示的設定(手動モデル定義)
以下の場合は明示的な設定を使用します:
- SGLang が別のホスト/ポートで動作している。
contextWindow/maxTokensの値を固定したい。- サーバーが実際の API キーを要求する(またはヘッダーを制御したい)。
{
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,
},
],
},
},
},
}
トラブルシューティング
- サーバーに到達できるか確認:
curl http://127.0.0.1:30000/v1/models
- 認証エラーでリクエストが失敗する場合は、サーバー設定に一致する実際の
SGLANG_API_KEYを設定するか、models.providers.sglangでプロバイダーを明示的に構成してください。