Tokia

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 qualidade
  • flux-schnell — rapido, bom para prototipacao
  • flux-kontext-pro — edicao de imagens com instrucoes textuais
  • dall-e-3 — OpenAI, estilo artistico
  • gpt-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 prototipacao
  • flux-pro — melhor qualidade, custo intermediario
  • dall-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