Luma API
Luma API on WaveSpeedAI — Ray 3.2 text-to-video, image-to-video, video edit and video reframing, earlier Ray 2 and Ray 1.6 models, and Uni v1 and Photon image generation and editing, all through one REST API.
Use Luma's Ray 3.2 for cinematic text-to-video and image-to-video with controllable aspect ratio, resolution and duration, re-render or reframe existing footage with video edit and video reframing, and generate or edit images with Uni v1 and Photon. Ray 2 and Ray 1.6 stay available for earlier workflows.
Überblick
Über Luma API
Was Luma leistet, wie es in die Modellpalette von Luma AI passt und warum Teams darauf zurückgreifen.
Luma ist ein Modell von Luma AI für Videogenerierung, verfügbar über die WaveSpeedAI-REST-API. Luma API on WaveSpeedAI — Ray 3.2 text-to-video, image-to-video, video edit and video reframing, earlier Ray 2 and Ray 1.6 models, and Uni v1 and Photon image generation and editing, all through one REST API.
Use Luma's Ray 3.2 for cinematic text-to-video and image-to-video with controllable aspect ratio, resolution and duration, re-render or reframe existing footage with video edit and video reframing, and generate or edit images with Uni v1 and Photon. Ray 2 and Ray 1.6 stay available for earlier workflows.
Die Familie Luma auf WaveSpeedAI umfasst 6 REST-Endpunkte für die Workflows Video-To-Video, Image-To-Video, Text-To-Video, Image-To-Image, Text-To-Image. Jede Variante hat eigene Preise, Parameter und Beispielausgaben – wählen Sie die, die zu Ihrer Eingabemodalität und Ihren Produktionsanforderungen passt, oder rufen Sie mit demselben API-Schlüssel mehrere auf, um mehrstufige Pipelines zu bauen.
Nutzen Sie Luma mit demselben API-Schlüssel, demselben Abrechnungskonto und denselben Rate Limits wie die über 1.000 weiteren KI-Modelle auf WaveSpeedAI. Keine separate Einrichtung bei Anbietern, keine SDKs pro Anbieter, keine Rate Limits pro Anbieter – eine Integration deckt alles ab, von Text-zu-Bild und Text-zu-Video über Audiosynthese, 3D-Generierung und Hochskalierung bis zur Bearbeitung.
Endpunkte
Alle Luma-API-Endpunkte
6 Luma-Endpunkte jetzt auf WaveSpeedAI verfügbar – wählen Sie die Variante, die zu Ihrem Workflow passt.
/filters:quality(82)/media/images/1782717317688496873_qX6fpyHQ.webp)
Ray 3.2 Video Edit
Luma Ray 3.2 Video Edit is a fast AI video-to-video editing model that re-renders an existing source video from a text prompt while preserving the original motion and timing. Ready-to-use REST inference API for video restyling, creative edits, product videos, advertising creatives, social media clips, visual storytelling, and professional video editing workflows with simple integration, no coldstarts, and affordable pricing.
/filters:quality(82)/media/images/1782717390795771980_eQLU3clv.webp)
Ray 3.2 Video Reframing
Luma Ray 3.2 Video Reframing is a fast AI video reframing model that changes an existing video’s aspect ratio and fills the newly exposed canvas from a prompt while preserving the source footage. Ready-to-use REST inference API for aspect ratio conversion, social media resizing, cinematic reframing, video outpainting, creator content, advertising creatives, and professional video editing workflows with simple integration, no coldstarts, and affordable pricing.
/filters:quality(82)/media/images/1781079452793266676_0T2d6enx.webp)
Ray 3.2 Image To Video
Luma Ray 3.2 Image to Video is a fast AI image-to-video generation model that animates a source image into cinematic video guided by a text prompt, with controllable aspect ratio, resolution, and duration. Ready-to-use REST inference API for image animation, cinematic clips, product videos, social media content, advertising creatives, visual storytelling, and professional image-to-video workflows with simple integration, no coldstarts, and affordable pricing.
/filters:quality(82)/media/images/1781079292182866010_NdMW5fpz.webp)
Ray 3.2 Text To Video
Luma Ray 3.2 Text to Video is a fast AI video generation model that creates cinematic videos from text prompts with controllable aspect ratio, resolution, and duration. Ready-to-use REST inference API for cinematic clips, storytelling videos, social media content, advertising creatives, product visuals, concept videos, and professional text-to-video workflows with simple integration, no coldstarts, and affordable pricing.
/filters:quality(82)/media/images/1781079512370971296_kmKPCCyz.webp)
Uni v1 Edit
Luma Uni v1 Edit is a fast AI image editing model that reworks source images from text instructions while preserving composition and supporting optional reference images. Ready-to-use REST inference API for photo editing, product image updates, creative retouching, marketing assets, brand visuals, style changes, and professional image editing workflows with simple integration, no coldstarts, and affordable pricing.
/filters:quality(82)/media/images/1781079484942032323_VCwGPY8i.webp)
Uni v1 Text To Image
Luma Uni v1 Text to Image is a fast AI image generation model that creates high-fidelity images from prompts with flexible aspect ratios, visual style control, and optional reference-image guidance. Ready-to-use REST inference API for creative design, marketing visuals, product mockups, brand assets, social media content, concept art, and professional text-to-image workflows with simple integration, no coldstarts, and affordable pricing.
Beispiele
Luma in Aktion
Echte Ausgaben der Luma-API. Fahren Sie über ein Video für eine Vorschau und klicken Sie, um den Viewer in voller Größe zu öffnen.
Anleitung
So verwenden Sie die Luma-API
Vier Schritte von der Registrierung bis zur fertigen Generierung. Vollständige Beispiele in Python, Node.js und cURL finden Sie unten im Abschnitt „API“.
- 01
API-Schlüssel holen
Registrieren Sie ein WaveSpeedAI-Konto und kopieren Sie Ihren API-Schlüssel aus dem Dashboard. Neue Konten erhalten kostenlose Start-Credits – genug, um den Playground einige Dutzend Mal zu nutzen, bevor die Abrechnung beginnt.
- 02
Prediction senden
Senden Sie Ihre Eingabe als JSON per POST an https://api.wavespeed.ai/api/v3/luma/ray-3.2/text-to-video. Der Endpunkt gibt sofort eine Prediction-ID zurück – Generierungen laufen asynchron, sodass Sie während der Inferenz keine Verbindung offen halten.
- 03
Auf Abschluss prüfen
GET https://api.wavespeed.ai/api/v3/predictions/{request_id}/result. Geben Sie bei „completed“ die Ausgaben zurück; brechen Sie bei „failed“, „cancelled“, „timeout“ oder „deleted“ mit einem Fehler ab; fragen Sie bei allen anderen Status weiter ab.
- 04
Ausgabe-URL lesen
Sobald der Status „completed“ ist, lesen Sie die URL aus data.outputs[0]. Die URL verweist auf Ihre generierten Medien im WaveSpeedAI-CDN – Bild, Video, Audio oder 3D-Datei, je nach aufgerufener Variante von Luma.
Anwendungsfälle
Was Sie mit Luma bauen können
Gängige Workflows, für die Entwickler und Kreative die Luma-API nutzen.
Cinematic text-to-video
luma/ray-3.2/text-to-video generates cinematic videos from text prompts with controllable aspect ratio, resolution, duration and optional reference images.
Animate a still image
luma/ray-3.2/image-to-video animates a source image into video guided by a text prompt, with the same aspect ratio, resolution and duration controls.
Restyle footage and keep the motion
luma/ray-3.2/video-edit re-renders an existing source video from a text prompt while preserving the source motion and timing.
Reframe video to a new aspect ratio
luma/ray-3.2/video-reframing changes a video's aspect ratio and fills the newly exposed canvas from a prompt while preserving the source footage.
Image generation and editing
luma/uni-v1/text-to-image generates images with aspect ratio, style, format and reference-image guidance; luma/uni-v1/edit transforms an input image from a text instruction while preserving composition.
Tipps
Tipps zum Prompting von Luma
Praktische Ratschläge für bessere Ausgaben von Luma – abgeleitet aus Mustern, die bei Video-Modellen in Produktions-Pipelines funktionieren.
- 01
Kamerabewegungen konkret benennen
Nennen Sie konkrete Kamera-Begriffe – Orbit, Dolly-in, Push-in, Pan-left, Kranfahrt, Handkamera-Verfolgung. Allgemeine Prompts führen zu statischen oder beliebigen Kameraentscheidungen; benannte Kamerabewegungen entsprechen direkt der Bewegungsabsicht in den Trainingsdaten des Modells und verbessern die Qualität der Einstellung erheblich.
- 02
Charakteridentität mit Referenzbildern verankern
Wenn Ihr Prompt von einer bestimmten Person, Figur oder einem Produkt abhängt, laden Sie zusätzlich zum Prompt ein Referenzbild hoch. Ohne Referenz driftet die Identität über Bilder und Einstellungen hinweg – dieselbe Figur sieht bei jeder Generierung wie eine etwas andere Person aus.
- 03
Licht und Tageszeit beschreiben
Lichthinweise wie „goldene Stunde, weiches warmes Richtungslicht“ oder „bedecktes diffuses Licht, schiefergrauer Himmel“ verbessern Qualität und Konsistenz weit stärker als vage Qualitätszusätze. Licht gehört zu den stärksten Priors, auf die das Modell konditioniert.
- 04
Negative Prompts nutzen, um häufige Fehlerbilder zu unterdrücken
Nützliche Negativ-Angaben für Video: „frame flicker, motion blur, watermark, text artifacts, distorted hands, low resolution, jpeg compression“. Negative Prompts kosten nichts und senken spürbar den Anteil der Generierungen, die Sie sonst neu würfeln würden.
- 05
Die kürzeste Dauer wählen, die Ihren Beat trägt
Die meisten Prompts funktionieren am besten bei 5–8 Sekunden. Längere Clips verstärken zeitliche Inkonsistenzen (Motiv verändert sich, Umgebung driftet). Wenn Sie eine Sequenz von 20 Sekunden brauchen, erzeugen Sie drei Clips von 6–8 Sekunden und schneiden Sie sie zusammen – die Qualität bleibt höher als bei einer langen Generierung.
- 06
Das Seitenverhältnis von Anfang an an die Plattform anpassen
9:16 für TikTok / Reels / Shorts, 16:9 für Querformat-Feeds und YouTube, 1:1 für Post-Raster. Modelle trainieren je Seitenverhältnis leicht unterschiedlich – ein nachträgliches Zuschneiden von 16:9 auf 9:16 kostet sowohl Detailtreue als auch die Komposition, die das Modell vorgesehen hatte.
Preise
Luma-API-Preise
Die Abrechnung erfolgt pro Ausgabe. Der Endpreis richtet sich nach den Parametern, die Sie im Playground jeder Variante setzen (Auflösung, Dauer, Anzahl der Ausgaben, Referenzen).
| Endpunkt | Typ | Startpreis |
|---|---|---|
| luma/ | video-to-video | $0.144 |
| luma/ | video-to-video | $0.06 |
| luma/ | image-to-video | $0.10 |
| luma/ | text-to-video | $0.10 |
| luma/ | image-to-image | $0.042 |
| luma/ | text-to-image | $0.042 |
API
Die Luma-API aufrufen
Holen Sie sich unter wavespeed.ai/accesskey einen API-Schlüssel und senden Sie dann eine Prediction per REST. Der Playground erzeugt einfügefertige Beispiele für jede Kombination von Eingaben.
POSThttps://api.wavespeed.ai/api/v3/luma/ray-3.2/text-to-video
# 1. Submit the prediction.
SUBMIT_RESPONSE=$(curl --silent --show-error --fail-with-body \
-X POST "https://api.wavespeed.ai/api/v3/luma/ray-3.2/text-to-video" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer $WAVESPEED_API_KEY" \
-d '{
"prompt": "A cinematic shot of a city at sunset, soft golden light",
"size": "16:9",
"resolution": "540p",
"duration": 5
}')
TASK=$(printf '%s' "$SUBMIT_RESPONSE" | jq 'if has("data") then .data else . end')
PREDICTION_ID=$(printf '%s' "$TASK" | jq -r '.id')
if [ -z "$PREDICTION_ID" ] || [ "$PREDICTION_ID" = "null" ]; then
printf 'Submission response did not contain a prediction id
' >&2
exit 1
fi
RESULT_URL="https://api.wavespeed.ai/api/v3/predictions/$PREDICTION_ID/result"
# 2. Poll until the prediction finishes.
while true; do
RESPONSE=$(curl --silent --show-error --fail-with-body "$RESULT_URL" \
-H "Authorization: Bearer $WAVESPEED_API_KEY")
RESULT=$(printf '%s' "$RESPONSE" | jq 'if has("data") then .data else . end')
STATUS=$(printf '%s' "$RESULT" | jq -r '.status')
case "$STATUS" in
completed) printf '%s\n' "$RESULT" | jq '.outputs'; break ;;
failed|cancelled|timeout|deleted) printf '%s\n' "$RESULT" | jq . >&2; exit 1 ;;
*) sleep 2 ;;
esac
doneconst submitUrl = "https://api.wavespeed.ai/api/v3/luma/ray-3.2/text-to-video";
const apiKey = process.env.WAVESPEED_API_KEY;
if (!apiKey) throw new Error('Set WAVESPEED_API_KEY');
async function requestJson(url, options = {}) {
const response = await fetch(url, options);
if (!response.ok) throw new Error(await response.text());
return response.json();
}
// 1. Submit the prediction.
const body = await requestJson(submitUrl, {
method: "POST",
headers: {
"Authorization": `Bearer ${apiKey}`,
"Content-Type": "application/json",
},
body: JSON.stringify({
"prompt": "A cinematic shot of a city at sunset, soft golden light",
"size": "16:9",
"resolution": "540p",
"duration": 5
}),
});
const task = body.data ?? body;
const resultUrl = `https://api.wavespeed.ai/api/v3/predictions/${task.id}/result`;
// 2. Poll until the prediction finishes.
while (true) {
const resultBody = await requestJson(resultUrl, {
headers: { "Authorization": `Bearer ${apiKey}` },
});
const result = resultBody.data ?? resultBody;
if (result.status === "completed") {
console.log(result.outputs);
break;
}
if (["failed", "cancelled", "timeout", "deleted"].includes(result.status)) throw new Error(JSON.stringify(result));
await new Promise(resolve => setTimeout(resolve, 2000));
}import json
import os
import time
from urllib.request import Request, urlopen
api_key = os.environ["WAVESPEED_API_KEY"]
headers = {"Authorization": f"Bearer {api_key}", "Content-Type": "application/json"}
payload = {
"prompt": "A cinematic shot of a city at sunset, soft golden light",
"size": "16:9",
"resolution": "540p",
"duration": 5
}
def request_json(url, data=None):
request = Request(url, data=data, headers=headers, method="POST" if data else "GET")
with urlopen(request) as response:
return json.load(response)
# 1. Submit the prediction.
body = request_json("https://api.wavespeed.ai/api/v3/luma/ray-3.2/text-to-video", json.dumps(payload).encode())
task = body.get("data", body)
result_url = f"https://api.wavespeed.ai/api/v3/predictions/{task['id']}/result"
# 2. Poll until the prediction finishes.
while True:
result_body = request_json(result_url)
result = result_body.get("data", result_body)
status = result.get("status")
if status == "completed":
print(result.get("outputs", []))
break
if status in {"failed", "cancelled", "timeout", "deleted"}:
raise RuntimeError(result)
time.sleep(2)Vergleich
Luma im Vergleich zu Alternativen
Wann Sie Luma ähnlichen Modellen auf WaveSpeedAI vorziehen sollten.
Luma vs. Kling 3.0
Kling 3.0 offers Standard, Pro and 4K tiers with native audio. Luma Ray 3.2 adds video edit and video reframing endpoints for working on existing footage.
Luma vs. Veo 3.1
Veo 3.1 is Google's video model with synchronized audio. Luma Ray 3.2 is a separate family with optional reference images and footage-level edit and reframing endpoints.
FAQ
Luma API — Häufig gestellte Fragen
Preise, Lizenz, Integration – häufige Fragen zur Nutzung von Luma auf WaveSpeedAI.
Was ist die Luma-API?
Luma ist ein Luma AI-Modell für Videogenerierung, das auf WaveSpeedAI als REST-API bereitgestellt wird. Luma API on WaveSpeedAI — Ray 3.2 text-to-video, image-to-video, video edit and video reframing, earlier Ray 2 and Ray 1.6 models, and Uni v1 and Photon image generation and editing, all through one REST API. Sie können es programmatisch aufrufen oder im oben verlinkten Playground ausprobieren.
Wie rufe ich die Luma-API auf?
Registrieren Sie ein WaveSpeedAI-Konto, kopieren Sie Ihren API-Schlüssel von /accesskey und senden Sie dann per POST an https://api.wavespeed.ai/api/v3/luma/ray-3.2/text-to-video Ihre Eingabe als JSON. Der Endpunkt gibt eine Prediction-ID zurück. Fragen Sie den Ergebnis-Endpunkt etwa alle 2 Sekunden ab, verlängern Sie das Intervall bei lang laufenden Aufgaben und hören Sie bei jedem Endstatus auf. Produktionsnahe Beispiele in Python / Node.js / cURL finden Sie oben.
Was kostet die Luma-API?
Luma beginnt bei $0.042. Die genauen Kosten richten sich nach den Parametern, die Sie setzen (Auflösung, Dauer, Anzahl der Ausgaben, Referenzen). Die Live-Kostenvorschau neben der Schaltfläche „Generieren“ im Playground zeigt den genauen Preis für Ihre aktuelle Eingabe.
Welche Varianten von Luma sind verfügbar?
WaveSpeedAI stellt 6 aktive Luma-Endpunkte bereit: luma/ray-3.2/video-edit, luma/ray-3.2/video-reframing, luma/ray-3.2/image-to-video, luma/ray-3.2/text-to-video, luma/uni-v1/edit, luma/uni-v1/text-to-image. Jede Variante hat eine eigene Playground-Seite und eigene Preise.
Kann ich die Ausgaben von Luma kommerziell nutzen?
Die kommerziellen Nutzungsrechte richten sich nach der Modelllizenz von Luma AI. Die meisten Modelle von Luma AI erlauben die kommerzielle Nutzung der Ausgaben; die konkrete Lizenzzusammenfassung finden Sie auf der Playground-Seite des jeweiligen Modells, die Bedingungen auf Plattformebene in den Nutzungsbedingungen von WaveSpeedAI.
Warum Luma auf WaveSpeedAI nutzen statt direkt?
Ein API-Schlüssel und ein Abrechnungskonto für Luma UND über 1.000 weitere KI-Modelle anderer Anbieter. Keine SDK-Einrichtung pro Anbieter, keine separaten Rate Limits, kein Neuschreiben von Integrationscode pro Anbieter. Die Preise liegen in der Regel auf dem Niveau der direkten API von Luma AI oder darunter.
Starten Sie mit Luma auf WaveSpeedAI
Kostenlose Start-Credits bei der Registrierung. Ein API-Schlüssel für über 1.000 KI-Modelle von Luma AI und allen anderen Anbietern.
/filters:quality(82)/examples/7090bb21305b0b99db644a0756b3a4ca/1783684141735187042_eUGQZ8ir.webp)