Claude Code Guide
Set up Flaq AI Claude models and explore Claude Code skills
Free to try GPT 5.6 Luna Image-to-Text API for fast visual understanding, OCR, chart analysis, and affordable high-volume workflows.
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
})
});
const reader = response.body.getReader();
const decoder = new TextDecoder();
let buffer = '';
let assistantText = '';
while (true) {
const { done, value } = await reader.read();
if (done) break;
buffer += decoder.decode(value, { stream: true });
const frames = buffer.split('\n\n');
buffer = frames.pop() || '';
for (const frame of frames) {
const lines = frame.split('\n').filter(Boolean);
let eventName = 'message';
const dataLines = [];
for (const line of lines) {
if (line.startsWith('event:')) {
eventName = line.slice(6).trim();
} else if (line.startsWith('data:')) {
dataLines.push(line.replace(/^data:\s*/, ''));
}
}
const raw = dataLines.join('\n').trim();
if (raw === '[DONE]') {
console.log('\nFinal text:', assistantText);
continue;
}
let payload;
try {
payload = JSON.parse(raw);
} catch {
continue;
}
if (eventName === 'error' || payload.error) {
const msg = payload.error?.message ?? payload.message ?? 'Chat request failed';
throw new Error(msg);
}
const delta = payload.choices?.[0]?.delta;
if (delta?.content) {
assistantText += delta.content;
console.log(assistantText);
}
}
}
import json
import requests
response = requests.post(
'https://api.flaq.ai/api/v1/chat/completions',
headers={
'Authorization': 'Bearer YOUR_API_KEY',
'Accept': 'text/event-stream',
'Content-Type': 'application/json',
},
json={
'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,
},
stream=True,
)
response.raise_for_status()
event_name = 'message'
assistant_text = ''
for raw_line in response.iter_lines(decode_unicode=True):
if not raw_line:
event_name = 'message'
continue
if raw_line.startswith('event:'):
event_name = raw_line.replace('event:', '', 1).strip()
continue
if raw_line.startswith('data:'):
raw_data = raw_line.replace('data:', '', 1).strip()
if raw_data == '[DONE]':
print('\nFinal text:', assistant_text)
continue
payload = json.loads(raw_data)
if event_name == 'error' or payload.get('error'):
error = payload.get('error') or payload
raise RuntimeError(error.get('message', 'Chat request failed'))
choices = payload.get('choices') or []
if choices:
delta = choices[0].get('delta') or {}
content = delta.get('content')
if content:
assistant_text += content
print(content, end='', flush=True)
curl -N -X POST "https://api.flaq.ai/api/v1/chat/completions" \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Accept: text/event-stream" \
-H "Content-Type: application/json" \
-d '{
"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
}'
| Parameters | Price | Original Price | Discount |
|---|
GPT 5.6 Luna Image-to-Text API on Flaq AI combines fast GPT-5.6 processing with practical visual understanding for scalable applications. This cost-efficient OpenAI vision integration lets developers analyze images, visible text, layouts, charts, products, and scene details through natural-language instructions. With optional text guidance, conversational context, and streaming responses, Luna supports responsive image-to-text workflows without requiring separate vision infrastructure.
Note Please ensure your prompts and uploaded images comply with OpenAI's safety and usage guidelines. If an error occurs, review the inputs for restricted or unsupported content, simplify the request, and try again.
GPT 5.6 Luna vs. GPT 5.6 Sol
GPT 5.6 Sol targets demanding visual reasoning at the flagship tier. GPT 5.6 Luna emphasizes faster and more cost-efficient image understanding for production scale.
GPT 5.6 Luna vs. GPT 5.6 Terra
GPT 5.6 Terra balances professional visual analysis with cost. GPT 5.6 Luna prioritizes maximum speed and efficiency for recurring image workloads.
GPT 5.6 Luna vs. GPT 5.5 Image-to-Text
GPT 5.5 provides reliable multimodal analysis for established applications. GPT 5.6 Luna offers a faster, cost-efficient option within the newer GPT family.
GPT 5.6 Luna vs. Gemini Vision Models
Gemini models fit naturally into Google-centered multimodal systems. GPT 5.6 Luna provides an efficient OpenAI-native route for scalable visual analysis.
GPT 5.6 Luna vs. Open Vision Models
Open vision models provide deployment flexibility but require serving and optimization. GPT 5.6 Luna offers managed image understanding through Flaq AI's API workflow.
Set up Flaq AI Claude models and explore Claude Code skills

Set up Flaq AI GPT models and explore Codex skills
Use Flaq AI LLM models in Hermes Agent
Use GLM 5.2, Kimi K3, and DeepSeek v4 in ZCode
Run DeepSeek Harness with Flaq AI DeepSeek models
Connect AI agents to Flaq image and video generation tools