diff --git a/.agents/skills/nemoclaw-user-configure-inference/SKILL.md b/.agents/skills/nemoclaw-user-configure-inference/SKILL.md index 46067f73f52..25a77a8e410 100644 --- a/.agents/skills/nemoclaw-user-configure-inference/SKILL.md +++ b/.agents/skills/nemoclaw-user-configure-inference/SKILL.md @@ -184,7 +184,34 @@ Remove the env vars and recreate the sandbox to revert to the original model. `NEMOCLAW_INFERENCE_API_OVERRIDE` accepts `openai-completions` (for NVIDIA, OpenAI, Gemini, compatible endpoints) or `anthropic-messages` (for Anthropic and Anthropic-compatible endpoints). This variable is only needed when switching between provider families. -## Step 3: Verify the Active Model +## Step 3: Tune Model Metadata + +The sandbox image bakes model metadata (context window, max output tokens, and reasoning mode) into `openclaw.json` at build time. +To change these values, set the corresponding environment variables before running `nemoclaw onboard` so they patch into the Dockerfile before the image builds. + +| Variable | Values | Default | +|---|---|---| +| `NEMOCLAW_CONTEXT_WINDOW` | Positive integer (tokens) | `131072` | +| `NEMOCLAW_MAX_TOKENS` | Positive integer (tokens) | `4096` | +| `NEMOCLAW_REASONING` | `true` or `false` | `false` | + +Invalid values are ignored, and the default bakes into the image. + +```console +$ export NEMOCLAW_CONTEXT_WINDOW=65536 +$ export NEMOCLAW_MAX_TOKENS=8192 +$ export NEMOCLAW_REASONING=true +$ nemoclaw onboard +``` + +These variables are build-time settings. +If you change them on an existing sandbox, recreate the sandbox so the new values bake into the image: + +```console +$ nemoclaw onboard --resume --recreate-sandbox +``` + +## Step 4: Verify the Active Model Run the status command to confirm the change: @@ -200,7 +227,7 @@ $ nemoclaw status --json The output includes the active provider, model, and endpoint. -## Step 4: Notes +## Step 5: Notes - The host keeps provider credentials. - The sandbox continues to use `inference.local`. @@ -217,7 +244,7 @@ All approaches use the same `inference.local` routing model. The agent inside the sandbox never connects to your model server directly. OpenShell intercepts inference traffic and forwards it to the local endpoint you configure. -## Step 5: Ollama +## Step 6: Ollama Ollama is the default local inference option. The onboard wizard detects Ollama automatically when it is installed or running on the host. @@ -280,7 +307,7 @@ If `NEMOCLAW_MODEL` is not set, NemoClaw selects a default model based on availa | `NEMOCLAW_PROVIDER` | Set to `ollama`. | | `NEMOCLAW_MODEL` | Ollama model tag to use. Optional. | -## Step 6: OpenAI-Compatible Server +## Step 7: OpenAI-Compatible Server This option works with any server that implements `/v1/chat/completions`, including vLLM, TensorRT-LLM, llama.cpp, LocalAI, and others. For compatible endpoints, NemoClaw uses `/v1/chat/completions` by default. @@ -356,7 +383,7 @@ If you already onboarded and the sandbox is failing at runtime, re-run into the image. Refer to Switch Inference Models (see the `nemoclaw-user-configure-inference` skill) for details. -## Step 7: Anthropic-Compatible Server +## Step 8: Anthropic-Compatible Server If your local server implements the Anthropic Messages API (`/v1/messages`), choose **Other Anthropic-compatible endpoint** during onboarding instead. @@ -374,7 +401,7 @@ $ NEMOCLAW_PROVIDER=anthropicCompatible \ nemoclaw onboard --non-interactive ``` -## Step 8: vLLM Auto-Detection (Experimental) +## Step 9: vLLM Auto-Detection (Experimental) When vLLM is already running on `localhost:8000`, NemoClaw can detect it automatically and query the `/v1/models` endpoint to determine the loaded model. @@ -401,7 +428,7 @@ $ NEMOCLAW_EXPERIMENTAL=1 \ NemoClaw auto-detects the model from the running vLLM instance. To override the model, set `NEMOCLAW_MODEL`. -## Step 9: NVIDIA NIM (Experimental) +## Step 10: NVIDIA NIM (Experimental) NemoClaw can pull, start, and manage a NIM container on hosts with a NIM-capable NVIDIA GPU. @@ -427,7 +454,7 @@ $ NEMOCLAW_EXPERIMENTAL=1 \ To select a specific model, set `NEMOCLAW_MODEL`. -## Step 10: Timeout Configuration +## Step 11: Timeout Configuration Local inference requests use a default timeout of 180 seconds. Large prompts on hardware such as DGX Spark can exceed shorter timeouts, so NemoClaw sets a higher default for local providers (Ollama, vLLM, NIM). @@ -443,7 +470,7 @@ The value is in seconds. This setting is baked into the sandbox at build time. Changing it after onboarding requires re-running `nemoclaw onboard`. -## Step 11: Verify the Configuration +## Step 12: Verify the Configuration After onboarding completes, confirm the active provider and model. @@ -453,7 +480,7 @@ $ nemoclaw status The output shows the provider label (for example, "Local vLLM" or "Other OpenAI-compatible endpoint") and the active model. -## Step 12: Switch Models at Runtime +## Step 13: Switch Models at Runtime You can change the model without re-running onboard. Refer to Switch Inference Models (see the `nemoclaw-user-configure-inference` skill) for the full procedure. diff --git a/.agents/skills/nemoclaw-user-reference/references/troubleshooting.md b/.agents/skills/nemoclaw-user-reference/references/troubleshooting.md index ab8952e3ce5..6dc147b31e3 100644 --- a/.agents/skills/nemoclaw-user-reference/references/troubleshooting.md +++ b/.agents/skills/nemoclaw-user-reference/references/troubleshooting.md @@ -360,7 +360,7 @@ Instead: 1. Upgrade to a NemoClaw release that includes the newer `openclaw` version. 2. If you build NemoClaw from source, bump the pinned `openclaw` version in `Dockerfile.base` and rebuild the sandbox base image. -3. Back up any workspace files you need, then recreate the sandbox so it uses the rebuilt image. +3. Run `nemoclaw rebuild` to recreate the sandbox with the updated image. The rebuild command automatically backs up workspace state before destroying the old sandbox and restores it afterward. ### Inference requests time out diff --git a/docs/inference/switch-inference-providers.md b/docs/inference/switch-inference-providers.md index 8c3014a1724..539a34859b9 100644 --- a/docs/inference/switch-inference-providers.md +++ b/docs/inference/switch-inference-providers.md @@ -131,6 +131,33 @@ Remove the env vars and recreate the sandbox to revert to the original model. `NEMOCLAW_INFERENCE_API_OVERRIDE` accepts `openai-completions` (for NVIDIA, OpenAI, Gemini, compatible endpoints) or `anthropic-messages` (for Anthropic and Anthropic-compatible endpoints). This variable is only needed when switching between provider families. +## Tune Model Metadata + +The sandbox image bakes model metadata (context window, max output tokens, and reasoning mode) into `openclaw.json` at build time. +To change these values, set the corresponding environment variables before running `nemoclaw onboard` so they patch into the Dockerfile before the image builds. + +| Variable | Values | Default | +|---|---|---| +| `NEMOCLAW_CONTEXT_WINDOW` | Positive integer (tokens) | `131072` | +| `NEMOCLAW_MAX_TOKENS` | Positive integer (tokens) | `4096` | +| `NEMOCLAW_REASONING` | `true` or `false` | `false` | + +Invalid values are ignored, and the default bakes into the image. + +```console +$ export NEMOCLAW_CONTEXT_WINDOW=65536 +$ export NEMOCLAW_MAX_TOKENS=8192 +$ export NEMOCLAW_REASONING=true +$ nemoclaw onboard +``` + +These variables are build-time settings. +If you change them on an existing sandbox, recreate the sandbox so the new values bake into the image: + +```console +$ nemoclaw onboard --resume --recreate-sandbox +``` + ## Verify the Active Model Run the status command to confirm the change: diff --git a/docs/project.json b/docs/project.json index 510b800de1c..04a1204f9de 100644 --- a/docs/project.json +++ b/docs/project.json @@ -1 +1 @@ -{"name": "nemoclaw", "version": "0.0.18"} +{"name": "nemoclaw", "version": "0.0.20"} diff --git a/docs/versions1.json b/docs/versions1.json index 693b32d82ba..0c9d05ea13a 100644 --- a/docs/versions1.json +++ b/docs/versions1.json @@ -1,6 +1,14 @@ [ { "preferred": true, + "version": "0.0.20", + "url": "https://docs.nvidia.com/nemoclaw/0.0.20/" + }, + { + "version": "0.0.19", + "url": "https://docs.nvidia.com/nemoclaw/0.0.19/" + }, + { "version": "0.0.18", "url": "https://docs.nvidia.com/nemoclaw/0.0.18/" },