Skip to content

FLUX.2 ​

FLUX.2 é a família de imagem da Black Forest Labs na Pixapi com controle de resolução. Escolha flux-2-pro, flux-2-max ou flux-2-flex e envie resolution como 1MP, 2MP, 3MP ou 4MP.

Superfície da API ​

OperaçãoEndpointModo
Geração de imagensPOST /v1/images/generationsSíncrono
Tarefa de geração de imagensPOST /v1/async/images/generationsAssíncrono
Edição de imagensPOST /v1/images/editsSíncrono
Tarefa de edição de imagensPOST /v1/async/images/editsAssíncrono

IDs do modelo ​

ID do modeloIdeal para
flux-2-proQualidade e custo FLUX.2 equilibrados
flux-2-maxSaída FLUX.2 de maior qualidade
flux-2-flexNíveis de resolução FLUX.2 flexíveis

Preços ​

ID do modelo1MP2MP3MP4MP
flux-2-pro3456
flux-2-max681113
flux-2-flex481216

Se você omitir resolution, a Pixapi cobra o nível 1MP.

Campos de requisição ​

Envie os campos comuns no nível superior e os controles específicos dentro de providerOptions.

CampoTipoObrigatórioDescrição
modelstringSimflux-2-pro, flux-2-max, flux-2-flex. ID diferencia maiúsculas.
promptstringSimDescreva o tema, a composição, o estilo e as alterações. A Pixapi mantém os primeiros 2.000 caracteres; o prompt também é obrigatório na edição.
nintegerNãoPadrão 1; aceita apenas o inteiro 1.
sizestringNãoUse pixels LARGURAxALTURA, por exemplo 1024x1024
imagestring / string[]Para ediçãoURL HTTP(S) pública ou lista de URLs; obrigatória em /images/edits. Até 8 referências; saída e referências ≤ 9 MP, saída ≤ 4 MP. A Pixapi aceita no máximo 4 referências.
resolutionstringNão1MP (padrão Pixapi), 2MP, 3MP, 4MP; 1 MP = 1.048.576 pixels. Define a tarifa.
providerOptionsobjectNãoOpções específicas; consulte a tabela abaixo.

providerOptions ​

Todos estes campos ficam dentro de providerOptions, não ao lado de model.

CampoTipoDescrição
nsfw_checkbooleanModeração opcional do prompt e das imagens; padrão false.
output_formatstringFormato da imagem de saída: jpeg (padrão), png ou webp.
seedintegerSemente de geração; aleatória se omitida.
prompt_upsamplingbooleanMelhora e amplia o prompt; padrão false.
safety_toleranceinteger0–5, padrão 2; valores maiores permitem filtros menos rígidos.
stepsintegerSomente Flex: 1–50, padrão 50; mais passos demoram mais.
guidancenumberSomente Flex: 1.5–10, padrão 5; valores altos seguem mais o prompt.

Regras de entrada ​

Use size para pixels e resolution para o nível; width / height não são aceitos.

Exemplo ​

bash
curl https://api.pixapi.ai/v1/images/generations \
  -H "Authorization: Bearer $PIXAPI_KEY" \
  -H "Content-Type: application/json" \
  -d '{"model":"flux-2-pro","prompt":"Foto editorial de produto em um fundo cinza quente","n":1,"resolution":"2MP"}'
py
import os
import requests

response = requests.post(
    "https://api.pixapi.ai/v1/images/generations",
    headers={
        "Authorization": f"Bearer {os.environ['PIXAPI_KEY']}",
        "Content-Type": "application/json",
    },
    json={
  "model": "flux-2-pro",
  "prompt": "Foto editorial de produto em um fundo cinza quente",
  "n": 1,
  "resolution": "2MP"
},
)
response.raise_for_status()
print(response.json())
js
const response = await fetch('https://api.pixapi.ai/v1/images/generations', {
  method: 'POST',
  headers: {
    Authorization: `Bearer ${process.env.PIXAPI_KEY}`,
    'Content-Type': 'application/json',
  },
  body: JSON.stringify({
  "model": "flux-2-pro",
  "prompt": "Foto editorial de produto em um fundo cinza quente",
  "n": 1,
  "resolution": "2MP"
}),
});

if (!response.ok) {
  throw new Error(await response.text());
}

console.log(await response.json());
go
package main

import (
  "bytes"
  "fmt"
  "io"
  "net/http"
  "os"
)

func main() {
  body := []byte(`{
  "model": "flux-2-pro",
  "prompt": "Foto editorial de produto em um fundo cinza quente",
  "n": 1,
  "resolution": "2MP"
}`)

  req, err := http.NewRequest(
    "POST",
    "https://api.pixapi.ai/v1/images/generations",
    bytes.NewBuffer(body),
  )
  if err != nil {
    panic(err)
  }
  req.Header.Set("Authorization", "Bearer "+os.Getenv("PIXAPI_KEY"))
  req.Header.Set("Content-Type", "application/json")

  resp, err := http.DefaultClient.Do(req)
  if err != nil {
    panic(err)
  }
  defer resp.Body.Close()

  result, _ := io.ReadAll(resp.Body)
  fmt.Println(string(result))
}

Editar uma imagem ​

json
{
  "model": "flux-2-pro",
  "prompt": "Substitua o fundo por um estúdio minimalista",
  "image": "https://example.com/input.png",
  "n": 1
}

Para requisições assíncronas e polling, consulte Tarefas assíncronas de mídia.

O formato de resposta compartilhado está na Referência da API.