Aller au contenu
Ouvrir CastalyConsole

Image

gemini-3.1-flash-image API

Appelez gemini-3.1-flash-image via Modelflare avec l'ID de modèle exact indiqué sur cette page.

Utilisez l’ID de modèle exact gemini-3.1-flash-image. Le champ modèle doit correspondre exactement à cette page.

Fleurs coupées se transformant en verre soufflé sur les étagères en acier d'une chambre froide de fleuriste.

Exemple de sortiegemini-3.1-flash-imagePOST /v1beta/models/gemini-3.1-flash-image:generateContent

Paramètres : size=2Kratio=16:9

Prompt : The cold room of a flower shop, steel shelves and buckets of cut stems. A figure in an acid-green vinyl coat has just pulled one bucket toward the door. Along that whole shelf the flowers have begun turning to blown glass, petal by petal, the transformation running outward from the bucket like frost: stems still green at the base, heads already clear and ringing, throwing hard coloured caustics across the steel. One hard pink light through the open cooler door, cold blue shade behind. Wide low camera, macro-sharp on the glass edges, real weight, film grain, no text.

Requête qui a produit cet échantillon
{
"contents": [
{
"role": "user",
"parts": [
{
"text": "The cold room of a flower shop, steel shelves and buckets of cut stems. A figure in an acid-green vinyl coat has just pulled one bucket toward the door. Along that whole shelf the flowers have begun turning to blown glass, petal by petal, the transformation running outward from the bucket like frost: stems still green at the base, heads already clear and ringing, throwing hard coloured caustics across the steel. One hard pink light through the open cooler door, cold blue shade behind. Wide low camera, macro-sharp on the glass edges, real weight, film grain, no text."
}
]
}
],
"generationConfig": {
"responseModalities": [
"IMAGE"
],
"imageConfig": {
"aspectRatio": "16:9",
"imageSize": "2K"
}
}
}

Utilisez une clé API Modelflare avec https://modelflare.dev. Le point d’entrée de la passerelle est POST /v1/models/{model}:generateContent.

HTTP
Authorization: Bearer YOUR_MODELFLARE_API_KEY
Fenêtre de terminalbash
curl "https://modelflare.dev/v1/models/gemini-3.1-flash-image:generateContent" \
-H "Authorization: Bearer YOUR_MODELFLARE_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"contents": [{"role": "user", "parts": [{"text": "A white cat runs through a neon-lit street in the rain"}]}],
"generationConfig": {"responseModalities": ["TEXT", "IMAGE"], "imageConfig": {"aspectRatio": "16:9", "imageSize": "1K"}}
}'

Les modèles d’images Gemini utilisent contents et generationConfig natifs ; les modifications envoient l’instruction texte et inline_data dans le même parts[].

Les modèles d’images Gemini utilisent Gemini natif generateContent. Mettez le texte et les images de référence dans le même contents[].parts[] ; les images utilisent inline_data. N’envoyez pas ces modèles vers /v1/images/generations, /v1/images/edits ou OpenAI /v1/responses. L’énumération imageSize est spécifique au modèle et est illustrée ci-dessous.

Champ Obligatoire Remarques
contents[].parts[].text Oui Invite textuelle ou instruction de modification
contents[].parts[].inline_data Non Données d’image Base64 et type MIME
contents[].parts[].inline_data.mime_type Non image/jpeg / image/png / image/webp
contents[].parts[].inline_data.data Non Contenu de l’image de référence codée en base64
generationConfig.responseModalities Oui ["IMAGE"] ou ["TEXT", "IMAGE"]
generationConfig.imageConfig.aspectRatio Non 1:1 / 4:3 / 3:4 / 16:9 / 9:16
generationConfig.imageConfig.imageSize Non 512 / 1K / 2K / 4K

Flash Image prend en charge 512, 1K, 2K et 4K avec 1:1, 4:3, 3:4, 16:9 et 9:16. La documentation officielle ne publie pas de plafond de nombre d’images de référence, donc la passerelle n’ajoute aucun plafond local.

Placez l’instruction d’édition et l’image de référence dans le même contents[].parts[]. inline_data.data est le contenu de l’image Base64 ; n’envoyez pas de modèles d’image Gemini aux points de terminaison OpenAI Images ou Responses.

Fenêtre de terminalbash
curl "https://modelflare.dev/v1/models/gemini-3.1-flash-image:generateContent" \
-H "Authorization: Bearer YOUR_MODELFLARE_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"contents": [{"role": "user", "parts": [
{"text": "Keep the subject and lighting, but replace the background with a misty pine forest."},
{"inline_data": {"mime_type": "image/jpeg", "data": "BASE64_IMAGE_DATA"}}
]}],
"generationConfig": {"responseModalities": ["TEXT", "IMAGE"], "imageConfig": {"aspectRatio": "1:1", "imageSize": "1K"}}
}'

Lire candidates[].content.parts[] ; ne présumez pas que chaque partie est une image car la réponse peut contenir ensemble des parties de texte et d’image.

Champ Remarques
candidates[].content.parts[].inline_data Type MIME de l’image générée et données Base64
candidates[].content.parts[].text Légende de texte renvoyée lorsque TEXT a été demandé
candidates[].finishReason Raison d’achèvement ou de sécurité
usageMetadata Utilisation du jeton d’entrée/sortie lorsqu’il est renvoyé par le service

Modelflare préserve la forme de réponse native Gemini pour gemini-3.1-flash-image et conserve les parties d’image utilisables.

Les erreurs de champ, les limites de taille/rapport et les refus de sécurité de la requête Gemini native restent des réponses d’erreur compatibles avec Gemini. La passerelle ne les réécrit pas en tant que réponses OpenAI Images.

Cette page couvre la génération et l’édition de modèles Modelflare. L’enrichissement de la recherche ou de la carte, la gestion de la voix et la gestion de la bibliothèque d’éléments sont des API de ressources en dehors de cette surface d’appel de modèle publique et ne sont pas des champs de requête obligatoires.

Ce modèle utilise une facturation basée sur des jetons. Consultez la page de tarification du modèle pour connaître le prix client actuel, le prix catalogue de référence et les spécifications complètes.

Contrat média · v1

ID de contrat: media.gemini-3-1-flash-image.v1Adaptateur: image.gemini.native.v1@v1Empreinte digitale: fb4adc579d570a2f8d4371edde0dc6bfa1042a004eb39641c63bd98fa4c7c8cc

Source officielle: Google

Paramètres du contrat

Champ d'intentionContrôleOptions
sizeselect512 / 1K / 2K / 4K
ratioselect1:1 / 4:3 / 3:4 / 16:9 / 9:16

Capacité prise en charge

  • allowed_values · size · 512, 1K, 2K, 4K
  • allowed_values · ratio · 1:1, 4:3, 3:4, 16:9, 9:16

Exemple de requête structurée

text

Intention

{
  "prompt": "A red paper kite over a quiet harbour at dusk.",
  "ratio": "1:1",
  "size": "512"
}

Demande du fournisseur

{
  "contents": [
    {
      "parts": [
        {
          "text": "A red paper kite over a quiet harbour at dusk."
        }
      ],
      "role": "user"
    }
  ],
  "generationConfig": {
    "imageConfig": {
      "aspectRatio": "1:1",
      "imageSize": "512"
    },
    "responseModalities": [
      "TEXT",
      "IMAGE"
    ]
  },
  "systemInstruction": {
    "parts": [
      {
        "text": "Generate an image for the user's request. If details are missing, choose reasonable defaults and still return an image. Do not ask clarifying questions."
      }
    ]
  }
}

reference

Intention

{
  "prompt": "A red paper kite over a quiet harbour at dusk.",
  "ratio": "1:1",
  "size": "512"
}

Demande du fournisseur

{
  "contents": [
    {
      "parts": [
        {
          "text": "A red paper kite over a quiet harbour at dusk."
        },
        {
          "inline_data": {
            "data": "AAAA",
            "mime_type": "image/png"
          }
        }
      ],
      "role": "user"
    }
  ],
  "generationConfig": {
    "imageConfig": {
      "aspectRatio": "1:1",
      "imageSize": "512"
    },
    "responseModalities": [
      "TEXT",
      "IMAGE"
    ]
  },
  "systemInstruction": {
    "parts": [
      {
        "text": "Generate an image for the user's request. If details are missing, choose reasonable defaults and still return an image. Do not ask clarifying questions."
      }
    ]
  }
}