Geracao de Imagens
O Tokia suporta geracao e edicao de imagens via API OpenAI-compatible. Use /v1/images/generations para criar imagens do zero e /v1/images/edits para editar imagens existentes.
Modelos disponiveis
flux-pro— Black Forest Labs, alta qualidadeflux-schnell— rapido, bom para prototipacaoflux-kontext-pro— edicao de imagens com instrucoes textuaisdall-e-3— OpenAI, estilo artisticogpt-image-1— OpenAI, geracao nativa do GPT
Gerar imagem (Python)
python
from openai import OpenAI
client = OpenAI(
base_url="https://api.usetokia.com/v1",
api_key="sk-...",
)
response = client.images.generate(
model="flux-schnell",
prompt="Logo minimalista de uma startup de tecnologia brasileira, cores verde e azul",
size="1024x1024",
n=1,
)
image_url = response.data[0].url
print(f"Imagem gerada: {image_url}")Baixar a imagem
python
import requests
img_response = requests.get(image_url)
with open("logo.png", "wb") as f:
f.write(img_response.content)
print("Salvo em logo.png")Receber como base64
Para evitar URL temporaria (que expira), peca o resultado em base64:
python
import base64
response = client.images.generate(
model="flux-schnell",
prompt="Icone de app de fintech, flat design, fundo transparente",
size="512x512",
response_format="b64_json",
)
img_bytes = base64.b64decode(response.data[0].b64_json)
with open("icone.png", "wb") as f:
f.write(img_bytes)Editar imagem (Kontext)
O endpoint /v1/images/edits aceita uma imagem de entrada e uma instrucao de edicao. O modelo Kontext entende instrucoes em linguagem natural:
python
response = client.images.edit(
model="flux-kontext-pro",
image=open("foto-produto.png", "rb"),
prompt="Remova o fundo e deixe apenas o produto centralizado",
size="1024x1024",
)
print(response.data[0].url)cURL
bash
curl https://api.usetokia.com/v1/images/generations -H "Authorization: Bearer $TOKIA_KEY" -H "Content-Type: application/json" -d '{
"model": "flux-schnell",
"prompt": "Paisagem tropical brasileira, por do sol, estilo aquarela",
"size": "1024x1024"
}'TypeScript
typescript
import OpenAI from "openai";
import { writeFileSync } from "fs";
const client = new OpenAI({
baseURL: "https://api.usetokia.com/v1",
apiKey: process.env.TOKIA_API_KEY,
});
const response = await client.images.generate({
model: "flux-schnell",
prompt: "Dashboard moderno de analytics, tema escuro, estilo glassmorphism",
size: "1024x1024",
response_format: "b64_json",
});
const buffer = Buffer.from(response.data[0].b64_json!, "base64");
writeFileSync("dashboard-mockup.png", buffer);Cobranca
Imagens sao cobradas por requisicao (nao por token). O custo depende do modelo e do tamanho:
flux-schnell— mais barato, ideal para prototipacaoflux-pro— melhor qualidade, custo intermediariodall-e-3— custo varia por tamanho (1024x1024, 1024x1792)flux-kontext-pro— edicao, custo similar ao flux-pro
Consulte os precos atualizados em Precos e markup.
Dicas de prompt
- Seja especifico: "logo minimalista de fintech, 2 cores, fundo branco" funciona melhor que "logo bonito"
- Estilo: inclua estilo visual (flat design, aquarela, 3D render, fotografia, pixel art)
- Composicao: descreva posicao e enquadramento (centralizado, close-up, vista aerea)
- Negativas: alguns modelos aceitam "sem texto, sem pessoas, sem fundo"
Proximos passos
- API /v1/images/generations — referencia completa
- API /v1/images/edits — referencia de edicao
- Modelos — catalogo com todos os modelos de imagem