Skip to main content
A deployment is one version of a model running on Baseten. It has its own ID, model artifact, instance type, autoscaling settings, replicas, and API endpoint. A model can have multiple deployments at the same time. Use this page to understand the deployment resource and its relationship to environments. To perform an operation, see Manage deployments. To send an inference request, see Call a model.

Deployment types

Published deployments

By default, truss push creates a published deployment. Its model artifact doesn’t live reload, so a code or configuration change requires another push. Published model deployments support the full set of autoscaling and environment promotion settings. A published deployment can serve requests through its deployment-specific endpoint without belonging to an environment.

Development deployment

Use truss push --watch for a model or truss chains push --watch for a Chain to create a development deployment. Development deployments support a fast edit-and-reload loop:
  • Source changes live reload without another deployment.
  • The deployment uses one replica when active and scales to zero when idle.
  • The deployment can’t scale beyond one replica or use zero-downtime updates.
Promoting a development deployment to an environment creates a new published deployment with its own ID and starts an image build. After the deployment becomes ready, Baseten runs the environment’s configured promotion workflow. The promotion completes when the environment points to the new published deployment.

Environments and promotion

An environment gives a model a stable endpoint and a reusable set of resource, autoscaling, and promotion settings. The environment points to the deployment that currently serves its traffic.
  • A deployment doesn’t need an environment to serve requests.
  • The production environment exists by default. You can add environments such as staging.
  • Promoting a deployment changes which version serves the environment endpoint without changing that endpoint’s URL.
  • Promotion can reuse the source deployment or create a new published deployment, depending on the source type and the environment settings.

Rolling deployments

Rolling deployment is an environment promotion strategy, not a deployment type. It incrementally provisions the candidate deployment, shifts traffic, and removes the previous deployment’s replicas. You can pause, resume, cancel, or force-complete the promotion. For more information, see Rolling deployments.

Canary deployments (deprecated)

Baseten has deprecated canary deployments. Use rolling deployments for incremental traffic shifting.

Deployment metadata

Baseten addresses a deployment by its model ID and deployment ID. Names and labels help people and automation identify deployments. A deployment name is a human-readable identifier and doesn’t change the deployment’s API path. Set it with truss push --deployment-name, or rename it later in the Baseten console. Deployment labels are JSON key-value metadata for ownership, source control, or CI information. You can’t change a published deployment’s labels after creation. A later development push that includes labels replaces the development deployment’s labels. A push that omits labels preserves them.

Deployment lifecycle

Use Manage deployments to promote, scale, inspect, deactivate, activate, or delete a deployment. The task guides explain each operation and its effect on inference traffic.

Next steps

Manage deployments

Scale, promote, inspect, deactivate, and delete deployments.

Environments

Configure stable endpoints and promotion behavior.

Autoscaling

Configure replica capacity and scaling behavior.

Call a model

Send inference requests to a deployment or environment.