TokenPAPATokenPAPA
User GuideAPI ReferenceAI ApplicationsBlog

DeepSeek V4 Flash Vision Exp: Image Understanding at Text-Only Prices

DeepSeek V4 Flash Vision Exp adds image input to the $0.14/1M model — describe images, OCR screenshots, analyze charts. Formats, limits, code examples, and how to call it through one API key.

DeepSeek V4 Flash Vision Exp: Image Understanding at Text-Only Prices

DeepSeek just made its cheapest model multimodal. deepseek-v4-flash-vision-exp accepts images in addition to text — describe a photo, extract text from a screenshot, or analyze a chart — without moving to a pricier flagship tier.

For overseas developers watching DeepSeek V4 API pricing per 1M tokens, this is the interesting part: the vision model sits at the exact same price point as DeepSeek V4 Flash. You get vision capability for the price of text.

Here's everything the official docs cover, plus how to call it through one API key on TokenPAPA.


What DeepSeek V4 Flash Vision Exp Can Do

The experimental vision model (deepseek-v4-flash-vision-exp) takes images alongside your text prompt. Practical uses:

  • Describe images — explain what's in a photo, diagram, or product shot
  • OCR screenshots — pull text out of UI screenshots, receipts, and documents
  • Analyze charts & tables — read plotted data, extract numbers, summarize trends
  • Visual QA in agents — attach an image in a user message and let the model reason over it

Unlike some vendors that gate vision behind premium models, DeepSeek shipped it on the budget tier.

Supported Image Formats

FormatNotes
JPEG
PNG
GIF
WebP

Format is detected from the file's actual content — not the filename extension or the declared MIME type. A PNG renamed to .jpg is still treated as PNG.

How to Send Images (OpenAI-Compatible)

Images are passed as content blocks (an array) instead of a plain string — the same structure as OpenAI. Three ways to supply an image:

1. Base64 Inline (Simplest for Local Files)

import base64
from openai import OpenAI

client = OpenAI(api_key="your-key", base_url="https://tokenpapa.ai/v1")

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's in this image?"},
            {"type": "image_url", "image_url": {"url": f"data:image/jpeg;base64,{b64}"}},
        ],
    }],
)
print(response.choices[0].message.content)

2. Public Image URL

Pass a publicly accessible http(s) URL — the model downloads it automatically:

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"}},
        ],
    }],
)

3. Files API Reference

Upload once, reuse across requests via file_id — best for images > 32 MiB or repeated use:

response = client.chat.completions.create(
    model="deepseek-v4-flash-vision-exp",
    messages=[{
        "role": "user",
        "content": [
            {"type": "text", "text": "What's in this image?"},
            {"type": "file", "file_id": "file-api-xxxxxxxxxxxxxxxx"},
        ],
    }],
)

Note: Images only work in user messages. Putting an image in a system or assistant message returns a 400 error. Non-vision models also reject images (400, "This model does not support image").

Detail Level Control

For image_url input you can set a detail field to control processing:

ValueBehavior
lowScales to 512×512 before inference — faster, fewer tokens
highKeeps original (equivalent to original, for compatibility)
originalKeeps original
autoAuto-select; currently equivalent to original
{"type": "image_url", "image_url": {"url": "https://example.com/image.jpg", "detail": "low"}}

How Images Are Billed (Token Conversion)

Images are converted to tokens by size and billed together with text:

  • Images under ~384×384 are scaled up (aspect preserved)
  • Larger images are scaled down to roughly 800×800 total pixels
  • Max 384 tokens per image — a 2000×2000 and a 5000×5000 image cost the same
  • Multi-image requests: each image is computed independently, same rule

This means vision stays predictable: even large images cap at a few hundred tokens, keeping DeepSeek V4 API pricing per 1M tokens the dominant cost factor.

Limits at a Glance

LimitValue
Supported formatsJPEG, PNG, GIF, WebP
External URL length8192 characters
Request body size48 MiB
Max single image (base64 / URL)32 MiB
Max single image (Files API file_id)64 MiB
Max images per request600
Max image dimension8192 px per side (4096 px if ≥15 images)

API Compatibility

Besides the OpenAI-compatible endpoint, the vision model works with:

  • Anthropic APIhttps://api.deepseek.com/anthropic, using image blocks with source.type = base64 / url / file
  • Responses API — images as input_image content blocks with the same detail semantics

On TokenPAPA, the OpenAI-compatible endpoint https://tokenpapa.ai/v1 is all you need — the same code above runs unchanged.


FAQ

Q: Is DeepSeek V4 Flash Vision Exp available on TokenPAPA? A: Yes — deepseek-v4-flash-vision-exp is live on TokenPAPA today. One API key gives you access to it alongside DeepSeek V4 Flash/Pro, GPT, Claude, Gemini, Qwen, and more, all through the same OpenAI-compatible endpoint.

Q: Do vision requests cost more than text? A: No per-image surcharge. Images are converted to tokens (max 384 per image) and billed at the standard rate. Since the model is priced identically to DeepSeek V4 Flash, vision stays budget-friendly.

Q: What are DeepSeek V4 Flash prices? A: On TokenPAPA, DeepSeek V4 Flash is $0.14 per 1M input and $0.42 per 1M output tokens. The vision-exp model sits at the same price line.

Q: Can I send multiple images in one request? A: Yes — up to 600 images per request, each billed independently. Just add more image_url or file content blocks to the user message.


Get Started

Try DeepSeek V4 Flash Vision Exp in minutes:

  1. Sign up at tokenpapa.ai$1 free credit
  2. Create an API key (no Chinese phone number needed)
  3. Point your OpenAI SDK at https://tokenpapa.ai/v1 and send an image
from openai import OpenAI

client = OpenAI(api_key="your-key", base_url="https://tokenpapa.ai/v1")

response = client.chat.completions.create(
    model="deepseek-v4-flash-vision-exp",
    messages=[{
        "role": "user",
        "content": [
            {"type": "text", "text": "Extract the text from this screenshot."},
            {"type": "image_url", "image_url": {"url": "https://example.com/screenshot.png"}},
        ],
    }],
)
print(response.choices[0].message.content)

Vision understanding at text-only prices — one key, one endpoint.

How is this guide?

Last updated on

DeepSeek V4 Flash Vision Exp: Image Understanding at Text-Only Prices | TokenPAPA