How to choose a DeepSeek model for your task
Pro, Flash, Flash Vision, or V3.2: each has its own job. A short decision map with examples.
Yenisei team
How to choose a DeepSeek model for your task
There are four DeepSeek models in the catalog, and the question "which one should I use" comes up more and more often. Here is a decision map: no marketing, just experience from test runs.
Four models in one paragraph
- V4 Pro (
deepseek-pro): the flagship. Reasoning and code, context up to a million tokens. - V4 Flash (
deepseek-flash): fast and cheap, low latency, also up to a million tokens. - V4 Flash Vision (
deepseek-flash-vision): the same Flash, but it understands images. - V3.2 (
deepseek-chat): all-purpose chat, function calling, Russian, about 160K.
R1, the model that returned an open chain of reasoning, is no longer in the catalog.
Decision map
Start with two questions.
First: do you need reasoning? That is, should the model break the task into steps rather than answer reflexively? If yes, you need V4 Pro. If no, Flash or V3.2.
Second: do you need images as input? If yes, V4 Flash Vision. If no, any of the others.
Scenario by scenario
Support chatbot. Main flow on V4 Flash (fast, cheap). Route the hard tickets to V3.2 or Pro. This is a standard cascade.
Coding assistant. V4 Pro. It holds the context of a module, is careful with types, and is less likely to invent APIs that don't exist. For autocomplete, where speed matters, Flash.
Analytics with verifiable conclusions. V4 Pro, asked to write out the solution step by step, so the reviewer sees every step. This matters most where an error in the conclusion costs money.
Extracting data from text. Flash with response_format: json_object. Cheap and stable.
Parsing screenshots and scans. V4 Flash Vision: fast and inexpensive.
Conversational product in Russian with tools. V3.2 by default. Even Russian, function calling, large context.
About money
Flash is several times cheaper than Pro, on both input and output tokens; current figures are on the plans and pricing page. So a cascade (Flash by default, Pro when needed) almost always beats "everything on the flagship."
Router example
def choose_model(task: str, needs_reasoning: bool, has_image: bool) -> str: if has_image: return "deepseek-flash-vision" if needs_reasoning: return "deepseek-pro" if task == "extract": return "deepseek-flash" return "deepseek-chat"Don't complicate things prematurely. Take V3.2 as the default, add Flash for high-volume operations, and bring in Pro when you hit the quality ceiling. All four are available at the same base_url https://api.yenisei.ru/v1; switching is a one-line change.