Passer au contenu principal
POST
/
v1
/
messages
curl --request POST \
  --url https://direct.evolink.ai/v1/messages \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --data '
{
  "model": "deepseek-v4-flash",
  "max_tokens": 1024,
  "messages": [
    {
      "role": "user",
      "content": "Hello, world"
    }
  ]
}
'
{
  "id": "53ee6690-e14a-4e6b-890b-a135100d51c7",
  "type": "message",
  "role": "assistant",
  "model": "deepseek-v4-flash",
  "content": [
    {
      "type": "thinking",
      "thinking": "L'utilisateur demande la capitale du Japon — une question de géographie de base. La réponse est Tokyo, il suffit de la donner directement.",
      "signature": "53ee6690-e14a-4e6b-890b-a135100d51c7"
    },
    {
      "type": "text",
      "text": "La capitale du Japon est **Tokyo**."
    }
  ],
  "stop_reason": "end_turn",
  "stop_sequence": null,
  "usage": {
    "input_tokens": 7,
    "cache_creation_input_tokens": 0,
    "cache_read_input_tokens": 0,
    "output_tokens": 77,
    "service_tier": "standard"
  }
}
BaseURL : La BaseURL par défaut est https://direct.evolink.ai, qui offre une meilleure prise en charge des modèles de texte et des connexions persistantes. https://api.evolink.ai est le point d’accès principal pour les services multimodaux et sert d’adresse de secours pour les modèles de texte.

Autorisations

Authorization
string
header
requis

##Toutes les API nécessitent une authentification Bearer Token##

Obtenir une clé API :

Visitez la Page de gestion des clés API pour obtenir votre clé API

Ajouter à l'en-tête de requête :

Authorization: Bearer YOUR_API_KEY

Remarque : Bien que l'API native Anthropic utilise l'en-tête x-api-key, EvoLink adopte uniformément l'authentification Bearer Token pour /v1/messages.

Corps

application/json
model
enum<string>
défaut:deepseek-v4-flash
requis

Modèle à appeler

  • deepseek-v4-flash : rapide et généraliste
  • deepseek-v4-pro : raisonnement approfondi

Astuce : Les deux modèles ont thinking activé par défaut, la réponse contient toujours un content block type="thinking" ; pour le désactiver, définissez explicitement thinking.type="disabled". Un model non spécifié ou non pris en charge sera automatiquement mappé à deepseek-v4-flash.

Options disponibles:
deepseek-v4-flash,
deepseek-v4-pro
Exemple:

"deepseek-v4-flash"

max_tokens
integer
requis

Nombre maximum de tokens à générer (obligatoire)

Remarque :

  • La série V4 peut atteindre 384 000
  • Les tokens produits par thinking sont également comptés dans la limite max_tokens
Plage requise: 1 <= x <= 384000
Exemple:

1024

messages
object[]
requis

Liste des messages de conversation, alternant user / assistant par tour

Remarque :

  • Contient au moins 1 message
  • Le dernier message est généralement role=user
  • Les types de contenu image / document ne sont pas pris en charge
Minimum array length: 1
system

Prompt système, utilisé pour définir le rôle et le comportement de l'IA

Remarque :

  • Prend en charge une chaîne ou un tableau de chaînes
  • Contrairement au message system de l'endpoint OpenAI, l'endpoint Anthropic utilise le champ system au niveau supérieur
Exemple:

"You are a helpful assistant."

temperature
number
défaut:1

Température d'échantillonnage

Remarque :

  • Plage [0.0, 2.0]
  • Par défaut 1 ; plus la valeur est élevée, plus la sortie est divergente, plus elle est basse, plus elle est déterministe
Plage requise: 0 <= x <= 2
Exemple:

1

top_p
number
défaut:1

Seuil d'échantillonnage nucleus

Remarque :

  • Plage [0, 1]
  • Il est recommandé de ne pas ajuster simultanément temperature et top_p
Plage requise: 0 <= x <= 1
Exemple:

1

stop_sequences
string[]

Séquences d'arrêt personnalisées

Remarque :

  • Le modèle arrête la génération dès qu'il rencontre l'une des chaînes
  • Jusqu'à 4 (selon la spécification Anthropic)
Maximum array length: 4
stream
boolean
défaut:false

Retourner ou non en streaming SSE

  • true : retour en streaming Server-Sent Events
  • false : retour en une seule fois après la réponse complète (par défaut)
Exemple:

false

thinking
object

Contrôle du mode de réflexion (V4)

Remarque :

  • Activé par défaut pour les deux modèles (type=enabled)
  • Une fois activé, le tableau content de la réponse contiendra un block de processus de raisonnement type="thinking" (facturé au tarif des tokens de sortie)
  • Attention : l'API ignore le champ natif Anthropic budget_tokens, utilisez output_config.effort pour contrôler la profondeur
  • Dans les conversations multi-tours, il suffit de replacer le thinking block de la réponse précédente tel quel dans le tableau content de l'assistant (le style du protocole Anthropic est plus indulgent, l'absence de thinking ne provoque pas d'erreur, mais conserver signature aide à la cohérence du contexte)
output_config
object

Configuration de sortie (extension V4)

Remarque : Deepseek ne prend en charge que le champ effort

tools
object[]

Liste des définitions d'outils

Remarque :

  • Suit la spécification de définition d'outil Anthropic
  • input_schema utilise un objet JSON Schema
tool_choice
object

Contrôle le comportement d'appel des outils

type possibles :

  • auto : le modèle décide automatiquement (par défaut lorsque tools est fourni)
  • any : doit appeler un outil (sans spécifier lequel)
  • tool : doit appeler le name spécifié
  • none : interdire l'appel d'outils

Réponse

Objet message

Réponse de message au style Anthropic

id
string

ID unique du message

type
enum<string>

Type de l'objet de réponse

Options disponibles:
message
role
enum<string>
Options disponibles:
assistant
model
string

Modèle réellement utilisé

Exemple:

"deepseek-v4-pro"

content
object[]

Liste des blocks de contenu de la réponse

Types de block possibles :

  • thinking : processus de raisonnement (uniquement lorsque thinking est activé)
  • text : texte de la réponse finale
  • tool_use : appel d'outil initié par le modèle
stop_reason
enum<string>

Raison de l'arrêt

  • end_turn : fin naturelle
  • max_tokens : limite max_tokens atteinte
  • stop_sequence : hit d'une stop_sequences
  • tool_use : le modèle a déclenché un appel d'outil
Options disponibles:
end_turn,
max_tokens,
stop_sequence,
tool_use
stop_sequence
string | null

Séquence spécifique touchée lorsque stop_reason=stop_sequence, sinon null

usage
object

Statistiques d'utilisation des tokens (spécification Anthropic)