视觉按文本价卖!DeepSeek V4 Flash Vision 硬核拆解:一张图最多 384 token

视觉按文本价卖!DeepSeek V4 Flash Vision 硬核拆解:一张图最多 384 token

Ren Echo Lv4

2026 年 8 月,DeepSeek 官方文档悄悄上线了一个新模型 deepseek-v4-flash-vision-exp,然后一整天都被 Hacker News 和开发者群刷屏。刷屏的理由只有一个:它的视觉能力,是按纯文本模型的价格在卖——1M 输入 token 低至 $0.22(缓存命中更是只有 $0.007),和它家纯文本的 deepseek-v4-flash 完全一致,一张图换算下来最多只吃 384 个 token。多模态推理第一次被拉到和「文字对话」同一个价格带,这件事的含金量,比一个炫技 demo 大得多。今天我就把它拆开:定价到底多「白菜」、一张图如何变成 token、三种喂图方式怎么跑通,以及那些官方文档里藏着的坑。

一、核心痛点:多模态为什么一直「用不起」

先把背景说清楚。过去两年,视觉模型的能力突飞猛进,但「看得见」和「用得起」之间一直隔着一堵墙——视觉 token 太贵了

主流视觉模型的计费逻辑里,一张图往往被切成几十上百个 patch,再压成一串视觉 token,光一张高清图就可能吃掉几百上千 token 的输入预算。结果就是:OCR 扫描、截图问答、图表分析这些「本来就该便宜」的刚需场景,被价格硬生生挡在了门外。开发者要么咬咬牙把图缩到 256px,要么干脆放弃多模态、退回「先让用户手打文字描述」的原始状态。

DeepSeek 这次直接换了个打法:把视觉模型做成纯文本 flash 的一个「加量不加价」变体。同一个 1M 上下文、同一个 384K 最大输出、同一张价目表,唯一的区别是 deepseek-v4-flash-vision-exp 多收了一个「图像输入」。换句话说,它不是「再做一个贵的多模态旗舰」,而是「让已经有的便宜模型顺便能看图」。

DeepSeek AI 官方 Logo

这个定位决定了它的一切设计:便宜是它的第一性原理。下面这张图把「一张图如何变成 token、如何计费」讲清楚了,你先把这条管线记住,后面每一章都围着它转。

一张图如何变成 token:图像预处理与计费管线

二、底层硬核拆解:一张图如何变成 token

这是整篇文章最硬核的部分,也是「便宜」的真相所在。

2.1 先缩放,再换算

DeepSeek 的文档写得很清楚:图像不是原样喂给模型的,推理前每张图都会先被自动缩放(保持宽高比),然后按缩放后的尺寸换算成 token,再和你请求里的文本 token 合并计费。缩放规则只有两条:

  • 总像素低于约 384×384 的图:放大到约 384×384。
  • 更大的图:缩小到总像素约等于一张 800×800 图。

于是就有了那条最关键的上限:单张图封顶 384 token。官方原话甚至举例说「一张 2000×2000 和一张 5000×5000 的图,缩放后消耗的 token 数一模一样」——因为都会被压到 800×800 这个天花板。这跟你熟悉的「图片越大越贵」完全不同:在 DeepSeek 这里,超大图不会让你破产,它只是被优雅地缩掉了

这意味着什么?意味着一个包含 10 张截图的 OCR 请求,图像部分的成本是有明确上界的——最多 10 × 384 = 3840 个视觉 token,再加文本。对「批量读图」这种场景,成本完全可预测。

2.2 detail 字段:一个你大概率会用到的省钱开关

针对 image_url 输入,你还能用 detail 字段进一步控制精度:

detail 值 行为
low 缩到 512×512 再推理,更快更省,适合不关心细部纹理的场景
high 保留原图(为兼容性保留,等价于 original
original 保留原图
auto 自动选择,当前等价于 original

注意一个细节:detail 只在 image_url 方式下生效,通过 Files API file_id 传图时会被直接忽略。所以「读缩略图判断是啥」用 low,「读高精度截图里的报错小字」就老老实实用原图。

2.3 多图请求:每张图独立计数

文档明确写了:一个请求里有多张图时,每张图都按同一规则独立换算,没有针对多图的特殊合并计算。配合后面会讲到的「单请求最多 600 张图」上限,这意味着批量场景的成本是线性的、可心算的——这是工程上我最喜欢的一点。

三、全流程跑通:三种喂图方式 + 可复制的代码

模型名就叫 deepseek-v4-flash-vision-exp,接口完全兼容 OpenAI / Anthropic 格式。官方给了三种喂图方式,覆盖从「本地单张」到「大批量复用」的全部场景。

方式一:Base64 内联(最简单,适合本地文件)

把图片编码成 data: URL 直接塞进请求。这是本地文件最快的路径,代价是编码后的数据会计入 48 MiB 的请求体上限

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
import base64
from openai import OpenAI

client = OpenAI(api_key="<DeepSeek 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": "这张图里有什么?"},
{"type": "image_url",
"image_url": {"url": f"data:image/jpeg;base64,{b64}"}},
],
}],
)
print(response.choices[0].message.content)

用 curl 也可以:

1
2
3
4
5
6
7
8
9
10
11
12
13
curl https://api.deepseek.com/chat/completions \
-H "Content-Type: application/json" \
-H "Authorization: Bearer $DEEPSEEK_API_KEY" \
-d '{
"model": "deepseek-v4-flash-vision-exp",
"messages": [{
"role": "user",
"content": [
{"type": "text", "text": "这张图里有什么?"},
{"type": "image_url", "image_url": {"url": "data:image/jpeg;base64,<BASE64_DATA>"}}
]
}]
}'

方式二:外链 URL(最省心,适合图已经在网上)

传一个公开可访问的 http(s) 链接,模型自己下载。约束是:URL 不超过 8192 字符、单图不超过 32 MiB、下载要在 60 秒内完成。图太大或链接太长,就退回方式一或改用 Files API。

1
2
3
4
5
6
7
8
9
10
11
response = client.chat.completions.create(
model="deepseek-v4-flash-vision-exp",
messages=[{
"role": "user",
"content": [
{"type": "text", "text": "描述这张图。"},
{"type": "image_url",
"image_url": {"url": "https://example.com/image.jpg"}},
],
}],
)

方式三:Files API file_id(最划算,适合复用同一张图)

先把图上传一次,之后用 file_id 引用。这是「同一张图要反复问多个问题」时的最佳选择——免去重复上传,而且单图上限放宽到 64 MiB,不受 32 MiB 的内联检查约束。

1
2
3
4
5
6
7
8
9
10
11
12
# 先上传,拿到 file_id(形如 file-api-...)
# 再在 content 里用 file 内容块引用
response = client.chat.completions.create(
model="deepseek-v4-flash-vision-exp",
messages=[{
"role": "user",
"content": [
{"type": "text", "text": "解析这张截图里的报错。"},
{"type": "file", "file": {"file_id": "file-api-..."}},
],
}],
)

什么时候用哪种,官方给了明确的决策依据:内联方式受 48 MiB 请求体约束;单图超过 32 MiB 只能走 Files API;同一张图复用多次也走 Files API。三条线各自覆盖一类场景,基本没有重叠的灰色地带。

四、价格与限额:把「白菜价」量化到小数点

说「便宜」得有数。下面这张对比图把三兄弟的价格并排摆了出来,结论一句话:vision-exp 和 flash 的价目表逐行完全相同,pro 则是它们的 3 倍

价格对比:vision 与纯文本 flash 完全同价

完整价目(每 1M token,美元):

计费项 flash / vision-exp(off-peak) pro(off-peak)
输入(cache hit) $0.007 $0.022
输入(cache miss) $0.22 $0.66
输出 $0.66 $1.98

几点要划重点:

  • peak 时段翻倍:官方定义 peak 为 UTC 01:00–04:00 与 06:00–10:00,其余为 off-peak。想省钱,错峰调用,off-peak 直接半价。
  • 图像 token 并入输入计费:图像折算的 token 和文本输入 token 一起按「输入价」算,命中缓存还能吃到 $0.007/M 的 cache-hit 价。
  • 并发上限:vision-exp 和 flash 都是 2500,pro 是 500。也就是说视觉模型不但没降级,并发反而和 flash 一档,比 pro 还高 5 倍——这非常反直觉,也侧面说明它的定位就是「走量」。

再补一张限额表,接图之前务必过一遍:

限制项
支持格式 JPEG / PNG / GIF / WebP(按文件内容识别,不看文件名)
外链 URL 长度 8192 字符
请求体大小 48 MiB
单图(base64 / 外链) 32 MiB
单图(Files API file_id) 64 MiB
单请求图片数 600 张
单请求总图大小 64 MiB(含 file_id 可到 200 MiB)
最大边长 8192 px(≥15 张图降到 4096 px)

五、边界与坑:这些限制你必须提前知道

便宜不意味着没规矩。官方文档里明确列了几条「踩了直接 400」的硬限制,接图之前记牢:

  1. 图像只能出现在 user 消息里。放在 system 或 assistant 消息里会返回 400 错误。这跟很多模型不同,写多轮对话代码时最容易踩。
  2. 只有 vision 模型能看图。把图发给 deepseek-v4-flashdeepseek-v4-pro,会得到 400「This model does not support image」。
  3. FIM(代码补全)不支持。flash 和 pro 在非思考模式下支持 FIM Completion,但 vision-exp 明确不支持。所以别指望它能「看着代码截图续写代码补全」。
  4. 能力面同样齐全:JSON Output、Tool Calls、Responses API、Anthropic API、Chat Prefix Completion 都是 ✓ 的。也就是说它不只是个「看图说话」工具,是可以塞进 Agent 工作流里当「眼睛」用的——配合 tool calls,让模型看图后再调用外部工具,这条链路是通的。
  5. 双协议支持:除了 OpenAI 兼容端点,还支持 Anthropic 兼容的 /messages 端点(base_url=https://api.deepseek.com/anthropic),图像用 source.type = base64 / url / fileimage 块承载;Responses API 里则用 input_image 内容块。已经用 Claude 工具链的团队,几乎不用改代码就能切过来。

还有一句被很多人忽略、但非常重要的话:它是个 experimental(实验)模型。官方在模型列表里特意标注了这一点——能力和接口都可能变。所以现在是跑实验、做原型、批量读图的好时机,但把「生产关键链路」押在它上面之前,最好先做个灰度。

结语

「视觉按文本价卖」这句话听起来像营销,但拆完价目表你会发现它是字面意义上的事实:deepseek-v4-flash-vision-exp 和纯文本 flash 的每一行价格都相同,一张图封顶 384 token,缓存命中低到 $0.007/M,并发还开到了 2500。

这背后是一个清晰的战略信号:DeepSeek 不打算做一个「更贵的多模态旗舰」,而是要把视觉能力当作文本模型的默认配置往下沉。当「看图」不再是一笔需要精打细算的预算,OCR、截图问答、图表理解、批量图像处理这些被价格压抑的需求,会一下子全冒出来。

如果你想上手,就三步:申请一个 API key,pip install openai,把第三节里那三段代码里的 <DeepSeek API Key> 换成真 key、模型名填 deepseek-v4-flash-vision-exp,跑起来。等你看到一张图只花几毛钱就吐出一段精准描述的时候,就懂我说的「白菜价」是什么意思了。


本文所有价格、限额、token 换算规则、代码示例均核对自 DeepSeek API 官方文档(Models & Pricing、Vision 指南),数据采集于 2026-08-22。模型为实验性版本,参数可能变动,请以官方最新文档为准。

📺 相关视频

  • 标题: 视觉按文本价卖!DeepSeek V4 Flash Vision 硬核拆解:一张图最多 384 token
  • 作者: Ren Echo
  • 创建于 : 2026-08-22 09:30:00
  • 更新于 : 2026-08-23 09:19:18
  • 链接: https://renecho-blog.pages.dev/2026/08/22/2026-08-22-deepseek-v4-flash-vision/
  • 版权声明: 本文章采用 CC BY-NC-SA 4.0 进行许可。
评论