Qu'est-ce que DeepSeek V4-Pro ? Modèles, API, appels de fonctions et sortie JSON expliqués AI / API

Qu'est-ce que DeepSeek V4-Pro ? Modèles, API, appels de fonctions et sortie JSON expliqués

Vous connectez un agent DeepSeek et la documentation mentionnedeepseek-v4-prodeepseek-v4-flash, et les retraitésdeepseek-chat. L'appel de fonction revient parfoisargumentsce n'est pas un JSON valide, alors que le mode JSON et le schéma strict suivent des chemins différents ?

DeepSeek V4-Proest le modèle MoE phare de la famille DeepSeek V4, GA depuis le 13/08/2026 (build DeepSeek-V4-Pro-0813). La surface de l'API est inchangée :base_urlrestehttps://api.deepseek.com, ensemblemodelàdeepseek-v4-pro

Il est compatible avec OpenAI Chat Completions et offre également une interface de style anthropique ; L'appel de fonction, la sortie JSON et trois niveaux d'effort de réflexion partagent la même API.

Cet article couvre :

Gardez ceci à l'esprit :L'API de V4-Pro ressemble presque à celle d'OpenAI, maistool_calls[].function.argumentsest toujours une chaîne JSON générée par le modèle, dont la validité n'est pas garantie à chaque fois. Ci-dessous, nous parcourons la famille de modèles → configuration → outils → sortie JSON → choix d'une variante.

Qu'est-ce que DeepSeek V4-Pro

DeepSeek V4 a été lancé via API le 2026-04-24 en tant que pile mixte d'experts. V4-Pro est la plus grande variante : ~ 1,6 T de paramètres au total, ~ 49 B actifs par passe avant. Le frèredeepseek-v4-flashest plus léger (284B / 13B actif) pour les charges de travail sensibles à la latence et aux coûts.

La version GA 2026-08-13 améliore considérablement les compétences des agents : des références officielles telles que Terminal Bench 2.1 et Toolathlon-Verified rapportent des gains de qualité de production. Pour les développeurs, les changements pratiques sont :

Si vous utilisez déjà le SDK OpenAI avec un autre modèle, passer à V4-Pro signifie généralement modifier uniquementbase_urlapi_key, etmodel

Gamme V4 et noms hérités

Paramètre du modèle API Rôle Remarques
deepseek-v4-pro Agent phare / raisonnement AG 2026-08-13 ; idéal pour les tâches difficiles
deepseek-v4-flash Rapide / économique Sortie du 31/07/2026 ; compatible avec un QPS élevé
deepseek-chat(à la retraite) legacy Jusqu'au 24/07/2026 mappé sur V4-Flash sans réflexion
deepseek-reasoner(à la retraite) legacy Jusqu'au 24/07/2026, mappé sur la pensée V4-Flash

Les nouveaux projets et scripts CI doivent utiliserdeepseek-v4-prooudeepseek-v4-flashdirectement : les anciens alias ont été retirés le 2026-07-24.

L'essentiel des API

Demande d'achèvements de chat minimaux

L’API DeepSeek correspond aux achèvements de chat OpenAI. Exemple Python (installez leopenaiemballer):

Python · demande minimale
from openai import OpenAI

client = OpenAI(
    api_key="YOUR_DEEPSEEK_API_KEY",
    base_url="https://api.deepseek.com",
)

resp = client.chat.completions.create(
    model="deepseek-v4-pro",
    messages=[
        {"role": "system", "content": "You are a helpful assistant."},
        {"role": "user", "content": "用 JSON 列出三个 HTTP 状态码及含义"},
    ],
)
print(resp.choices[0].message.content)

Trois pièges faciles

  1. 1
    API sans état

    Chaque demande doit inclure l'intégralitémessageshistoire. Le serveur ne se souviendra pas des résultats des outils précédents pour vous.

  2. 2
    Prompt Cache

    Réponsesusagepeut inclureprompt_cache_hit_tokens. Les appels répétés avec le même préfixe atteignent le cache et coûtent moins cher.

  3. 3
    Tarifs heures pleines/heures creuses

    Depuis le 16/08/2026, les tarifs varient selon le créneau horaire : les heures creuses représentent environ la moitié de la période de pointe. Les travaux par lots peuvent être planifiés en conséquence.

Fonction Appel de bout en bout

L'appel de fonction permet au modèle de renvoyer des invocations d'outils structurées (interroger une base de données, appeler HTTP, exécuter des mathématiques) au lieu de deviner. V4-Pro utilise le style OpenAItoolstableaux.

1. Définir les outils (schéma JSON)

JSON · définition des outils
{
  "type": "function",
  "function": {
    "name": "get_order",
    "description": "按订单号查询订单状态",
    "parameters": {
      "type": "object",
      "properties": {
        "order_id": { "type": "string", "description": "例如 ORD-10442" }
      },
      "required": ["order_id"]
    }
  }
}

2. Le modèle renvoie tool_calls

Quand le modèle veut un outil,finish_reasonest"tool_calls"message.contentest généralement vide – la véritable instruction réside dans letool_callstableau:

JSON · réponse typique à tool_calls
{
  "choices": [{
    "message": {
      "role": "assistant",
      "content": "",
      "tool_calls": [{
        "id": "call_0_f1c29a44",
        "type": "function",
        "function": {
          "name": "get_order",
          "arguments": "{\"order_id\": \"ORD-10442\"}"
        }
      }]
    },
    "finish_reason": "tool_calls"
  }]
}

Note:argumentsest unchaînetu doisjson.loadstoi-même. Les documents officiels avertissent que le modèle n'émet pas toujours du JSON valide et peut halluciner des champs en dehors de votre schéma.

3. Exécuter et renvoyer un message d'outil

Python · noyau de boucle d'outils
import json

messages = [{"role": "user", "content": "查一下 ORD-10442 的状态"}]
tools = [/* 上面的 get_order 定义 */]

resp = client.chat.completions.create(
    model="deepseek-v4-pro",
    messages=messages,
    tools=tools,
)
msg = resp.choices[0].message

if msg.tool_calls:
    messages.append(msg)  # 保留 assistant 的 tool_calls
    call = msg.tool_calls[0]
    try:
        args = json.loads(call.function.arguments)
    except json.JSONDecodeError:
        args = {}  # 降级或重试
    result = get_order(**args)  # 你的业务函数
    messages.append({
        "role": "tool",
        "tool_call_id": call.id,
        "content": json.dumps(result, ensure_ascii=False),
    })
    # 再次请求,模型基于真实数据生成最终回答
    final = client.chat.completions.create(
        model="deepseek-v4-pro",
        messages=messages,
        tools=tools,
    )

comportement de choix_outil

tool_choice Signification Utilisation typique
"auto"(défaut) Le modèle décide d'appeler ou non les outils Agents généraux
"none" Interdire les appels d'outils Réponses en texte brut, tests de contrôle
{"type":"function","function":{"name":"…"}} Forcer une fonction spécifique Étape du pipeline qui doit toucher un seul outil

max_tokensUn trop petitargumentstronque l'appel d'outilfinish_reasondevientlengthavec des arguments incomplets. Les charges de travail des agents nécessitent des budgets d'exécution généreux.

Sortie JSON et mode strict

Mode JSON (response_format)

Lorsque vous n'avez besoin que de texte JSON (et non d'outils externes), utilisez le mode JSON :

Python · JSON Mode
resp = client.chat.completions.create(
    model="deepseek-v4-pro",
    messages=[
        {"role": "system", "content": "只输出合法 JSON,不要 markdown 代码块"},
        {"role": "user", "content": "生成一个含 name、age 的用户对象"},
    ],
    response_format={"type": "json_object"},
)
raw = resp.choices[0].message.content
data = json.loads(raw)  # 仍建议 try/except

DeepSeek a augmenté les taux d'analyse JSON internes de 78 % à 85 % à l'ère V2 ; le nettoyage des regex peut atteindre 97 %. La V4 s'améliore encore, maisvalidez toujours dans votre candidature- ne traitez pas un succèsjson.loadspour preuve, le schéma est correct.

Schéma strict (bêta)

Pour les appels de fonctions qui doivent correspondre exactement au schéma JSON, activez le mode bêta strict :

Validations strictes àheure de la demande-les schémas invalides renvoient 400 avant la génération. Idéal pour détecter les bogues de schéma au moment du déploiement.

JSON Mode vs Function Calling

Capacité JSON Mode Function Calling
Déclenchement response_format: json_object toolstableau + boucle d'outil
Emplacement de sortie message.content tool_calls[].function.arguments
Peut appeler des systèmes externes Non : texte JSON uniquement Oui : votre code s'exécute puis renvoie des résultats
Strict schema Invite + post-traitement bêta Support natif strict

Trois niveaux d'effort de réflexion

Prise en charge des modes de réflexion V4-Pro et V4-Flashlow / high / maxniveaux d'effort (voirdocumentation officielle de l'APISection Mode réflexion) :

La réflexion coûte plus de jetons et de latence. Pour « transformer ce texte en JSON », le mode sans réflexion + le mode JSON est généralement moins cher.

V4-Pro vs V4-Flash

Dimension V4-Pro V4-Flash
Paramètres (total / actif) ~1.6T / ~49B ~284B / ~13B
Appel d'agent/outil Augmentation de l'AG ; idéal pour les chaînes complexes La version 0731 surpasse Pro Preview sur les bancs d'agent
Latence et amp; coût Plus haut Inférieur; bon pour les QPS élevés
Function Calling Soutenu Soutenu
Sortie JSON Soutenu Soutenu
Scénarios typiques Agents de production, opérations de pension, analyses lourdes Chatbots, extraction par lots, prototypes

Les deux partagent la même API : les tests A/B n'ont besoin que d'unmodelchangement. Un déploiement courant : tester la chaîne d'outils sur Flash, passer à Pro si nécessaire.

Déboguer le modèle JSON avec JSONNote

L'intégration de V4-Pro signifie beaucoup de temps pour se demander « est-ce que cette analyse JSON, le schéma correspond-il ? JSONNote s'exécute localement dans le navigateur : votre clé API et vos corps de réponse ne sont jamais téléchargés.

  1. 1
    Formater et afficher valider

    Collermessage.contentoutool_calls[].function.argumentsdansFormateur JSONouValidateur JSONpour voir instantanément les erreurs de syntaxe.

  2. 2
    Vérifier par rapport au schéma

    Dans leJSON Schemaoutil, collez le schéma de vos paramètres de fonction et la sortie du modèle pour vérifier les champs.

  3. 3
    Diff deux appels

    Après avoir modifié les invites ou changé Pro / Flash, utilisezJSON Diffpour comparer les résultats structurés.

  4. 4
    Partager avec vos coéquipiers

    UtiliserPartage de hachage d'URLpour encoder le JSON défaillant et l'état de l'outil dans un lien : les destinataires se reproduisent localement ; les données n'atteignent jamais nos serveurs.

FAQ

Quel est le nom du modèle d'API DeepSeek V4-Pro ?

deepseek-v4-probase_urlesthttps://api.deepseek.com, l'authentification correspond à OpenAI (Authorization: Bearer …

Comment choisir entre V4-Pro et V4-Flash ?

Agents complexes, contexte long, haute précision des outils → Pro. Tâches standard à haute concurrence, sensibles aux coûts → Flash. Les deux prennent en charge l’appel de fonction et la sortie JSON.

Que se passe-t-il si l'appel de fonction renvoie un JSON mal formé ?

Envelopper l'analyse danstry/except json.JSONDecodeError; valider les champs obligatoires ; réessayez ou revenez au mode JSON ; utilisez la version bêta Strict lorsque vous avez besoin d’une adhésion stricte.

Ai-je toujours besoin de mon propre schéma avec le mode JSON ?

Le mode JSON garantit uniquement un objet JSON, mais pas que les champs correspondent à votre schéma métier. Appliquez la forme via une invite système, une post-validation ou un appel de fonction + Strict.

Puis-je toujours utiliser le chat Deepseek ?

Non. Les noms hérités ont été retirés le 2026-07-24. Migrer versdeepseek-v4-prooudeepseek-v4-flash

En quoi l’appel de fonction diffère-t-il d’OpenAI gpt-4o ?

Les champs de requête/réponse et les boucles d’outils sont largement compatibles. Différences : prix, durée du contexte, niveaux de réflexion et chemin bêta strict de DeepSeek. Test de régressionargumentsanalyse etmax_tokensbudgets lors de la migration.

Résumé

DeepSeek V4-Pro c'est essentiellement :

API compatible OpenAI + MoE phare + appel de fonction natif / sortie JSON + effort de réflexion facultatif.

Ensemblemodelàdeepseek-v4-pro, écrivez des boucles d'outils à la manière d'OpenAI, mais rappelez-vous :argumentsest généré par le modèle : analysez et validez de votre côté. Les outils de formatage, de schéma et de différence de JSONNote aident à déboguer localement la sortie structurée.

← Retour au blog