Saltar al contenido principal
POST
/
v1
/
chat
/
completions
curl --request POST \
  --url https://direct.evolink.ai/v1/chat/completions \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --data '
{
  "model": "deepseek-v4-flash",
  "messages": [
    {
      "role": "user",
      "content": "Por favor, preséntate"
    }
  ]
}
'
{
  "id": "837f529d-00f9-4731-b2e1-4a54fc31790a",
  "object": "chat.completion",
  "created": 1777026806,
  "model": "deepseek-v4-flash",
  "choices": [
    {
      "index": 0,
      "message": {
        "role": "assistant",
        "content": "¡Hola! Soy el asistente DeepSeek, siempre listo para responder tus preguntas y ayudarte."
      },
      "logprobs": null,
      "finish_reason": "stop"
    }
  ],
  "usage": {
    "prompt_tokens": 7,
    "completion_tokens": 31,
    "total_tokens": 38,
    "prompt_tokens_details": {
      "cached_tokens": 0
    },
    "prompt_cache_hit_tokens": 0,
    "prompt_cache_miss_tokens": 7
  },
  "system_fingerprint": "fp_evolink_v4_20260402"
}
BaseURL: La BaseURL predeterminada es https://direct.evolink.ai, que ofrece mejor compatibilidad con modelos de texto y admite conexiones persistentes. https://api.evolink.ai es el endpoint principal para servicios multimodales y actúa como dirección de respaldo para los modelos de texto.

Autorizaciones

Authorization
string
header
requerido

##Todas las interfaces requieren autenticación mediante Bearer Token##

Obtención de la API Key:

Visita la página de gestión de API Key para obtener tu API Key

Al usarla, añádela en la cabecera de la solicitud:

Authorization: Bearer YOUR_API_KEY

Cuerpo

application/json
model
enum<string>
predeterminado:deepseek-v4-flash
requerido

Nombre del modelo de conversación

  • deepseek-v4-flash: modelo rápido y general, contexto de 1M
  • deepseek-v4-pro: modelo de razonamiento profundo, destaca en matemáticas, programación y lógica compleja

Nota: ambos modelos tienen thinking habilitado por defecto, y la respuesta incluirá reasoning_content. Puede desactivarlo con thinking.type="disabled" para reducir el coste de tokens de salida. Los parámetros son idénticos para ambos modelos.

Opciones disponibles:
deepseek-v4-flash,
deepseek-v4-pro
Ejemplo:

"deepseek-v4-flash"

messages
(System Message · object | User Message · object | Assistant Message · object | Tool Message · object)[]
requerido

Lista de mensajes de la conversación, con soporte para diálogo multi-turno

Los mensajes de distintos roles tienen estructuras de campos diferentes; selecciona el rol correspondiente para ver su detalle

Minimum array length: 1
thinking
object

Control del modo de pensamiento (novedad en V4)

Descripción:

  • Controla la funcionalidad de pensamiento profundo (Chain of Thought)
  • Habilitado por defecto en ambos modelos (type=enabled)
  • Al estar habilitado, el proceso de razonamiento se devuelve en choices[].message.reasoning_content y se factura como tokens de salida

⚠️ Aviso para multi-turno / llamadas a herramientas: si la respuesta de este turno incluye reasoning_content, el mensaje assistant correspondiente en el historial de messages de la siguiente solicitud debe devolver este campo tal cual; de lo contrario, la API devolverá 400 The reasoning_content in the thinking mode must be passed back to the API. Si no deseas gestionarlo, puedes establecer explícitamente thinking.type="disabled" para toda la sesión.

temperature
number
predeterminado:1

Temperatura de muestreo, controla la aleatoriedad de la salida

Descripción:

  • Valores bajos (p. ej. 0.2): salida más determinista y enfocada
  • Valores altos (p. ej. 1.5): salida más aleatoria y creativa
  • Valor por defecto: 1
Rango requerido: 0 <= x <= 2
Ejemplo:

1

top_p
number
predeterminado:1

Parámetro de muestreo por núcleo (Nucleus Sampling)

Descripción:

  • Controla el muestreo desde los tokens cuya probabilidad acumulada alcanza cierto umbral
  • Por ejemplo, 0.9 significa seleccionar entre los tokens que alcancen el 90% de probabilidad acumulada
  • Valor por defecto: 1.0 (considera todos los tokens)

Recomendación: no ajustes simultáneamente temperature y top_p

Rango requerido: 0 <= x <= 1
Ejemplo:

1

max_tokens
integer

Limita el número máximo de tokens a generar

Descripción:

  • La serie V4 admite hasta 384,000 tokens
  • Cuando thinking está activado, los reasoning_tokens también cuentan para el límite de max_tokens
  • Si no se define, el modelo decide la longitud por sí mismo
Rango requerido: 1 <= x <= 384000
Ejemplo:

4096

frequency_penalty
number
predeterminado:0

Penalización por frecuencia, se utiliza para reducir contenido repetitivo

Descripción:

  • Valores positivos penalizan según la frecuencia con la que un token aparece en el texto ya generado
  • Cuanto mayor sea el valor, menos se repetirá contenido ya visto
  • Valor por defecto: 0 (sin penalización)
Rango requerido: -2 <= x <= 2
Ejemplo:

0

presence_penalty
number
predeterminado:0

Penalización por presencia, fomenta la introducción de temas nuevos

Descripción:

  • Valores positivos penalizan según si un token ya ha aparecido en el texto
  • Cuanto mayor sea el valor, más tiende el modelo a explorar temas nuevos
  • Valor por defecto: 0 (sin penalización)
Rango requerido: -2 <= x <= 2
Ejemplo:

0

response_format
object

Especifica el formato de la respuesta

Descripción:

  • Establecer {"type": "json_object"} habilita el modo JSON
  • En modo JSON el modelo generará contenido con formato JSON válido
  • Se recomienda indicar explícitamente en el mensaje system o user que se desea salida JSON para obtener los mejores resultados
stop

Secuencias de parada; el modelo detiene la generación al encontrar estas cadenas

Descripción:

  • Puede ser una cadena única o un array de cadenas
  • Admite hasta 16 secuencias de parada
stream
boolean
predeterminado:false

Si la respuesta debe devolverse en streaming

  • true: devolución en streaming, se envía el contenido por partes mediante SSE (Server-Sent Events)
  • false: espera a la respuesta completa y la devuelve de una vez (por defecto)
Ejemplo:

false

stream_options
object

Opciones de respuesta en streaming

Solo son efectivas cuando stream=true

tools
object[]

Lista de definiciones de herramientas, usada para Function Calling

Descripción:

  • Admite hasta 128 definiciones de herramientas
  • Cada herramienta debe definir nombre, descripción y esquema de parámetros
Maximum array length: 128
tool_choice

Controla el comportamiento de llamada a herramientas

Valores posibles:

  • none: no llamar a ninguna herramienta
  • auto: el modelo decide automáticamente si llamar a una herramienta (por defecto cuando se proporcionan tools)
  • required: obliga al modelo a llamar a una o más herramientas
  • Forma de objeto {"type":"function","function":{"name":"xxx"}}: especifica la herramienta concreta a llamar

Valor por defecto: none si no hay tools, auto si hay tools

Opciones disponibles:
none,
auto,
required
logprobs
boolean
predeterminado:false

Si se devuelven las probabilidades logarítmicas de los tokens

Descripción:

  • Al establecerlo en true, la respuesta incluirá la probabilidad logarítmica de cada token
top_logprobs
integer

Devuelve las probabilidades logarítmicas de los N tokens con mayor probabilidad

Descripción:

  • Requiere que logprobs sea true
  • Rango admitido: [0, 20]
Rango requerido: 0 <= x <= 20
logit_bias
object

Mapa de sesgo de tokens

Descripción:

  • La clave es el ID del token en el tokenizer, el valor es un sesgo entre -100 y 100
  • -100 prohíbe totalmente ese token, 100 fuerza su generación
  • Los valores típicos entre -1 y 1 ya producen un efecto perceptible
n
integer
predeterminado:1

Número de completaciones de chat a generar por cada mensaje de entrada

Descripción:

  • Por defecto 1; con N se devolverán N candidatos (facturados como N × output_tokens)
Rango requerido: 1 <= x <= 8
Ejemplo:

1

seed
integer

Semilla aleatoria (Beta)

Descripción:

  • Al especificarla, el modelo intentará realizar un muestreo determinista
  • Mismo seed + mismos demás parámetros → misma salida (no garantizado al 100%)
user
string

Identificador único que representa al usuario final

Descripción:

  • Ayuda a la plataforma a monitorear y detectar abusos
  • Se recomienda usar un ID de usuario hasheado

Respuesta

Conversación generada con éxito

id
string

Identificador único de la completación de conversación

Ejemplo:

"53c548dc-ec02-4a2f-bbb6-eca4184630b8"

model
string

Nombre del modelo realmente utilizado

Ejemplo:

"deepseek-v4-flash"

object
enum<string>

Tipo de respuesta

Opciones disponibles:
chat.completion
Ejemplo:

"chat.completion"

created
integer

Marca de tiempo de creación (Unix en segundos)

Ejemplo:

1777021417

choices
object[]

Lista de opciones generadas por la conversación

usage
object

Estadísticas de uso de tokens (incluye desglose de caché y razonamiento)

system_fingerprint
string

Identificador de huella del sistema

Ejemplo:

"fp_evolink_v4_20260402"