DEV Community

Cover image for Como Usar a API Sakana Fugu
Lucas
Lucas

Posted on • Originally published at apidog.com

Como Usar a API Sakana Fugu

Você pode usar a API Sakana Fugu sem trocar de SDK: crie uma chave em console.sakana.ai, copie a URL base exibida no console e aponte seu cliente OpenAI existente para esse endpoint. O Fugu é exposto como uma API compatível com OpenAI, então as bibliotecas openai em Python e JavaScript continuam funcionando após você alterar base_url e api_key. Por trás desse endpoint, segundo a página de lançamento da Sakana, o Fugu decide se responde diretamente ou se coordena uma equipe de modelos. Se você já configurou gateways antes, como no guia da API Claude Fable 5, o fluxo será familiar.

Experimente o Apidog hoje

Este guia mostra como obter uma chave, configurar o cliente em Python e JavaScript, escolher o modelo e usar streaming para enviar sua primeira conclusão de chat com o Fugu.

O que a API Sakana Fugu realmente é

Fugu não é apenas um modelo único no sentido tradicional. A Sakana o descreve como um modelo de linguagem treinado para delegação, comunicação entre agentes e síntese de trabalho. A ideia central é: quando você envia uma solicitação, um “condutor” decide se responde sozinho ou se coordena dinamicamente vários LLMs, incluindo possíveis instâncias recursivas de si mesmo, e depois sintetiza uma resposta final.

Sakana Fugu

Para o seu código, isso continua parecendo uma chamada comum de chat completions. Você envia uma requisição compatível com OpenAI e recebe uma resposta normal. O grafo de orquestração fica no servidor; você não monta agentes, não roteia manualmente entre provedores e não gerencia equipes de modelos.

Existem duas variantes principais:

  • fugu: opção equilibrada e de baixa latência para uso diário, codificação, revisão de código, chatbots e serviços interativos.
  • fugu-ultra: opção voltada à máxima qualidade de resposta para pesquisa de IA, reprodução de artigos, análise de segurança e investigação técnica mais profunda.

Durante a fase beta, a variante menor foi chamada de “Fugu Mini”. Use os nomes atuais, fugu e fugu-ultra, e trate “Mini” como um rótulo antigo.

Variantes do Fugu

A base de pesquisa também é pública. Dois artigos da ICLR 2026 fundamentam a abordagem: Trinity, um coordenador com menos de 20 mil parâmetros otimizado por evolução sem derivada com papéis de Thinker, Worker e Verifier, e Conductor, um modelo de 7B treinado com aprendizado por reforço que aprende a estrutura de comunicação entre agentes. Eles usam métodos e tamanhos diferentes, então não os confunda. A contagem exata de parâmetros do produto final não foi publicada.

Passo 1: Crie uma chave de API Fugu em console.sakana.ai

Acesse console.sakana.ai e faça login com Google ou e-mail. A disponibilidade pode variar por região e por fase de acesso. A beta começou com cerca de 500 usuários no fim de abril de 2026, e uma restrição de disponibilidade na UE/EEE também foi divulgada. Antes de implementar em produção, confirme se sua região e sua conta têm acesso à API.

Console Sakana

Depois de entrar no painel:

  1. Abra a seção de chaves de API.
  2. Gere uma nova chave.
  3. Armazene-a como variável de ambiente ou em um gerenciador de segredos.
  4. Nunca envie essa chave para o controle de versão.
  5. Faça rotação da chave se ela for exposta.

Exemplo de .env:

FUGU_API_KEY="sua-chave-aqui"
FUGU_BASE_URL="url-base-copiada-do-console"
Enter fullscreen mode Exit fullscreen mode

Enquanto estiver no console, copie também a URL base da sua conta. Este é o detalhe mais importante: a URL base do endpoint Fugu não estava publicada em uma página pública da Sakana no momento da escrita. Use exatamente o valor mostrado no console. Não tente inferir o host por padrão de outro provedor.

Passo 2: Aponte seu cliente OpenAI existente para o Fugu

Como o Fugu é compatível com OpenAI, você mantém seu SDK atual. A migração mínima é:

Nos exemplos abaixo, substitua <YOUR_FUGU_BASE_URL_FROM_CONSOLE> pela URL base real do seu console.

Python

import os
from openai import OpenAI

client = OpenAI(
    api_key=os.environ["FUGU_API_KEY"],
    base_url=os.environ["FUGU_BASE_URL"],  # copie do console.sakana.ai
)

response = client.chat.completions.create(
    model="fugu",  # confirme a string exata no console
    messages=[
        {"role": "system", "content": "You are a helpful engineering assistant."},
        {"role": "user", "content": "Refactor this function to remove the nested loop."},
    ],
)

print(response.choices[0].message.content)
Enter fullscreen mode Exit fullscreen mode

JavaScript

import OpenAI from "openai";

const client = new OpenAI({
  apiKey: process.env.FUGU_API_KEY,
  baseURL: process.env.FUGU_BASE_URL, // copie do console.sakana.ai
});

const response = await client.chat.completions.create({
  model: "fugu", // confirme a string exata no console
  messages: [
    { role: "system", content: "You are a helpful engineering assistant." },
    { role: "user", content: "Refactor this function to remove the nested loop." },
  ],
});

console.log(response.choices[0].message.content);
Enter fullscreen mode Exit fullscreen mode

Essa é a migração completa. O padrão é o mesmo de outros gateways, como no fluxo de Claude Code com OpenRouter: mesmo cliente, nova URL base e nova chave.

Passo 3: Escolha o valor do campo model

O campo model seleciona a variante do Fugu.

As strings relatadas são:

fugu
fugu-ultra
Enter fullscreen mode Exit fullscreen mode

Algumas fontes também mencionaram identificadores datados, como fugu-ultra-20260615. Como esses IDs podem mudar entre lançamentos, confirme sempre a string listada no console em vez de copiar um identificador de um artigo antigo.

Use esta regra prática:

  • Use fugu para chat, codificação, revisão de código e fluxos interativos.
  • Use fugu-ultra quando qualidade for mais importante que latência, como pesquisa, análise técnica profunda ou revisão de segurança.

Exemplo em Python:

# Equilibrado, menor latência
fast = client.chat.completions.create(
    model="fugu",
    messages=[
        {
            "role": "user",
            "content": "Summarize this changelog in three bullets.",
        }
    ],
)

# Máxima qualidade de resposta
deep = client.chat.completions.create(
    model="fugu-ultra",  # confirme a string exata no console
    messages=[
        {
            "role": "user",
            "content": "Reproduce the main result of this paper and flag any gaps.",
        }
    ],
)
Enter fullscreen mode Exit fullscreen mode

A troca entre variantes é apenas uma alteração no valor de model.

Passo 4: Use streaming para respostas longas

O streaming funciona como no SDK da OpenAI. Defina stream=True em Python ou stream: true em JavaScript e itere pelos blocos recebidos. Isso é útil para interfaces de chat, CLIs e respostas longas.

Streaming em Python

stream = client.chat.completions.create(
    model="fugu",
    messages=[
        {
            "role": "user",
            "content": "Walk me through setting up a CI pipeline.",
        }
    ],
    stream=True,
)

for chunk in stream:
    delta = chunk.choices[0].delta.content
    if delta:
        print(delta, end="", flush=True)
Enter fullscreen mode Exit fullscreen mode

Streaming em JavaScript

const stream = await client.chat.completions.create({
  model: "fugu",
  messages: [
    {
      role: "user",
      content: "Walk me through setting up a CI pipeline.",
    },
  ],
  stream: true,
});

for await (const chunk of stream) {
  const delta = chunk.choices[0]?.delta?.content;
  if (delta) process.stdout.write(delta);
}
Enter fullscreen mode Exit fullscreen mode

Um detalhe importante: mesmo com streaming, você recebe apenas a saída final sintetizada. Se o Fugu coordenou vários agentes internamente, essa orquestração continua escondida no servidor. O stream não expõe conversas intermediárias de agentes nem o grafo de roteamento.

O que acontece por trás de uma solicitação

Quando a solicitação chega ao Fugu, o condutor decide entre duas rotas:

  1. responder diretamente;
  2. montar uma equipe de modelos e sintetizar o resultado.

Se ele montar uma equipe, pode envolver vários LLMs e até instâncias recursivas do próprio Fugu. Para o cliente, isso continua sendo uma única resposta.

Alguns detalhes da página de lançamento são relevantes para governança:

  • agentes no pool são intercambiáveis;
  • equipes podem excluir agentes específicos;
  • o sistema pode rotear dinamicamente em torno de restrições de provedores.

Isso significa que a camada de orquestração pode ser útil não só para qualidade, mas também para regras de dados e conformidade.

Ao ler benchmarks, mantenha o contexto: o Fugu é um orquestrador que pode chamar modelos de ponta de outros fornecedores, incluindo ele mesmo recursivamente. Quando a Sakana afirma que o Fugu Ultra está “lado a lado” com modelos como Fable 5 e Mythos Preview em benchmarks de engenharia, ciência e raciocínio, isso deve ser lido como uma alegação de paridade de um “modelo de modelos”, não como uma comparação direta entre dois modelos únicos. Para entender o ponto de comparação com um modelo único da Anthropic, veja o guia da API Claude Fable 5. Para mais contexto sobre a origem do modelo e a história da orquestração, veja o que é Sakana Fugu.

Uma nota sobre acesso, preços e alternativas

A página de lançamento confirma que a Sakana oferece planos de assinatura para uso diário e um plano pay-as-you-go para cargas de trabalho mais pesadas e empresariais. Valores específicos em dólar divulgados em fontes secundárias podem mudar e não estavam na página oficial no momento da escrita. Verifique os preços ao vivo no console em 22-06-2026 antes de assumir custos em produção.

Se você estiver comparando o Fugu com gateways de roteamento, separe as categorias:

  • roteadores como OpenRouter e Martian escolhem um modelo por solicitação;
  • o Fugu executa uma topologia aprendida e adaptativa que pode usar vários modelos e ele mesmo.

Para comparar alternativas de gateway, veja a lista de melhores alternativas ao OpenRouter.

Como testar o Fugu com Apidog

Como o Fugu usa o formato de chat completions compatível com OpenAI, você pode testá-lo como qualquer API HTTP antes de escrever código cliente.

No Apidog:

  1. Crie uma nova requisição.
  2. Cole a URL base copiada do console.
  3. Configure sua chave como bearer token.
  4. Defina o corpo JSON com model e messages.
  5. Envie a requisição.
  6. Inspecione a resposta bruta, incluindo mensagem e uso de tokens.

Exemplo de corpo JSON:

{
  "model": "fugu",
  "messages": [
    {
      "role": "system",
      "content": "You are a helpful engineering assistant."
    },
    {
      "role": "user",
      "content": "Explain how to migrate an OpenAI client to Fugu."
    }
  ]
}
Enter fullscreen mode Exit fullscreen mode

Teste no Apidog

Esse fluxo ajuda a confirmar três coisas antes da integração:

  • a URL base está correta;
  • a chave está funcionando;
  • a string do modelo é aceita pelo endpoint.

O Apidog também permite salvar a requisição, parametrizar a chave entre ambientes e compartilhar um exemplo funcional com a equipe. Para um passo a passo específico, veja como testar a API Sakana Fugu com Apidog. Quando estiver pronto para construir, Baixe o Apidog e comece a partir de uma requisição verificada.

Perguntas frequentes

Preciso de um novo SDK para chamar a API Sakana Fugu?

Não. O Fugu expõe um endpoint compatível com OpenAI. Você pode manter o cliente openai em Python ou JavaScript e alterar apenas a URL base e a chave de API.

Onde encontro a URL base do Fugu?

No painel em console.sakana.ai, depois do login. A URL base não estava publicada em uma página pública da Sakana no momento da escrita, então não a adivinhe nem reutilize hosts de outros provedores.

Qual é a diferença entre Fugu e Fugu Ultra?

fugu é a variante equilibrada e de baixa latência para trabalho diário, codificação, revisão de código e chat. fugu-ultra busca máxima qualidade de resposta para pesquisa, reprodução de artigos e análise de segurança. Ambas usam o mesmo endpoint; você alterna mudando o campo model.

O Fugu supera modelos únicos como o Fable 5?

Trate essa comparação com cautela. A Sakana posiciona o Fugu Ultra como lado a lado com Fable 5 e Mythos Preview, o que é uma alegação de paridade. O Fugu é um orquestrador que pode chamar modelos de ponta de outros fornecedores, então seus resultados refletem um sistema de múltiplos modelos, não necessariamente uma vitória direta de um modelo único. Para o ponto de comparação, veja o guia da API Claude Fable 5.

Quanto custa a API Sakana Fugu?

A página de lançamento confirma planos de assinatura e pay-as-you-go, mas valores específicos em dólar podem mudar e devem ser verificados no console. Consulte os preços ao vivo em 22-06-2026 antes de assinar ou estimar custos.

Como testo o Fugu antes de escrever código?

Use um cliente de API como o Apidog. Cole a URL base do console, adicione a chave como bearer token, defina model e messages, envie a requisição e valide a resposta. O guia sobre como testar a API Sakana Fugu com Apidog mostra o fluxo completo.

Conclusão

O Fugu transforma um sistema multiagente em uma chamada compatível com OpenAI. Na prática, começar exige poucos passos: copiar a URL base correta do console, configurar sua chave, escolher fugu ou fugu-ultra e enviar uma requisição de chat completions. Antes de integrar no aplicativo, use o Apidog para validar o contrato da API e evitar depuração desnecessária no código cliente.

Baixe o Apidog e envie sua primeira requisição Fugu a partir de um fluxo limpo e repetível.

Top comments (0)