Перейти к основному содержанию
POST
/
v1
/
messages
curl -X POST https://api-llm.sunra.ai/v1/messages \
  -H "Authorization: Bearer <SUNRA_KEY>" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "anthropic/claude-sonnet-4-20250514",
    "max_tokens": 1024,
    "messages": [
      {
        "role": "user",
        "content": "Hello, how are you?"
      }
    ]
  }'
{
  "id": "msg_01XFDUDYJgAACzvnptvVoYEL",
  "type": "message",
  "role": "assistant",
  "content": [
    {
      "type": "text",
      "text": "Hello! I'm doing well, thank you for asking. How can I help you today?"
    }
  ],
  "model": "anthropic/claude-sonnet-4-20250514",
  "stop_reason": "end_turn",
  "stop_sequence": null,
  "usage": {
    "input_tokens": 12,
    "output_tokens": 19
  }
}
Создаёт сообщение в формате API Anthropic Messages. Поддерживает текст, изображения, PDF, инструменты и расширенное мышление.

Аутентификация

Authorization
string
обязательно
Bearer-токен. Используйте ваш API-ключ в качестве Bearer-токена в заголовке Authorization.Формат: Bearer <SUNRA_KEY>

Запрос

Этот эндпоинт принимает объект.
model
string
обязательно
Модель, которая завершит ваш промпт. Просмотрите доступные модели на sunra.ai/models.
messages
object[]
обязательно
Входные сообщения. Каждое входное сообщение имеет role и content.
max_tokens
integer
обязательно
Максимальное количество токенов для генерации перед остановкой. Обратите внимание, что модель может остановиться до достижения этого максимума.
system
string | object[]
Системный промпт. Способ предоставления контекста и инструкций модели. Может быть строкой или массивом блоков контента.
stream
boolean
по умолчанию:false
Передавать ли ответ в потоковом режиме с использованием Server-Sent Events (SSE).
temperature
number
по умолчанию:1
Степень случайности, добавляемая в ответ. Диапазон от 0.0 до 1.0. Используйте temperature ближе к 0.0 для аналитических задач/задач с множественным выбором и ближе к 1.0 для творческих и генеративных задач.
top_p
number
Использовать nucleus-сэмплирование. При nucleus-сэмплировании мы вычисляем кумулятивное распределение по всем вариантам для каждого последующего токена в порядке убывания вероятности и обрезаем его, когда оно достигает определённой вероятности, заданной top_p.
top_k
integer
Сэмплирование только из верхних K вариантов для каждого последующего токена. Используется для удаления маловероятных ответов из «длинного хвоста». Рекомендуется только для продвинутых случаев использования.
stop_sequences
string[]
Пользовательские текстовые последовательности, которые заставят модель прекратить генерацию. Возвращённый текст не будет содержать стоп-последовательность.
tools
object[]
Определения инструментов, которые модель может использовать.
tool_choice
object
Как модель должна использовать предоставленные инструменты.
metadata
object
Объект, описывающий метаданные запроса.
thinking
object
Конфигурация расширенного мышления. При включении модель будет думать перед ответом.

Ответ

Успешный ответ сообщения.
id
string
Уникальный идентификатор сообщения, например msg_01XFDUDYJgAACzvnptvVoYEL.
type
string
Тип объекта. Всегда message.
role
string
Роль сгенерированного сообщения в беседе. Всегда assistant.
content
object[]
Контент, сгенерированный моделью. Это массив блоков контента.
model
string
Модель, обработавшая запрос.
stop_reason
string | null
Причина остановки модели. Может быть end_turn (модель достигла естественной точки остановки), max_tokens (превышен max_tokens или максимум модели), stop_sequence (сгенерирована одна из ваших пользовательских стоп-последовательностей) или tool_use (модель вызвала один или несколько инструментов).
stop_sequence
string | null
Какая пользовательская стоп-последовательность была сгенерирована, если таковая имеется.
usage
object
Использование для выставления счетов и ограничения скорости.
curl -X POST https://api-llm.sunra.ai/v1/messages \
  -H "Authorization: Bearer <SUNRA_KEY>" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "anthropic/claude-sonnet-4-20250514",
    "max_tokens": 1024,
    "messages": [
      {
        "role": "user",
        "content": "Hello, how are you?"
      }
    ]
  }'
{
  "id": "msg_01XFDUDYJgAACzvnptvVoYEL",
  "type": "message",
  "role": "assistant",
  "content": [
    {
      "type": "text",
      "text": "Hello! I'm doing well, thank you for asking. How can I help you today?"
    }
  ],
  "model": "anthropic/claude-sonnet-4-20250514",
  "stop_reason": "end_turn",
  "stop_sequence": null,
  "usage": {
    "input_tokens": 12,
    "output_tokens": 19
  }
}