# Cosmos 3 Super Image to Video API

> 将首帧图像制作成视频，支持可选提示词扩展和智能体式优化循环

使用 `image_url` 作为首帧，并接受最多 4096 个字符的 `prompt`。`num_frames` 最大为 189，`frames_per_second` 范围为 4 到 60。提示词扩展默认启用，`enable_agentic_generation` 会通过批评机制迭代生成候选结果。还支持 `negative_prompt`、`guidance_scale` 和最高 50 的 `num_inference_steps`。

- Model id: `nvidia/cosmos-3-super/image-to-video`
- Made by: NVIDIA
- Category: Image to Video
- Output: video
- Price per second of your output video: from $0.05 / second of output video (cheapest run $0.05 (50 API credits))
- Run: `POST https://api.doitong.ru/v1/run/nvidia/cosmos-3-super/image-to-video`
- Quote: `POST https://api.doitong.ru/v1/quote/nvidia/cosmos-3-super/image-to-video`
- Docs page: https://doitong.com/zh/developers/models/nvidia/cosmos-3-super/image-to-video

## Pricing

Price: **from $0.05 / second of output video** (the lowest tier; the quote prices your exact input). Price per second of your output video: the input files are measured before the run (length, resolution, frame rate). The quote measures the same files and is exactly what the run charges.

The full example input below costs $0.40 = 400 API credits (8 s output video × $0.05).

Prices are the upstream price in USD, paid from the API balance in API credits (1000 API credits = 1 USD). `POST https://api.doitong.ru/v1/quote/nvidia/cosmos-3-super/image-to-video` with the same JSON body returns the exact price for that input; the quote is exactly what a run charges. Invalid input is never charged and failed or canceled requests are refunded automatically.

## Input parameters

Send either the canonical name or the native field name (not both). Canonical names are the same across models.

| Parameter | Canonical name | Type | Required | Default | Allowed values / range | Description |
|---|---|---|---|---|---|---|
| `prompt` |  | string | yes |  | 1 – 4096 characters | 视频生成说明文本：指定场景包含的内容以及应呈现的运动。 |
| `image_url` | `image` | string (image URL) | yes |  |  | 用于控制视频首帧的图像 URL。 |
| `negative_prompt` |  | string | no | `The video captures a series of frames showing macroblocking artifacts, chromatic aberration, high-frequency noise, and rolling shutter distortion. It includes static with no motion, motion blur, over-saturation, shaky footage, low resolution, grainy texture, pixelated images, poorly lit areas, underexposed and overexposed scenes, poor color balance, washed out colors, choppy sequences, jerky movements, low frame rate, bit-depth compression artifacts, color banding, unnatural transitions, outdated special effects, fake elements, unconvincing visuals, poorly edited content, jump cuts, hard cut, visual noise, and flickering. It features moiré patterns, edge halos, and temporal aliasing. Furthermore, the content defies common sense, generating illogical scenarios, nonsensical entities, absurd character behaviors, and conceptual paradoxes that violate basic human reasoning and everyday reality. The video looks like a surreal or glitchy hallucination. Overall, the video is of poor quality.` | ≤ 2048 characters | 用于抑制不需要的运动或伪影等内容的负面提示词。省略时使用 NVIDIA 为 i2v 推荐的负面提示词；空字符串则禁用负面引导。 |
| `enable_prompt_expansion` |  | boolean | no | `true` |  | 提示词扩展。设为 true 时，使用 Cosmos3-Nano Reasoner 生成用于训练 Cosmos3 的密集描述格式；该 VLM 会检查首帧。COSMOS_PROMPT_UPSAMPLER_BASE_URL 用于选择已配置的 Reasoner 服务；否则应用会在本地启动服务。扩展失败时继续使用未修改的提示词。 |
| `enable_agentic_generation` |  | boolean | no | `false` |  | 迭代式 Cosmos 智能体生成。由于每个候选项都需要完整渲染，其速度明显更慢、成本也高于单次生成。循环会扩展提示词、生成视频候选项、使用 VLM 评审采样帧，然后重写提示词。 |
| `agentic_max_iterations` |  | integer | no | `2` | 1 – 3 | 启用智能体生成时的提示词阶段上限。 |
| `agentic_samples_per_iteration` |  | integer | no | `2` | 1 – 3 | 智能体循环每次迭代生成的视频候选项数量，决定在最佳候选项进入提示词重写前参与评估的视频数量。 |
| `agentic_early_stop` |  | boolean | no | `true` |  | 提前停止控制：当评审分数高于严格质量阈值时，认为足以结束智能体循环。 |
| `image_size` |  | object {width, height} \| enum (string) | no | `{"height":480,"width":832}` | `square_hd`, `square`, `portrait_4_3`, `portrait_16_9`, `landscape_4_3`, `landscape_16_9` | 自动调整前请求的视频尺寸。为获得受支持的尺寸，系统会限制请求并选择最接近的 NVIDIA 层级——256p、480p 或 720p——以及受支持的宽高比。 |
| `num_frames` |  | integer | no | `189` | 5 – 189 | 生成的帧数；增加该值会生成更长的视频。 |
| `frames_per_second` |  | integer | no | `24` | 4 – 60 | 输出视频帧率，单位为每秒帧数。 |
| `num_inference_steps` |  | integer | no | `28` | 1 – 50 | 去噪步骤数；步骤越多，处理时间越长但质量越好。 |
| `guidance_scale` |  | number | no | `6` | 0 – 20 | 无分类器引导的强度。 |
| `seed` |  | integer \| null | no |  |  | 控制可重复性的种子：模型版本不变时，相同的提示词和种子会生成相同的视频。 |
| `enable_safety_checker` |  | boolean | no | `true` |  | 对所提供图像和提示词的内容审核控制；仅授权账户可以禁用。未获授权的请求无论设置如何都会进行检查。 |

File parameters (`image`) take a public `https://` URL, a `data:` URI up to 10 MB, or the `file_url` of an upload from `POST /files`.

## Example input

Required parameters only:

```json
{
  "prompt": "A red fox trots through fresh snow at sunrise, soft golden light, shallow depth of field",
  "image": "https://content.doitong.com/images/showcase/v3/gen_fox_cartoon.jpg"
}
```

A fuller example:

```json
{
  "prompt": "A red fox trots through fresh snow at sunrise, soft golden light, shallow depth of field",
  "image_url": "https://content.doitong.com/images/showcase/v3/gen_fox_cartoon.jpg"
}
```

## Run it

Set `DOITONG_API_KEY` to a key from https://doitong.com/developers/dashboard#keys. `?wait=20` returns the finished request in the same call when it is ready within 20 seconds; otherwise poll `GET /requests/{id}` (it also accepts `?wait=`), or pass `webhook_url`.

### curl

```bash
# Run the model; wait up to 20 s for the finished result in the same call
curl -X POST "https://api.doitong.ru/v1/run/nvidia/cosmos-3-super/image-to-video?wait=20" \
  -H "Authorization: Bearer $DOITONG_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "prompt": "A red fox trots through fresh snow at sunrise, soft golden light, shallow depth of field",
    "image_url": "https://content.doitong.com/images/showcase/v3/gen_fox_cartoon.jpg"
  }'

# Still "queued" or "running"? Poll with the id from the response:
curl "https://api.doitong.ru/v1/requests/REQUEST_ID?wait=20" \
  -H "Authorization: Bearer $DOITONG_API_KEY"
```

### JavaScript

```javascript
const API = "https://api.doitong.ru/v1";
const headers = {
  "Authorization": "Bearer " + process.env.DOITONG_API_KEY,
  "Content-Type": "application/json",
};

// Run the model; wait up to 20 s for the finished result in the same call
let res = await fetch(API + "/run/nvidia/cosmos-3-super/image-to-video?wait=20", {
  method: "POST",
  headers,
  body: JSON.stringify({
    "prompt": "A red fox trots through fresh snow at sunrise, soft golden light, shallow depth of field",
    "image_url": "https://content.doitong.com/images/showcase/v3/gen_fox_cartoon.jpg"
  }),
});
let request = await res.json();
if (!res.ok) throw new Error(request.error.code + ": " + request.error.message);

// Not finished yet: long-poll until it is
while (request.status === "queued" || request.status === "running") {
  res = await fetch(API + "/requests/" + request.id + "?wait=20", { headers });
  request = await res.json();
}
if (request.status !== "succeeded") throw new Error(JSON.stringify(request.error));
console.log(request.outputs.map((o) => o.url), request.cost.credits + " API credits ($" + request.cost.usd + ")");
```

### Python

```python
import os
import requests

API = "https://api.doitong.ru/v1"
headers = {"Authorization": "Bearer " + os.environ["DOITONG_API_KEY"]}

payload = {
    "prompt": "A red fox trots through fresh snow at sunrise, soft golden light, shallow depth of field",
    "image_url": "https://content.doitong.com/images/showcase/v3/gen_fox_cartoon.jpg",
}

# Run the model; wait up to 20 s for the finished result in the same call
r = requests.post(API + "/run/nvidia/cosmos-3-super/image-to-video", params={"wait": 20}, json=payload, headers=headers)
request = r.json()
if not r.ok:
    raise RuntimeError(request["error"]["code"] + ": " + request["error"]["message"])

# Not finished yet: long-poll until it is
while request["status"] in ("queued", "running"):
    request = requests.get(API + "/requests/" + request["id"], params={"wait": 20}, headers=headers).json()
if request["status"] != "succeeded":
    raise RuntimeError(request["error"])
print([o["url"] for o in request["outputs"]], request["cost"]["credits"], "API credits", "$" + request["cost"]["usd"])
```

### MCP

The MCP server at `https://api.doitong.ru/v1/mcp` exposes the tools `search_models`, `get_model`, `quote`, `run`, `get_request`, `cancel_request`, `list_requests`, `create_upload` and `get_account`. A `run` call for this model:

```json
{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/call",
  "params": {
    "name": "run",
    "arguments": {
      "model_id": "nvidia/cosmos-3-super/image-to-video",
      "input": {
        "prompt": "A red fox trots through fresh snow at sunrise, soft golden light, shallow depth of field",
        "image_url": "https://content.doitong.com/images/showcase/v3/gen_fox_cartoon.jpg"
      },
      "wait_seconds": 20
    }
  }
}
```

## Response

Every call returns a request object. `status` is one of `queued`, `running`, `succeeded`, `failed`, `canceled`. `outputs` lists the generated files with URLs on our storage (kept forever, or 7 days with `?storage=temporary`; `storage` says which); `output` is the model's own result object with the same URLs.

```json
{
  "id": "req_8k2m4q7x1z9c3v5b6n0p2r4t",
  "object": "request",
  "model": "nvidia/cosmos-3-super/image-to-video",
  "status": "succeeded",
  "created_at": "2026-10-20T12:00:00Z",
  "started_at": "2026-10-20T12:00:02Z",
  "completed_at": "2026-10-20T12:00:09Z",
  "queue_position": null,
  "cost": {
    "credits": 400,
    "usd": "0.40",
    "charged": 400,
    "refunded": 0
  },
  "input": {
    "prompt": "A red fox trots through fresh snow at sunrise, soft golden light, shallow depth of field",
    "image_url": "https://content.doitong.com/images/showcase/v3/gen_fox_cartoon.jpg"
  },
  "output": {
    "video": {
      "url": "https://content.doitong.com/dev-api/2026/10/20/req_8k2m4q7x1z9c3v5b6n0p2r4t/0-output.mp4",
      "content_type": "video/mp4",
      "file_name": "0-output.mp4",
      "file_size": 1843200,
      "width": 1024,
      "height": 768,
      "fps": 1.0,
      "duration": 5,
      "num_frames": 1
    },
    "seed": 42
  },
  "outputs": [
    {
      "type": "video",
      "url": "https://content.doitong.com/dev-api/2026/10/20/req_8k2m4q7x1z9c3v5b6n0p2r4t/0-output.mp4",
      "content_type": "video/mp4",
      "file_size": 1843200,
      "width": 1280,
      "height": 720,
      "duration": 5,
      "stored": true
    }
  ],
  "error": null,
  "metrics": {
    "inference_seconds": 6.8
  },
  "urls": {
    "self": "https://api.doitong.ru/v1/requests/req_8k2m4q7x1z9c3v5b6n0p2r4t",
    "cancel": "https://api.doitong.ru/v1/requests/req_8k2m4q7x1z9c3v5b6n0p2r4t/cancel"
  }
}
```

### Output fields (`output`)

| Field | Type | Description |
|---|---|---|
| `video` | object {url, content_type, file_name, file_size, width, height, fps, duration, num_frames} | 模型生成的视频。 |
| `seed` | integer | 生成期间应用的种子值。 |

## Related models

- [Cosmos 3 Super](https://doitong.com/developers/models/nvidia/cosmos-3-super/text-to-image.md) (`nvidia/cosmos-3-super/text-to-image`): from $0.04 / run of output image
- [FLUX 3 Max Image to Video](https://doitong.com/developers/models/blackforestlabs/flux-3-max/image-to-video.md) (`blackforestlabs/flux-3-max/image-to-video`): from $0.0425 / second of output video
- [Grok Imagine Video 1.5 Image to Video](https://doitong.com/developers/models/xai/grok-imagine-video/v1.5/image-to-video.md) (`xai/grok-imagine-video/v1.5/image-to-video`): from $0.082 / second
- [Kling 3.0 Pro Image to Video](https://doitong.com/developers/models/kling-video/v3/pro/image-to-video.md) (`kling-video/v3/pro/image-to-video`): from $0.112 / second
- [LTX 2.5 Pro Image to Video](https://doitong.com/developers/models/lightricks/ltx-2.5/image-to-video/pro.md) (`lightricks/ltx-2.5/image-to-video/pro`): from $0.12 / second
- [MiniMax H3 Image to Video](https://doitong.com/developers/models/minimax/h3/image-to-video.md) (`minimax/h3/image-to-video`): from $0.05 / second
- [Seedance 2.0 Fast Image to Video](https://doitong.com/developers/models/bytedance/seedance-2.0/fast/image-to-video.md) (`bytedance/seedance-2.0/fast/image-to-video`): from $0.113 / second
- [Seedance 2.0 Image to Video](https://doitong.com/developers/models/bytedance/seedance-2.0/image-to-video.md) (`bytedance/seedance-2.0/image-to-video`): from $0.141 / second

## Links

- HTML page: https://doitong.com/developers/models/nvidia/cosmos-3-super/image-to-video
- All models and guides for AI agents: https://doitong.com/developers/llms.txt
- OpenAPI 3.1 with this model's typed request body: https://doitong.com/developers/openapi.json?model=nvidia/cosmos-3-super/image-to-video
- Errors: https://doitong.com/developers/docs/errors
- Model details as JSON: https://api.doitong.ru/v1/models/nvidia/cosmos-3-super/image-to-video
