Passer au contenu principal
OrcaRouter expose la génération d’images par deux chemins, selon le modèle que vous choisissez :
  1. /v1/images/generations — forme d’API d’image OpenAI. Meilleur pour les modèles de génération d’image dédiés (famille de remplacement DALL-E, Imagen, Grok Imagine).
  2. /v1/chat/completions — génération d’image de style chat. Meilleur quand vous voulez un modèle qui retourne du texte et une image en un seul tour (famille Gemini nano-banana / “imagine”).

Chemin 1 : API d’image dédiée

/v1/images/generations suit la forme d’API d’image OpenAI. Familles de modèles qui servent ce endpoint :
  • OpenAI : openai/gpt-image-1, openai/gpt-image-1-mini, openai/gpt-image-1.5
  • Google Imagen : google/imagen-4.0-fast-generate-001, google/imagen-4.0-generate-001, google/imagen-4.0-ultra-generate-001
  • xAI : grok/grok-imagine-image, grok/grok-imagine-image-pro
curl https://api.orcarouter.ai/v1/images/generations \
  -H "Authorization: Bearer sk-orca-..." \
  -H "Content-Type: application/json" \
  -d '{
    "model": "openai/gpt-image-1",
    "prompt": "A cat astronaut on Mars, photorealistic",
    "size": "1024x1024"
  }'

Chemin 2 : génération d’image via chat completions

Certains modèles Gemini peuvent retourner une image dans le cadre d’un tour de chat completion normal. Quand vous choisissez l’un de ces modèles, OrcaRouter dit automatiquement à l’amont d’émettre à la fois du texte et une image dans la réponse :
  • google/gemini-2.5-flash-image
  • google/gemini-3-pro-image-preview
  • google/gemini-3.1-flash-image-preview

Exemple

from openai import OpenAI

client = OpenAI(base_url="https://api.orcarouter.ai/v1", api_key="sk-orca-...")

resp = client.chat.completions.create(
    model="google/gemini-2.5-flash-image",
    messages=[{"role": "user", "content": "Draw a watercolour of a foggy harbor at dawn."}],
)

# resp.choices[0].message.content porte le texte + une data URL d'image
# ou un bloc inline_data, selon la sérialisation du SDK. Inspectez la
# réponse brute si votre SDK n'expose pas directement l'image.
Ces modèles ne sont pas appelables via /v1/images/generations — utilisez chat completions pour eux.

Voir aussi