---
title: "Estimate FP4 preparation cost"
method: POST
path: "/v1/shaping/prepare-for-fp4-inference/estimate"
tags: ["Shaping"]
---

# Estimate FP4 preparation cost

`POST /v1/shaping/prepare-for-fp4-inference/estimate`

## Request

- Base URL: `https://api.together.ai`
- URL: `https://api.together.ai/v1/shaping/prepare-for-fp4-inference/estimate`
- Auth: HTTP bearer

Reports the price and expected wall-clock time for preparing the model named by `model_object_id` or the deprecated `adapter_object_id` without creating a job. The request body is the same as POST /shaping/prepare-for-fp4-inference, so a caller can price exactly the job it is about to submit.

## Request body

- QuantizationRequest: Request body for preparing a fine-tuned model for FP4 inference.
  - `inputs` QuantizationPipelineInputs, required: The model to prepare: an adapter or a full model. A request names it by the `model_*` fields or the deprecated `adapter_*` fields, never a mix of the two, and gives a revision only beside the ID it belongs to. A job returns both names, with the same values.
    - `model_object_id` string: Model object ID of the model to prepare. It names the input model; it is not the `results.model_object_id` of a job, which names the model the job produced.
    - `model_revision_id` string: Revision ID of the model to prepare. Omit to use the model's current revision. Only valid with `model_object_id`.
    - `calibration_file_id` string: Conversation dataset file ID to use for calibration. Upload it first with `POST /v1/files` using purpose `calibration` and file type `jsonl`. Each JSONL row must contain a `messages` array and may contain a `tools` array. When provided, the job draws half of the calibration corpus from this file and half from a general-text corpus. When omitted, the job calibrates on the general-text corpus only. The request is rejected unless the file exists in the request project, has finished uploading, has passed files API validation as a conversation dataset, is not empty, and is at most 64 MiB. A `fine-tune` purpose file is also accepted so a training file can be reused.

## Response `200`

Estimate for the described job.

- QuantizationEstimate: Price and duration estimate for a quantization job.
  - `price_usd` number, double, required: Expected total run cost in US dollars.
  - `time_hours` number, double, required: Expected wall-clock run time in hours, excluding queue time.
  - `credit_limit` number, double, required: Project credit limit in US dollars.
  - `allowed_to_proceed` boolean, required: Whether a create request at this price would be accepted.

## Other responses

- `400`: Invalid request parameters.
- `401`: Missing or invalid API key.
- `500`: Internal server error.
- `503`: Preparing models for FP4 inference is not available.

## Changes

- **2026-10-22** `bb5257b3173a`: 1 info
  - endpoint added

[Operation history](https://skmtc.dev/together/apis/together-apis/changes/v1/shaping/prepare-for-fp4-inference/estimate/post.md)

---

[API](https://skmtc.dev/together/apis/together-apis.md) - [All operations](https://skmtc.dev/together/apis/together-apis/llms.txt) - [OpenAPI document](https://skmtc.dev/together/apis/together-apis/revisions/93438ddac711?raw)
