Wan-2.2 Text-to-Video A14B
Tích hợp
wan/v2.2-a14b/text-to-video
# 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/wan/v2.2-a14b/text-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"
}'
# 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"
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/wan/v2.2-a14b/text-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"
}),
});
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 + ")");
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",
}
# Run the model; wait up to 20 s for the finished result in the same call
r = requests.post(API + "/run/wan/v2.2-a14b/text-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"])
# 1. Connect once (Claude Code; Cursor, VS Code, Claude Desktop: https://doitong.com/vi/developers/docs/mcp)
claude mcp add --transport http doitong-models https://api.doitong.ru/v1/mcp \
--header "Authorization: Bearer $DOITONG_API_KEY"
# 2. Your agent calls the "run" tool with:
{
"model_id": "wan/v2.2-a14b/text-to-video",
"input": {
"prompt": "A red fox trots through fresh snow at sunrise, soft golden light, shallow depth of field"
}
}
Gọi mô hình Wan-2.2 Text-to-Video A14B (wan/v2.2-a14b/text-to-video) qua Doitong API. Tài liệu cho tác nhân: https://doitong.com/vi/developers/models/wan/v2.2-a14b/text-to-video.md
POST https://api.doitong.ru/v1/run/wan/v2.2-a14b/text-to-video?wait=20
Authorization: Bearer $DOITONG_API_KEY
Content-Type: application/json
{
"prompt": "A red fox trots through fresh snow at sunrise, soft golden light, shallow depth of field"
}
Nếu trạng thái phản hồi là "queued" hoặc "running", hãy thăm dò GET https://api.doitong.ru/v1/requests/REQUEST_ID?wait=20 cho đến khi trạng thái là "succeeded"; tệp nằm trong outputs[].url. POST https://api.doitong.ru/v1/quote/wan/v2.2-a14b/text-to-video với cùng nội dung sẽ trả về giá chính xác trước khi chạy.
Các tệp như ví dụ: 0,405 $ 405 tín dụng API · ≈ 43,57 ₽ tệp của bạn được đo trước khi chạy Chạy trên trang này
Khóa API mới của bạn. Khóa này chỉ hiển thị lúc này và đã được chèn vào mã cũng như trường khóa API bên dưới. Hãy giữ bí mật: không bao giờ đưa khóa này vào mã chạy trong trình duyệt.
Được tạo trên Doitong
Các tác phẩm công khai được cộng đồng Doitong tạo bằng Wan v22 Large. Tái sử dụng một lời nhắc chỉ với một lần nhấp.
Video
Создай 30-секундный обучающий музыкальный ролик для детей 3–5 лет. Тема: транспорт. Яркая 2D-анимация, весёлый водитель в кепке, крупные машины, пастельные цвета. 0:00–0:10 приветствие под музыку; 0:10–0:30 песенка: "Машина едет би-би, би-би", "Поезд едет ту-ту, ту-ту". Бодрая детская музыка...
Video
Создай 30-секундный обучающий музыкальный ролик для детей 3–5 лет. Тема: транспорт. Яркая 2D-анимация, тот же весёлый водитель в кепке, самолёт. 0:00–0:15 песенка: "Самолёт летит вж-ж-ж, вж-ж-ж"; 0:15–0:25 интерактивная пауза: водитель спрашивает "Как гудит машина?", пауза; 0:25–0:30 финальный...
Video
# PROMPT: Animated Mother’s Day greeting card **Format:** vertical video 9:16 **Duration:** 12–15 seconds **Style:** high‑quality Pixar‑inspired 3D animation, cinematic, warm, emotional, charming animated movie aesthetic. ### The main character is a child Use the attached image as the only and...
Tạo một yêu cầu
Các điều khiển được tạo từ lược đồ mô hình. Mã và giá sẽ cập nhật khi bạn thay đổi chúng.
/run/wan/v2.2-a14b/text-to-video?wait=20
báo giá → 0,405 $
# 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/wan/v2.2-a14b/text-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"
}'
# 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"
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/wan/v2.2-a14b/text-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"
}),
});
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 + ")");
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",
}
# Run the model; wait up to 20 s for the finished result in the same call
r = requests.post(API + "/run/wan/v2.2-a14b/text-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"])
{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "run",
"arguments": {
"model_id": "wan/v2.2-a14b/text-to-video",
"input": {
"prompt": "A red fox trots through fresh snow at sunrise, soft golden light, shallow depth of field"
},
"wait_seconds": 20
}
}
}
Chạy yêu cầu này
Key của bạn vẫn nằm trong trình duyệt này: key chỉ được gửi đến Doitong API và chỉ được lưu trong localStorage nếu bạn chọn Ghi nhớ. Nhận khóa API
Giới thiệu về Wan-2.2 Text-to-Video A14B
Tạo video từ `prompt` văn bản. `num_frames` từ 17 đến 161, `frames_per_second` từ 4 đến 60; `resolution` là 480p, 580p hoặc 720p với tỷ lệ 16:9, 9:16 hoặc 1:1. Có thể dùng hai giá trị guidance, cài đặt `acceleration` và nội suy film hoặc rife (mặc định một khung hình được nội suy).
Tham số
promptbắt buộc
negative_prompttùy chọn
num_framestùy chọn
frames_per_secondtùy chọn
seedtùy chọn
resolutiontùy chọn
aspect_ratiotùy chọn
num_inference_stepstùy chọn
enable_safety_checkertùy chọn
enable_output_safety_checkertùy chọn
enable_prompt_expansiontùy chọn
accelerationtùy chọn
guidance_scaletùy chọn
guidance_scale_2tùy chọn
shifttùy chọn
interpolator_modeltùy chọn
num_interpolated_framestùy chọn
adjust_fps_for_interpolationtùy chọn
video_qualitytùy chọn
video_write_modetùy chọn
Đầu ra
{
"id": "req_8k2m4q7x1z9c3v5b6n0p2r4t",
"object": "request",
"model": "wan/v2.2-a14b/text-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": 405,
"usd": "0.405",
"charged": 405,
"refunded": 0
},
"input": {
"prompt": "A red fox trots through fresh snow at sunrise, soft golden light, shallow depth of field"
},
"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
},
"prompt": "A close-up of a young woman smiling gently in the rain, raindrops glistening on her face and eyelashes. The video captures the delicate details of her expression and the water droplets, with soft light reflecting off her skin in the rainy atmosphere.",
"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"
}
}
Các trường đầu ra
- video
- object {url, content_type, file_name, file_size}Tệp video được tạo sinh.
- prompt
- stringLời nhắc văn bản dùng để tạo video.
- seed
- integerGiá trị seed được áp dụng trong quá trình tạo sinh.
Các biến thể Wan v22 Large khác
Thêm mô hình: Văn bản sang video
Dành cho tác nhân AI: trang này ở dạng Markdown tại https://doitong.com/vi/developers/models/wan/v2.2-a14b/text-to-video.md. Tất cả mô hình và hướng dẫn: https://doitong.com/developers/llms.txt