跪拜 Guibai
← Back to the summary

DeepSeek Ships Its First Vision Model, Matching Opus-4.8 on Agent Benchmarks at Flash Pricing

Hello everyone, I'm Xiaofan.

After waiting for so long, DeepSeek finally has a vision model. On August 21, DeepSeek quietly launched the multimodal visual understanding model DeepSeek-V4-Flash-Vision-Exp. DeepSeek can finally see images on its own.

Screenshot of DeepSeek's official X post announcing the launch of V4-Flash-Vision-Exp


1. What kind of model is this?

Let's start with its positioning. V4-Flash-Vision-Exp is an experimental model; you can think of it as DeepSeek's first official product in the visual direction. It has two characteristics:

  1. Text capabilities are not diminished: On pure text tasks like Agent, reasoning, and world knowledge, it is on par with the official V4-Flash version. Adding the visual module did not weaken it.
  2. Visual understanding is newly added: On Agent Benchmarks that require looking at images, it achieved a significant leap compared to V4-Flash. The official statement is that its "multimodal Agent capability is close to Opus-4.8."

Translating this into plain language: Previously, DeepSeek could only read text; now it can see images, and its ability to work with images is roughly on the same level as Claude Opus. For people doing Agent development, this is very significant, because in many real-world scenarios, text descriptions alone are insufficient; the model needs to be able to "see."

Supported image formats: JPEG, PNG, GIF, WebP. All mainstream formats are covered.


2. Benchmark Tests: How strong is it really?

Official Benchmark comparison chart for DeepSeek-V4-Flash-Vision-Exp

This time, the official release directly provided a comparison between V4-Flash-Vision-Exp, V4-Flash, and Opus-4.8. The conclusion is very clear:

Pure text capabilities are basically on par

On pure text benchmarks like Code Agent, reasoning, and world knowledge, V4-Flash-Vision-Exp is tied with V4-Flash. This means that if you originally wrote text tasks or Agent workflows using V4-Flash, switching to this vision version won't cause any drop in performance.

Multimodal Agent capability has significantly leaped

When it comes to Agent Benchmarks that require looking at images (such as ApexBench, Agents' Last Exam, etc.), V4-Flash would basically ignore the multimodal elements because it lacked visual capability. V4-Flash-Vision-Exp can not only see images but also combine visual information with text tasks for reasoning, performing close to Opus-4.8.

What does this mean? Agent developers can start incorporating the "seeing" dimension. For scenarios like screenshot recognition, UI automation, and document understanding, where previously you had to use other multimodal models to recognize images and convert them to text before feeding them to DeepSeek, you can now throw them end-to-end to your own model for processing.


3. How much does it cost?

This might be what everyone cares about most. The good news is: The billing price is exactly the same as V4-Flash. Images are not charged extra; they are converted into tokens and billed together with text.

DeepSeek model pricing and feature comparison table

Item Off-Peak Period Peak Period
Input (Cache Hit) 0.05 CNY / Million Tokens 0.10 CNY / Million Tokens
Input (Cache Miss) 1.5 CNY / Million Tokens 3.0 CNY / Million Tokens
Output 4.5 CNY / Million Tokens 9.0 CNY / Million Tokens

A few points to clarify:

If you want to accurately estimate the token consumption for a specific image, DeepSeek provides an official Image Token Calculator. Just input the width and height to get the result. For example, a 1920×1080 screenshot is estimated to consume 369 tokens, very close to the 384 limit.

Screenshot of DeepSeek Image Token Calculator, estimating 369 Tokens for 1920×1080


4. What can its image recognition capability do?

Just talking about parameters is boring; let's talk about what it can actually do. Combining official information and documentation, V4-Flash-Vision-Exp's visual capabilities are mainly used in these scenarios:

The official release provided 3 demonstration cases:

Example 1: Generate a commercially customized Tibet self-driving tour PPT, requiring a high-end, rugged, and wild aesthetic, and finally provide three pricing plans.

Example 1: Tibet self-driving tour PPT generation effect

Example 2: Re-create the DeepSeek Harness official website, reconstructing it with a dark blue deep-sea, glass UI, and ASCII pixel style.

Example 2: DeepSeek Harness official website re-creation

Example 3: Create a frontend Mini Demo with dynamic effects in a clay monster style.

Example 3: Clay monster style dynamic effects frontend Demo


5. 3 Practical Case Prompts

The official cases are more for demonstration. I've prepared 3 prompts that are closer to daily use, which you can try out directly:

Case 1: Restore frontend code from a UI screenshot

UI design screenshot example: SaaS data analysis dashboard interface

Look at this UI design screenshot and help me restore this page layout using HTML + Tailwind CSS. Requirements: 1) Restore the overall layout 1:1; 2) Use the actual color values from the screenshot for the color scheme; 3) First give me the complete HTML code, then explain the key design elements you identified.

Replicating UI

Case 2: Analyze a data chart and generate a text summary

Analyzing movie box office

This is a screenshot of movie box office details. Please help me: 1) Read out the key data points from the chart; 2) Identify growth trends and abnormal fluctuations; 3) Summarize the basic situation in one paragraph.

Analyzing data chart and generating text summary

Case 3: Identify an architecture diagram and convert it into a structured document

System configuration diagram

This is a photo of a whiteboard sketch of our system architecture. Please help me: 1) Identify all components in the diagram and their connection relationships; 2) Organize the identification results into a Markdown-formatted architecture document, including a component list and data flow description; 3) If some parts are unclear, mark them for me to confirm.

System analysis diagram


6. How to call the API?

Calling the API is not complicated and is fully compatible with the OpenAI format. The core is to pass an array for content, containing text blocks and image blocks.

Method 1: Base64 Inline (Simplest for local images)

import base64
from openai import OpenAI

client = OpenAI(api_key="<Your API Key>", base_url="https://api.deepseek.com")

with open("image.jpg", "rb") as f:
    b64 = base64.b64encode(f.read()).decode("utf-8")

response = client.chat.completions.create(
    model="deepseek-v4-flash-vision-exp",
    messages=[
        {
            "role": "user",
            "content": [
                {"type": "text", "text": "What is in this picture?"},
                {
                    "type": "image_url",
                    "image_url": {"url": f"data:image/jpeg;base64,{b64}"},
                },
            ],
        }
    ],
)
print(response.choices[0].message.content)

Method 2: External Image URL

response = client.chat.completions.create(
    model="deepseek-v4-flash-vision-exp",
    messages=[
        {
            "role": "user",
            "content": [
                {"type": "text", "text": "Describe this image."},
                {"type": "image_url", "image_url": {"url": "https://example.com/image.jpg"}},
            ],
        }
    ],
)

The URL method has limitations: the link can be a maximum of 8192 characters, the image can be a maximum of 32 MiB, and it must be downloaded within 60 seconds.

Method 3: Files API (Reusing the same image across multiple requests)

# First upload the image (via Files API) to get a file_id
response = client.chat.completions.create(
    model="deepseek-v4-flash-vision-exp",
    messages=[
        {
            "role": "user",
            "content": [
                {"type": "text", "text": "What is in this picture?"},
                {"type": "file", "file_id": "file-api-xxxxxxxxxxxxxxxx"},
            ],
        }
    ],
)

Images via the Files API can be up to 64 MiB and are not subject to the 32 MiB single-image limit.

Besides the three methods above, the model also supports calling via the Anthropic API (/messages endpoint) and the Responses API. All three formats cover image input methods, making it very convenient to integrate into existing Agent toolchains.

A small tip: image_url can pass a detail parameter to control precision. low will resize the image to 512×512, which is faster and saves tokens; original keeps the original image. Use low when fine details aren't needed.

Finally, here is the limitation table from the official documentation. It's best to glance at it before calling:

DeepSeek Vision API Limitation Table


7. How to use it in DeepSeek Harness?

DeepSeek Harness has also been updated simultaneously to support the vision model. The operation is very simple:

Step 1: Update DeepSeek Harness to the latest version

npm install -g @deepseek-ai/dsh@latest

Step 2: Configure the model

Select deepseek-v4-flash-vision-exp in the Harness configuration. Harness will automatically adapt image requests; no additional configuration conversion layer is needed.

DeepSeek Harness Desktop model selection interface

Step 3: Use it

Directly throw the "Niu Lai" promotional poster at it and have it help analyze it.

"Niu Lai" promotional poster

Simply put: Update Harness → Select model → Throw image → Work. It's just like using the original text-only model, except now it can see images.

If you are using DeepSeek in Codex, you can configure it through CC Switch, get the model list, and switch to deepseek-v4-flash-vision-exp.

① Configure DeepSeek

Codex configuring DeepSeek model

② Get and select the deepseek-v4-flash-vision-exp model

Selecting the deepseek-v4-flash-vision-exp model


Final Words

DeepSeek's vision model didn't come early, but the pricing is indeed sincere. It's the same price as V4-Flash, with off-peak input cache hits costing only 0.05 CNY per million tokens, and images capped at 384 tokens. The cost of trial and error is very low.

The model name carries an "Exp" (experimental), indicating it's still iterating, but its capability is already close to Opus-4.8. The subsequent official version should be even stronger. For scenarios involving Agent development and requiring visual understanding capabilities, you can start trying it out now.

The official documentation links are here. For those who want to know more, take a look:

I am Xiaofan. Even the smallest sail can voyage far. I'm passionate about sharing fun and practical干货 content.

If you found today's post rewarding, welcome to like, share, and repost. See you in the next one.

Comments

Top 1 from juejin.cn, machine-translated. The original thread is authoritative.

zhiyong791

The price went up, can't afford it anymore.