NVIDIA Cosmos 3 Super Text to Image is a fast AI image generation model that creates high-quality images from text prompts with configurable image size, inference steps, guidance, and output count. Ready-to-use REST inference API for creative design, marketing visuals, product mockups, concept art, brand assets, social media content, and professional text-to-image workflows with simple integration, no coldstarts, and affordable pricing.
Bezczynny

$0.04za uruchomienie·~25 / $1

A photorealistic high-fashion portrait of an adult female model standing in a minimalist art gallery, sculptural black dress, polished concrete floor, large abstract paintings, soft museum lighting, confident elegant pose, luxury editorial photography, clean composition, ultra-detailed
NVIDIA Cosmos 3 Super Text-to-Image generates high-quality images from natural-language prompts with support for negative prompting, size presets, inference step control, guidance scaling, and flexible output formats. It is suitable for portrait generation, editorial visuals, concept art, marketing creatives, and other prompt-driven image generation workflows.
High-quality text-to-image generation Create polished, detailed images from natural-language prompts.
Negative prompt support
Use negative_prompt to suppress unwanted artifacts, styles, or scene elements.
Flexible generation controls
Adjust num_inference_steps and guidance_scale to balance quality, fidelity, and generation behavior.
Preset sizing
Use size presets for predictable output framing and composition.
Multiple output formats
Export the result in supported formats such as jpeg.
Production-ready API Suitable for editorial visuals, concept exploration, commercial content, and creative ideation workflows.
| Parameter | Required | Description |
|---|---|---|
| prompt | Yes | Text prompt describing the image you want to generate. |
| negative_prompt | No | Text description of elements or qualities you want to avoid in the result. |
| size | No | Output size preset, such as 1:1. |
| num_inference_steps | No | Number of inference steps used during generation. |
| guidance_scale | No | Controls how strongly the model follows the prompt. |
| output_format | No | Output image format, such as jpeg. |
num_inference_steps and guidance_scale as needed.A photorealistic high-fashion portrait of an adult female model standing in a minimalist art gallery, sculptural black dress, polished concrete floor, large abstract paintings, soft museum lighting, confident elegant pose, luxury editorial photography, clean composition, ultra-detailed
Just $0.04 per image.
size, num_inference_steps, guidance_scale, and output_format do not affect pricingnegative_prompt when you want to suppress clutter, artifacts, or undesired aesthetics.num_inference_steps when you want more refined results, if generation time is acceptable.guidance_scale when you want tighter prompt adherence.prompt is required.negative_prompt is optional but useful for tighter control.Grab a WaveSpeedAI API key, then call POST https://api.wavespeed.ai/api/v3/nvidia/cosmos-3-super/text-to-image with your input as JSON. The endpoint returns a prediction id. Start polling the result endpoint around every 2 seconds, increase the interval for long-running tasks, and stop on any terminal status. On completed, read output values from data.outputs. Examples for Cosmos 3 Super Text To Image below.
set -euo pipefail
: "${WAVESPEED_API_KEY:?Set WAVESPEED_API_KEY}"
REQUEST_BODY=$(cat <<'JSON'
{
"prompt": "A cinematic shot of a city at sunset, soft golden light",
"size": "1:1",
"num_inference_steps": 28,
"guidance_scale": 4,
"output_format": "jpeg"
}
JSON
)
# 1. Submit the prediction.
SUBMIT_RESPONSE=$(curl --silent --show-error --fail-with-body \
-X POST "https://api.wavespeed.ai/api/v3/nvidia/cosmos-3-super/text-to-image" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer $WAVESPEED_API_KEY" \
-d "$REQUEST_BODY")
TASK=$(printf '%s' "$SUBMIT_RESPONSE" | jq 'if has("data") then .data else . end')
PREDICTION_ID=$(printf '%s' "$TASK" | jq -r '.id')
if [ -z "$PREDICTION_ID" ] || [ "$PREDICTION_ID" = "null" ]; then
printf 'Submission response did not contain a prediction id
' >&2
exit 1
fi
RESULT_URL=$(printf '%s' "$TASK" | jq -r '.urls.get // empty')
if [ -z "$RESULT_URL" ]; then
RESULT_URL="https://api.wavespeed.ai/api/v3/predictions/$PREDICTION_ID/result"
fi
# 2. Poll until the prediction finishes.
while true; do
RESPONSE=$(curl --silent --show-error --fail-with-body "$RESULT_URL" \
-H "Authorization: Bearer $WAVESPEED_API_KEY")
RESULT=$(printf '%s' "$RESPONSE" | jq 'if has("data") then .data else . end')
STATUS=$(printf '%s' "$RESULT" | jq -r '.status')
case "$STATUS" in
completed) printf '%s\n' "$RESULT" | jq '.outputs'; break ;;
failed|cancelled|timeout) printf '%s\n' "$RESULT" | jq . >&2; exit 1 ;;
created|processing) sleep 2 ;;
*) printf 'Unexpected status: %s
' "$STATUS" >&2; exit 1 ;;
esac
doneconst submitUrl = "https://api.wavespeed.ai/api/v3/nvidia/cosmos-3-super/text-to-image";
const apiKey = process.env.WAVESPEED_API_KEY;
if (!apiKey) throw new Error('Set WAVESPEED_API_KEY');
async function requestJson(url, options = {}) {
const response = await fetch(url, options);
if (!response.ok) throw new Error(await response.text());
return response.json();
}
// 1. Submit the prediction.
const body = await requestJson(submitUrl, {
method: "POST",
headers: {
"Authorization": `Bearer ${apiKey}`,
"Content-Type": "application/json",
},
body: JSON.stringify({
"prompt": "A cinematic shot of a city at sunset, soft golden light",
"size": "1:1",
"num_inference_steps": 28,
"guidance_scale": 4,
"output_format": "jpeg"
}),
});
const task = body.data ?? body;
if (!task.id) throw new Error("Submission response did not contain a prediction id");
const resultUrl = task.urls?.get ||
`https://api.wavespeed.ai/api/v3/predictions/${task.id}/result`;
// 2. Poll until the prediction finishes.
while (true) {
const resultBody = await requestJson(resultUrl, {
headers: { "Authorization": `Bearer ${apiKey}` },
});
const result = resultBody.data ?? resultBody;
if (result.status === "completed") {
console.log(result.outputs);
break;
}
if (["failed", "cancelled", "timeout"].includes(result.status)) throw new Error(JSON.stringify(result));
if (!["created", "processing"].includes(result.status)) throw new Error("Unexpected status: " + result.status);
await new Promise(resolve => setTimeout(resolve, 2000));
}import json
import os
import time
from urllib.request import Request, urlopen
api_key = os.environ["WAVESPEED_API_KEY"]
headers = {"Authorization": f"Bearer {api_key}", "Content-Type": "application/json"}
payload = {
"prompt": "A cinematic shot of a city at sunset, soft golden light",
"size": "1:1",
"num_inference_steps": 28,
"guidance_scale": 4,
"output_format": "jpeg"
}
def request_json(url, data=None):
request = Request(url, data=data, headers=headers, method="POST" if data else "GET")
with urlopen(request) as response:
return json.load(response)
# 1. Submit the prediction.
body = request_json("https://api.wavespeed.ai/api/v3/nvidia/cosmos-3-super/text-to-image", json.dumps(payload).encode())
task = body.get("data", body)
if not task.get("id"):
raise RuntimeError("Submission response did not contain a prediction id")
result_url = task.get("urls", {}).get("get") or f"https://api.wavespeed.ai/api/v3/predictions/{task['id']}/result"
# 2. Poll until the prediction finishes.
while True:
result_body = request_json(result_url)
result = result_body.get("data", result_body)
status = result.get("status")
if status == "completed":
print(result.get("outputs", []))
break
if status in {"failed", "cancelled", "timeout"}:
raise RuntimeError(result)
if status not in {"created", "processing"}:
raise RuntimeError(f"Unexpected status: {status}")
time.sleep(2)Cosmos 3 Super Text To Image is a NVIDIA model for image generation, exposed as a REST API on WaveSpeedAI. NVIDIA Cosmos 3 Super Text to Image is a fast AI image generation model that creates high-quality images from text prompts with configurable image size, inference steps, guidance, and output count. Ready-to-use REST inference API for creative design, marketing visuals, product mockups, concept art, brand assets, social media content, and professional text-to-image workflows with simple integration, no coldstarts, and affordable pricing. You can call it programmatically or try it from the playground above.
POST your input parameters to the model's REST endpoint (shown in the API tab of this playground) with your WaveSpeedAI API key in the Authorization header. Submission returns a prediction ID. Poll the result endpoint starting around every 2 seconds, increase the interval for long-running tasks, and stop on any terminal status. The playground generates production-oriented Python, JavaScript, and cURL examples with timeouts, transient-error handling, and safe GET retries. Full request/response shape is documented at https://wavespeed.ai/docs/docs-api/nvidia/nvidia-cosmos-3-super-text-to-image.
Cosmos 3 Super Text To Image starts at $0.040 per run. That figure is the base price — the final charge scales with the parameters you set in the form (output size, length, count, references, or whatever knobs this model exposes), so a higher-quality or larger output costs more than a minimal one. The exact cost for your current input is shown live next to the Generate button before you submit, and the actual per-call charge is recorded on the prediction afterwards.
Key inputs: `prompt`, `size`, `guidance_scale`, `num_inference_steps`, `negative_prompt`, `output_format`. The full JSON schema (types, defaults, allowed values) is rendered above the Generate button and mirrored in the API reference at https://wavespeed.ai/docs/docs-api/nvidia/nvidia-cosmos-3-super-text-to-image.
Average end-to-end generation time on WaveSpeedAI is around 227 seconds per request — measured across recent runs. Queue time scales with global demand; live status is visible in the prediction record.
Commercial usage rights depend on the model's license, set by its provider (NVIDIA). The license summary appears on the model card above; see WaveSpeedAI's Terms of Service for platform-level conditions.