Dokumentacja programisty UlazAI
Google Veo 3.1 Generowanie wideo API
Google Veo 3.1 Generowanie wideo API
Generuj filmy za pomocą Veo 3.1, korzystając z obsługiwanych elementów sterujących ramkami i przepływu pracy według stanu zadania.
✨ NOWOŚĆ: Veo 3.1 Lite, Fast i Quality są dostępne z kontrolą pierwszej i ostatniej klatki.
✨ Funkcje Veo 3.1
✅ Trzy opcje modelu - Lite, szybkie i wysokiej jakości
✅ Kontrola ramki - Ustaw obrazy pierwszej i ostatniej klatki
✅ Tekst na wideo i obraz-wideo
✅ 8-sekundowe filmy z natywnym dźwiękiem
✅ Obsługa znaku wodnego - Dodaj tekst marki
✅ Opcjonalny tryb awaryjny dla drugiej próby modelu
✅ Automatyczne tłumaczenie na angielski
✅ Wiele proporcji (16:9, 9:16, automatyczny)
💰 Ceny
💸 Veo 3.1 Lite
40 kredyty
Tryb o najlepszej wartości
Tekst na wideo + obraz na wideo
⚡ Veo 3.1 Fast
100 kredyty
~0,92 USD za film
Czas zależy od kolejki
💎 Jakość Veo 3.1
220 kredyty
~ 2,31 USD za film
Czas zależy od kolejki
🛡️ Tryb awaryjny
+200 kredyty
Opcjonalny dodatek
Powrót nie gwarantuje sukcesu
/veo31/api/generate/
Wygeneruj wideo Veo 3.1
Utwórz 8-sekundowy film za pomocą Google Veo 3.1, używając tekstu prompt i opcjonalnych ramek obrazu.
Treść żądania
{
"prompt": "A golden retriever running through a field of flowers at sunset",
"model": "veo3_lite", // Options: "veo3_lite", "veo3_fast", "veo3"
"aspectRatio": "16:9", // Options: "16:9", "9:16", "Auto"
"imageUrls": [], // Optional: Array of 1-2 image URLs
"seeds": 42069, // Optional: 10000-99999 for reproducible results
"watermark": "UlazAI", // Optional: Max 50 characters
"enableFallback": false, // Optional fallback attempt; check current extra credits
"enableTranslation": true // Optional: Auto-translate to English
}
Parametry
prompt * (ciąg)
Tekstowy opis filmu do wygenerowania. Maks. 5000 znaków. Opisz działania, ruchy kamery i atmosferę.
modelka * (ciąg)
Model do wykorzystania: veo3_lite (40 kredyty), veo3_fast (100 kredyty) lub veo3 (220 kredyty)
współczynnik proporcji (ciąg)
Proporcje wideo: 16:9 (krajobraz), 9:16 (portret), Auto (automatyczne). Domyślny: 16:9
adresy URL obrazu (tablica)
Opcjonalna tablica 1-2 adresów URL obrazów do kontroli ramek:
• 1 obraz: wideo skupia się wokół tego obrazu
• 2 obrazy: przejścia wideo od pierwszej do ostatniej klatki
Maksymalnie 10 MB na obraz, tylko JPG/PNG
nasiona (liczba całkowita)
Opcjonalne nasiona dla powtarzalnych wyników. Zakres: 10000-99999
znak wodny (ciąg)
Opcjonalny tekst znaku wodnego do nałożenia na wideo. Maks. 50 znaków. Świetne dla marki.
włącz opcję Fallback (wartość logiczna)
Włącz opcjonalną próbę modelu zapasowego. Sprawdź aktualny koszt dodatkowego kredytu; powrót nie gwarantuje ukończenia. Domyślnie: false
włącz tłumaczenie (wartość logiczna)
Aby uzyskać najlepsze rezultaty, automatycznie przetłumacz prompt na język angielski. Obsługuje wszystkie języki. Domyślnie: true
Odpowiedź na sukces (201)
{
"success": true,
"data": {
"task_id": "veo31_abc123def456",
"status": "processing",
"model": "veo3_fast",
"credits_charged": 100,
"credits_remaining": 900,
"estimated_time": "varies by queue",
"message": "Veo 3.1 video generation started successfully"
}
}
Odpowiedź na błąd (400)
{
"success": false,
"error": "Insufficient credits. Required: 100, Available: 50"
}
cURL Przykład — zamiana tekstu na wideo
curl -X POST https://ulazai.com/veo31/api/generate/ \
-H "Authorization: Token YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"prompt": "A golden retriever running through a field of flowers at sunset, slow motion, cinematic lighting",
"model": "veo3_fast",
"aspectRatio": "16:9",
"watermark": "MyBrand",
"enableTranslation": true
}'
cURL Przykład — przetwarzanie obrazu na wideo z kontrolą klatek
curl -X POST https://ulazai.com/veo31/api/generate/ \
-H "Authorization: Token YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"prompt": "The character slowly turns their head and smiles at the camera",
"model": "veo3",
"aspectRatio": "16:9",
"imageUrls": ["https://your-domain.com/start-frame.jpg"],
"seeds": 42069,
"enableFallback": true
}'
Przykład Pythona
import requests
import time
API_KEY = "your_api_key_here"
BASE_URL = "https://ulazai.com"
# Generate video
response = requests.post(
f"{BASE_URL}/veo31/api/generate/",
headers={
"Authorization": f"Token {API_KEY}",
"Content-Type": "application/json"
},
json={
"prompt": "A serene mountain lake at sunrise with mist rising from the water",
"model": "veo3_fast",
"aspectRatio": "16:9",
"watermark": "MyBrand"
}
)
data = response.json()
if data["success"]:
task_id = data["data"]["task_id"]
print(f"Task created: {task_id}")
# Poll for completion
while True:
status_response = requests.get(
f"{BASE_URL}/veo31/api/status/{task_id}/",
headers={"Authorization": f"Token {API_KEY}"}
)
status_data = status_response.json()
if status_data["data"]["status"] == "completed":
video_url = status_data["data"]["video_url"]
print(f"Video ready: {video_url}")
break
elif status_data["data"]["status"] == "failed":
print(f"Generation failed: {status_data['data']['error_message']}")
break
time.sleep(5) # Poll every 5 seconds
else:
print(f"Error: {data['error']}")
/veo31/api/status/<task_id>/
Sprawdź status generacji
Sprawdź status zadania generowania wideo Veo 3.1.
Odpowiedź - przetwarzanie
{
"success": true,
"data": {
"task_id": "veo31_abc123def456",
"status": "processing",
"model": "veo3_fast",
"prompt": "A golden retriever running through flowers",
"credits_charged": 100
}
}
Odpowiedź - ukończono
{
"success": true,
"data": {
"task_id": "veo31_abc123def456",
"status": "completed",
"video_url": "https://cdn.ulazai.com/videos/veo31_abc123.mp4",
"thumbnail_url": "https://cdn.ulazai.com/videos/veo31_abc123_thumb.jpg",
"resolution": "1080p",
"duration": 8,
"aspect_ratio": "16:9",
"fallback_used": false,
"credits_charged": 100
}
}
Odpowiedź - nie powiodło się
{
"success": true,
"data": {
"task_id": "veo31_abc123def456",
"status": "failed",
"error_message": "Content policy violation. Enable fallback mode to retry.",
"credits_refunded": 100
}
}
Przykład cURL
curl -X GET https://ulazai.com/veo31/api/status/veo31_abc123def456/ \
-H "Authorization: Token YOUR_API_KEY"
/veo31/api/upload-frame/
Prześlij obraz ramki
Prześlij obraz do kontroli klatek (pierwsza lub ostatnia klatka). Zwraca adres URL do użycia w generowanym punkcie końcowym.
Żądanie (wieloczęściowe/dane formularza)
Content-Type: multipart/form-data
image: (binary file data)
Parametry
obraz * (plik)
Plik obrazu do przesłania. Maks. 10MB. Obsługiwane formaty: JPG, PNG. Zalecana rozdzielczość: 1920x1080 lub wyższa.
Odpowiedź na sukces (200)
{
"success": true,
"url": "https://cdn.ulazai.com/uploads/frame_abc123.jpg",
"message": "Image uploaded successfully"
}
Przykład cURL
curl -X POST https://ulazai.com/veo31/api/upload-frame/ \
-H "Authorization: Token YOUR_API_KEY" \
-F "image=@/path/to/your/image.jpg"
Kody stanu
200 OK - Żądanie powiodło się
201 Utworzono - Zadanie generowania zostało utworzone pomyślnie
400 Złych żądań - Nieprawidłowe parametry lub niewystarczające kredyty
401 Nieautoryzowane - Brakujący lub nieprawidłowy klucz API
404 Nie znaleziono — Nie znaleziono identyfikatora zadania
413 Ładunek za duży - Obraz przekracza limit 10MB
429 Za dużo żądań - Przekroczono limit stawki
500 Wewnętrzny błąd serwera - Błąd serwera, skontaktuj się z pomocą techniczną
Wartości statusu zadania
w toku - Zadanie utworzone, oczekuje na rozpoczęcie
przetwarzanie - Trwa generowanie wideo
ukończone - Generowanie wideo powiodło się, dostępny jest adres video_url
nie powiodło się - Generowanie nie powiodło się, kredyty zostaną automatycznie zwrócone
💡 Najlepsze praktyki
Użyj opisowych prompt
Dołącz szczegółowe informacje o akcjach, ruchach kamery, oświetleniu i atmosferze. Przykład: „zbliżenie spadających kropelek wody w zwolnionym tempie, oświetlone złotym zachodem słońca, płytka głębia ostrości”
Włącz rezerwę dla ważnych treści
W przypadku ważnych zadań rozważ opcjonalną próbę zastępczą i nadal obsługuj nieudane lub odrzucone generacje w swoim przepływie pracy.
Aby uzyskać konsystencję, użyj nasion
Jeśli chcesz ponownie wygenerować podobne filmy, użyj tej samej wartości początkowej (10000–99999), aby uzyskać bardziej spójne wyniki.
Kontrola ramek dla brandingu
Prześlij 1 obraz, aby wyśrodkować wokół niego film, lub 2 obrazy, aby zapewnić płynne przejście. Idealny do spójnych filmów o postaciach lub produktach.
Stan ankiety sprawnie
Odpytuj co 5 sekund w trybie szybkim, 10 sekund w trybie jakości. Nie odpytuj częściej, aby uniknąć ograniczeń szybkości.
📝 Przykład Prompt
✅Dobry Prompt
„Majestatyczny orzeł szybuje nad ośnieżonymi górami o świcie, złote światło oświetla jego skrzydła, ujęcie śledzące z dołu kamerą w zwolnionym tempie, kompozycja kinowa”
✅Dobry Prompt
„Zbliżenie na baristę nalewającego latte art, parę unoszącą się z filiżanki, ciepłe oświetlenie kawiarni, płytką głębię ostrości, perspektywę obiektywu makro”
❌ Słaby Prompt
„latający orzeł”
Zbyt niejasne – brakuje szczegółów dotyczących ustawienia, ruchu i kąta kamery
Potrzebujesz pomocy?
Masz problemy z Veo 3.1 API? Jesteśmy tutaj, aby pomóc!