These commands require Together CLI 3.0 or later. In CLI 2.x, they were
tg beta endpoints, and tg endpoints managed the retired v1 dedicated endpoints.Deploy
Deploy a model to a new endpoint. If you pass the name or ID of an existing endpoint to--endpoint, the model deploys to that endpoint. If you pass a new name, the CLI creates the endpoint first, then deploys. The model is passed as the positional MODEL argument.
Shell
modelName (from tg models public) as MODEL to select that profile, or re-run with --config <cr_...>. If the name still matches more than one profile, deploy returns an error that lists each profile’s modelName, config ID, quantization, GPUs, and parallelism, and shows an example --model <modelName> --config <cr_...> command. When a model has a single profile, the CLI selects it automatically.
When MODEL is a low-rank adapter (LoRA), pass --attach-adapter or --merge. --attach-adapter attaches the adapter to a deployment of its base model on the endpoint whose deployment profile serves adapters. If the endpoint has no such deployment, the CLI creates one, then attaches the adapter. --merge creates a new deployment that serves the adapter merged into its base model. See Multi-LoRA deployment for the attach workflow.
Shell
--min-replicas and --max-replicas to 1, which may differ from the raw API defaults. If you pass only one bound, the CLI infers the other: --min-replicas alone mirrors into the max (including 0 to create the deployment stopped), and --max-replicas 0 alone lowers the min to 0. Passing 0 for one bound and a positive value for the other is an error.
Parameters
List
List endpoints in the current project.Shell
Parameters
Get
Print details for an endpoint, deployment, or rollout. Pass an endpoint name or ID (ep_...) to see its deployments, traffic split, and active rollout, a deployment name or ID (dep_...) to inspect that deployment directly, or a rollout ID (rol_...) to see the rollout’s state, strategy, and progress. You can also omit get and pass the name or ID as the first argument (tg endpoints <name_or_id>).
Endpoint responses include at most the 10 newest deployment summaries per endpoint. To list every deployment, use the deployments list API.
Shell
dep_...) or a fully qualified deployment name.
For an endpoint, each deployment row lists the LoRA adapters attached to it. For a deployment, the output also shows its config’s selectors, such as adapter_mode.
With --json, endpoint responses expose deployment state under deployments[].state, while deployment responses expose it under status.state.
Parameters
Update
Update a deployment’s parameters: change its replica bounds, adjust autoscaling, set its share of endpoint traffic, or change an A/B variant’s percent. Pass the deployment ID (dep_...). The CLI resolves its parent endpoint automatically. At least one option must be set. Deployment names are immutable after creation.
Shell
--min-replicas 0 and --max-replicas 0. Passing only one zero bound returns an error. Partial nonzero updates (for example, only --min-replicas 3) still patch that field alone.
Parameters
A deployment serves LoRA adapters only if its config has
adapter_mode set to dynamic or fixed. You can’t change a deployment’s config with update, so to serve adapters, create a new deployment with such a config or let deploy --attach-adapter create one.Delete
Delete an endpoint, deployment, A/B test, shadow experiment, or rollout. To detach a LoRA adapter from a deployment, pass the adapter attachment ID (dad_...). The command infers the resource type from the ID prefix (see Resource IDs).
Shell
tg endpoints -d.
Parameters
Events
List an endpoint’s audit and lifecycle events, newest first. The feed merges endpoint-scoped events with the deployment-scoped events of every deployment under the endpoint. See Monitoring for how to read the feed.Shell
--after command that displays the next page. Add --json for the raw event objects, including fields the table view omits, such as the event ID, level, and source kind.
Parameters
A/B test
Fork a percentage of an endpoint’s live traffic from a control deployment to a new variant model, then compare the two. See A/B testing for the full workflow.Shell
Parameters
Shadow
Mirror a fraction of an endpoint’s live traffic to a new model without affecting responses returned to clients. The model is the positional argument, and the source endpoint is passed with--endpoint. See Shadow deployments for details.
Shell
Parameters
Rollout
Shift traffic from a source deployment to a target deployment under the same endpoint, or control the endpoint’s active rollout. See Rollouts for the full workflow, strategies, and requirements. To create a rollout, pass the target deployment and one strategy flag (--blue-green, --canary, or --rolling). A canary rollout can also carry a single metric gate, set with the --metric* flags. To control an active rollout, pass the endpoint (preferred), the deployment, or the rollout ID, plus one control flag.
Shell
--detach and the CLI detaches it from the experiment first (deleting the experiment if it can’t continue without the deployment), then starts the rollout.
Parameters
The control flags (
--cancel, --pause, --resume, and --promote) are mutually exclusive with each other and with the create options.
Global options
Every command also accepts the global parameters, including--json for machine-readable output and --project to override the target project.
To set the project without --project, export the TOGETHER_PROJECT_ID environment variable. With neither set, the CLI uses the project you selected with tg login or tg switch. If you authenticate with an API key, an interactive deploy asks you to confirm the key’s project. CI jobs, agents, --non-interactive mode, and --json mode can’t answer that prompt, so set the project explicitly in those contexts before deploying:
Shell