Black Forest Labs: FLUX.2 Klein 4B
FLUX.2 [klein] 4B é o modelo de imagem compacto da Black Forest Labs, destilado em passos, para criação orientada por texto e edição com até quatro referências. A sua conceção de quatro passos suporta trabalho visual interativo, mantendo uma identidade separada da edição Base 4B não destilada.
Sobre o modelo
Esta descrição apresenta as capacidades do modelo. As entradas, saídas e opções disponíveis no Ailoot para o método selecionado estão indicadas abaixo.
FLUX.2 [klein] 4B é o modelo compacto da Black Forest Labs para criar uma imagem a partir de uma descrição em texto e editar imagens com referências visuais. O seu transformer de fluxo retificado com quatro mil milhões de parâmetros coloca a geração e a edição numa única arquitetura. A edição identificada como 4B é destilada em passos, e o exemplo de referência do fabricante utiliza quatro passos de inferência.
O papel do modelo é um rascunho ou uma revisão visual interativa: explorar uma cena de produto, mudar a roupa de uma personagem, combinar um sujeito com um cenário ou aperfeiçoar o aspeto de uma ilustração. Comece pelo acontecimento ou pela composição importante e descreva depois o sujeito, o material, a iluminação e o ponto de vista. Uma instrução concreta pode colocar uma chávena de cerâmica azul mate numa mesa de carvalho claro, com uma vista próxima iluminada de lado que mantém visíveis a asa e o vidrado. O resultado é uma imagem para inspecionar face a essas decisões.
Edição com um pequeno conjunto de referências
O perfil documentado 4B aceita até quatro imagens de entrada. Atribua um papel claro a cada uma: aspeto do produto, personagem, cenário ou estilo. Se uma imagem for a cena a editar, identifique-a e indique tanto a alteração como os pormenores a conservar. Por exemplo, mantenha a silhueta e a superfície da chávena da primeira imagem, utilize a sala da segunda e substitua apenas a cobertura da mesa. A ordem das referências e uma instrução precisa de alteração dão à revisão um objetivo mais claro do que pedir uma melhoria geral.
O fabricante distingue este orçamento compacto de referências das variantes maiores de FLUX.2. Indica também que [klein] não tem expansão de instruções. Forneça os próprios dados descritivos importantes, incluindo a relação entre os objetos referenciados, em vez de depender de uma expansão automática de um rótulo curto. Numa série, conserve a mesma referência de sujeito e os requisitos visuais, alterando uma decisão de cena de cada vez.
Definições de saída e limites entre edições
O perfil exato 4B do produtor apresenta saída JPEG, PNG e WebP, com JPEG por predefinição. Os valores explícitos de largura e altura estão documentados com um mínimo de 64 píxeis cada; o exemplo da ficha de referência do modelo utiliza uma imagem de 1024×1024. Esse exemplo é uma configuração de amostragem, e não uma afirmação de que todas as tarefas têm de ser quadradas ou de que 1024 píxeis é o máximo do modelo. Escolha o recorte pretendido e o formato de apresentação antes de preparar as instruções visuais e compare depois o texto fino e as características pequenas nesse tamanho.
O exemplo publicado de quatro passos utiliza guidance_scale 1.0. Mantenha esta edição destilada separada de FLUX.2 [klein] Base 4B, cujo sinal de treino não destilado se destina a adaptação, treino de LoRA e investigação. Base 4B e os modelos 9B são escolhas distintas, com considerações diferentes de preparação e amostragem. Os controlos normais do modelo compacto diferem também dos passos e guidance ajustáveis de [flex]; [max] tem a sua própria capacidade de pesquisa para fundamentação.
Pormenores a verificar na imagem
A ficha exata do modelo indica que este não é uma fonte de informação factual. O texto escrito numa imagem pode ser inexato ou distorcido, e a cena gerada pode afastar-se do pedido. O estilo da instrução tem um efeito substancial no seu cumprimento. Verifique a ortografia, as quantidades, os rótulos, a identidade do sujeito e os objetos específicos que deviam manter-se; uma composição atraente não comprova que uma característica de produto ou um facto ilustrado estejam corretos. O fabricante nota também que as saídas estatísticas podem refletir enviesamentos dos dados de treino.
Para um recurso revisto, mantenha as referências de origem, a redação definitiva e a identidade do modelo selecionado com a imagem. A documentação de lançamento distingue a marca de água ao nível dos píxeis exemplificada no código de referência dos metadados de proveniência C2PA aplicados no fluxo de saída alojado pelo fabricante. Conservar a proveniência devolvida ajuda a explicar a origem de um recurso; é separado de verificar se a alteração visual pedida foi bem-sucedida.
Ailoot Ultra · Imagens POST /v1/images/generations black-forest-labs/flux.2-klein-4b
black-forest-labs/flux.2-klein-4b
black-forest-labs/flux.2-klein-4bIntrodução
FLUX.2 [klein] 4B é o modelo de imagem compacto da Black Forest Labs, destilado em passos, para criação orientada por texto e edição com até quatro referências. A sua conceção de quatro passos suporta trabalho visual interativo, mantendo uma identidade separada da edição Base 4B não destilada.
- Entradas aceites
- Texto · Imagens
- Resultados
- Imagens
Disponível no Ailoot · entradas e métodos
Ailoot Ultra · Imagens POST /v1/images/generations
- Entrada
text,image- Saída
image
| Campo | Tipo | Requisito | Valores e limites | Predefinição |
|---|---|---|---|---|
Campomodel | Tipostring | RequisitoObrigatório | Valores e limites black-forest-labs/flux.2-klein-4b | Predefinição— |
Campoprompt | Tipostring | RequisitoObrigatório | Valores e limites Comprimento mínimo: 1 | Predefinição— |
Campoaspect_ratio | Tipostring | RequisitoOpcional | Valores e limites 1:1, 4:3, 3:4, 3:2, 2:3, 16:9, 9:16, 21:9, auto | Predefinição— |
Campooutput_format | Tipostring | RequisitoOpcional | Valores e limites png, jpeg | Predefinição— |
Campon | Tipointeger | RequisitoOpcional | Valores e limites Mínimo: 1 Máximo: 1 | Predefinição— |
Campoinput_references | Tipoarray | RequisitoOpcional | Valores e limites Número mínimo de elementos: 0 Número máximo de elementos: 4 | Predefinição— |
Campoprovider | Tipoobject | RequisitoOpcional | Valores e limites | Predefinição— |
Parâmetros e ciclo de vida do método
| Parâmetro | Contrato |
|---|---|
Parâmetrocontent_type | Contratoapplication/json |
Parâmetrorequired | Contratomodel, prompt |
Parâmetromaterial_types | Contratotext, image |
Ciclo de vida: synchronous_result_then_owned_library
GET /v1/media/tasks/{task_id} · task_id efetivamente devolvido ou registo na biblioteca de multimédia
GET /v1/media/assets/{asset_id}/content
GET /v1/media/assets
GET /v1/media/assets/{asset_id}
Tarifários
Cálculo do custo final
As tarifas apresentadas permitem estimar o custo antes da geração. O montante final cobrado é calculado a partir do custo registado para a geração original. A duração medida do resultado e as quantidades previstas não correspondem à quantidade final faturável.
As referências tarifárias não acrescentam opções ao pedido. Os parâmetros suportados constam do método selecionado.
- Modo rápido
- Não especificado Quando o modo rápido está selecionado
- Modo flex
- Não especificado Quando o modo flex está selecionado
- Esforço máximo de raciocínio
- Não especificado Quando o esforço máximo de raciocínio usa o ajuste predefinido (default)
Tarifas estimadas para comparação
Preços por configuração
Associe cada custo às condições apresentadas. Use uma única tarifa para cada conjunto de configurações alternativas.
| Configuração | Tabela de tarifas | Quantidade prevista | Unidade de faturação | Custo |
|---|---|---|---|---|
| ConfiguraçãoTarifas base por token | Tabela de tarifasTarifa base | Quantidade prevista— | Unidade de faturação— | Custo Entrada · Tokens de entrada · Estimativa apenas para comparação — / 1K tokens Saída · Tokens de saída · Estimativa apenas para comparação — / 1K tokens Entrada · Leitura da cache · Estimativa apenas para comparação — / 1K tokens Entrada · Escrita na cache · Estimativa apenas para comparação — / 1K tokens Entrada · Escrita na cache, 1 hora · Estimativa apenas para comparação — / 1K tokens |
| Configuraçãomegapíxel da imagem de saída | Tabela de tarifas— | Quantidade prevista— | Unidade de faturaçãopor megapíxel de imagem de saída | Custo Saída · megapíxel da imagem de saída · Estimativa apenas para comparação $0.028 por megapíxel de imagem de saída |
| ConfiguraçãoCusto estimado de geração | Tabela de tarifas— | Quantidade previstaestimativa para uma geração | Unidade de faturação— | Custo Saída · Custo estimado de geração · Estimativa apenas para comparação $0.028 estimativa antes da geração Esta estimativa não é um encargo adicional nem uma tarifa fixa para a geração concluída. |
O Ailoot reserva um montante estimado antes de um pedido. Após o resultado, liquida o custo final com base na utilização medida. No streaming, a liquidação usa o registo final de utilização. Como funcionam a reserva e a liquidação →
Exemplos de pedidos
Ailoot Ultra · Imagens
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
export AILOOT_API_KEY
python3 - <<'PY_REQUEST'
import json,os
from pathlib import Path
p={'model': 'black-forest-labs/flux.2-klein-4b', 'prompt': 'a red panda astronaut floating in space, studio lighting'}
Path("request.json").write_text(json.dumps(p,ensure_ascii=False))
PY_REQUEST
curl --fail-with-body --silent --show-error https://api.ailoot.ai/v1/images/generations \
-H "Authorization: Bearer $AILOOT_API_KEY" -H 'Content-Type: application/json' \
--data-binary @request.json -D response-headers.txt -o result.json
python3 - <<'PY_RESULT'
import base64, json, os, subprocess
from pathlib import Path
from urllib.parse import urlsplit, urljoin
def save_images(items):
if not items: raise SystemExit("No completed images; retain the full response")
for index, item in enumerate(items):
encoded=item.get("b64_json")
uri=item.get("url", "")
if not encoded and uri.startswith("data:image/"):
header, separator, encoded=uri.partition(",")
if not separator or ";base64" not in header: raise SystemExit("Unsupported image data URI")
if encoded:
raw=base64.b64decode(encoded,validate=True)
elif uri:
uri=urljoin("https://api.ailoot.ai",uri)
parsed=urlsplit(uri)
if parsed.scheme!="https" or not parsed.netloc or parsed.username or parsed.password:
raise SystemExit("Invalid returned image URL")
owned=parsed.netloc=="api.ailoot.ai" and parsed.path.startswith("/v1/media/assets/") and parsed.path.endswith("/content")
args=["curl","--fail-with-body","--silent","--show-error",uri]
if owned: args += ["-H","Authorization: Bearer "+os.environ["AILOOT_API_KEY"]]
temporary=Path(f"image-{index}.bin")
subprocess.run(args+["-o",str(temporary)],check=True)
raw=temporary.read_bytes()
temporary.unlink()
else: raise SystemExit("Image has neither bytes nor URL")
if not raw: raise SystemExit("Empty image result")
ext="png" if raw.startswith(b"\x89PNG") else "jpg" if raw.startswith(b"\xff\xd8") else "webp" if raw[:4]==b"RIFF" and raw[8:12]==b"WEBP" else "svg" if raw.lstrip().startswith((b"<svg",b"<?xml")) else "bin"
Path(f"image-{index}.{ext}").write_bytes(raw)
print("Every returned image saved; complete response metadata retained")
save_images(json.loads(Path("result.json").read_text())["data"])
PY_RESULT
Receber e guardar os resultados
Ailoot Ultra · Imagens
Descarregue cada imagem devolvida ou guarde o respetivo conteúdo Base64
GET /v1/media/tasks/{task_id}GET /v1/media/assets/{asset_id}/contentGET /v1/media/assetsGET /v1/media/assets/{asset_id}
Outras leituras de conteúdo
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
curl --fail-with-body --silent --show-error https://api.ailoot.ai/v1/media/assets \
-H "Authorization: Bearer $AILOOT_API_KEY" -o owned-assets.json
# Preserve every returned asset and follow its exact signed content URL. Do not construct a signed token.
Guardar todos os resultados concluídos
Guarde cada imagem concluída; obtenha cada URL devolvido ou descodifique o respetivo conteúdo Base64.
Conserve a resposta completa e os cabeçalhos, todos os resultados efetivamente produzidos, os identificadores originais devolvidos e todos os campos de utilização. Recupere a operação original sem voltar a enviar o pedido de criação.
Se for necessário verificar a resposta original
Guarde o X-Client-Request-ID devolvido para reconciliação. Consulte apenas os valores task_id/asset_id efetivamente devolvidos ou a sua biblioteca de multimédia; nunca construa um URL de tarefa a partir do ID da operação e nunca volte a enviar o pedido de criação.
Campos da resposta
| Campo | Tipo |
|---|---|
Campocreated | Tipo |
Campodata[].url | Tipo |
Campodata[].b64_json | Tipo |
Campousage | Tipo |
Aliases
Aliases do modelo
Ailoot Ultra black-forest-labs/flux.2-klein-4b
Aliases dos caminhos dos métodos
/v1/images
IDs de chamada relacionados
FAQ · Black Forest Labs: FLUX.2 Klein 4B
- Que entradas e resultados estão disponíveis?
POST /v1/images/generations·black-forest-labs/flux.2-klein-4b:text,image→image- Que campos utiliza o pedido?
POST /v1/images/generations·black-forest-labs/flux.2-klein-4b:model,prompt,aspect_ratio,output_format,n,input_references,provider- Que limites se aplicam?
POST /v1/images/generations·black-forest-labs/flux.2-klein-4b:n.minimum:1;n.maximum:1