ByteDance: Seedance 2.0
يولّد Seedance 2.0 الفيديو ويحرره باستخدام النصوص والصور ومراجع الفيديو والصوت. يمكنه متابعة لقطات موجودة وتوليد صوت متزامن، مع مدة 4–15 ثانية ومخرجات 480p أو 720p وأدوار صريحة للمراجع.
عن النموذج
يغطي هذا الوصف قدرات النموذج. وترد أدناه المدخلات والمخرجات والخيارات المتاحة في Ailoot للطريقة المحددة.
يولّد Seedance 2.0 فيديو من مشهد مكتوب أو مزيج من مراجع الصور والفيديو والصوت. يحدد معرّف الاختيار الدقيق doubao-seedance-2-0-260128 إصدار 2.0 القياسي. تشمل مسارات العمل الموثّقة توليد فيديو جديد والتحرير وتمديد لقطات موجودة. استخدم المراجع لتوصيل المظهر والحركة واللغة السينمائية للكاميرا والصوت، ثم حدّد أجزاء المشهد التي ينبغي أن تتحكم فيها.
يمكن تقديم النص وحده. وتتيح التوليفات متعددة الوسائط الموثّقة أيضًا الصور أو الفيديو مع نص اختياري، والصور مع الصوت، والفيديو مع الصوت، والصور والفيديو والصوت معًا. لذلك يرافق الصوت الوسائط البصرية في هذه التوليفات المدرجة؛ ولا يُوصف بوصفه طلبًا مستقلًا لتحويل الصوت إلى فيديو. اكتب النتيجة المقصودة بوضوح حتى حيث يكون النص اختياريًا، لكي يكون دور كل مرجع صريحًا بدل تركه للاستنتاج من مواد غير مترابطة.
تميّز مصفوفة content بين عناصر text وimage_url وvideo_url وaudio_url. تستخدم المراجع متعددة الوسائط أدوارًا مثل reference_image وreference_video وreference_audio. يمكن للصورة تحديد الشخص أو الشيء أو الموقع أو المظهر. ويمكن لفيديو إظهار أداء أو حركة أو منظور كاميرا، وللصوت تحديد مسار صوتي أو توقيت. حدّد الإسناد في الموجز: حافظ على الموضوع من الصورة، واتبع منظور الكاميرا في الفيديو، واستخدم الصوت خلفيةً. لا تطلب من كل مرجع تحديد كل الخصائص في وقت واحد.
يجمع المثال الإعلاني الموثّق صورتين لمنتج مع فيديو ومرجع صوتي. يصف منظرًا افتتاحيًا وتسلسل فعل وتفصيلًا قريبًا للمنتج وتكوينًا ختاميًا، مع الحفاظ على اتساق الصوت الخلفي. يمكن للبنية نفسها تنظيم عرض قصير: أسّس الشيء، وأظهر فعلًا واحدًا، واختم بميزته المميزة. للتحرير، حدّد اللقطات المصدرية والعنصر الذي يجب تغييره؛ وللتمديد، اشرح الفعل الذي يستمر بعد المشهد الموجود مع الحفاظ على الموضوع واتجاه الحركة.
يوثّق إصدار 2.0 مدة بأعداد صحيحة من الثواني من أربع إلى خمس عشرة، أو -1 لمدة تُختار تلقائيًا ضمن ذلك النطاق. القيمة الافتراضية خمس ثوانٍ. خيارات الدقة هي 480p و720p، مع 720p افتراضيًا؛ وتُستبعد 1080p لـ2.0. تشمل نسب الأبعاد الثابتة 16:9 و4:3 و1:1 و3:4 و9:16 و21:9. يمكن لنسبة adaptive اختيار التأطير من الموجّه أو المرجع: يتبع العمل بالإطار الأول الصورة الافتتاحية، ويستخدم العمل متعدد الوسائط المشهد المقصود أو أول وسيط ذي صلة، مع أولوية الفيديو على الصور. تحقّق من نتيجة المهمة لمعرفة النسبة والمدة الفعليتين.
يُتحكم في الصوت المولّد منفصلًا عن الوسائط المرجعية. يطلب generate_audio=true أصواتًا ومؤثرات وموسيقى خلفية متزامنة وفق النص والمحتوى البصري؛ ويطلب false فيديو صامتًا. القيمة الافتراضية الموثّقة true، ويُوصى بوضع الحوار بين علامتي اقتباس للكلام المنطوق. حدّد من يتحدث وكيف يرتبط الصوت بالفعل الظاهر، ثم افحص الكلمات الفعلية وإسناد الأصوات والتوقيت. تقديم مرجع صوتي وتفعيل الصوت المولّد خياران متميزان في الطلب.
يستبعد دليل 2.0 عنصري التحكم الأقدم frames وcamera_fixed، ولا يدعم معالجة flex غير المتصلة. استخدم حقل duration وصف حركة الكاميرا ضمن المشهد نفسه. يظل seed والعلامة المائية عنصرين موثّقين للتحكم؛ ويقول الدليل إن الطلب نفسه وقيمة seed نفسها قد ينتجان نتائج متشابهة دون ضمان التطابق التام. تجنّب اعتبار seed دليلًا على قابلية إعادة الإنتاج، أو اعتبار طلب مكرر مقطعًا فُحص بالفعل.
يُحسب استخدام رموز الفيديو وفق الصيغة: (مدة فيديو الإدخال + مدة الفيديو الناتج) × عرض الفيديو الناتج × ارتفاع الفيديو الناتج × معدل إطارات الفيديو الناتج / 1024. للطلبات التي تتضمن فيديو إدخال وتلك التي لا تتضمنه فئات فوترة متميزة. يُبلغ الاستعلام عن المهمة عن usage.completion_tokens وusage.total_tokens؛ احتفظ بهذه الكميات المبلّغ عنها مع المقطع المكتمل.
سير العمل غير متزامن: يُرجع الإرسال معرّف مهمة، وتوفر المهمة المكتملة content.video_url إلى جانب المدة والدقة والنسبة ومعدل الإطارات واستخدام الرموز المبلّغ عنها. احتفظ بالمعرّف واحفظ الفيديو المكتمل مع المراجع والموجّه الأصليين. القيمة الافتراضية لحقل انتهاء الصلاحية 172800 ثانية ويقبل 3600–259200 ثانية من إنشاء المهمة؛ وتصبح المهمة التي تتجاوز المهلة منتهية الصلاحية. راجع المخرجات كلها، بما في ذلك موضع وصل التحرير أو المتابعة، من حيث مظهر الشخصيات وتفاصيل الأشياء والعلاقات المكانية واستمرارية الكاميرا وتزامن الصوت مع الصورة.
Ailoot Ultra · فيديو POST /v1/videos doubao-seedance-2-0-260128
doubao-seedance-2-0-260128البداية
يولّد Seedance 2.0 الفيديو ويحرره باستخدام النصوص والصور ومراجع الفيديو والصوت. يمكنه متابعة لقطات موجودة وتوليد صوت متزامن، مع مدة 4–15 ثانية ومخرجات 480p أو 720p وأدوار صريحة للمراجع.
- المدخلات المقبولة
- النص · الصور · فيديو · الصوت
- النتائج
- فيديو
متاح في Ailoot · المدخلات والطرائق
Ailoot Ultra · فيديو POST /v1/videos
- الإدخال
text,image,video,audio- الإخراج
video
| الحقل | النوع | المتطلب | القيم والحدود | القيمة الافتراضية |
|---|---|---|---|---|
الحقلmodel | النوعstring | المتطلبمطلوب | القيم والحدود doubao-seedance-2-0-260128 | القيمة الافتراضية— |
الحقلcontent | النوعarray | المتطلبمطلوب | القيم والحدود الشروط: كائنات نصية أو وسائط بصيغتها الأصلية؛ يجب ألا تكون المصفوفة الخارجية فارغة. لا يتحقق مُنشئ الطلبات العام هذا في Ailoot من أنواع العُقد المتداخلة. | القيمة الافتراضية— |
الحقلgenerate_audio | النوعboolean | المتطلباختياري | القيم والحدود الشروط: صوت متزامن مضمّن في الفيديو. | القيمة الافتراضيةtrue |
الحقلduration | النوعinteger | المتطلباختياري | القيم والحدود الشروط: عدد صحيح 4–15 أو -1؛ تُعاد مدة المخرجات الفعلية. | القيمة الافتراضية5 |
الحقلresolution | النوعstring | المتطلباختياري | القيم والحدود 480p, 720p الشروط: يُنصّ صراحةً على عدم دعم دقة 1080p في 2.0/fast. | القيمة الافتراضية720p |
الحقلratio | النوعstring | المتطلباختياري | القيم والحدود 16:9, 4:3, 1:1, 3:4, 9:16, 21:9, adaptive الشروط: يقتصر نطاق adaptive صراحةً على 2.0/fast/1.5؛ ويستخدم مثال 2.5 نسبة 16:9 فقط. | القيمة الافتراضيةadaptive |
الحقلwatermark | النوعboolean | المتطلباختياري | القيم والحدود | القيمة الافتراضيةfalse |
الحقلseed | النوعinteger | المتطلباختياري | القيم والحدود الحد الأدنى: -1 الحد الأقصى: 4,294,967,295 | القيمة الافتراضية-1 |
الحقلexecution_expires_after | النوعinteger | المتطلباختياري | القيم والحدود الحد الأدنى: 3,600 الحد الأقصى: 259,200 الوحدة: ثوانٍ | القيمة الافتراضية172,800 |
الحقلservice_tier | النوعstring | المتطلباختياري | القيم والحدود default الشروط: يستبعد 2.0/fast نمط flex غير المتصل؛ ولم يُحدَّد نطاق 2.5. | القيمة الافتراضيةdefault |
الحقلsafety_identifier | النوعstring | المتطلباختياري | القيم والحدود | القيمة الافتراضية— |
الحقلtools | النوعobject | المتطلباختياري | القيم والحدود الشروط: خاص بـ2.0/fast فقط؛ والقيمة الموثّقة هي type=web_search. | القيمة الافتراضية— |
تركيبات مواد الإدخال
معلمات الطريقة ودورة حياتها
| المعلمة | المواصفات |
|---|---|
المعلمةcontent_type | المواصفاتapplication/json |
المعلمةrequired | المواصفاتcontent, model |
المعلمةoptional | المواصفاتgenerate_audio, duration, resolution, ratio, watermark, seed, execution_expires_after, service_tier, safety_identifier, tools |
المعلمةmaterial_types | المواصفاتtext, image, video, audio |
المعلمةadditional_properties | المواصفاتtrue |
المعلمةvalidation_scope | المواصفاتتتحقق Ailoot من أنواع الحقول المطلوبة ومن أن قيمة model ومصفوفة content غير فارغتين. تُحفظ حقول الطلب الأخرى للنموذج المختار. |
المعلمةmaterial_combinations | المواصفاتtext, image, video, image, audio, image, video, video, audio, image, video, audio |
المعلمةoptional_text_with_media | المواصفاتtrue |
المعلمةreference_media_count_and_size_limits | المواصفاتnull |
الأسماء البديلة للطريقة: /v1/videos/generations
دورة الحياة: submit_once_poll_original
GET /v1/videos/{request_id}
GET /v1/videos/generations/{request_id}
GET /v1/videos/{request_id}/content
GET /v1/videos/generations/{request_id}/content
أنشئ مرة واحدة واحتفظ بالقيم المُعادة للحقلين العامين id/polling_url.
استعلم دورياً عن المهمة الأصلية؛ ونزّل المحتوى الفعلي المملوك لك في content.video_url بعد succeeded.
الباقات
كيفية احتساب الرسوم النهائية
تقدّر التعرفات المعروضة التكلفة قبل التوليد. تُحسب الرسوم النهائية من التكلفة المسجّلة لعملية التوليد الأصلية. مدة المخرجات المقاسة والكميات المتوقعة ليست الكمية النهائية الخاضعة للفوترة.
مراجع التسعير لا تضيف خيارات للطلب. المعلمات المدعومة مذكورة للطريقة المحددة.
- الوضع السريع
- غير محدد عند اختيار الوضع السريع
- الوضع المرن
- غير محدد عند اختيار وضع flex
- أقصى جهد للاستدلال
- غير محدد عندما يُطبَّق الضبط الافتراضي default مع أقصى جهد للاستدلال
تعرفات تقديرية للمقارنة
الأسعار حسب الإعدادات
طابق كل رسم مع الشروط المعروضة. طبّق تعرفة واحدة لكل مجموعة من الإعدادات البديلة.
| الإعدادات | جدول التعرفة | الكمية المتوقعة | وحدة الفوترة | الرسوم |
|---|---|---|---|---|
| الإعداداتالتعرفات الأساسية للرموز | جدول التعرفةالتعرفة الأساسية | الكمية المتوقعة— | وحدة الفوترة— | الرسوم الإدخال · رموز الإدخال · تقدير للمقارنة فقط — / 1K من الرموز الإخراج · رموز الإخراج · تقدير للمقارنة فقط — / 1K من الرموز الإدخال · قراءة ذاكرة التخزين المؤقت · تقدير للمقارنة فقط — / 1K من الرموز الإدخال · الكتابة إلى ذاكرة التخزين المؤقت · تقدير للمقارنة فقط — / 1K من الرموز الإدخال · الكتابة إلى ذاكرة التخزين المؤقت، 1 ساعة · تقدير للمقارنة فقط — / 1K من الرموز |
| الإعداداتتتضمن المدخلات فيديو مرجعيًا. | جدول التعرفة— | الكمية المتوقعة— | وحدة الفوترةلكل 1K من رموز الفيديو | الرسوم الإخراج · تقدير للمقارنة فقط $0.0096 لكل 1K من رموز الفيديو |
| الإعداداتلا تتضمن المدخلات فيديو مرجعيًا. | جدول التعرفة— | الكمية المتوقعة— | وحدة الفوترةلكل 1K من رموز الفيديو | الرسوم الإخراج · تقدير للمقارنة فقط $0.015768 لكل 1K من رموز الفيديو |
| الإعداداتتكلفة التوليد التقديرية | جدول التعرفة— | الكمية المتوقعةتقدير لتوليد واحد | وحدة الفوترة— | الرسوم الإخراج · تكلفة التوليد التقديرية · تقدير للمقارنة فقط $0.822402 تقدير قبل الإنشاء هذا التقدير ليس رسومًا إضافية ولا تعرفة ثابتة لعملية التوليد المكتملة. |
تحجز Ailoot مبلغًا تقديريًا قبل الطلب. وبعد ظهور النتيجة، تُسوّي الرسوم النهائية بناءً على الاستخدام المقاس. وتستخدم تسوية البث سجل الاستخدام النهائي. كيفية عمل حجز المبلغ وتسوية الرسوم →
أمثلة للطلبات
Ailoot Ultra · فيديو
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
cat > request.json <<'JSON_REQUEST'
{"model":"doubao-seedance-2-0-260128","content":[{"type":"text","text":"女孩抱着狐狸,女孩睁开眼,温柔地看向镜头,狐狸友善地抱着,镜头缓缓拉出,女孩的头发被风吹动"}]}
JSON_REQUEST
curl --fail-with-body --silent --show-error https://api.ailoot.ai/v1/videos \
-H "Authorization: Bearer $AILOOT_API_KEY" -H 'Content-Type: application/json' \
--data-binary @request.json -D response-headers.txt -o result.json
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
python3 - <<'PY_POLL'
import json
from pathlib import Path
from urllib.parse import quote,urljoin,urlsplit
r=json.loads(Path("result.json").read_text())
i=r.get("id")
if not isinstance(i,str) or not i.startswith("native302_"):raise SystemExit("Keep original response/headers/id; do not resubmit creation.")
u=urljoin("https://api.ailoot.ai",r.get("polling_url") or "/v1/videos/"+quote(i,safe=""))
p=urlsplit(u)
if p.scheme!="https" or p.netloc!="api.ailoot.ai" or not p.path.startswith("/v1/videos/"):raise SystemExit("Use actual Ailoot lookup path.")
Path("poll-url.txt").write_text(u)
PY_POLL
curl --fail-with-body --silent --show-error "$(cat poll-url.txt)" -H "Authorization: Bearer $AILOOT_API_KEY" -D status-headers.txt -o status.json
set -eu
python3 - <<'PY_ASSETS'
import json
from pathlib import Path
from urllib.parse import urlsplit
r=json.loads(Path("status.json").read_text())
if r.get("status")!="succeeded":raise SystemExit("Poll same original job until an owned result is returned.")
u=r.get("content",{}).get("video_url")
urls=[u] if isinstance(u,str) else u
if not isinstance(urls,list) or not urls:raise SystemExit("No completed video URL.")
for u in urls:
if not isinstance(u,str):raise SystemExit("Invalid returned URL.")
p=urlsplit(u)
if p.scheme!="https" or p.netloc!="api.ailoot.ai" or not p.path.startswith("/v1/media/assets/") or not p.path.endswith("/content") or not p.query:raise SystemExit("Wait for actual Ailoot-owned signed result.")
Path("asset-urls.txt").write_text("\n".join(urls)+"\n")
PY_ASSETS
index=0
while IFS= read -r asset_url; do
curl --fail-with-body --silent --show-error "$asset_url" -o "video-${index}.bin"
index=$((index + 1))
done < asset-urls.txt
استلام النتائج وحفظها
Ailoot Ultra · فيديو
JSON أصلي يتضمن id/polling_url عامين. بعد النشر، يحتوي content.video_url على عنوان URL موقّع أو أكثر تابع لـAiloot؛ وقبل النشر تُفرَّغ عناوين URL للمخرجات المختارة.
GET /v1/videos/{request_id}GET /v1/videos/generations/{request_id}GET /v1/videos/{request_id}/contentGET /v1/videos/generations/{request_id}/content
الاحتفاظ بكل النتائج المكتملة
احفظ كل فيديو مكتمل أو ملف مُرجع؛ ونزّل كل أصل من URL الخاص به الذي تم إرجاعه فعليًا.
احتفظ بكل عنوان URL فعلي في content.video_url؛ ويجب أن يحدد index مخرجاً فعلياً مُعاداً.
عند الحاجة إلى التحقق من الاستجابة الأصلية
احتفظ بالاستجابة والترويسات والمعرّف الأصلية، واستعلم دورياً عن تلك العملية؛ ولا تعِد إرسال طلب إنشاء مجهول النتيجة مطلقاً.
حقول الاستجابة
| الحقل | النوع |
|---|---|
الحقلid | النوعstring |
الحقلprovider_task_id | النوعstring |
الحقلpolling_url | النوعstring |
الحقلstatus | النوعstring when supplied |
الحقلcontent.video_url | النوعstring|string[] |
الحقلusage | النوعobject when supplied |
الأخطاء والخطوات التالية
| الاستجابة | الشرط | الخطوة التالية |
|---|---|---|
الاستجابة400 · invalid_request_error | الشرطJSON أو النموذج أو أنواع الحقول المطلوبة أو فهرس المحتوى غير صالحة. | الخطوة التالية |
الاستجابة401 · authentication_error | الشرطمفتاح API الخاص بـAiloot غير صالح. | الخطوة التالية |
الاستجابة404 · not_found_error | الشرطالمهمة أو المخرج غير موجود، أو غير مملوك للمستخدم ومفتاح API والمجموعة نفسها. | الخطوة التالية |
الاستجابة502 · result_pending_check | الشرطالإرسال الأصلي أو حالته غير مكتملين؛ احتفظ بالمعرّف الأصلي ولا تعِد الإرسال. | الخطوة التالية |
الاستجابة503 · result_pending_check | الشرطالوسائط أو المسار أو التسوية الأصلية قيد التحقق؛ تابع العملية الأصلية. | الخطوة التالية |
الأسماء البديلة
الأسماء البديلة للنموذج
Ailoot Ultra doubao-seedance-2-0-260128
الأسماء البديلة لمسارات الطرائق
/v1/videos/generations
معرّفات النماذج ذات الصلة IDs
FAQ · ByteDance: Seedance 2.0
- ما المدخلات والنتائج المتاحة؟
POST /v1/videos·doubao-seedance-2-0-260128:text,image,video,audio→video- ما الحقول التي يستخدمها الطلب؟
POST /v1/videos·doubao-seedance-2-0-260128:model,content,generate_audio,duration,resolution,ratio,watermark,seed,execution_expires_after,service_tier,safety_identifier,tools- ما الحدود المطبقة؟
POST /v1/videos·doubao-seedance-2-0-260128:seed.minimum:-1;seed.maximum:4294967295;execution_expires_after.minimum:3600;execution_expires_after.maximum:259200