DeepSeek 首个视觉 API 模型 deepseek-v4-flash-vision-exp 已经可以用了:单图 token 计费封顶 384,约 1000 张图成本 1 块钱;支持 base64、外部 URL、Files API 三种传图方式,同时兼容 OpenAI、Anthropic、Responses 三套 API。本文基于官方文档整理可直接复制的代码和完整限制清单,照着贴就能跑通第一次视觉调用。
模型与支持格式
deepseek-v4-flash-vision-exp 在文本之外接受图片输入,可用于描述图片、识别截图里的文字、分析图表等。
支持格式:JPEG、PNG、GIF、WebP。格式按文件实际内容判断,不按文件名或声明的 MIME 类型。
三种传图方式
所有方式都走 OpenAI 兼容的对话补全格式:content 是内容块数组而不是纯字符串,base_url 为 https://api.deepseek.com。
方式 1:Base64 内联。本地文件最简单的方式,编码后以 data: URL 直接嵌入请求,会计入 48 MiB 请求体限制:
import base64
from openai import OpenAI
client = OpenAI(api_key="<KEY>", base_url="https://api.deepseek.com")
b64 = base64.b64encode(open("image.jpg", "rb").read()).decode()
resp = 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(resp.choices[0].message.content)方式 2:外部图片 URL。传一个可公开访问的 http(s) 链接,模型自动下载。URL 最长 8192 字符、图片最大 32 MiB、需 60 秒内完成下载;链接太长就改用 base64 或 Files API。
方式 3:Files API file_id。先用 Files API 上传一次,之后用 file_id 引用,适合多请求复用同一张图、或请求体超过 48 MiB 内联限制的场景。file 块也可以用 file_data 以 base64 内联(与 file_id 互斥)。
detail 级别与 token 计费
image_url 输入可选 detail 字段控制处理方式:low 缩放至 512×512,更快更省 token;high / original 保留原图;auto 当前等价 original。
计费按尺寸换算 token,进模型前自动缩放:小于约 384×384 的图放大、更大的图缩小,统一到约 800×800 的像素量级。因此每张图 token 有 384 上限——2000×2000 和 5000×5000 的图消耗相同 token;多图时每张独立按同一规则计算。
完整限制清单
| 限制项 | 数值 |
| 支持格式 | JPEG、PNG、GIF、WebP |
| 外部 URL 长度 | 8192 字符 |
| 请求体大小 | 48 MiB |
| 单图最大(base64 / URL) | 32 MiB |
| 单图最大(Files API) | 64 MiB |
| 单请求最大图片数 | 600 张 |
| 图片最大尺寸 | 单边 8192 px;≥15 张时降为 4096 px |
Anthropic 与 Responses API 兼容
除了 OpenAI 端点,还可以通过 Anthropic 兼容的 /messages 端点(base_url 为 https://api.deepseek.com/anthropic)传图。区别在内容块结构:Anthropic 用 image 块,source.type 为 base64 / url / file,base64 需要 media_type 字段。
Responses API 同样支持三种传图方式,图片以 input_image 内容块承载,可出现在 user / developer 消息或工具输出中,支持 detail 字段。
使用注意与常见错误
- 图片只支持出现在 user 消息:system / assistant 消息带图返回 400。
- 只有视觉模型(deepseek-v4-flash-vision-exp)接受图片,其他模型返回 400("This model does not support image")。
- 用户文本包含保留的图片占位 token 会被拒绝,返回 400。
FAQ
Q:DeepSeek 视觉 API 一张图大概花多少钱?
单图 token 封顶 384,与文本一起计费。按官方口径约 1000 张图成本 1 元,比 Claude Sonnet 4.6 便宜约 25 倍(详见DeepSeek V4-Flash Vision 上线报道)。
Q:图片太大超过 32 MiB 怎么办?
用 Files API:通过 file_id 引用的单图最大可到 64 MiB,且不受 32 MiB 单图检查限制。
Q:一个请求最多能传多少张图?
最多 600 张;包含 15 张及以上时单边尺寸上限从 8192 px 降到 4096 px。想控制成本,大图记得加 detail=low。
相关阅读
DeepSeek V4 Pro 正式版上线:Agent 能力暴涨,图像推理首次原生支持 · DeepSeek V4-Flash Vision 上线报道