Aller au contenu principal

Chat DeepSeek V4.1 Flash via un endpoint compatible OpenAI. Il accepte jusqu’à 1 048 576 tokens de contexte texte et image et en renvoie jusqu’à 384 000, avec effort de raisonnement low ou high, jusqu’à 128 définitions d’outils et format JSON.

Entrée $0.30Sortie $1.20par 1 million de tokensEntrée en cache $0.006

Atelier

Envoyer une requête

Démarrage rapide

Les exemples suivent les paramètres publics du point de terminaison choisi. Remplacez la clé API et les médias d’exemple, puis envoyez la requête depuis votre serveur.

SDK et intégrations
POSThttps://api.spicyapi.ai/v1/chat/completions

Authentification API

Conservez la clé API dans la variable serveur SPICY_API_KEY. Utilisez l’authentification Bearer et Content-Type: application/json pour les requêtes JSON.

Authorization: Bearer $SPICY_API_KEY
curl --fail-with-body -sN https://api.spicyapi.ai/v1/chat/completions \
  -H "Authorization: Bearer $SPICY_API_KEY" \
  -H "Content-Type: application/json" \
  -H "Idempotency-Key: $(uuidgen)" \
  -d '{
  "model": "deepseek/v4.1-flash/chat",
  "messages": [
    {
      "role": "user",
      "content": "Summarise the following release notes into three bullet points."
    }
  ],
  "stream": true
}' \
  | jq --unbuffered -Rrj 'select(startswith("data: ")) | .[6:] | select(. != "[DONE]") | fromjson | if .error then "\n[error] \(.error.message)\n" else (.choices[0].delta.content? // empty) end'

Généré à partir du schéma d’entrée de ce modèle, le même que l’API utilise pour valider chaque requête.

Conservez le même Idempotency-Key pour chaque requête logique. Après une coupure réseau, ne renvoyez pas automatiquement la requête avec une nouvelle clé. Gardez request_id pour retrouver la requête acceptée. Le flux de chat précédent n’est pas rejoué.

Paramètres d’entrée

Placez les paramètres du modèle au même niveau que model dans le corps JSON. Ce point de terminaison ne les encapsule pas dans un objet input.

messagesarray<object>Obligatoire

Tours ordonnés, du plus ancien au plus récent, 256 au maximum. Le contenu est une chaîne ou un tableau de parties text et image_url ; reasoning_content n’est valide que sur les messages assistant.

Valeur par défaut
Non définie
Contraintes
minItems:1
maxItems:256
response_formatobjectFacultatif

Réclamez un objet JSON quand la réponse alimente un parseur plutôt qu’un humain.

Valeur par défaut
Non définie
tool_choicestring | objectFacultatif

auto, none, required, ou un objet qui nomme une fonction.

Valeur par défaut
Non définie
toolsarray<object>Facultatif

Jusqu’à 128 définitions de fonctions dans une requête.

Valeur par défaut
Non définie
Contraintes
maxItems:128
max_tokensintegerFacultatif

Plafonne la réponse à 384 000. Le défaut est 32 768, ce qui tronque un long livrable en silence. Ce modèle raisonne avant de répondre et ce raisonnement est prélevé sur le même budget : un plafond bas peut être entièrement consommé par la réflexion et renvoyer une réponse vide — mesuré à 120 jetons, le contenu est revenu vide et la requête a été mise en échec et remboursée plutôt que facturée. Gardez plusieurs milliers de jetons de marge, même pour des réponses courtes.

Valeur par défaut
32768
Contraintes
minimum:1
maximum:384000
stopstring | arrayFacultatif

Jusqu’à 4 séquences, sous forme de chaîne ou de tableau. La réponse s’arrête dès que le modèle en écrit une, et le texte correspondant n’est pas renvoyé. Pas de valeur par défaut. Le tarif ne change pas : une réponse coupée plus tôt n’est facturée que pour les tokens produits.

Valeur par défaut
Non définie
Contraintes
minLength:1
minItems:1
maxItems:4
reasoning_effortstringFacultatif

none, low ou high, high par défaut. none saute entièrement la passe de raisonnement : c’est le seul réglage qui garde les tokens de raisonnement hors de la facture, car ils sont facturés comme sortie. low pour les passes de volume, high pour les réponses qui ne doivent pas être fausses.

Valeur par défaut
"high"
Valeurs autorisées
"none""low""high"

Lire le résultat

Avec stream à false, la requête renvoie directement la réponse complète : lisez choices[].message, sans interroger de tâche. Passez stream à true si votre client gère les Server-Sent Events.

Exemple de réponse terminée
{
  "id": "chatcmpl_example",
  "object": "chat.completion",
  "created": 1788652800,
  "model": "deepseek/v4.1-flash/chat",
  "choices": [
    {
      "index": 0,
      "message": {
        "role": "assistant",
        "content": "Here is a concise summary of the release notes."
      },
      "finish_reason": "stop"
    }
  ],
  "usage": {
    "prompt_tokens": 32,
    "completion_tokens": 14,
    "total_tokens": 46
  }
}

Cette réponse n’illustre que la structure. usage donne le nombre de tokens ; la consommation et le coût réels dépendent de votre requête.

SDK et intégrations

Utilisez SpicyAPI dans votre application, terminal, assistant IA ou workflow visuel. Choisissez un guide de configuration.

L’utiliser dans SillyTavern et les applis de jeu de rôle

Dans SillyTavern, RisuAI, Agnai ou toute appli dotée d’un réglage compatible OpenAI, collez l’URL de base ci-dessous et votre clé d’API, puis choisissez deepseek/v4.1-flash/chat comme modèle. Les appels depuis le navigateur sont acceptés, et les curseurs que ce modèle ne prend pas en charge sont ignorés au lieu d’être refusés.

Base URL: https://api.spicyapi.ai/v1
Model: deepseek/v4.1-flash/chat

À utiliser dans ComfyUI

Installez les nœuds SpicyAPI depuis ComfyUI Manager ou avec la commande ci-dessous, puis choisissez deepseek/v4.1-flash/chat dans le nœud SpicyAPI Chat pour utiliser ce modèle dans un graphe ComfyUI.

cd ComfyUI/custom_nodes
git clone https://github.com/spicyapi-ai/comfyui-spicyapi