curl -X POST https://api-llm.sunra.ai/v1/responses \
-H "Authorization: Bearer <SUNRA_KEY>" \
-H "Content-Type: application/json" \
-d '{
"model": "openai/gpt-4o",
"input": [
{
"type": "message",
"role": "user",
"content": "Hello, how are you?"
}
]
}'
import requests
response = requests.post(
"https://api-llm.sunra.ai/v1/responses",
headers={
"Authorization": "Bearer <SUNRA_KEY>",
"Content-Type": "application/json"
},
json={
"model": "openai/gpt-4o",
"input": [
{
"type": "message",
"role": "user",
"content": "Hello, how are you?"
}
]
}
)
print(response.json())
const response = await fetch("https://api-llm.sunra.ai/v1/responses", {
method: "POST",
headers: {
"Authorization": "Bearer <SUNRA_KEY>",
"Content-Type": "application/json"
},
body: JSON.stringify({
model: "openai/gpt-4o",
input: [
{
type: "message",
role: "user",
content: "Hello, how are you?"
}
]
})
});
const data = await response.json();
console.log(data);
{
"id": "resp-abc123",
"object": "response",
"created_at": 1704067200,
"status": "completed",
"model": "openai/gpt-4o",
"output": [
{
"type": "message",
"id": "msg_abc123",
"role": "assistant",
"status": "completed",
"content": [
{
"type": "output_text",
"text": "Hello! I'm doing well, thank you for asking. How can I help you today?",
"annotations": []
}
]
}
],
"temperature": 1.0,
"top_p": 1.0,
"max_output_tokens": null,
"usage": {
"input_tokens": 15,
"output_tokens": 18,
"total_tokens": 33,
"input_tokens_details": {
"cached_tokens": 0
},
"output_tokens_details": {
"reasoning_tokens": 0
}
},
"error": null
}
LLM
Create a response
POST
/
v1
/
responses
curl -X POST https://api-llm.sunra.ai/v1/responses \
-H "Authorization: Bearer <SUNRA_KEY>" \
-H "Content-Type: application/json" \
-d '{
"model": "openai/gpt-4o",
"input": [
{
"type": "message",
"role": "user",
"content": "Hello, how are you?"
}
]
}'
import requests
response = requests.post(
"https://api-llm.sunra.ai/v1/responses",
headers={
"Authorization": "Bearer <SUNRA_KEY>",
"Content-Type": "application/json"
},
json={
"model": "openai/gpt-4o",
"input": [
{
"type": "message",
"role": "user",
"content": "Hello, how are you?"
}
]
}
)
print(response.json())
const response = await fetch("https://api-llm.sunra.ai/v1/responses", {
method: "POST",
headers: {
"Authorization": "Bearer <SUNRA_KEY>",
"Content-Type": "application/json"
},
body: JSON.stringify({
model: "openai/gpt-4o",
input: [
{
type: "message",
role: "user",
content: "Hello, how are you?"
}
]
})
});
const data = await response.json();
console.log(data);
{
"id": "resp-abc123",
"object": "response",
"created_at": 1704067200,
"status": "completed",
"model": "openai/gpt-4o",
"output": [
{
"type": "message",
"id": "msg_abc123",
"role": "assistant",
"status": "completed",
"content": [
{
"type": "output_text",
"text": "Hello! I'm doing well, thank you for asking. How can I help you today?",
"annotations": []
}
]
}
],
"temperature": 1.0,
"top_p": 1.0,
"max_output_tokens": null,
"usage": {
"input_tokens": 15,
"output_tokens": 18,
"total_tokens": 33,
"input_tokens_details": {
"cached_tokens": 0
},
"output_tokens_details": {
"reasoning_tokens": 0
}
},
"error": null
}
Crea una respuesta en streaming o no-streaming utilizando el formato de la API OpenAI Responses.
Autenticación
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.string
requerido
ID del modelo utilizado para generar la respuesta. Explore los modelos disponibles en sunra.ai/models.
string | object[]
Entrada para la solicitud de respuesta. Puede ser una cadena de texto o un array de elementos de entrada.
Mostrar propiedades (para array)
Mostrar propiedades (para array)
string
El tipo de elemento de entrada. Valores admitidos:
message, item_reference.string
El rol del autor del mensaje. Valores admitidos:
user, assistant, system.string | object[]
El contenido del mensaje de entrada. Puede ser una cadena de texto o un array de partes de contenido.
string
El ID del elemento. Requerido para mensajes
assistant en el historial de conversación.string
El estado del elemento. Requerido para mensajes
assistant en el historial de conversación.string | null
Inserta un mensaje de sistema (o desarrollador) como primer elemento en el contexto del modelo. Cuando se usa con
input, las instrucciones se insertan al inicio de la entrada.boolean
predeterminado:false
Si se establece en
true, la respuesta se transmitirá en streaming mediante eventos server-sent (SSE).integer
Un límite superior para el número de tokens de salida, incluyendo tokens de salida visibles y tokens de razonamiento.
number
predeterminado:1
Temperatura de muestreo entre 0 y 2. Valores más altos aumentan la aleatoriedad.
number
predeterminado:1
Parámetro de muestreo por núcleo. Una alternativa al muestreo por temperatura.
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.
number
predeterminado:0
Número entre -2.0 y 2.0. Los valores positivos penalizan los nuevos tokens según si ya aparecen en el texto.
object[]
Un array de herramientas que el modelo puede llamar.
Mostrar propiedades
Mostrar propiedades
string
requerido
El tipo de herramienta. Valores admitidos:
function, web_search_preview.string
El nombre de la función. Requerido cuando el tipo es
function.string
Una descripción de la función.
object
Un objeto JSON Schema que define los parámetros de la función.
boolean
predeterminado:false
Indica si la adherencia estricta al esquema está habilitada.
string | object
Controla el comportamiento de selección de herramientas. Valores de cadena admitidos:
none, auto, required. También puede especificar una función particular.boolean
predeterminado:true
Indica si se debe permitir que el modelo ejecute llamadas a herramientas en paralelo.
object
Configuración para el formato de respuesta de texto.
Mostrar propiedades
Mostrar propiedades
object
La configuración del formato de texto.
Mostrar propiedades
Mostrar propiedades
string
requerido
El tipo de formato. Valores admitidos:
text, json_object, json_schema.string
El nombre del formato de respuesta. Requerido cuando el tipo es
json_schema.object
El esquema JSON. Requerido cuando el tipo es
json_schema.boolean
Indica si la adherencia estricta al esquema está habilitada.
object
Configuración para la salida de razonamiento.
Mostrar propiedades
Mostrar propiedades
string
Restringe el esfuerzo de razonamiento. Valores admitidos:
low, medium, high.boolean
predeterminado:true
Indica si la respuesta generada debe almacenarse para su recuperación posterior.
object
Conjunto de 16 pares clave-valor que se pueden adjuntar a la respuesta. Las claves son cadenas de máximo 64 caracteres. Los valores son cadenas de máximo 512 caracteres.
string
Un identificador único que representa a su usuario final. Máximo de 128 caracteres.
Respuesta
Objeto de respuesta exitoso.string
Identificador único de la respuesta.
string
El tipo de objeto. Siempre
response.number
Marca de tiempo Unix (en segundos) de cuándo se creó la respuesta.
string
El estado de la respuesta. Valores posibles:
completed, failed, in_progress, cancelled.string
El modelo utilizado para generar la respuesta.
object[]
Un array de elementos de contenido generados por el modelo.
Mostrar propiedades
Mostrar propiedades
string
El tipo de elemento de salida. Por ejemplo,
message.string
El ID único del elemento de salida.
string
El rol. Siempre
assistant.string
El estado del mensaje. Por ejemplo,
completed.object
Estadísticas de uso de tokens para la respuesta.
Mostrar propiedades
Mostrar propiedades
integer
El número de tokens de entrada.
integer
El número de tokens de salida.
integer
El número total de tokens.
number
La temperatura de muestreo utilizada.
number
El valor de muestreo por núcleo utilizado.
integer | null
La configuración de tokens de salida máximos utilizada.
object | null
Un objeto de error si la generación falló.
curl -X POST https://api-llm.sunra.ai/v1/responses \
-H "Authorization: Bearer <SUNRA_KEY>" \
-H "Content-Type: application/json" \
-d '{
"model": "openai/gpt-4o",
"input": [
{
"type": "message",
"role": "user",
"content": "Hello, how are you?"
}
]
}'
import requests
response = requests.post(
"https://api-llm.sunra.ai/v1/responses",
headers={
"Authorization": "Bearer <SUNRA_KEY>",
"Content-Type": "application/json"
},
json={
"model": "openai/gpt-4o",
"input": [
{
"type": "message",
"role": "user",
"content": "Hello, how are you?"
}
]
}
)
print(response.json())
const response = await fetch("https://api-llm.sunra.ai/v1/responses", {
method: "POST",
headers: {
"Authorization": "Bearer <SUNRA_KEY>",
"Content-Type": "application/json"
},
body: JSON.stringify({
model: "openai/gpt-4o",
input: [
{
type: "message",
role: "user",
content: "Hello, how are you?"
}
]
})
});
const data = await response.json();
console.log(data);
{
"id": "resp-abc123",
"object": "response",
"created_at": 1704067200,
"status": "completed",
"model": "openai/gpt-4o",
"output": [
{
"type": "message",
"id": "msg_abc123",
"role": "assistant",
"status": "completed",
"content": [
{
"type": "output_text",
"text": "Hello! I'm doing well, thank you for asking. How can I help you today?",
"annotations": []
}
]
}
],
"temperature": 1.0,
"top_p": 1.0,
"max_output_tokens": null,
"usage": {
"input_tokens": 15,
"output_tokens": 18,
"total_tokens": 33,
"input_tokens_details": {
"cached_tokens": 0
},
"output_tokens_details": {
"reasoning_tokens": 0
}
},
"error": null
}
⌘I