Skip to main content
You’re viewing the v1 documentation for dedicated endpoints. v1 is still supported, but it will be deprecated by the end of 2026. For the current API and workflow, switch to v2 with the version selector at the top of the page, or see the dedicated endpoints overview.
You can run inference on your own custom or fine-tuned models by uploading them to Together AI and deploying them on a dedicated endpoint. Models can come from the Hugging Face Hub or from an archive in S3.

Prerequisites

A model is eligible for upload if it meets all of the following:
  • Source: Hugging Face Hub or an S3 presigned URL.
  • Type: text generation or embedding model.
  • Scale: fits on a single node. Multi-node models aren’t supported.
The model files must be in standard Hugging Face repository format, compatible with from_pretrained. A valid model directory contains files like:
To upload a LoRA adapter instead of a full model, see Deploy a fine-tuned adapter.

S3 archive requirements

If you’re uploading from S3, package the files in a single archive (.zip or .tar.gz) with the model files at the root of the archive. Don’t nest them inside an extra top-level directory. Correct (files at root):
Incorrect (files nested in a directory):
To create the archive from within the model directory:
Shell
The presigned URL must point to the archive file in S3 and have an expiration of at least 100 minutes.

Upload the model

Upload from Hugging Face by passing the repo path as model_source. Include your Hugging Face token for private or gated repos.
Upload from S3 by passing the presigned archive URL as model_source:
The response includes a job_id. Use it to poll for upload status.

CLI options

Check upload status

Poll the upload job until its status field is Complete. The model is ready to deploy at that point.
You can also see uploaded models on the My models page in the dashboard.

Deploy the model

Uploaded models deploy as dedicated endpoints, the same way as any other model.
List hardware available for the uploaded model:
Create the endpoint, using the hardware ID from the list:
See Manage dedicated endpoints for the full endpoint lifecycle, including autoscaling, listing, and deletion.