Skip to main content

Setup

Install the Baseten CLI and sign in, then install the OpenAI SDK.
Install and sign in to Baseten
Terminal
For other platforms or a specific version, see the Baseten CLI install reference.
Install the OpenAI SDK
Prefer not to install? Sign in with uvx truss login --browser and deploy with uvx truss push. Pick the model you want to deploy. Each tab is a self-contained recipe.
nvidia/NVIDIA-Nemotron-3-Nano-30B-A3B-FP8 is a 30B-parameter hybrid MoE model (3.5B active per token) with up to 256K context.This preset serves NVIDIA Nemotron 3 Nano 30B A3B on one H100 with FP8 weights and KV cache, optimized for low-latency reasoning at the 32K context window sized for the NVIDIA cascaded voice pipeline.

Hardware

H100

Engine

vLLM (0.22.0-cu129 build)

Context

32K

Concurrency

8

Write the config

Create and move into the project directory:
Then create a file named config.yaml and paste the following:
config.yaml
This preset deploys the FP8 checkpoint of Nemotron 3 Nano 30B A3B through vLLM on a single H100 with the model’s own nano_v3 reasoning parser loaded as a plugin. The KV cache is FP8 to match the checkpoint, and the Mamba SSM state cache stays in FP32 to avoid accuracy drift. The deployment exposes an OpenAI-compatible chat completions endpoint with reasoning and tool calling at a 32K context window.

Flags

The start_command passes these flags to the engine. Each one controls a runtime or serving behavior:

Deploy

Push the config to Baseten with the Baseten CLI, or with the Truss CLI if you prefer it:
You should see output similar to:
baseten model push prints your model ID (abc1d2ef in the example). The examples below use it wherever you see {model_id}, and read your API key from the BASETEN_API_KEY environment variable.

Call the model

Your deployment serves an OpenAI-compatible API.Now call your deployment to run inference:
main.py
The server parses the model’s chain of thought into a separate reasoning_content field on the response. Read it alongside the final answer:
To let the model call tools, pass a tools array. The server returns structured tool_calls on the response:

Next steps

Call your model

Endpoint anatomy, authentication, and sync versus async inference

Autoscaling

Scale replicas with traffic, including scale to zero