Vidu Q4 Reference to Video
Ενσωμάτωση
vidu/q4/reference-to-video
# Run the model; wait up to 20 s for the finished result in the same call
curl -X POST "https://api.doitong.com/v1/run/vidu/q4/reference-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.com/v1/requests/REQUEST_ID?wait=20" \
-H "Authorization: Bearer $DOITONG_API_KEY"
const API = "https://api.doitong.com/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/vidu/q4/reference-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.com/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/vidu/q4/reference-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/el/developers/docs/mcp)
claude mcp add --transport http doitong-models https://api.doitong.com/v1/mcp \
--header "Authorization: Bearer $DOITONG_API_KEY"
# 2. Your agent calls the "run" tool with:
{
"model_id": "vidu/q4/reference-to-video",
"input": {
"prompt": "A red fox trots through fresh snow at sunrise, soft golden light, shallow depth of field"
}
}
Καλέστε το μοντέλο Vidu Q4 Reference to Video (vidu/q4/reference-to-video) μέσω του Doitong API. Τεκμηρίωση για πράκτορες: https://doitong.com/el/developers/models/vidu/q4/reference-to-video.md
POST https://api.doitong.com/v1/run/vidu/q4/reference-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"
}
Αν η κατάσταση της απόκρισης είναι "queued" ή "running", εκτελέστε δημοσκόπηση με GET https://api.doitong.com/v1/requests/REQUEST_ID?wait=20 μέχρι να γίνει "succeeded"· τα αρχεία βρίσκονται στο outputs[].url. Το POST https://api.doitong.com/v1/quote/vidu/q4/reference-to-video με το ίδιο σώμα επιστρέφει την ακριβή τιμή πριν από την εκτέλεση.
Αρχεία όπως το παράδειγμα: 0,333 $ 333 πιστώσεις API τα αρχεία σας μετρώνται πριν από την εκτέλεση Εκτέλεση σε αυτήν τη σελίδα
Το νέο σας κλειδί API. Εμφανίζεται μόνο τώρα και βρίσκεται ήδη στον κώδικα και στο παρακάτω πεδίο κλειδιού API. Κρατήστε το μυστικό: μην το εισάγετε ποτέ σε κώδικα που εκτελείται σε πρόγραμμα περιήγησης.
Το πρώτο σας αποτέλεσμα θα εμφανιστεί εδώ
Δημιουργήστε ένα αίτημα παρακάτω και εκτελέστε το με το κλειδί API σας. Οι έξοδοι αντιγράφονται στην αποθήκευσή μας και διατηρούνται για πάντα ή 7 ημέρες δωρεάν.
Δημιουργία αιτήματος
Τα στοιχεία ελέγχου δημιουργούνται από το σχήμα του μοντέλου. Ο κώδικας και η τιμή ενημερώνονται καθώς τα αλλάζετε.
/run/vidu/q4/reference-to-video?wait=20
προσφορά → 0,333 $
# Run the model; wait up to 20 s for the finished result in the same call
curl -X POST "https://api.doitong.com/v1/run/vidu/q4/reference-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.com/v1/requests/REQUEST_ID?wait=20" \
-H "Authorization: Bearer $DOITONG_API_KEY"
const API = "https://api.doitong.com/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/vidu/q4/reference-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.com/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/vidu/q4/reference-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": "vidu/q4/reference-to-video",
"input": {
"prompt": "A red fox trots through fresh snow at sunrise, soft golden light, shallow depth of field"
},
"wait_seconds": 20
}
}
}
Εκτέλεση αυτού του αιτήματος
Το κλειδί σας παραμένει σε αυτό το πρόγραμμα περιήγησης: αποστέλλεται μόνο στο Doitong API και αποθηκεύεται (localStorage) μόνο αν ενεργοποιήσετε την επιλογή «Να απομνημονεύεται». Λήψη κλειδιού API
Σχετικά με το Vidu Q4 Reference to Video
Διατηρεί συνεπή χαρακτήρες, αντικείμενα και φωνές χρησιμοποιώντας έως 12 `reference_image_urls` και έως 3 κλιπ mp3 στο `reference_audio_urls` (3-12 δευτερόλεπτα το καθένα). Το prompt, έως 5000 χαρακτήρες, αναφέρεται στις αναφορές με βάση τη θέση τους. Το `duration` είναι 3-16 δευτερόλεπτα, η `resolution` έως 4K και το `audio` είναι απενεργοποιημένο από προεπιλογή.
Παράμετροι
Στείλτε είτε το κανονικό όνομα είτε το εγγενές όνομα, όχι και τα δύο. Κανονικά ονόματα
promptαπαιτείται
reference_image_urlsπροαιρετικό
images
reference_audio_urlsπροαιρετικό
durationπροαιρετικό
seedπροαιρετικό
aspect_ratioπροαιρετικό
resolutionπροαιρετικό
audioπροαιρετικό
enable_safety_checkerπροαιρετικό
Οι παράμετροι αρχείων δέχονται ένα δημόσιο URL https://, ένα URI data: έως 10 MB ή το file_url μιας μεταφόρτωσης. Αρχεία
Έξοδος
{
"id": "req_8k2m4q7x1z9c3v5b6n0p2r4t",
"object": "request",
"model": "vidu/q4/reference-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": 333,
"usd": "0.333",
"charged": 333,
"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
},
"cover_image": {
"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
},
"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.com/v1/requests/req_8k2m4q7x1z9c3v5b6n0p2r4t",
"cancel": "https://api.doitong.com/v1/requests/req_8k2m4q7x1z9c3v5b6n0p2r4t/cancel"
}
}
Πεδία εξόδου
- video
- object {url, content_type, file_name, file_size}Βίντεο που παρήγαγε το μοντέλο Q4 Preview με χρήση αναφορών.
- cover_image
- object {url, content_type, file_name, file_size, width, height} | nullΕικόνα εξωφύλλου για το τελικό βίντεο.
- seed
- integerΤυχαίο seed που εφαρμόζεται κατά την παραγωγή.
Άλλες παραλλαγές του Vidu Q4
Περισσότερα μοντέλα: Αναφορά σε βίντεο
Για πράκτορες AI: αυτή η σελίδα σε Markdown βρίσκεται στη διεύθυνση https://doitong.com/el/developers/models/vidu/q4/reference-to-video.md. Όλα τα μοντέλα και οι οδηγοί: https://doitong.com/developers/llms.txt