Three ways to send images
There are three supported methods, and none of them are unusual for developers.
Base64 inline
You can encode a local image and include it directly in the request.
It is easy for testing and small files, but the full request body has a 48 MiB limit. Base64 also makes files larger, so it is not the best choice for repeated use.
External URL
You can pass a publicly accessible image URL and let the service fetch it.
This is convenient, but the image must be reachable from the internet and cannot exceed 32 MiB.
Files API
Upload the image first, then refer to it later using a file_id.
This supports files up to 64 MiB and is the most practical option when the same image will be used more than once.
Agents can finally see their own output
This is the part that matters most.
Basic image understanding is not new anymore. The bigger change is that vision can now be used inside Agent workflows.
DeepSeek showed examples such as:
- generating a premium Tibet road-trip presentation
- redesigning the DeepSeek Harness website in a different visual style
- building a clay-monster-style front-end demo
These are not simple “describe this image” tasks.
They require the model to work across images, code, tools, and final visual output.
That matters because text-only Agents have a major weakness: they can build something without being able to see how it actually looks.
They can write code.
They can edit code.
They can call tools.
But if a web page looks terrible, a chart is unreadable, or a slide deck has broken spacing, the Agent cannot judge that on its own.
That is a real limitation.
V4-Flash-Vision-Exp fixes part of that problem.
The Agent can now look at what it created, then make another pass.
For web pages, presentations, front-end work, charts, and UI tasks, that is much more useful than basic image captioning.
Benchmark scores also improved
DeepSeek published several multimodal Agent benchmark results.
ApexBench (Pass@1)
- V4-Flash-Vision-Exp: 36.5
- V4-Flash: 26.2
- Claude Opus-4.8: 39.4
Agents' Last Exam
- V4-Flash-Vision-Exp: 27.3
- V4-Flash: 25.2
- Claude Opus-4.8: 25.7
Chartography
- V4-Flash-Vision-Exp: 64.3
- Claude Opus-4.8: 65.0
ZeroBench (Pass@5)
- V4-Flash-Vision-Exp: 35.0
- Claude Opus-4.8: 34.0
Across these four tests, DeepSeek and Claude Opus-4.8 trade wins rather than showing a clear overall winner.
One detail is worth keeping in mind.
ApexBench and Agents' Last Exam include multimodal content, while the older V4-Flash model cannot process images and simply ignores that information.
So the jump from 26.2 to 36.5 on ApexBench does not mean the model suddenly became dramatically smarter.
A big part of the gain comes from the fact that it can finally access information that was previously invisible to it.
Some text-only Agent benchmarks also improved:
- Terminal Bench 2.1: 82.7 → 83.9
- DeepSWE: 54.4 → 59.3
- DSBench-Hard: 59.6 → 63.6
At least from these numbers, adding vision did not hurt the model’s existing Agent performance.
It fixes one of V4’s biggest gaps
V4-Flash-0731 was a text-only model.
That is fine for chat, but the limitation becomes obvious once you use it as an Agent.
It cannot inspect a screenshot.
It cannot read a chart visually.
It cannot check whether a UI layout broke.
It cannot look at a finished slide deck and judge whether the design actually works.
That is the bigger story here.
A lot of automated workflows hit the same wall: the Agent can create something, but it cannot see the result.
With vision added, it can at least inspect the output and decide what needs another pass.
For web, UI, slide, and chart-heavy workflows, that is a meaningful upgrade.
Comments (0)