Saltar al contenido principal
POST
/
v1
/
chat
/
completions
curl -X POST https://api-llm.sunra.ai/v1/chat/completions \
  -H "Authorization: Bearer <SUNRA_KEY>" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "openai/gpt-4o",
    "messages": [
      {
        "role": "system",
        "content": "You are a helpful assistant."
      },
      {
        "role": "user",
        "content": "What is the capital of France?"
      }
    ]
  }'
{
  "id": "chatcmpl-abc123",
  "object": "chat.completion",
  "created": 1677652288,
  "model": "openai/gpt-4o",
  "choices": [
    {
      "index": 0,
      "message": {
        "role": "assistant",
        "content": "The capital of France is Paris."
      },
      "finish_reason": "stop",
      "logprobs": null
    }
  ],
  "system_fingerprint": "fp_44709d6fcb",
  "usage": {
    "prompt_tokens": 25,
    "completion_tokens": 8,
    "total_tokens": 33
  }
}
Envía una solicitud para obtener una respuesta del modelo para la conversación de chat dada. Soporta modos streaming y no-streaming. Compatible con el formato de la API OpenAI Chat Completions.

Autenticación

Authorization
string
requerido
Token Bearer. Use su clave API como token Bearer en el encabezado Authorization.Formato: Bearer <SUNRA_KEY>

Solicitud

Este endpoint espera un objeto.
messages
object[]
requerido
Lista de mensajes para la conversación.
model
string
requerido
El modelo a utilizar para el completado. Explore los modelos disponibles en sunra.ai/models.
stream
boolean
predeterminado:false
Si se establece en true, se enviarán deltas de mensajes parciales como eventos server-sent (SSE).
max_tokens
integer
El número máximo de tokens a generar en el completado. La longitud total de tokens de entrada y tokens generados está limitada por la longitud de contexto del modelo.
temperature
number
predeterminado:1
Temperatura de muestreo entre 0 y 2. Valores más altos como 0.8 hacen la salida más aleatoria, valores más bajos como 0.2 la hacen más enfocada y determinista.
top_p
number
predeterminado:1
Parámetro de muestreo por núcleo (0-1). Una alternativa al muestreo por temperatura donde el modelo considera los tokens con masa de probabilidad top_p.
frequency_penalty
number
predeterminado:0
Número entre -2.0 y 2.0. Los valores positivos penalizan los nuevos tokens según su frecuencia existente en el texto hasta el momento, disminuyendo la probabilidad de que el modelo repita la misma línea textualmente.
presence_penalty
number
predeterminado:0
Número entre -2.0 y 2.0. Los valores positivos penalizan los nuevos tokens según si aparecen en el texto hasta el momento, aumentando la probabilidad de que el modelo hable sobre nuevos temas.
stop
string | string[]
Hasta 4 secuencias donde la API dejará de generar tokens adicionales.
n
integer
predeterminado:1
Cuántas opciones de completado de chat generar para cada mensaje de entrada.
logprobs
boolean
predeterminado:false
Indica si se deben devolver las log-probabilidades de los tokens de salida. Si es verdadero, devuelve las log-probabilidades de cada token de salida retornado en el contenido del mensaje.
top_logprobs
integer
Un entero entre 0 y 20 que especifica el número de tokens más probables a devolver en cada posición de token. logprobs debe estar establecido en true si se usa este parámetro.
response_format
object
Un objeto que especifica el formato que el modelo debe producir.
seed
integer
Si se especifica, el sistema hará un esfuerzo óptimo para muestrear de forma determinista, de modo que las solicitudes repetidas con el mismo seed y parámetros deberían devolver el mismo resultado.
tools
object[]
Una lista de herramientas que el modelo puede llamar. Actualmente, solo se admiten funciones como herramienta.
tool_choice
string | object
Controla qué herramienta (si alguna) es llamada por el modelo. none significa que el modelo no llamará a ninguna herramienta. auto significa que el modelo puede elegir entre generar un mensaje o llamar herramientas. required significa que el modelo debe llamar a una o más herramientas. También puede especificar una función particular mediante {"type": "function", "function": {"name": "my_function"}}.
parallel_tool_calls
boolean
predeterminado:true
Indica si se debe habilitar la llamada de funciones en paralelo durante el uso de herramientas.
user
string
Un identificador único que representa a su usuario final, que puede ayudar a monitorear y detectar abusos.

Respuesta

Respuesta exitosa de completado de chat.
id
string
Un identificador único para el completado de chat.
object
string
El tipo de objeto. Siempre chat.completion.
created
integer
La marca de tiempo Unix (en segundos) de cuándo se creó el completado de chat.
model
string
El modelo utilizado para el completado de chat.
choices
object[]
Una lista de opciones de completado de chat. Puede contener más de una si n es mayor que 1.
usage
object
Estadísticas de uso para la solicitud de completado.
system_fingerprint
string | null
Esta huella digital representa la configuración del backend con la que se ejecuta el modelo. Se puede usar con el parámetro seed para entender cuándo se han realizado cambios en el backend.
curl -X POST https://api-llm.sunra.ai/v1/chat/completions \
  -H "Authorization: Bearer <SUNRA_KEY>" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "openai/gpt-4o",
    "messages": [
      {
        "role": "system",
        "content": "You are a helpful assistant."
      },
      {
        "role": "user",
        "content": "What is the capital of France?"
      }
    ]
  }'
{
  "id": "chatcmpl-abc123",
  "object": "chat.completion",
  "created": 1677652288,
  "model": "openai/gpt-4o",
  "choices": [
    {
      "index": 0,
      "message": {
        "role": "assistant",
        "content": "The capital of France is Paris."
      },
      "finish_reason": "stop",
      "logprobs": null
    }
  ],
  "system_fingerprint": "fp_44709d6fcb",
  "usage": {
    "prompt_tokens": 25,
    "completion_tokens": 8,
    "total_tokens": 33
  }
}