GPT 5.6 Luna API
Référence API complète pour les modèles LLM GPT 5.6 Luna fournis par OpenAI.
Variantes du modèle
Cette API prend en charge quatre variantes du modèle :
Comparaison rapide
GPT 5.6 Luna Text to Text
Point de terminaison
POST /api/v1/chat/completions
Paramètres de la requête
Obligatoires
Prise en charge des messages
Facultatifs
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: 'gpt-5.6-luna-text-to-text',
messages: [
{
role: 'user',
content: 'Write a short launch announcement for a new AI feature.'
}
],
stream: true,
max_tokens: 2048
})
});
GPT 5.6 Luna Image to Text
Point de terminaison
POST /api/v1/chat/completions
Paramètres de la requête
Obligatoires
Prise en charge des messages
Facultatifs
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: 'gpt-5.6-luna-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
})
});
GPT 5.6 Luna Web Search
Point de terminaison
POST /api/v1/chat/completions
Paramètres de la requête
Obligatoires
Prise en charge des messages
Facultatifs
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: 'gpt-5.6-luna-web-search',
messages: [
{
role: 'user',
content: 'Find recent product launch trends in AI developer tools.'
}
],
stream: true,
max_tokens: 2048
})
});
GPT 5.6 Luna File Analysis
Point de terminaison
POST /api/v1/chat/completions
Paramètres de la requête
Obligatoires
Prise en charge des messages
Facultatifs
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: 'gpt-5.6-luna-file-analysis',
messages: [
{
role: 'user',
content: [
{ type: 'text', text: 'Summarize this document and list the key action items.' },
{
type: 'file',
file: {
filename: 'demo.pdf',
file_data: 'https://example.com/demo.pdf'
}
}
]
}
],
stream: true,
max_tokens: 2048
})
});
Les modèles LLM GPT 5.6 Luna renvoient des réponses de complétion compatibles avec OpenAI. Avec stream: true, la réponse est transmise sous forme de 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":"gpt-5.6-luna-image-to-text","choices":[{"index":0,"delta":{"role":"assistant"},"finish_reason":null}]}
data: {"id":"chatcmpl-...","object":"chat.completion.chunk","created":1710000000,"model":"gpt-5.6-luna-image-to-text","choices":[{"index":0,"delta":{"content":"The image shows"},"finish_reason":null}]}
data: {"id":"chatcmpl-...","object":"chat.completion.chunk","created":1710000000,"model":"gpt-5.6-luna-image-to-text","choices":[{"index":0,"delta":{},"finish_reason":"stop"}]}
data: {"id":"chatcmpl-...","object":"chat.completion.chunk","created":1710000000,"model":"gpt-5.6-luna-image-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
- Conservez des messages structurés : Utilisez
messages[] pour l’historique de la conversation au lieu d’aplatir le contexte dans un seul prompt.
- Joignez les fichiers et les images aux messages : Placez les parties
image_url et file dans le message qui les a introduites.
- Utilisez l’analyse SSE : Ajoutez
choices[0].delta.content pour un affichage progressif et considérez data: [DONE] comme une exécution réussie.
- Envoyez uniquement les entrées prises en charge : Faites correspondre les parties texte, image et fichier à la variante de modèle sélectionnée.
- Stockez l’état de la requête localement : Les fragments contiennent un
id de complétion, mais les clients doivent tout de même les acheminer via l’état de la requête active.