Vision models
Image understanding
Vision models accept images alongside text. They read images; they do not create them.
Endpoints
/v1/chat/completions · /v1/messages
Formats
JPEG · PNG · GIF · WebP
Billed in
Tokens, by pixel area
Reading is not generating
A vision model answers questions about an image. To create one, see Image models.
What they are good at#
- Documents — invoices, receipts, forms and tables, especially when you ask for a specific JSON shape rather than prose.
- Screenshots — reading an error dialog, describing a UI state, spotting a difference between two captures.
- Charts — reading values off a plot and explaining trends, which is far more reliable than asking for exact numbers from a dense graph.
- Photographs — description, classification and moderation-style questions.
Sending an image#
{
"model": "openai/gpt-5.6-sol",
"messages": [
{
"role": "user",
"content": [
{ "type": "image_url", "image_url": { "url": "https://example.com/receipt.jpg" } },
{ "type": "text", "text": "What is the total?" }
]
}
]
}Base64 data URLs work too. The real media type is detected from the bytes, so a JPEG mislabelled as PNG still reaches the model. Full details, including the Anthropic shape, are on Vision.
Sending an image to a model without vision#
The request is not rejected. The image is removed and replaced with a note telling the model it could not see one, so it says so instead of describing something it never saw. Editors and agent frameworks attach screenshots the user never meant to send; failing the whole request over an incidental attachment throws away the question they actually asked.
Cost and quality#
- Images cost tokens roughly by area. Downscaling a screenshot before sending is the cheapest optimisation available.
- Crop instead of sending the whole page when fine print matters — providers may resize large images, and detail is what gets lost.
- Ask a specific question."Describe this image" produces generic prose; "what is the invoice total and due date" produces an answer.
Video
Some models accept video frames as input. xKiro does not generate video — if you need that today, it is not part of this API.
Which models have vision is listed in the catalog; see Capabilities and GET /v1/models.
