Open in the interactive docs · markdown for agents: https://neuraldeep.tech/docs/vision.md
Image recognition · Vision
Multimodal via the standard /v1/chat/completions. Pass image_url in the content array (URL or base64). The model describes the image, extracts text, and answers questions about it.
curl https://api.neuraldeep.tech/v1/chat/completions \
-H "Authorization: Bearer $YOUR_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "qwen3.6-35b-a3b",
"messages": [{
"role": "user",
"content": [
{"type":"text","text":"What's in the image? Extract the text if there is any."},
{"type":"image_url","image_url":{"url":"data:image/jpeg;base64,/9j/..."}}
]
}],
"max_tokens": 500
}'
import base64
from openai import OpenAI
with open("photo.jpg","rb") as f:
b64 = base64.b64encode(f.read()).decode()
client = OpenAI(api_key="$YOUR_KEY", base_url="https://api.neuraldeep.tech/v1")
r = client.chat.completions.create(
model="qwen3.6-35b-a3b",
messages=[{
"role":"user",
"content":[
{"type":"text","text":"Briefly describe what's in the photo"},
{"type":"image_url","image_url":{"url":f"data:image/jpeg;base64,{b64}"}},
],
}],
max_tokens=400,
)
print(r.choices[0].message.content)
Limit — 1 image per request. If you need several — make N sequential requests and stitch the answers together in your own code.
Reference sections (markdown for agents)
- Start · key, errors, quotas
- Text · chat
- Vectorization
- Reranking
- Transcription
- Image recognition
- Structured output
- Clients · agents
- Remaining limits · Limits API
- Search · Search API
- OCR · documents
- Images · Image API
- Music · Music API
- PII anonymization · PII Guard
- SpeechCore · STT
- Speech synthesis · TTS API
- Who spoke when · diarization
- Text decisions · FRIDA-Decisions, clef-flash
- Drift · overview
- Files + sandbox preview
- Your own tools, skills, MCP
- Tasks · proactive
- Memory · memory
- Isolation and security
- Agent settings
- Limits · errors
- Book · search and MCP
- Streaming
- SDK · Python / JS
- Privacy