sora-2
A Sora 2 szövegből vagy képreferenciából készít videót szinkronizált párbeszéddel, hangeffektekkel és háttérhangokkal. Az alapváltozat vizuális kísérletezéshez és koncepcióvideókhoz használható; a készítő külön munkafolyamatokat biztosít az újrafelhasználható, nem emberi karakterekhez, a folytatáshoz és a célzott videószerkesztéshez.
- Ailoot Ultra · Chat Completions
POST /v1/chat/completionssora-2 - Ailoot Ultra · Anthropic Messages
POST /v1/messagessora-2
A modellről
Ez a leírás a modell képességeit ismerteti. Az Ailootban elérhető bemenetek, kimenetek és lehetőségek alább, a kiválasztott metódusnál láthatók.
A Sora 2 az OpenAI videó- és hanggeneráló modellje, amely írásos jelenetleírásból vagy képreferenciából készít dinamikus klipeket. A képsort a szinkronizált beszéddel, effektekkel és háttérhangokkal együtt generálja. Az alap Sora 2 profil vizuális kísérletezésre, koncepciófejlesztésre, prototípusokra és nyersvágatokra készült. A Sora 2 Pro külön kiadás, amely nagyobb képi hűséget és magasabb felbontású véglegesítést céloz.
Írj le egy látható és hallható beállítást
A készítő promptútmutatója a hasznos briefet a képkivágás, a főtéma, a cselekvés, a helyszín és a fény köré rendezi. Adj a jelenetnek egységes vizuális stílust, majd világos ütemekben írd le a mozgást. Egy eredeti termékkoncepció például bemutathat egy kis mechanikus tárgyat, amely egyszer megfordul a munkapadon, miközben a kamera lassan közelít, lágy ablakfénnyel és finom motorhanggal. Mondd meg, mire figyeljen a néző, és hogyan érjen véget a cselekvés.
Minden beállítás kameramozgása és a főtéma cselekvése legyen érthető. Egy összetett képsort külön beállításblokkokra bonthatsz, amelyeknek saját képkivágásuk, cselekvésük és világításuk van. Ha több klipből egyetlen képsort állítasz össze, őrizd meg ugyanazokat a főtémarészleteket és színpalettát. Az útmutató hangsúlyozza, hogy a rövidebb beállítások általában megbízhatóbban követik az utasításokat, és ugyanannak a promptnak az ismételt generálása eltérő változatokat ad.
A modell bemutatása javított fizikai viselkedést és beállítások közötti folytonosságot ír le, realisztikus, filmes és anime stílusokban is. Ezek olyan tervezett képességek, amelyeket irányítani és ellenőrizni kell. Vizsgáld meg a mozgást, a tárgyak érintkezését, az arányokat és a folytonosságot; ne feltételezd, hogy egy hihető első képkocka összefüggő képsort garantál. Ha egy cselekvés nem világos, egyszerűsítsd, és adj neki látható kezdő- és végpontot.
Irányítsd külön a párbeszédet és a hangot
A kimondandó mondatokat a vizuális leírástól elkülönítve add meg, és következetesen jelöld a beszélőket. A párbeszéd legyen elég rövid ahhoz, hogy illeszkedjen a cselekvéshez és a tervezett kliphosszhoz. Kétkarakteres animációnál váltogass egy rövid kérdést és választ, ahelyett hogy hosszú beszédet zsúfolnál egy rövid beállításba. Az útmutató figyelmeztet, hogy az összetett, hosszú párbeszéd felboríthatja a tempót és a szinkronizációt.
Írd le a jelenethez illő hangkörnyezetet: egy apró mozdulat hangját, a helyiség atmoszféráját vagy egy környezeti hatás ritmusát. Határozd meg, melyik hang essen egybe a cselekvéssel. Hallgasd meg a létrejött beszédet és effekteket a képpel együtt, ellenőrizve a beszélők hozzárendelését, a szöveget és az időzítést. A szinkronizált hang a generált klip része, nem külön szöveges válasz.
Méret, időtartam és képpel vezérelt nyitás
Az alapmodell dokumentált kimeneti méretei álló formátumban 720×1280, fekvő formátumban 1280×720. A Pro profil nagyobb felbontású méretei nem rendelhetők az alap Sora 2 változathoz. A méret és az időtartam külön kérésbeállítás; attól, hogy a promptban más méretet vagy hosszabb filmet kérsz, ezek a beállítások nem változnak meg. A létrehozási referencia 4, 8 és 12 másodperces klipbeállításokat sorol fel, ezért egy beállítás előkészítésekor válassz rövid, jól meghatározott mozzanatot. A kibővített készítői munkafolyamat 16 és 20 másodperces klipbeállításokat is dokumentál.
A képreferencia rögzíti az első képkocka kiindulását, a szöveg pedig leírja, mi történik utána. A készítő JPEG, PNG és WebP referenciákat támogat, és megköveteli, hogy a kép mérete egyezzen a célvideó méretével. A nyitóképen készítsd elő a főtémát, a környezetet és a kompozíciót, majd kérj konkrét mozgást. Ez a nyitóképkocka referenciája, és nem garantálja minden részlet egyezését a klip teljes hosszában.
Újrafelhasználható, nem emberi karakterek
A kibővített készítői munkafolyamat egy állatról, kabalafiguráról vagy tárgyról készült rövid referenciavideóból újrafelhasználható karakterelemet hozhat létre. Az előkészítési útmutató körülbelül két–négy másodperces, 720p és 1080p közötti MP4 klipet kér, 16:9 vagy 9:16 képaránnyal. A forrás és a kimenet azonos képaránya segít elkerülni a nyújtott megjelenést. A generálás legfeljebb két karakterre hivatkozhat.
Őrizd meg a karakterazonosítót, és említsd meg a karakter nevét a promptban; az azonosító önmagában történő átadása nem teljesíti az útmutató teljes előkészítését. A karakterelemek képpel vezérelt generálásban is használhatók, a videófolytatások azonban nem fogadják el őket. A készítő alapértelmezés szerint blokkolja az emberi hasonmást ábrázoló karakterfeltöltéseket, és a dokumentált API-folyamatban elutasítja az emberi arcot tartalmazó referenciaképeket. A Sora alkalmazás személyeskarakter-funkciói külön termékmunkafolyamathoz tartoznak.
Folytass vagy szerkessz egy elkészült klipet
A hosszabbítás egy elkészült forrásvideót és egy folytatási promptot használ, és a teljes forrásklipet a mozgás, a kamera iránya és a jelenet folytonossága szempontjából kontextusként veszi figyelembe. Az útmutató hosszabbításonként legfeljebb 20 másodperces hozzáadást ír le. A dokumentált hosszabbítás bemenete a forrásvideó és a szöveg; ebben a módban további karakter- vagy képreferenciák nem adhatók meg. Írd le, hogyan folytatódjon a meglévő cselekvés, ahelyett hogy átmenet nélkül egy független jelenetet vezetnél be.
A videószerkesztés egy meglévő klip egyértelmű módosítását célozza. Egy célzott átdolgozás megváltoztathatja egy tárgy színét vagy a jelenet palettáját, miközben a beállítás többi részét megőrzi. A készítő útmutatója egyszerre egy jól meghatározott módosítást javasol, és megkülönbözteti a generált videó szerkesztését a tetszőleges felvétel feltöltésétől, amelyre külön jogosultsági feltétel vonatkozik. Tartsd meg az elkészült forrást, és újabb szerkesztés előtt nevezd meg a szükséges pontos módosítást.
Renderelési feladatok és az elkészült videó
A dokumentált készítői videófolyamat aszinkron: a beküldött feladat várólistára kerülhet vagy folyamatban lehet, mielőtt befejeződik vagy hibával leáll. A befejezett feladat MP4 videót ad; a bélyegkép- és sprite-sheet-elemek az előnézetet és a böngészést segítik. Kapcsold össze a feladat azonosítóját a prompttal, a referenciákkal és a visszaadott fájlokkal. A feladat kezdeti válasza nem a végleges, lejátszható videó.
A szokásos letöltési munkafolyamat a letöltési URL egyórás élettartamát írja le. A kibővített kötegelt munkafolyamat egymástól független JSON renderelési kéréseket készít elő stabil elemazonosítókkal, feltöltött referenciákkal és az egyes beállításokhoz visszarendelt eredményekkel; az elkészült fájlokhoz külön, legfeljebb 24 órás letöltési időszak tartozik. Mentsd el mielőbb az elkészült klipet, és vizsgáld meg a tényleges képet és hangot, mielőtt kiválasztott változatként kezeled.
A készítő dokumentált API-tartalmi korlátozásai 18 év alatti közönségnek is megfelelő anyagot követelnek meg, és elutasítják a szerzői joggal védett karaktereket vagy zenét, valamint valós személyek generálását. Ennek megfelelően készítsd elő a jelenetet és a referenciákat. A modell közvetlen eredménye hangos videó, nem generált állókép, társalgási eszközválasz vagy korlátlan hosszúságú film. Egy vizuális koncepció folytatásakor őrizd meg a pontos alapmodell-azonosságot és az elfogadott forrásklipet.
Ailoot Ultra · Chat Completions POST /v1/chat/completions sora-2
sora-2Kezdő lépések
A Sora 2 szövegből vagy képreferenciából készít videót szinkronizált párbeszéddel, hangeffektekkel és háttérhangokkal. Az alapváltozat vizuális kísérletezéshez és koncepcióvideókhoz használható; a készítő külön munkafolyamatokat biztosít az újrafelhasználható, nem emberi karakterekhez, a folytatáshoz és a célzott videószerkesztéshez.
- Elfogadott bemenetek
- Szöveg
- Eredmények
- json · sse
Elérhető az Ailootban · bemenetek és metódusok
Ailoot Ultra · Chat Completions POST /v1/chat/completions
- Bemenet
text- Kimenet
json,sse- Kimeneti formátum
- JSON vagy text/event-stream
| Mező | Típus | Követelmény | Értékek és korlátok | Alapértelmezett |
|---|---|---|---|---|
Mezőmodel | Típusstring | KövetelményKötelező | Értékek és korlátok sora-2 | Alapértelmezett— |
Mezőmessages | Típusmessage[] | KövetelményKötelező | Értékek és korlátok | Alapértelmezett— |
Mezőmessages[].role | Típusstring | KövetelményKötelező | Értékek és korlátok | Alapértelmezett— |
Mezőmessages[].content | Típusstring | KövetelményKötelező | Értékek és korlátok | Alapértelmezett— |
Mezőstream | Típusboolean | KövetelményOpcionális | Értékek és korlátok | Alapértelmezettfalse |
Bemeneti anyagok kombinációi
owned_text_messages
Metódus paraméterei és életciklusa
| Paraméter | Szerződés |
|---|---|
Paramétercontent_type | Szerződésapplication/json |
Paraméterrequired | Szerződésmodel, messages |
Paramétermaterial_types | Szerződéstext |
Paramétermessages | Szerződésüzenettömb szereppel és szó szerinti karakterlánc-tartalommal |
Paraméterfile_material | SzerződésA tényleges UTF-8 anyag szó szerinti karakterlánc-tartalomként illeszthető be; ez nem jelent feltételezett fájlhivatkozást. |
Paraméteroptional_controls | Szerződésstream |
Életciklus: synchronous_json_or_sse
Díjcsomagok
A díjszabás nem ad új kérési lehetőségeket. A támogatott paraméterek a kiválasztott módszernél szerepelnek.
- Gyors mód
- Nincs megadva Ha a gyors mód van kiválasztva
- Flex mód
- Nincs megadva Ha a flex mód van kiválasztva
- Maximális gondolkodási ráfordítás
- Nincs megadva Ha a maximális gondolkodási ráfordításra a default beállításhoz tartozó korrekció vonatkozik
Ailoot-díjak
Árak beállításonként
| Beállítás | Díjtáblázat | Díj |
|---|---|---|
| BeállításTokenenkénti alapárak | DíjtáblázatAlapdíj | Díj Bemenet · Bemeneti tokenek $0 / 1K token Kimenet · Kimeneti tokenek $0.2 / 1K token Bemenet · Gyorsítótár olvasása $0 / 1K token Bemenet · Írás a gyorsítótárba $0 / 1K token Bemenet · Írás a gyorsítótárba, 1 óra — / 1K token |
Az Ailoot a kérés előtt becsült összeget foglal le. Az eredmény után a mért használat alapján elszámolja a végső díjat. Folyamatos átvitel esetén a végső használati rekordot használja. A foglalás és az elszámolás működése →
Példakérések
Ailoot Ultra · Chat Completions
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
python3 - <<'PY_REQUEST'
import json,os
from pathlib import Path
p=json.loads('{"model":"sora-2","messages":[{"role":"user","content":"hello"}],"stream":false}')
Path("request.json").write_text(json.dumps(p,ensure_ascii=False))
PY_REQUEST
curl --fail-with-body --silent --show-error https://api.ailoot.ai/v1/chat/completions \
-H "Authorization: Bearer $AILOOT_API_KEY" -H 'Content-Type: application/json' \
--data-binary @request.json -D response-headers.txt -o result.json
python3 - <<'PY_RESULT'
from pathlib import Path
print(Path("result.json").read_text(encoding="utf-8"))
PY_RESULT
from openai import OpenAI
import os
if not os.environ.get("AILOOT_API_KEY", "").strip(): raise SystemExit("Set AILOOT_API_KEY before making a request")
client=OpenAI(base_url="https://api.ailoot.ai/v1",api_key=os.environ["AILOOT_API_KEY"],max_retries=0)
result=client.chat.completions.create(model="sora-2", messages=[{"role":"user","content":"hello"}], stream=False)
import json
from pathlib import Path
data = result.to_dict(mode="json")
Path("result.json").write_text(json.dumps(data, ensure_ascii=False, indent=2), encoding="utf-8")
print(json.dumps(data, ensure_ascii=False, indent=2))
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
python3 - <<'PY_REQUEST'
import json,os
from pathlib import Path
p=json.loads('{"model":"sora-2","messages":[{"role":"user","content":"hello"}],"stream":true}')
Path("request.json").write_text(json.dumps(p,ensure_ascii=False))
PY_REQUEST
curl --fail-with-body --silent --show-error https://api.ailoot.ai/v1/chat/completions \
-H "Authorization: Bearer $AILOOT_API_KEY" -H 'Content-Type: application/json' \
--data-binary @request.json -D response-headers.txt -o result.sse
Eredmények fogadása és mentése
Ailoot Ultra · Chat Completions
JSON vagy text/event-stream
Őrizzen meg minden elkészült eredményt
Őrizzen meg minden teljes visszaadott választ, fájlt és tartalomrészt.
Őrizze meg a teljes JSON- vagy SSE-bájttartalmat, a válaszfejléceket, a visszaadott felhasználási adatokat és minden megadott eredménymezőt. Ez nem állít modellspecifikus kimeneti családot.
Ha az eredeti választ ellenőrizni kell
Őrizze meg az eredeti választ és a próbálkozás azonosítóadatait; ebből nem következik új feladatállapot-lekérdezés vagy újraküldés.
Válaszmezők
| Mező | Típus | Jelentés |
|---|---|---|
Mezőcomplete response JSON | Típusobject | JelentésŐrizzen meg minden visszaadott mezőt, modellspecifikus eredménycsalád feltételezése nélkül. |
MezőSSE data events | Típusstream | JelentésŐrizzen meg minden visszaadott eseményt és lezáró jelölőt, ne válassza ki kizárólag a szövegmezőket. |
Álnevek
Modell álnevei
Ailoot Ultra sora-2
Metódusútvonalak álnevei
Használja a fent látható metódusútvonalakat.
Kapcsolódó modellazonosítók
Ailoot Ultra · Anthropic Messages POST /v1/messages sora-2
sora-2Kezdő lépések
A Sora 2 szövegből vagy képreferenciából készít videót szinkronizált párbeszéddel, hangeffektekkel és háttérhangokkal. Az alapváltozat vizuális kísérletezéshez és koncepcióvideókhoz használható; a készítő külön munkafolyamatokat biztosít az újrafelhasználható, nem emberi karakterekhez, a folytatáshoz és a célzott videószerkesztéshez.
- Elfogadott bemenetek
- Szöveg
- Eredmények
- json · sse
Elérhető az Ailootban · bemenetek és metódusok
Ailoot Ultra · Anthropic Messages POST /v1/messages
- Bemenet
text- Kimenet
json,sse- Kimeneti formátum
- JSON vagy SSE
| Mező | Típus | Követelmény | Értékek és korlátok | Alapértelmezett |
|---|---|---|---|---|
Mezőmodel | Típusstring | KövetelményKötelező | Értékek és korlátok sora-2 | Alapértelmezett— |
Mezőmessages | Típusmessage[] | KövetelményKötelező | Értékek és korlátok | Alapértelmezett— |
Mezőmessages[].role | Típusstring | KövetelményKötelező | Értékek és korlátok user, assistant | Alapértelmezett— |
Mezőmessages[].content | Típusstring | KövetelményKötelező | Értékek és korlátok | Alapértelmezett— |
Mezőmax_tokens | Típusinteger | KövetelményKötelező | Értékek és korlátok | Alapértelmezett— |
Mezőstream | Típusboolean | KövetelményOpcionális | Értékek és korlátok | Alapértelmezettfalse |
Bemeneti anyagok kombinációi
Szöveg · UTF-8 szöveg
messages[].content karakterlánc
Metódus paraméterei és életciklusa
| Paraméter | Szerződés |
|---|---|
Paramétercontent_type | Szerződésapplication/json |
Paraméterrequired | Szerződésmodel, messages, max_tokens |
Paraméteroptional_controls | Szerződésstream |
Paramétermaterial_types | Szerződéstext |
Paramétertext_file_material | SzerződésOlvassa el a tényleges UTF-8 dokumentumot, és tegye a szövegét a jelzett bemeneti karakterláncba vagy az üzenettartalom karakterláncába. |
Életciklus: synchronous_or_streamed
Díjcsomagok
A díjszabás nem ad új kérési lehetőségeket. A támogatott paraméterek a kiválasztott módszernél szerepelnek.
- Gyors mód
- Nincs megadva Ha a gyors mód van kiválasztva
- Flex mód
- Nincs megadva Ha a flex mód van kiválasztva
- Maximális gondolkodási ráfordítás
- Nincs megadva Ha a maximális gondolkodási ráfordításra a default beállításhoz tartozó korrekció vonatkozik
Ailoot-díjak
Árak beállításonként
| Beállítás | Díjtáblázat | Díj |
|---|---|---|
| BeállításTokenenkénti alapárak | DíjtáblázatAlapdíj | Díj Bemenet · Bemeneti tokenek $0 / 1K token Kimenet · Kimeneti tokenek $0.2 / 1K token Bemenet · Gyorsítótár olvasása $0 / 1K token Bemenet · Írás a gyorsítótárba $0 / 1K token Bemenet · Írás a gyorsítótárba, 1 óra — / 1K token |
Az Ailoot a kérés előtt becsült összeget foglal le. Az eredmény után a mért használat alapján elszámolja a végső díjat. Folyamatos átvitel esetén a végső használati rekordot használja. A foglalás és az elszámolás működése →
Példakérések
Ailoot Ultra · Anthropic Messages
{
"model": "sora-2",
"max_tokens": 128,
"messages": [
{
"role": "user",
"content": "Summarize the incident report."
}
],
"stream": false
}set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
: "${AILOOT_TEXT_FILE:?Set your actual UTF-8 document}"
export AILOOT_TEXT_FILE
python3 - <<'PY_REQUEST'
import json, os
from pathlib import Path
source_file = Path(os.environ['AILOOT_TEXT_FILE'])
if not source_file.is_file():
raise SystemExit('Set AILOOT_TEXT_FILE to your actual UTF-8 document')
text = source_file.read_text(encoding='utf-8')
if not text.strip():
raise SystemExit('Choose a document containing text')
payload = {'model': 'sora-2', 'max_tokens': 128, 'messages': [{'role': 'user', 'content': 'Summarize the incident report.'}]}
payload['messages'][0]['content'] = 'Summarize this material and quote supporting source passages.\n\n' + text
Path('request.json').write_text(json.dumps(payload, ensure_ascii=False), encoding='utf-8')
PY_REQUEST
curl --fail-with-body --silent --show-error https://api.ailoot.ai/v1/messages \
-H "x-api-key: $AILOOT_API_KEY" -H 'anthropic-version: 2023-06-01' -H 'Content-Type: application/json' \
--data-binary @request.json -D response-headers.txt -o result.json
python3 - <<'PY_RESULT'
import json
from pathlib import Path
result = json.loads(Path('result.json').read_text(encoding='utf-8'))
print(json.dumps(result, ensure_ascii=False, indent=2))
PY_RESULT
import json, os
from pathlib import Path
source_file = Path(os.environ['AILOOT_TEXT_FILE'])
if not source_file.is_file():
raise SystemExit('Set AILOOT_TEXT_FILE to your actual UTF-8 document')
text = source_file.read_text(encoding='utf-8')
if not text.strip():
raise SystemExit('Choose a document containing text')
payload = {'model': 'sora-2', 'max_tokens': 128, 'messages': [{'role': 'user', 'content': 'Summarize the incident report.'}]}
payload['messages'][0]['content'] = 'Summarize this material and quote supporting source passages.\n\n' + text
from urllib.request import Request, urlopen
from urllib.error import HTTPError
api_key = os.environ['AILOOT_API_KEY']
if not api_key.strip():
raise SystemExit('Set AILOOT_API_KEY before making a request')
headers = {'x-api-key': 'PLACEHOLDER_KEY', 'anthropic-version': '2023-06-01', 'Content-Type': 'application/json'}
headers['x-api-key'] = api_key
request = Request('https://api.ailoot.ai/v1/messages', data=json.dumps(payload, ensure_ascii=False).encode('utf-8'), headers=headers, method='POST')
try:
with urlopen(request, timeout=120) as response:
raw = response.read()
Path('response-headers.txt').write_text(str(response.headers), encoding='utf-8')
except HTTPError as error:
Path('result.json').write_bytes(error.read())
Path('response-headers.txt').write_text(str(error.headers), encoding='utf-8')
raise
Path('result.json').write_bytes(raw)
import json
from pathlib import Path
result = json.loads(Path('result.json').read_text(encoding='utf-8'))
print(json.dumps(result, ensure_ascii=False, indent=2))
Eredmények fogadása és mentése
Ailoot Ultra · Anthropic Messages
JSON vagy SSE
Őrizzen meg minden elkészült eredményt
Őrizzen meg minden teljes visszaadott választ, fájlt és tartalomrészt.
Őrizze meg az összes tartalomblokkot, a gondolkodási tartalom aláírásait és a tényleges eszközhasználati ID-kat. Állítsa össze az összes SSE-blokk részleges frissítését; az első szövegblokk nem a teljes kimenet.
Ha az eredeti választ ellenőrizni kell
Őrizze meg a kérés-/válaszazonosítókat és a fejléceket. Nincs megadva általános URL a szöveges feladatok lekéréséhez.
Válaszmezők
| Mező | Típus |
|---|---|
Mezőid | Típusstring |
Mezőmodel | Típusstring |
Mezőcontent[] | Típustext|thinking|tool_use|other content block |
Mezőstop_reason | Típusstring|null |
Mezőusage | Típusobject |
Hibák és következő lépések
| Válasz | Feltétel | Következő lépés |
|---|---|---|
Válasz400 · invalid_request_error | FeltételÉrvénytelen kötelező mezők, az anyag érvénytelen reprezentációja vagy érvénytelen paraméterérték | Következő lépésJavítsa a jelzett mezőket egy új létrehozási kérés előtt. |
Álnevek
Modell álnevei
Ailoot Ultra sora-2
Metódusútvonalak álnevei
Használja a fent látható metódusútvonalakat.
Kapcsolódó modellazonosítók
FAQ · sora-2
- Milyen bemenetek és eredmények érhetők el?
POST /v1/chat/completions·sora-2:text→json,ssePOST /v1/messages·sora-2:text→json,sse- Mely mezőket használja a kérés?
POST /v1/chat/completions·sora-2:model,messages,streamPOST /v1/messages·sora-2:model,messages,max_tokens,stream