Gemini 3.5 Flash API
Référence API complète pour les modèles LLM Gemini 3.5 Flash fournis par Google.
Variantes de modèle
Cette API prend en charge trois variantes du modèle Gemini 3.5 Flash :
Comparaison rapide
Gemini 3.5 Flash Text to Text
Point de terminaison
POST /api/v1/chat/completions
Paramètres de requête
Obligatoire
Prise en charge des messages
Facultatif
Exemple de requête
const response = await fetch('https://api.flaq.ai/api/v1/chat/completions', {
method: 'POST',
headers: {
'Authorization': 'Bearer YOUR_API_KEY',
'Accept': 'text/event-stream',
'Content-Type': 'application/json'
},
body: JSON.stringify({
model: 'gemini-3.5-flash-text-to-text',
messages: [
{
role: 'user',
content: 'Write a concise summary of how transformer models work.'
}
],
stream: true,
max_tokens: 2048
})
});
Gemini 3.5 Flash Image to Text
Point de terminaison
POST /api/v1/chat/completions
Paramètres de requête
Obligatoire
Prise en charge des messages
Facultatif
Exemple de requête
const response = await fetch('https://api.flaq.ai/api/v1/chat/completions', {
method: 'POST',
headers: {
'Authorization': 'Bearer YOUR_API_KEY',
'Accept': 'text/event-stream',
'Content-Type': 'application/json'
},
body: JSON.stringify({
model: 'gemini-3.5-flash-image-to-text',
messages: [
{
role: 'user',
content: [
{ type: 'text', text: 'Describe the image and extract any visible text.' },
{
type: 'image_url',
image_url: {
url: 'https://example.com/sample-image.jpg'
}
}
]
}
],
stream: true,
max_tokens: 2048
})
});
Gemini 3.5 Flash Analyse de fichiers
Point de terminaison
POST /api/v1/chat/completions
Paramètres de requête
Obligatoire
Prise en charge des messages
Facultatif
Exemple de requête
const response = await fetch('https://api.flaq.ai/api/v1/chat/completions', {
method: 'POST',
headers: {
'Authorization': 'Bearer YOUR_API_KEY',
'Accept': 'text/event-stream',
'Content-Type': 'application/json'
},
body: JSON.stringify({
model: 'gemini-3.5-flash-file-analysis',
messages: [
{
role: 'user',
content: [
{ type: 'text', text: 'Summarize this file and extract the key risks.' },
{
type: 'file',
file: {
filename: 'demo.pdf',
file_data: 'https://example.com/demo.pdf'
}
}
]
}
],
stream: true,
max_tokens: 4096
})
});
Les modèles LLM Gemini 3.5 Flash renvoient des réponses de completion compatibles Google. Avec stream: true, la réponse est Server-Sent Events ; avec stream: false, la réponse est un objet JSON unique.
Réponse réussie
data: {"id":"chatcmpl-...","object":"chat.completion.chunk","created":1710000000,"model":"gemini-3.5-flash-text-to-text","choices":[{"index":0,"delta":{"role":"assistant"},"finish_reason":null}]}
data: {"id":"chatcmpl-...","object":"chat.completion.chunk","created":1710000000,"model":"gemini-3.5-flash-text-to-text","choices":[{"index":0,"delta":{"content":"Here is a concise summary"},"finish_reason":null}]}
data: {"id":"chatcmpl-...","object":"chat.completion.chunk","created":1710000000,"model":"gemini-3.5-flash-text-to-text","choices":[{"index":0,"delta":{},"finish_reason":"stop"}]}
data: {"id":"chatcmpl-...","object":"chat.completion.chunk","created":1710000000,"model":"gemini-3.5-flash-text-to-text","choices":[],"usage":{"prompt_tokens":12,"completion_tokens":8,"total_tokens":20}}
data: [DONE]
Réponse d’erreur
event: error
data: {"error":{"message":"API requests too frequent, exceeding rate limit","type":"rate_limit_error","code":"1302","param":null}}
Bonnes pratiques
- Utiliser des messages structurés : Envoyez l’historique de conversation via
messages[] au lieu d’aplatir le contexte dans un seul prompt.
- Choisir la bonne variante de modèle : Utilisez Text to Text pour les tâches uniquement textuelles, Image to Text pour la compréhension d’images et File Analysis lorsque des documents ou contenus mixtes sont nécessaires.
- Consommer les événements SSE : Ajoutez
choices[0].delta.content pour l’affichage en streaming et traitez data: [DONE] comme une fin réussie.
- Envoyer uniquement les entrées prises en charge : Les modèles texte ignorent les parties fichier et image non prises en charge dans le client actuel.