Image and file limits in requests

Everything a chat sends reaches the model as one request, together with the images and files from earlier messages. Those items must fit the route's budgets before the request goes out. This page lists the budgets, how Oda keeps a request inside them, and the messages it shows when it cannot. For adding items to a message and the limits that apply there, see Attach files and images to a message; what the model receives for each attachment is on Attachments in model requests.

The budgets one request must fit

BudgetValueWhat it counts
Images in one requestup to 600every image occurrence, earlier messages included
One imageup to 32 MiBthe image data of a single occurrence
Image sides on image-heavy requests4096 pxeach side, once a request carries 15 or more images
Image data kept in the request itselfup to 20 MiBimages that travel inside the request rather than as an upload Oda refers to
File data in one requestup to 128 MiBevery file occurrence, earlier messages included

How Oda keeps a request inside the budgets

Images are uploaded once and reused

When the upload storage is full

The messages these limits raise

Questions, answered

How many images can one request carry?

Up to 600 image occurrences, counted across everything the request brings, including images from earlier messages. This is the per-request budget; the limits you meet while attaching, such as per message and per source image, are listed on Attach files and images to a message.

How large can one image be in a request?

Up to 32 MiB of image data for one image occurrence. An image over that budget is refused with The request image exceeds the 32 MiB per-image limit.; attach a smaller copy of the picture and send again.

Is there a limit on image sides in a request?

On requests that carry 15 or more images, every image side is capped at 4096 px before the request goes out, so a very large screenshot travels at a reduced size. The chat keeps the original.

How much file data can one request carry?

Up to 128 MiB of file data in total, counting every file occurrence the request brings. An upload that on its own exceeds the limit is refused, and the message names the limit.

Is the same image uploaded again for later messages?

No. Once Oda has sent the picture as an upload, later requests refer to that upload instead of sending the picture again, so the same image in a long chat stays one upload. The upload stays usable for seven days by default, and Oda refreshes it before its lifetime runs out while it is still in use.

What happens when the service no longer accepts an uploaded image?

Oda uploads the image once more and retries the request. If the upload service cannot be reached at all, the images travel inside the request itself instead, and the request still goes out as long as it fits the budgets above.

What happens when the upload storage is full?

Oda removes its own oldest uploads and tries once more. Only uploads Oda itself made are removed. When nothing can be freed, the request reports the storage limit instead of continuing.

Which image formats can a request carry?

PNG, JPEG, WebP and GIF. When the service refuses the bytes Oda prepared for an image, the message names them again: PNG, JPEG, WebP, and GIF remain supported input formats.

How do these limits differ from the ones I see when attaching?

Attaching checks its own limits as you add items; they are listed on Attach files and images to a message. The budgets on this page are checked when the request goes out, against everything it carries, including earlier messages, so a request can trip them even when every single message passed its own checks.