Перейти к основному контенту

Apex API

callstack/apex/chat

Apex от Callstack подходит для разработки приложений на React Native и React. Этот API чата принимает текст / изображения, предоставляет входной бюджет 262,144 токенов и принимает max_tokens до 131,072. Доступны потоковые ответы и вызовы функций.

Ввод $0.50Вывод $3за 1 млн токеновКешированный ввод $0.20

Рабочая область

Отправить запрос

Быстрый старт

Примеры используют публичные параметры выбранного эндпоинта. Замените API-ключ и примеры медиафайлов, затем отправьте запрос со своего сервера.

SDK и интеграции
POSThttps://api.spicyapi.ai/v1/chat/completions

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

Храните API-ключ в серверной переменной окружения SPICY_API_KEY. Используйте Bearer-аутентификацию и Content-Type: application/json для JSON-запросов.

Authorization: Bearer $SPICY_API_KEY
curl --fail-with-body -sN https://api.spicyapi.ai/v1/chat/completions \
  -H "Authorization: Bearer $SPICY_API_KEY" \
  -H "Content-Type: application/json" \
  -H "Idempotency-Key: $(uuidgen)" \
  -d '{
  "model": "callstack/apex/chat",
  "messages": [
    {
      "role": "user",
      "content": "Summarise the following release notes into three bullet points."
    }
  ],
  "stream": true
}' \
  | jq --unbuffered -Rrj 'select(startswith("data: ")) | .[6:] | select(. != "[DONE]") | fromjson | if .error then "\n[error] \(.error.message)\n" else (.choices[0].delta.content? // empty) end'

Пример построен по входной схеме этой модели — той же, по которой API проверяет каждый запрос.

Для одного логического запроса сохраняйте один Idempotency-Key. После обрыва сети не отправляйте запрос автоматически с новым ключом. Сохраните request_id для проверки уже принятого запроса. Предыдущий поток чата повторно не воспроизводится.

Входные параметры

Параметры модели находятся на одном уровне с model в теле JSON. Этот эндпоинт не использует объект-обёртку input.

messagesarray<object>Обязательно

Для операции «разработку на React Native с Apex» передавайте диалог и источники текстом по порядку, связывая каждый ответ инструмента с исходным tool_call_id.

По умолчанию
Не задано
Ограничения
minItems:1
maxItems:256
tool_choicestring | objectНеобязательно

Выберите auto, none, required или конкретную функцию для Apex и сохраните полученный ID вызова, продолжая операцию «разработку на React Native с Apex».

По умолчанию
Не задано
parallel_tool_callsbooleanНеобязательно

Разрешите Apex предлагать независимые вызовы вместе, если операция «разработку на React Native с Apex» требует нескольких внешних результатов.

По умолчанию
true
toolsarray<object>Необязательно

Передайте Apex определения функций в формате OpenAI для операции «разработку на React Native с Apex»; модель предлагает аргументы, а приложение проверяет их и выполняет действие.

По умолчанию
Не задано
Ограничения
maxItems:128
top_pnumberНеобязательно

Используйте top_p для nucleus sampling в Apex; при настройке операции «разработку на React Native с Apex» меняйте его отдельно от temperature, чтобы видеть эффект.

По умолчанию
Не задано
Ограничения
minimum:0.01
maximum:1
temperaturenumberНеобязательно

Apex принимает temperature от 0 до 2; сравнивая формулировки для операции «разработку на React Native с Apex», сохраняйте остальные настройки выборки.

По умолчанию
Не задано
Ограничения
minimum:0
maximum:2
stopstring | arrayНеобязательно

Остановите текст Apex по одной последовательности или любой из максимум четырёх; сама найденная последовательность в ответ не входит.

По умолчанию
Не задано
Ограничения
minLength:1
minItems:1
maxItems:4
reasoning_effortstringНеобязательно

В Apex доступны none, low, medium, xhigh, по умолчанию medium; сравнивайте уровни для операции «разработку на React Native с Apex», поскольку более глубокое рассуждение может увеличить выходные токены и ожидание.

По умолчанию
"medium"
Допустимые значения
"none""low""medium""xhigh"
max_tokensintegerНеобязательно

В max_tokens модели Apex входят видимый ответ и оплачиваемые рассуждения; значение по умолчанию — 4096, максимум — 131072, увеличение лимита не меняет цену токена.

По умолчанию
4096
Ограничения
minimum:1
maximum:131072

Прочитать результат

При stream: false запрос сразу возвращает полный ответ чата. Читайте choices[].message; опрашивать задачу не нужно. Если клиент поддерживает Server-Sent Events, можно указать stream: true.

Пример ответа после завершения
{
  "id": "chatcmpl_example",
  "object": "chat.completion",
  "created": 1788652800,
  "model": "callstack/apex/chat",
  "choices": [
    {
      "index": 0,
      "message": {
        "role": "assistant",
        "content": "Here is a concise summary of the release notes."
      },
      "finish_reason": "stop"
    }
  ],
  "usage": {
    "prompt_tokens": 32,
    "completion_tokens": 14,
    "total_tokens": 46
  }
}

Ответ приведён для примера структуры. usage содержит число токенов; фактический расход и стоимость зависят от запроса.

SDK и интеграции

Используйте SpicyAPI в приложении, терминале, ИИ-ассистенте или визуальном процессе. Выберите руководство по настройке.

Использование в SillyTavern и приложениях для ролевых игр

В SillyTavern, RisuAI, Agnai или любом приложении с OpenAI-совместимой настройкой вставьте базовый URL ниже и свой API-ключ, а в качестве модели выберите callstack/apex/chat. Вызовы прямо из браузера разрешены, а ползунки, которые эта модель не поддерживает, игнорируются, а не вызывают ошибку.

Base URL: https://api.spicyapi.ai/v1
Model: callstack/apex/chat

Использование в ComfyUI

Установите узлы SpicyAPI через ComfyUI Manager или командой ниже и выберите callstack/apex/chat в узле SpicyAPI Chat, чтобы использовать эту модель внутри графа ComfyUI.

cd ComfyUI/custom_nodes
git clone https://github.com/spicyapi-ai/comfyui-spicyapi