Texte vers imageWaveSpeedQualité professionnelle

FLUX.1 Schnell

wavespeed-ai/flux-schnell

wavespeed-ai/flux-schnell. Accédez aux modèles IA de plusieurs fournisseurs via une API unique. Comparez capacités, paramètres et tarifs.

Référence complète des paramètres, schéma de sortie et tarifs actuels

Model HubUne plateforme pour tout créerLe plus populaireConditionsAccédez aux modèles IA de plusieurs fournisseurs via une API unique. Comparez capacités, paramètres et tarifs.
prompt *Prompttextarea—≤ 2000 chars
sizeImage sizeselect1024*10241024*1024 | 1024*768 | 768*1024
seedSeednumber-1-1 ~ 2147483647 · step 1
output_formatOutput formatselectjpegjpeg | png | webp

API

Accédez aux modèles IA de plusieurs fournisseurs via une API unique. Comparez capacités, paramètres et tarifs.

cURL
# 1) Submit — returns { "task_uuid": "..." }
curl -X POST "https://www.framedance.ai/api/v1/marketplace/run/wavespeed-ai/flux-schnell" \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
  "input": {
    "prompt": "A ceramic vase on a wooden table, natural window light, editorial photography",
    "size": "1024*1024",
    "seed": -1,
    "output_format": "jpeg"
  }
}'

# 2) Poll until status is "completed", then read the output URLs
curl "https://www.framedance.ai/api/v1/marketplace/run/tasks/TASK_UUID" \
  -H "Authorization: Bearer YOUR_API_KEY"
Python
import time, requests

API_KEY = "YOUR_API_KEY"
HEADERS = {"Authorization": f"Bearer {API_KEY}"}

# 1) Submit
resp = requests.post(
    "https://www.framedance.ai/api/v1/marketplace/run/wavespeed-ai/flux-schnell",
    headers=HEADERS,
    json={
        "input": {
            "prompt": "A ceramic vase on a wooden table, natural window light, editorial photography",
            "size": "1024*1024",
            "seed": -1,
            "output_format": "jpeg"
        }
    },
)
resp.raise_for_status()  # 401/402/429/5xx stop here instead of polling a bad task
task = resp.json()

# 2) Poll until a terminal state (completed / failed / cancelled).
#    This model is allowed up to 180s server-side.
deadline = time.time() + 240
while task.get("status") not in ("completed", "failed", "cancelled"):
    if time.time() > deadline:
        raise TimeoutError(f"still {task.get('status')} — keep the task_uuid and poll later")
    time.sleep(3)
    poll = requests.get(f"https://www.framedance.ai/api/v1/marketplace/run/tasks/{task['task_uuid']}", headers=HEADERS)
    poll.raise_for_status()
    task = poll.json()

print(task["status"], task.get("output"))
JavaScript
const API_KEY = "YOUR_API_KEY";
const HEADERS = { Authorization: `Bearer ${API_KEY}` };

// 1) Submit
const resp = await fetch("https://www.framedance.ai/api/v1/marketplace/run/wavespeed-ai/flux-schnell", {
  method: "POST",
  headers: { ...HEADERS, "Content-Type": "application/json" },
  body: JSON.stringify({
    "input": {
      "prompt": "A ceramic vase on a wooden table, natural window light, editorial photography",
      "size": "1024*1024",
      "seed": -1,
      "output_format": "jpeg"
    }
  }),
});
if (!resp.ok) throw new Error(`submit failed: ${resp.status} ${await resp.text()}`);
let task = await resp.json();

// 2) Poll until a terminal state (completed / failed / cancelled).
//    This model is allowed up to 180s server-side.
const deadline = Date.now() + 240 * 1000;
while (!["completed", "failed", "cancelled"].includes(task.status)) {
  if (Date.now() > deadline) throw new Error(`still ${task.status} — keep the task_uuid and poll later`);
  await new Promise((r) => setTimeout(r, 3000));
  const poll = await fetch(`https://www.framedance.ai/api/v1/marketplace/run/tasks/${task.task_uuid}`, { headers: HEADERS });
  if (!poll.ok) throw new Error(`poll failed: ${poll.status}`);
  task = await poll.json();
}

console.log(task.status, task.output);
FLUX.1 Schnell API — Tarifs, Essayer dans le studio & Documentation API | Framedance