Generate Content
Appelez les modèles Google Gemini via le protocole natif Gemini. OfoxAI est compatible avec le SDK Google GenAI.
Endpoint
POST https://api.ofox.ai/gemini/v1beta/models/{model}:generateContent
POST https://api.ofox.ai/gemini/v1beta/models/{model}:streamGenerateContentAuthentification
Le protocole Gemini utilise le header x-goog-api-key :
x-goog-api-key: <votre OFOXAI_API_KEY>Exemple de requête
cURL
curl "https://api.ofox.ai/gemini/v1beta/models/google/gemini-3.1-flash-lite-preview:generateContent" \
-H "x-goog-api-key: $OFOX_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"contents": [
{
"parts": [{"text": "Implémente un serveur web simple en Python"}]
}
]
}'Réponse en streaming
Python
response = client.models.generate_content_stream(
model="google/gemini-3.1-flash-lite-preview",
contents="Écris un article sur l'IA"
)
for chunk in response:
print(chunk.text, end="", flush=True)Entrée multimodale
Gemini prend en charge nativement les entrées multimodales, y compris les images, l’audio et la vidéo :
import base64
# Analyse d'image
with open("photo.jpg", "rb") as f:
image_data = base64.b64encode(f.read()).decode()
response = client.models.generate_content(
model="google/gemini-3.1-flash-lite-preview",
contents=[
{"text": "Décris le contenu de cette image"},
{"inline_data": {"mime_type": "image/jpeg", "data": image_data}}
]
)Générer et éditer des images
Avec le protocole natif Gemini, l’endpoint unique generateContent assure à la fois la génération d’images (text → image) et l’édition d’images (image + text → image). Modèle recommandé : google/gemini-3.1-flash-image-preview.
POST https://api.ofox.ai/gemini/v1beta/models/google/gemini-3.1-flash-image-preview:generateContentVous pouvez aussi appeler ce même modèle pour générer des images via l’endpoint compatible OpenAI, mais la fonctionnalité d’édition d’images n’est disponible qu’avec le protocole natif Gemini.
Génération : text → image
Python
from google import genai
client = genai.Client(
api_key="YOUR_OFOX_API_KEY",
http_options={"api_version": "v1beta", "base_url": "https://api.ofox.ai/gemini"},
)
resp = client.models.generate_content(
model="google/gemini-3.1-flash-image-preview",
contents="A simple red apple on a white table, photorealistic",
)
for part in resp.candidates[0].content.parts:
if part.inline_data and part.inline_data.data:
with open("output.png", "wb") as f:
f.write(part.inline_data.data)
breakRésultat réel :

Édition : image + text → image
Placez simplement l’image originale en inlineData avec l’instruction textuelle dans parts :
Python
from google import genai
from google.genai import types
client = genai.Client(
api_key="YOUR_OFOX_API_KEY",
http_options={"api_version": "v1beta", "base_url": "https://api.ofox.ai/gemini"},
)
with open("apple.png", "rb") as f:
image_bytes = f.read()
resp = client.models.generate_content(
model="google/gemini-3.1-flash-image-preview",
contents=[
"Change la pomme en vert, ne touche à rien d'autre",
types.Part.from_bytes(data=image_bytes, mime_type="image/png"),
],
)
for part in resp.candidates[0].content.parts:
if part.inline_data and part.inline_data.data:
with open("apple_edited.png", "wb") as out:
out.write(part.inline_data.data)
breakComparaison réelle :
| Image originale | Après édition |
|---|---|
![]() | ![]() |
Réponse
{
"candidates": [{
"content": {
"role": "model",
"parts": [
{ "text": "...", "thought": true },
{ "inlineData": { "mimeType": "image/png", "data": "<Image en Base64>" } }
]
},
"finishReason": "STOP"
}],
"modelVersion": "google/gemini-3.1-flash-image-preview",
"usageMetadata": {
"promptTokenCount": 1097,
"candidatesTokenCount": 1120,
"thoughtsTokenCount": 1306,
"totalTokenCount": 3523,
"candidatesTokensDetails": [
{ "modality": "IMAGE", "tokenCount": 1120 }
]
}
}- L’image se trouve dans
candidates[0].content.parts[].inlineData.data, sous forme de chaîne Base64 partspeut contenir plusieurs blocstext+thought: truecorrespondant au raisonnement ; lors du parcours, ne retenez queinlineData- Dans
usageMetadata.candidatesTokensDetails, letokenCountassocié àmodality: IMAGEcorrespond à la consommation pour la sortie image
Modèles pris en charge
Le tableau ci-dessous ne liste que quelques modèles courants. Pour la liste complète des modèles disponibles, consultez :
- Interface programmatique : GET /gemini/v1beta/models — interroge en temps réel les modèles disponibles sur la passerelle pour votre compte
- Page de navigation : catalogue des modèles — recherche visuelle, avec tarifs
| Modèle | Description |
|---|---|
google/gemini-3.1-pro-preview | Gemini 3.1 Pro — capacité de raisonnement maximale |
google/gemini-3-pro-preview | Gemini 3 Pro — performance équilibrée |
google/gemini-3.1-flash-lite-preview | Gemini 3 Flash — haute vitesse et excellent rapport qualité-prix |
google/gemini-3.1-flash-image-preview | Gemini Flash Image — génération et édition d’images |
Le protocole Gemini d’OfoxAI prend en charge les principales fonctionnalités du SDK Google GenAI, notamment Function Calling, Code Execution, Grounding ainsi que la génération et l’édition d’images.
