Passo 3.7 Flash na Novita AI: Guia Rápido Multimodal

Passo 3.7 Flash na Novita AI: Guia Rápido Multimodal

O Step 3.7 Flash está disponível na Novita AI como um LLM Serverless com o ID de modelo stepfun/step-3.7-flash, suporte a chat/completions compatível com OpenAI, entrada de texto, imagem e vídeo, saída de texto, function calling, saídas estruturadas e raciocínio listados na página do modelo. Este guia rápido foca no fluxo de trabalho do desenvolvedor: como chamar a API, quais padrões de requisição são seguros para usar hoje, quais campos de preço considerar no orçamento e onde ter cuidado antes de integrar funcionalidades multimodais ou de raciocínio em produção.

O que é necessário antes de chamar a API?

Comece com três itens de configuração:

Item Valor
Chave de API Crie e armazene uma chave de API da Novita AI em uma variável de ambiente como NOVITA_API_KEY.
URL base compatível com OpenAI https://api.novita.ai/openai
Endpoint de chat completions POST https://api.novita.ai/openai/v1/chat/completions
ID do modelo stepfun/step-3.7-flash

O índice de documentação da Novita AI lista a URL base compatível com OpenAI, e a referência da API de chat completions documenta os campos de requisição e resposta para POST https://api.novita.ai/openai/v1/chat/completions.

Mantenha a chave de API fora do controle de versão. Em desenvolvimento local, exporte-a no seu shell. Em produção, carregue-a do seu gerenciador de segredos:

export NOVITA_API_KEY="sua_chave_api"

Se sua aplicação já usa chat completions compatível com OpenAI, o caminho de migração costuma ser pequeno: aponte o cliente para a URL base da Novita AI, defina o token Bearer de autorização e use o ID do modelo Step 3.7 Flash.

Quais fatos sobre o Step 3.7 Flash importam para a implementação?

Use o ID exato do modelo no código e o nome de exibição na interface do usuário. A página atual do modelo Novita lista o Step 3.7 Flash como um modelo Chat da série StepFun.

Campo Valor atual na Novita
Nome de exibição Step 3.7 Flash
ID do modelo na API stepfun/step-3.7-flash
Família do modelo exibida pela Novita StepFun
Tipo de hospedagem LLM Serverless
Endpoint chat/completions
Modalidades de entrada Texto, imagem, vídeo
Modalidades de saída Texto
Janela de contexto 262.144 tokens
Máx. tokens de saída 256.000
Funcionalidades listadas Serverless, function calling, saídas estruturadas, raciocínio
Rótulos listados MoE, >100B, NEW, Featured
Limite de taxa T1 padrão listado 30 RPM e 50.000.000 TPM

Em 18 de junho de 2026, a Novita lista estes preços de token para stepfun/step-3.7-flash:

Tipo de token Preço listado
Tokens de entrada $0,20 por 1M tokens
Tokens de saída $1,15 por 1M tokens
Tokens de entrada lidos do cache $0,04 por 1M tokens

Preços, disponibilidade do modelo, limites de taxa e parâmetros de requisição suportados podem mudar. Verifique a página do modelo Step 3.7 Flash e a página de preços da Novita AI antes da revisão de compras, lançamento em produção ou qualquer compromisso de preço voltado ao cliente.

Como chamar o Step 3.7 Flash com cURL?

Para o primeiro teste de fumaça, mantenha a requisição apenas com texto. Isso confirma autenticação, roteamento do modelo, análise da resposta e geração básica antes de adicionar ferramentas, esquemas, imagens ou vídeo.

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": "Você é um assistente técnico conciso."
      },
      {
        "role": "user",
        "content": "Crie uma lista de verificação de quatro etapas para testar um bot de suporte multimodal antes do lançamento."
      }
    ],
    "max_tokens": 512,
    "temperature": 0.2
  }'

Uma resposta bem-sucedida segue a estrutura de chat completions documentada pela Novita AI: um array choices, uma mensagem com content gerado, metadados de created/model e um objeto usage quando o uso é retornado. Para respostas em streaming, a referência da API observa que o uso aparece no último bloco da resposta.

Use este teste de fumaça para verificar:

  • A chave de API é válida.
  • O ID do modelo é aceito.
  • Seu cliente consegue analisar choices[0].message.content.
  • Seu log captura o prompt, a conclusão e o uso total de tokens sem armazenar segredos.
  • Sua política de timeout e retry é adequada ao tamanho do prompt.

Como chamar o Step 3.7 Flash a partir do Python?

O padrão do SDK Python da OpenAI funciona com a Novita AI quando você define a URL base da Novita. Instale e fixe a versão do SDK no seu próprio projeto de acordo com sua política de dependências.

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": "Você é um assistente técnico conciso."},
        {
            "role": "user",
            "content": "Resuma os riscos de lançamento para um fluxo de trabalho de suporte ao cliente que aceita capturas de tela e tickets de texto longo.",
        },
    ],
    max_tokens=512,
    temperature=0.2,
)

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

Para código de aplicação, envolva isso em um pequeno gateway de modelo em vez de espalhar chamadas de API brutas pela base de código. Um gateway permite aplicar limites de token padrão, definir timeouts por rota, normalizar erros e trocar modelos para avaliação sem alterar a lógica de negócio.

Um wrapper de produção prático deve capturar:

  • model, prompt_tokens, completion_tokens e total_tokens.
  • Latência da requisição e contagem de retry.
  • Status HTTP e categoria de erro da API.
  • Se ferramentas, esquema JSON, entrada de imagem ou entrada de vídeo foram usados.
  • Um resumo da requisição com dados omitidos, excluindo chaves de API e conteúdo sensível do usuário.

Essa telemetria importa porque o Step 3.7 Flash tem uma janela de contexto grande e um limite máximo de saída alto. Esses limites são úteis, mas sistemas em produção ainda devem definir max_tokens explícito, rejeitar envios de usuário muito grandes antes da chamada do modelo e monitorar o tamanho da saída.

Como lidar com entrada multimodal?

A Novita lista texto, imagem e vídeo como modalidades de entrada para o Step 3.7 Flash e texto como modalidade de saída. Trate isso como o limite de capacidade suportada e, em seguida, verifique a forma exata do payload na documentação ou console atuais da Novita antes de colocar uma integração multimodal em produção.

Para um guia rápido, use esta ordem:

  1. Execute o teste de fumaça apenas com texto.
  2. Adicione uma entrada de imagem usando o formato de mensagem de chat atualmente documentado pela Novita.
  3. Valide a qualidade da resposta e a forma da resposta na sua tarefa real.
  4. Adicione lotes maiores de imagem ou vídeo somente depois de confirmar o formato da requisição, limites de tamanho, latência e comportamento de custo.

Não presuma que toda forma de payload multimodal compatível com OpenAI será aceita por todos os modelos hospedados na Novita. A página do modelo Step 3.7 Flash verifica o suporte a entrada de imagem e vídeo, mas exemplos de requisição de vídeo são mais sensíveis ao manuseio de arquivos, acesso a URL, duração, tamanho e formatação específica do modelo. Se a documentação ou o exemplo do console atuais não mostrarem a forma exata do payload de vídeo que você precisa, evite codificar um a partir da documentação de outro provedor.

Bons primeiros casos de uso de imagem incluem:

  • Resumir uma captura de tela de suporte junto com o texto do ticket do usuário.
  • Extrair o estado da interface de uma captura de tela de produto para um assistente de triagem interno.
  • Revisar uma imagem de QA visual e produzir uma lista de verificação em texto.

O vídeo deve ser testado de forma mais conservadora. Comece com clipes curtos, registre a forma exata da requisição que funciona, capture latência e uso de tokens, e defina comportamento de fallback quando a entrada de vídeo for rejeitada, muito grande ou muito lenta para sua rota.

Como o function calling e as saídas estruturadas se encaixam?

O Step 3.7 Flash é listado com function calling e saídas estruturadas. Na API de chat completions, o function calling é exposto através de tools, e as saídas estruturadas são expostas através de response_format.

Use function calling quando o modelo deve escolher uma ferramenta e retornar argumentos JSON em vez de responder diretamente ao usuário. A referência da API documenta function tools com um type do tipo function, um function.name, uma description, parameters em JSON Schema e uma configuração strict opcional.

tools = [
    {
        "type": "function",
        "function": {
            "name": "create_support_ticket",
            "description": "Cria um ticket de suporte interno a partir de um problema relatado pelo usuário.",
            "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": "A página de configurações de pagamento retorna um erro 500 após eu enviar uma captura de tela.",
        }
    ],
    tools=tools,
    temperature=0.1,
)

Use saídas estruturadas quando sua aplicação precisar de uma resposta JSON validada e nenhuma chamada de ferramenta externa for necessária. A referência da API de chat completions da Novita documenta response_format com json_schema e observa que o modo strict suporta um subconjunto do JSON Schema. Mantenha os esquemas iniciais pequenos, evite recursos de esquema exóticos e falhe de forma segura quando a resposta do modelo não validar.

Para raciocínio, distinga a capacidade do modelo do comportamento da requisição. A página do modelo Step 3.7 Flash lista raciocínio como uma funcionalidade, enquanto a referência da API de chat completions documenta parâmetros relacionados a raciocínio com notas de suporte específicas do modelo. Antes de confiar em um campo de raciocínio em um analisador de produção, execute um teste de API com stepfun/step-3.7-flash e lide com a forma exata da resposta que sua conta recebe.

Como as equipes devem planejar orçamento e testar antes da produção?

Use os preços de token listados para estimar o primeiro orçamento e, em seguida, valide com logs de uso reais. O Step 3.7 Flash tem preços diferentes para entrada, saída e leituras de cache, portanto prompts longos, saídas prolixas e contexto repetido têm diferentes perfis de custo.

Por exemplo, uma aplicação que envia grandes transcrições de suporte pode gastar a maior parte do orçamento em tokens de entrada. Um agente que pede planos longos pode gastar mais em tokens de saída. Um fluxo de trabalho de recuperação ou memória que reutiliza contexto pode se beneficiar do preço de leitura de cache se o comportamento de cache se aplicar ao padrão de requisição implantado.

Antes da produção, execute um conjunto de avaliação que inclua:

  • Prompts curtos apenas com texto para latência e qualidade de resposta de base.
  • Prompts de contexto longo próximos ao seu limite superior esperado, não à janela de contexto máxima.
  • Prompts de imagem que correspondam à sua fonte real de upload e manuseio de arquivos.
  • Prompts de chamada de ferramenta onde o comportamento correto é chamar uma função.
  • Prompts de esquema JSON que testem intencionalmente campos inválidos, ausentes e de borda.
  • Casos de falha para entrada muito grande, mídia ausente, chaves de API inválidas e timeouts.

Não direcione todo o tráfego para um novo modelo baseado apenas em uma lista de funcionalidades. As flags de funcionalidade informam o que está disponível; a avaliação informa se o modelo segue suas instruções, esquemas, regras de segurança e orçamento de latência na sua carga de trabalho.

FAQ

O Step 3.7 Flash está disponível através da Novita AI?

Sim. A Novita lista o Step 3.7 Flash como um LLM Serverless com o ID de modelo stepfun/step-3.7-flash.

Qual endpoint devo usar para o Step 3.7 Flash?

Use o endpoint de chat completions compatível com OpenAI: POST https://api.novita.ai/openai/v1/chat/completions.

O Step 3.7 Flash suporta entrada de imagem e vídeo?

A Novita lista texto, imagem e vídeo como modalidades de entrada para o Step 3.7 Flash, com texto como modalidade de saída. Use a documentação atual da Novita ou exemplos do console para verificar a forma exata do payload de imagem ou vídeo antes da produção.

Quanto custa o Step 3.7 Flash?

Em 18 de junho de 2026, a Novita lista stepfun/step-3.7-flash a $0,20 por 1M tokens de entrada, $1,15 por 1M tokens de saída e $0,04 por 1M tokens de entrada lidos do cache.

O Step 3.7 Flash suporta function calling e saídas estruturadas?

Sim. A Novita lista function calling e saídas estruturadas como funcionalidades do Step 3.7 Flash. Use tools para function calling e response_format para saídas estruturadas; depois teste seu esquema e analisador exato antes da produção.

Devo copiar um payload de vídeo de outro provedor?

Não. Mesmo quando as APIs são compatíveis com OpenAI, o manuseio de arquivos e URLs multimodais pode variar. Use uma forma de payload verificada na documentação atual da Novita, exemplos do console ou seu próprio teste de API bem-sucedido para stepfun/step-3.7-flash.

Artigos recomendados