Шаг 3.7 Flash API от Novita AI: мультимодальный быстрый старт

Шаг 3.7 Flash API от Novita AI: мультимодальный быстрый старт

Step 3.7 Flash доступен на Novita AI как Serverless LLM с идентификатором модели stepfun/step-3.7-flash, OpenAI-совместимым chat/completions, поддержкой текстового, графического и видео ввода, текстового вывода, вызова функций, структурированных выходных данных и рассуждений, как указано на странице модели. Этот краткий старт сосредоточен на рабочем процессе разработчика: как вызвать API, какие шаблоны запросов безопасно использовать сегодня, какие расходы учитывать при бюджетировании и где нужно быть осторожным при подключении мультимодального поведения или рассуждений в продакшене.

Что нужно перед вызовом API?

Начните с трех элементов конфигурации:

Элемент Значение
API-ключ Создайте и сохраните ключ API Novita AI в переменной окружения, например NOVITA_API_KEY.
OpenAI-совместимый базовый URL https://api.novita.ai/openai
Эндпоинт chat completions POST https://api.novita.ai/openai/v1/chat/completions
Идентификатор модели stepfun/step-3.7-flash

Индекс документации Novita AI показывает базовый URL, совместимый с OpenAI, а справочник API chat completions описывает поля запроса и ответа для POST https://api.novita.ai/openai/v1/chat/completions.

Не храните API-ключ в системе контроля версий. При локальной разработке экспортируйте его в оболочке. В продакшене загружайте из менеджера секретов:

export NOVITA_API_KEY="your_api_key"

Если ваше приложение уже использует OpenAI-совместимые chat completions, путь миграции обычно небольшой: укажите клиенту базовый URL Novita AI, установите токен авторизации в Bearer и используйте идентификатор модели Step 3.7 Flash.

Какие факты о Step 3.7 Flash важны для реализации?

Используйте точный идентификатор модели в коде и отображаемое имя в пользовательском интерфейсе. Текущая страница модели Novita помечает Step 3.7 Flash как Chat-модель в серии StepFun.

Поле Текущее значение Novita
Отображаемое имя Step 3.7 Flash
API-идентификатор модели stepfun/step-3.7-flash
Семейство моделей, указанное Novita StepFun
Тип хостинга Serverless LLM
Эндпоинт chat/completions
Входные модальности Текст, изображение, видео
Выходные модальности Текст
Окно контекста 262 144 токена
Максимум выходных токенов 256 000
Перечисленные возможности Serverless, вызов функций, структурированные выходные данные, рассуждения
Перечисленные метки MoE, >100B, NEW, Featured
Лимит T1 по умолчанию (список) 30 RPM и 50 000 000 TPM

По состоянию на 18 июня 2026 года Novita указывает следующие цены на токены для stepfun/step-3.7-flash:

Тип токена Указанная цена
Входные токены $0,20 за 1M токенов
Выходные токены $1,15 за 1M токенов
Входные токены с кеш-чтением $0,04 за 1M токенов

Цены, доступность моделей, лимиты запросов и поддерживаемые параметры запросов могут измениться. Проверьте страницу модели Step 3.7 Flash и страницу цен Novita AI перед закупочным анализом, запуском в продакшен или любыми обещаниями клиентам по ценам.

Как вызвать Step 3.7 Flash с помощью cURL?

Для первой проверки оставьте запрос только текстовым. Это подтвердит аутентификацию, маршрутизацию модели, разбор ответа и базовую генерацию, прежде чем добавлять инструменты, схемы, изображения или видео.

curl "https://api.novita.ai/openai/v1/chat/completions" \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer ${NOVITA_API_KEY}" \
  -d '{
    "model": "stepfun/step-3.7-flash",
    "messages": [
      {
        "role": "system",
        "content": "You are a concise technical assistant."
      },
      {
        "role": "user",
        "content": "Create a four-step checklist for testing a multimodal support bot before release."
      }
    ],
    "max_tokens": 512,
    "temperature": 0.2
  }'

Успешный ответ соответствует форме chat completions, описанной Novita AI: массив choices, сообщение с сгенерированным content, метаданными created/model и объект usage, если использование возвращается. Для потоковых ответов справочник API указывает, что usage появляется в последнем чанке ответа.

Используйте этот тест, чтобы проверить:

  • API-ключ действителен.
  • Идентификатор модели принят.
  • Ваш клиент может разобрать choices[0].message.content.
  • Ваше логирование фиксирует подсказку, завершение и общее использование токенов без хранения секретов.
  • Политика таймаутов и повторов подходит для размера подсказки.

Как вызвать Step 3.7 Flash из Python?

Шаблон OpenAI Python SDK работает с Novita AI, если установить базовый URL Novita. Установите и зафиксируйте версию SDK в своём проекте в соответствии с вашей политикой зависимостей.

import os
from openai import OpenAI

client = OpenAI(
    base_url="https://api.novita.ai/openai",
    api_key=os.environ["NOVITA_API_KEY"],
)

response = client.chat.completions.create(
    model="stepfun/step-3.7-flash",
    messages=[
        {"role": "system", "content": "You are a concise technical assistant."},
        {
            "role": "user",
            "content": "Summarize the release risks for a customer support workflow that accepts screenshots and long text tickets.",
        },
    ],
    max_tokens=512,
    temperature=0.2,
)

print(response.choices[0].message.content)

Для продакшен-кода оберните это в небольшой шлюз моделей вместо того, чтобы разбрасывать прямые вызовы API по всей кодовой базе. Шлюз позволяет принудительно устанавливать лимиты токенов по умолчанию, задавать таймауты для каждого маршрута, нормализовать ошибки и переключать модели для оценки без изменения бизнес-логики.

Практическая продакшен-обёртка должна собирать:

  • model, prompt_tokens, completion_tokens и total_tokens.
  • Задержку запроса и количество повторов.
  • HTTP-статус и категорию ошибки API.
  • Использовались ли инструменты, JSON-схема, изображение или видео.
  • Сводку запроса без API-ключей и конфиденциального содержимого пользователя.

Эта телеметрия важна, поскольку Step 3.7 Flash имеет большое окно контекста и высокий лимит выходных данных. Эти лимиты полезны, но продакшен-системы всё равно должны явно устанавливать max_tokens, отклонять слишком большие пользовательские загрузки до вызова модели и отслеживать длину вывода.

Как обрабатывать мультимодальный ввод?

Novita указывает текст, изображение и видео как входные модальности для Step 3.7 Flash, а текст — как выходную модальность. Считайте это границей поддерживаемых возможностей, затем проверьте точную форму полезной нагрузки в текущей документации Novita или консоли перед развёртыванием мультимодальной интеграции.

Для быстрого старта используйте следующий порядок:

  1. Выполните текстовый тест.
  2. Добавьте одно изображение, используя текущий задокументированный формат сообщений чата Novita.
  3. Проверьте качество ответа и форму ответа на вашей реальной задаче.
  4. Добавляйте большие пачки изображений или видео только после того, как подтвердите формат запроса, ограничения размера, задержку и стоимость.

Не предполагайте, что любая мультимодальная форма полезной нагрузки, совместимая с OpenAI, принимается любой моделью, размещённой на Novita. Страница модели Step 3.7 Flash подтверждает поддержку изображений и видео, но примеры видео-запросов более чувствительны к обработке файлов, доступу по URL, длительности, размеру и специфическому форматированию модели. Если текущая документация или пример консоли не показывают точную форму видео-полезной нагрузки, которая вам нужна, избегайте жёстко задавать её из документации другого провайдера.

Хорошие первые примеры использования изображений:

  • Резюмирование скриншота поддержки вместе с текстовым тикетом.
  • Извлечение состояния интерфейса из скриншота продукта для внутреннего ассистента триажа.
  • Проверка визуального QA-изображения и создание текстового чеклиста.

Видео следует тестировать более консервативно. Начинайте с коротких клипов, записывайте точную форму запроса, которая работает, фиксируйте задержку и использование токенов, и определите поведение на случай сбоя, когда видео-ввод отклонён, слишком велик или слишком медлен для вашего маршрута.

Как работают вызов функций и структурированные выходные данные?

Step 3.7 Flash указан с вызовом функций и структурированными выходными данными. В API chat completions вызов функций доступен через tools, а структурированные выходные данные — через response_format.

Используйте вызов функций, когда модель должна выбрать инструмент и вернуть JSON-аргументы вместо прямого ответа пользователю. Справочник API описывает функциональные инструменты с type = function, function.name, description, parameters (JSON Schema) и опциональным strict.

tools = [
    {
        "type": "function",
        "function": {
            "name": "create_support_ticket",
            "description": "Create an internal support ticket from a user-reported issue.",
            "parameters": {
                "type": "object",
                "properties": {
                    "summary": {"type": "string"},
                    "priority": {
                        "type": "string",
                        "enum": ["low", "medium", "high"],
                    },
                    "needs_human_review": {"type": "boolean"},
                },
                "required": ["summary", "priority", "needs_human_review"],
            },
        },
    }
]

response = client.chat.completions.create(
    model="stepfun/step-3.7-flash",
    messages=[
        {
            "role": "user",
            "content": "The payment settings page returns a 500 error after I upload a screenshot.",
        }
    ],
    tools=tools,
    temperature=0.1,
)

Используйте структурированные выходные данные, когда вашему приложению нужен проверенный JSON-ответ и внешний вызов инструмента не требуется. Справочник API chat completions Novita описывает response_format с json_schema и отмечает, что строгий режим поддерживает подмножество JSON Schema. Начинайте с небольших схем, избегайте экзотических возможностей схемы и закрывайтесь при ошибке, если ответ модели не проходит проверку.

Что касается рассуждений, различайте возможность модели и поведение запроса. Страница модели Step 3.7 Flash перечисляет рассуждения как возможность, в то время как справочник API chat completions описывает параметры, связанные с рассуждениями, с пометкой о поддержке, специфичной для модели. Прежде чем полагаться на поле рассуждения в продакшен-парсере, выполните API-тест с stepfun/step-3.7-flash и обработайте точную форму ответа, которую получает ваш аккаунт.

Как командам бюджетировать и тестировать перед продакшеном?

Используйте указанные цены на токены для оценки первого бюджета, затем подтвердите реальными журналами использования. Step 3.7 Flash имеет разные цены для ввода, вывода и кеш-чтения, поэтому длинные подсказки, многословные ответы и повторяющийся контекст имеют разные профили затрат.

Например, приложение, передающее большие стенограммы поддержки, может тратить большую часть бюджета на входные токены. Агент, запрашивающий длинные планы, может тратить больше на выходные токены. Рабочий процесс с поиском или памятью, повторно использующий контекст, может выиграть от цены кеш-чтения, если поведение кеша применяется к развёрнутому шаблону запросов.

Перед продакшеном запустите наборы оценки, включающие:

  • Короткие текстовые запросы для измерения задержки и базового качества ответов.
  • Запросы с длинным контекстом около ожидаемой верхней границы, а не максимального окна контекста.
  • Изображения, соответствующие вашему реальному источнику загрузки и обработке файлов.
  • Запросы с вызовом инструментов, где правильное поведение — вызвать функцию.
  • Запросы с JSON-схемой, намеренно проверяющие неверные, отсутствующие и граничные поля.
  • Случаи ошибок: слишком большой ввод, отсутствующие медиа, недействительные API-ключи, таймауты.

Не направляйте весь трафик на новую модель, основываясь только на списке возможностей. Флаги возможностей говорят, что доступно; оценка говорит, следует ли модель вашим инструкциям, схемам, правилам безопасности и бюджету задержки на вашей нагрузке.

FAQ

Доступен ли Step 3.7 Flash через Novita AI?

Да. Novita указывает Step 3.7 Flash как Serverless LLM с идентификатором модели stepfun/step-3.7-flash.

Какой эндпоинт использовать для Step 3.7 Flash?

Используйте OpenAI-совместимый эндпоинт chat completions: POST https://api.novita.ai/openai/v1/chat/completions.

Поддерживает ли Step 3.7 Flash ввод изображений и видео?

Novita перечисляет текст, изображение и видео как входные модальности для Step 3.7 Flash, а текст — как выходную. Используйте текущую документацию Novita или примеры консоли, чтобы проверить точную форму полезной нагрузки изображения или видео перед продакшеном.

Сколько стоит Step 3.7 Flash?

По состоянию на 18 июня 2026 года Novita указывает цены для stepfun/step-3.7-flash: $0,20 за 1M входных токенов, $1,15 за 1M выходных токенов и $0,04 за 1M входных токенов с кеш-чтением.

Поддерживает ли Step 3.7 Flash вызов функций и структурированные выходные данные?

Да. Novita перечисляет вызов функций и структурированные выходные данные как возможности Step 3.7 Flash. Используйте tools для вызова функций и response_format для структурированных выходных данных, затем протестируйте свою точную схему и парсер перед продакшеном.

Следует ли копировать полезную нагрузку видео от другого провайдера?

Нет. Даже если API совместимы с OpenAI, обработка мультимедийных файлов и URL может различаться. Используйте форму полезной нагрузки, подтверждённую в текущей документации Novita, примерах консоли или вашем успешном API-тесте для stepfun/step-3.7-flash.

Рекомендуемые статьи