DeepSeek V4 Flash (0731) vs DeepSeek V4 Pro
Lequel, quand — verdict de synthèse, pas un tableau de benchmarks
Ces deux modèles frères de DeepSeek correspondent sur les spécifications qui guident généralement un choix — un contexte de 1000000 tokens, une sortie maximale de 393216, des entrées/sorties texte, et les mêmes flags pour le chat, le code, le raisonnement et les outils — la vraie différence se situe donc sur le prix et le contrôle de la réflexion. Choisissez deepseek-v4-flash-0731 pour les travaux de volume : à $0.308 en entrée et $0.924 en sortie, il est environ 5.2x moins cher en entrée et 3.5x moins cher en sortie que les $1.608 et $3.216 de deepseek-v4-pro. Choisissez deepseek-v4-pro lorsque vous souhaitez désactiver la réflexion par appel, ou lorsque les lectures en cache prédominent, car ses $0.0134 y sont environ 2.3x moins chers que les $0.0308 de Flash.
Tarification
| DeepSeek V4 Flash (0731) | DeepSeek V4 Pro | Δ | |
|---|---|---|---|
| Entrée / 1M tokens | $0.308 | $1.608 | 0.19× |
| Sortie / 1M tokens | $0.924 | $3.216 | 0.29× |
| Lecture en cache / 1M tokens | $0.0308 | $0.0134 | 2.3× |
| Écriture cache | aucun frais supplémentaire | aucun frais supplémentaire | — |
Tarifs issus du catalogue en direct au moment de la compilation ; chaque page de modèle présente la fiche actuelle.
Où ils se situent — prix en entrée pour 1M de tokens sur l'ensemble des 63 modèles chat pour cette unité de facturation (échelle logarithmique)
Capacités
| DeepSeek V4 Flash (0731) | DeepSeek V4 Pro | |
|---|---|---|
| Utilisation d'outils | oui | oui |
| Contrôle de la réflexion | oui — réglage du fournisseur non publié | configurable |
| Sortie structurée | oui | oui |
| Mise en cache du prompt | implicite (automatique) | implicite (automatique) |
| Durée de vie du cache | no fixed TTL (evicted when unused) | no fixed TTL (evicted when unused) |
| Préfixe minimum mis en cache | non publié | non publié |
Spécifications
| DeepSeek V4 Flash (0731) | DeepSeek V4 Pro | |
|---|---|---|
| Modalités d'entrée | texte | texte |
| Modalités de sortie | texte | texte |
| Sortie | 2026-07-31 | 2026-04-24 |
| Fenêtre de contexte | 1M | 1M |
| Sortie maximale | 393K | 393K |
| Paramètre de réflexion | — |
|
| Valeurs acceptées | — | thinking.type
reasoning_effort
|
| Par défaut | — | enabled, with reasoning_effort high some complex agent requests are automatically set to max |
Les spécifications sont transcrites à partir de la documentation de chaque fournisseur ; une ligne qu'un fournisseur ne publie pas est omise plutôt que déduite. Sources complètes : DeepSeek V4 Flash (0731) · DeepSeek V4 Pro
Un prompt, deux modèles — mesurés via la passerelle
DeepSeek V4 Flash (0731) réussi · 3 sentences
Enabling reasoning mode prompts the model to generate extensive internal chain-of-thought tokens before answering, often multiplying total token output per query by several times. This directly inflates costs because we are billed per token, and these reasoning tokens are processed at a premium compute tier that carries a higher price per million tokens. However, this spend buys measurably higher accuracy and fewer failed calls, so we are tracking it against specific error-reduction KPIs to ensure the ROI justifies the increase.
sortie 365 tok (+266 réflexion) latence 5.1 s
DeepSeek V4 Pro réussi · 3 sentences
Enabling reasoning causes the model to generate a lengthy internal chain‑of‑thought before it delivers a visible answer, and we are billed for every one of those hidden reasoning tokens just as we are for the final output. In most interactions, the volume of these unseen tokens at least equals the visible response, effectively doubling the total tokens consumed per query. That doubled token consumption translates directly into a doubled per‑query cost, which is why our overall LLM bill doubled.
sortie 641 tok (+545 réflexion) latence 11.5 s
Suivi de l'instruction (exactement trois phrases — comptables), adaptation à l'audience (registre CFO), et l'écart de facturation lié à la réflexion cachée que les compteurs de tokens ci-dessous révèlent.
DeepSeek V4 Flash (0731) réussi · 8/8 cases
```python def longest_run(xs): if not xs: return 0 best = 1 cur = 1 for i in range(1, len(xs)): if xs[i] == xs[i - 1]: cur += 1 best = max(best, cur) else: cur = 1 return best ``` The original bug stems from initializing `cur` to 0 and only incrementing it when adjacent elements are equal, which counts the number of *equal transitions* rather than the actual run length—so every run of length L is reported as L−1, and a single‑element run (with no transitions) yields 0. Moreover, because `best` is updated only inside the equality branch, it never accounts for a run that ends at the last element if that run is longer than any previously seen (though the real issue remains the off‑by‑one). […]
sortie 1268 tok (+1016 réflexion) latence 14.0 s
DeepSeek V4 Pro réussi · 8/8 cases
```python def longest_run(xs): if not xs: return 0 best = 1 cur = 1 for i in range(1, len(xs)): if xs[i] == xs[i - 1]: cur += 1 best = max(best, cur) else: cur = 1 return best ``` **Explanation:** The bug stems from initializing `cur = 0` and only incrementing it when two adjacent elements match, which counts the number of *additional* equal elements rather than the actual run length (which is `cur + 1`). As a result, the returned `best` is always one less than the true longest run—most obviously returning 0 for a single-element list instead of 1. […]
sortie 2418 tok (+2131 réflexion) latence 35.6 s
Si le correctif est réellement juste (exécutable), la densité de l'explication, et l'efficacité en tokens sur une tâche bornée.
DeepSeek V4 Flash (0731) réussi · 5/5 fields, guidance null
{ "company": "Meridian Robotics", "quarter": "Q3", "revenue_usd_m": 412, "growth_pct": null, "guidance": null }
sortie 1119 tok (+1072 réflexion) latence 12.3 s
DeepSeek V4 Pro réussi · 5/5 fields, guidance null
{ "company": "Meridian Robotics", "quarter": "September quarter", "revenue_usd_m": 412, "growth_pct": "eleven and change", "guidance": null }
sortie 1204 tok (+1153 réflexion) latence 19.9 s
Respect du schéma (aucun champ inventé), pression d'hallucination (guidance est explicitement retenue), et différences de chemin pour la sortie structurée.
DeepSeek V4 Flash (0731) manqué · 141 words, 0 banned, 1 question
**Introducing Prompt Cache for API Gateway** We are pleased to announce Prompt Cache, a new feature that stores and reuses identical prompt prefixes across all connected LLM providers. By automatically recognizing repeated requests, this cache reduces token consumption and lowers latency without altering your application logic. Whether you use OpenAI, Anthropic, or open-source models, the cache operates transparently, ensuring consistent behavior while cutting costs. Developers can configure cache TTL and scoping rules via a simple API call, giving you precise control over data freshness and privacy. This feature also minimizes redundant upstream calls, freeing provider rate limits for more critical workloads. Start caching today through the dashboard or CLI, and watch your operational expenses drop significantly. […]
sortie 254 tok (+80 réflexion) latence 4.4 s
DeepSeek V4 Pro aucune réponse à évaluer · no answer text within 16,384 tokens (all of it went to thinking)
Le modèle n'a renvoyé aucun texte de réponse — la totalité du budget de tokens a été consacrée à la réflexion masquée.
sortie 8193 tok (+8192 réflexion) latence 106.2 s
Respect des contraintes (budget de mots, liste de mots interdits, l'unique question), empreinte stylistique, et contrôle de la longueur.
Basculez de l'un à l'autre avec une seule ligne
Les deux ids sont dans chaque onglet ci-dessous — la paire de lignes en surbrillance est la seule modification. Même endpoint, même clé, même structure de requête.
from openai import OpenAI
client = OpenAI(
base_url="https://synthorai.io/v1",
api_key="sk-syn-...",
)
resp = client.chat.completions.create(
model="deepseek-v4-flash-0731",
# model="deepseek-v4-pro", # décommentez cette ligne, commentez celle du dessus
messages=[{"role": "user", "content": "Summarize this diff"}],
reasoning_effort="medium",
)
print(resp.choices[0].message.content)import OpenAI from "openai";
const client = new OpenAI({
baseURL: "https://synthorai.io/v1",
apiKey: "sk-syn-...",
});
const resp = await client.chat.completions.create({
model: "deepseek-v4-flash-0731",
// model: "deepseek-v4-pro", // décommentez cette ligne, commentez celle du dessus
messages: [{ role: "user", content: "Summarize this diff" }],
reasoning_effort: "medium",
});
console.log(resp.choices[0].message.content);curl https://synthorai.io/v1/chat/completions \
-H "Authorization: Bearer sk-syn-..." \
-H "Content-Type: application/json" \
-d '{
"model": "deepseek-v4-flash-0731",
# "model": "deepseek-v4-pro", # décommentez cette ligne, commentez celle du dessus
"messages": [{"role": "user", "content": "Hello"}],
"reasoning_effort": "medium"
}'package main
import (
"context"
"fmt"
"github.com/openai/openai-go/v3"
"github.com/openai/openai-go/v3/option"
)
func main() {
client := openai.NewClient(
option.WithBaseURL("https://synthorai.io/v1"),
option.WithAPIKey("sk-syn-..."),
)
resp, _ := client.Chat.Completions.New(context.TODO(), openai.ChatCompletionNewParams{
Model: "deepseek-v4-flash-0731",
// Model: "deepseek-v4-pro", // décommentez cette ligne, commentez celle du dessus
Messages: []openai.ChatCompletionMessageParamUnion{
openai.UserMessage("Summarize this diff"),
},
ReasoningEffort: openai.ReasoningEffortMedium,
})
fmt.Println(resp.Choices[0].Message.Content)
}import com.openai.client.OpenAIClient;
import com.openai.client.okhttp.OpenAIOkHttpClient;
import com.openai.models.chat.completions.*;
import com.openai.models.ReasoningEffort;
OpenAIClient client = OpenAIOkHttpClient.builder()
.baseUrl("https://synthorai.io/v1")
.apiKey("sk-syn-...")
.build();
ChatCompletion resp = client.chat().completions().create(
ChatCompletionCreateParams.builder()
.model("deepseek-v4-flash-0731")
// .model("deepseek-v4-pro") // décommentez cette ligne, commentez celle du dessus
.addUserMessage("Summarize this diff")
.reasoningEffort(ReasoningEffort.MEDIUM)
.build());
System.out.println(resp.choices().get(0).message().content().orElse(""));FAQ
Lequel est le moins cher, DeepSeek V4 Flash (0731) ou DeepSeek V4 Pro ?
DeepSeek V4 Flash (0731) est moins cher sur entrée / 1m tokens ($0.308 contre $1.608, avec un écart de 5.2×). D'autres lignes peuvent indiquer l'inverse — le tableau ci-dessus contient la fiche complète, et le coût réel dépend de votre combinaison.
Puis-je faire un test A/B de DeepSeek V4 Flash (0731) par rapport à DeepSeek V4 Pro sans deux intégrations ?
Oui. Les deux sont servis via le même endpoint compatible OpenAI avec une seule clé API — le basculement est un changement de chaîne de modèle en une ligne, vous pouvez donc diriger une fraction du trafic vers chacun et comparer les factures directement.
Est-ce que DeepSeek V4 Flash (0731) et DeepSeek V4 Pro prennent en charge le prompt caching ?
Oui — les deux facturent les lectures en cache en dessous de leur tarif d'entrée, donc les charges de travail à préfixe chaud coûtent moins cher que ce que les tarifs de base suggèrent. Les lignes exactes des lectures en cache se trouvent dans le tableau de tarification ci-dessus.