- Insufficient resources: Slow inference or failures.
- Excess resources: Higher costs without added benefit.
Instance type resource components
- Instance: The allocated hardware for inference.
- Node: The compute unit within an instance, comprising 8 GPUs with associated vCPU, RAM, and VRAM.
- vCPU: Virtual CPU cores for general computing.
- RAM: Memory available to the CPU.
- GPU: Specialized hardware for accelerated ML workloads.
- VRAM: Dedicated GPU memory for model execution.
Configure model resources
Define resources before deployment in Truss or adjust them later through the Baseten UI.Define resources in Truss
Define resource requirements inconfig.yaml before running truss push.
- Published deployment (
truss push): Creates a new deployment (named sequentially:deployment-1,deployment-2, and so on) using the resources inconfig.yaml. - Development deployment (
truss push --watch): Overwrites the existing development deployment with the specified resource configuration and starts watching for changes. Usetruss watchto resume watching an existing development deployment. - Production deployment (
truss push --promote): Creates a new deployment and promotes it to production, replacing the active deployment. - Environment deployment (
truss push --environment <name>): Deploys directly to a custom environment like staging.
Changes to
config.yaml only affect new deployments. To update resources on an existing published deployment, edit resources in the Baseten UI.Individual resource fields
config.yaml
- cpu: “3” or “4” → Maps to a 4-core instance.
- cpu: “5” to “8” → Maps to an 8-core instance.
Gi in resources.memory refers to Gibibytes, which are slightly larger
than Gigabytes.Exact instance type
An instance type is the full SKU name that uniquely identifies a specific hardware configuration. When you specify individual resource fields likecpu and accelerator, Baseten selects the smallest instance that meets your requirements. With instance_type, you specify exactly which instance you want, no guessing required.
Use instance_type when you:
- Know the exact hardware configuration you need.
- Want to ensure consistent instance selection across deployments.
- Are following a recommendation for a specific model (for example, “use an L4 with 4 vCPUs and 16 GiB RAM”).
config.yaml
L4:4x16 means an L4 GPU with 4 vCPUs and 16 GiB of RAM. Naming conventions vary by GPU family, so copy the exact instance type from the instance type reference. When instance_type is specified, other resource fields (cpu, memory, accelerator, use_gpu) are ignored.
Update resources in the Baseten UI
Once deployed, you can only update resource configurations through the Baseten UI. Changing the instance type deploys a copy of the deployment using the specified instance type. For a list of available instance types, see the instance type reference.Instance type reference
Specs and benchmarks for every Baseten instance type.CPU-only instances
Cost-effective options for lighter workloads. No GPU.- Starts at: $0.00058/min
- Best for: Transformers pipelines, small QA models, text embeddings
To select a CPU-only instance, use the bare
<vCPU>x<MEMORY> SKU (for example, instance_type: "4x16").
Example workloads:
1x2: Text classification (for example, Truss quickstart)4x16: LayoutLM Document QA4x16+: Sentence Transformers embeddings on larger corpora
GPU instances
Accelerated inference for LLMs, diffusion models, and Whisper.
To select a GPU instance with
instance_type:
- Single L4 or A100:
<GPU>:<vCPU>x<MEMORY>(for example,"L4:4x16"). - Single T4 or A10G:
<GPU>x<vCPU>x<MEMORY>, with no colon (for example,"T4x4x16","A10Gx8x32"). - Multi-GPU:
<GPU>:<COUNT>x<vCPU>x<MEMORY>(for example,"A100:2x24x288"). - H100/H200/B200/RTX-PRO-6000:
<GPU>or<GPU>:<COUNT>(for example,"H100:2","RTX-PRO-6000:4"). - Fractional H100:
"H100MIG".
GPU details and workloads
T4
Turing-series GPU- 2,560 CUDA / 320 Tensor cores
- 16 GiB VRAM
- Best for: Whisper, small LLMs like StableLM 3B
L4
Ada Lovelace-series GPU- 7,680 CUDA / 240 Tensor cores
- 24 GiB VRAM, 300 GiB/s
- 121 TFLOPS (fp16)
- Best for: Stable Diffusion XL
- Limit: Not suitable for LLMs due to bandwidth
A10G
Ampere-series GPU- 9,216 CUDA / 288 Tensor cores
- 24 GiB VRAM, 600 GiB/s
- 70 TFLOPS (fp16)
- Best for: Mistral 7B, Whisper, Stable Diffusion/SDXL
A100
Ampere-series GPU- 6,912 CUDA / 432 Tensor cores
- 80 GiB VRAM, 1.94 TB/s
- 312 TFLOPS (fp16)
- Best for: Mixtral, Llama 2 70B (2 A100s), Falcon 180B (5 A100s), SDXL
H100
Hopper-series GPU- 16,896 CUDA / 640 Tensor cores
- 80 GiB VRAM, 3.35 TB/s
- 990 TFLOPS (fp16)
- Best for: Mixtral 8x7B, Llama 2 70B (2xH100), SDXL
H100MIG
Fractional H100 (3/7 compute, ½ memory)- 7,242 CUDA cores, 40 GiB VRAM
- 1.675 TB/s bandwidth
- Best for: Efficient LLM inference at lower cost than A100
RTX Pro 6000
Blackwell-series GPU- 96 GiB VRAM
- Best for: vision-language models and mid-size LLMs at lower cost than a datacenter GPU