Введение
Apex от Callstack подходит для разработки приложений на React Native и React. Этот API чата принимает текст / изображения, предоставляет входной бюджет 262,144 токенов и принимает max_tokens до 131,072. Доступны потоковые ответы и вызовы функций.
| Характеристика | Значение |
|---|---|
| Ввод | Текст |
| Вывод | Текст |
| Входной бюджет | 262,144 tokens |
| Предел max_tokens | 131,072 |
| Входные данные | текст / изображения |
Ключевые возможности и особенности
Обучен на том, как React Native пишут на практике
Callstack собрала Apex на основе документации React Native, исходного кода, публичных символов API, библиотек и обсуждений, опирающихся на реальные репозитории. Это заметно в задачах, которые разработчики ему дают: настройка навигации, производительность списков, анимации, обёртки нативных модулей и обновления библиотек, где общая модель часто берёт шаблон из неподходящей версии.
Вызовы инструментов, которые вписываются в рабочий процесс разработки
Отправьте до 128 определений функций, и Apex сможет ответить вызовом инструмента вместо текста: прочитать файл, запустить тесты, применить патч. Ваше приложение выполняет инструмент и возвращает результат сообщением tool с тем же tool_call_id. Модель предлагает, а решает ваш код, что будет выполнено.
Целая функция в одном запросе
С 262,144 токенами вы можете отправить вместе экран, его хуки, конфигурацию навигатора, связанные тесты и лог ошибок. Модель отвечает на основе переданных вами файлов, а не догадок о том, как устроен ваш проект.
Повышайте уровень рассуждения, только когда баг трудный
reasoning_effort позволяет оставить быстрые правки и объяснения на none или low, а для ошибки, затрагивающей несколько файлов, перейти на medium или xhigh. Токены рассуждения учитываются внутри max_tokens, так что стоимость размышлений видна в оплачиваемом использовании.
Параметры запроса
| Параметр | Обязательно | Описание |
|---|---|---|
messages | Да | Для операции «разработку на React Native с Apex» передавайте диалог и источники текстом по порядку, связывая каждый ответ инструмента с исходным |
max_tokens | Нет | В |
reasoning_effort | Нет | В Apex доступны none, low, medium, xhigh, по умолчанию medium; сравнивайте уровни для операции «разработку на React Native с Apex», поскольку более глубокое рассуждение может ув… |
stop | Нет | Остановите текст Apex по одной последовательности или любой из максимум четырёх; сама найденная последовательность в ответ не входит. Не менее 1 символов · Не менее 1 элементов · Не более 4 элементов |
temperature | Нет | Apex принимает temperature от 0 до 2; сравнивая формулировки для операции «разработку на React Native с Apex», сохраняйте остальные настройки выборки. |
top_p | Нет | Используйте |
tools | Нет | Передайте Apex определения функций в формате OpenAI для операции «разработку на React Native с Apex»; модель предлагает аргументы, а приложение проверяет их и выполняет действие. Не более 128 элементов |
parallel_tool_calls | Нет | Разрешите Apex предлагать независимые вызовы вместе, если операция «разработку на React Native с Apex» требует нескольких внешних результатов. По умолчанию: |
tool_choice | Нет | Выберите auto, none, required или конкретную функцию для Apex и сохраните полученный ID вызова, продолжая операцию «разработку на React Native с Apex». |
Стоимость
Ввод $0.50 / Вывод $3 за 1 млн токенов
Сценарии использования
Исправить медленный экран списка
Вставьте экран FlatList с renderItem, хуком данных и заметкой профайлера и спросите, откуда берутся повторные рендеры. Apex создан для таких вопросов о React Native и может предложить точечный патч с мемоизацией, стабильными ключами и изменениями разметки элементов, который вы проверяете как любой pull request.
Проверить pull request
Отправьте diff и затронутые им файлы и попросите указать проблемы, которые можно привязать к строке: устаревшие замыкания, отсутствующая очистка эффектов, платформенный код, работающий только на iOS. Попросите ранжированный список, чтобы первым шёл пункт, из-за которого стоит блокировать слияние.
Обновить библиотеку или SDK
Передайте фрагмент changelog и файлы, использующие старый API, и попросите изменения в порядке, в котором их стоит вносить. Callstack говорит, что модель способна ставить под сомнение неверные допущения и выстраивать последовательность изменений, что подходит для обновления в несколько шагов.
Сгенерировать тесты и код Next.js
Попросите тесты компонентов, тест хука или обработчик маршрута Next.js по вставленному коду. Callstack также публикует результаты для Next.js, так что работа с React для веба — поддерживаемый сценарий, а не второстепенный.
Руководство по промптам и практические советы
Отправляйте файлы, а не описание
Поместите соответствующий исходный код в сообщения, указав путь к файлу над каждым блоком, а в конце сформулируйте задачу и версии платформы. Экран, который работает на одной версии React Native и ломается на другой, исправить гораздо проще, если версии пакетов есть в промпте.
Выбирайте уровень рассуждения под задачу
Для большинства работы оставляйте
reasoning_effortна medium. Используйте none или low для переименований, мелких правок и объяснений, а xhigh — для ошибки, причина которой охватывает несколько файлов. При повышении уровня увеличивайтеmax_tokens, поскольку рассуждение делит этот бюджет с видимым ответом.Подключите инструменты и продолжайте цикл
Определите свои инструменты, дайте модели вернуть вызов, выполните его в своём коде и отправьте результат обратно сообщением tool с тем же
tool_call_id. Сохраняйте в истории сообщение ассистента, которое сделало вызов, чтобы следующий ход знал, что произошло.Стримьте длинные ответы и проверяйте причину остановки
Включите потоковую передачу для ответа по нескольким файлам, чтобы показывать прогресс, и проверьте причину остановки, прежде чем считать результат полным. Ответ, обрезанный по
max_tokens, требует большего лимита, а не повтора того же запроса.
Изменения React Native с Apex
Apex — модель Callstack для программирования с акцентом на React Native. Передайте компонент, целевую платформу, версии пакетов и наблюдаемое поведение текстом. Этот текстовый эндпоинт не может прочитать один лишь скриншот.
Добавьте мобильный контекст
Укажите различия iOS и Android, нужный код навигации или состояния и ожидаемый результат. Бюджет ввода — 262 144 токена, предел max_tokens — 131 072. Выберите доступный уровень рассуждений и оставьте место для анализа и предлагаемой правки.
Проверьте предложенное изменение
Apex может запросить функцию, но доступ к файлам и тестовым командам контролирует приложение. Сохраняйте tool_call_id при возврате результатов, затем проверьте патч на целевой платформе. Потоковый вывод позволяет читать длинное объяснение ещё до завершения ответа.
В операции «разработку на React Native с Apex» действуют собственные решения Apex о содержимом; ответы NSFW могут меняться с запросом или версией, без обещания неограниченного вывода.
Быстрый старт API
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.
