Przejdź do treści

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

POST /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']}")
DOBIERZ /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"
POST /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!