Gerador de prompts SDXL do ChatGPT vs. seu script de API
Um fluxo de trabalho de gerador de prompts SDXL do ChatGPT significa abrir uma janela de chat, digitar uma ideia, copiar a resposta para sua ferramenta de imagem e repetir. É bom para dez prompts e miserável para mil. Este artigo compara essa rotina com um script curto que chama uma API e coloca números em ambos.


Pontos principais
- O chat manual é melhor para explorar um estilo; um script é melhor quando você precisa de volume ou repetibilidade.
- A 30 segundos por prompt manual, 1.000 prompts levam cerca de 8,3 horas; um script pode terminar em minutos.
- Nesta API, 1.000 prompts de cerca de 300 tokens de entrada e 200 de saída custam aproximadamente $0,145.
- Um script também oferece formatos fixos, entradas salvas e retentativas, o que uma janela de chat não oferece.
Duas maneiras de obter prompts SDXL de um modelo de linguagem
A primeira maneira é um assistente de chat. Você cola uma instrução no estilo de sistema uma vez, depois envia ideias curtas uma de cada vez e copia cada resposta para sua ferramenta de imagem. Não precisa de código, você vê a resposta imediatamente e pode dizer "mais escuro, mais cinematográfico" e obter uma revisão. Para descoberta, é difícil de superar.
A segunda maneira é um script. Você escreve a instrução uma vez no código, carrega uma lista de ideias de um arquivo, chama um endpoint de conclusão de chat para cada um e grava os resultados em um arquivo ou os envia diretamente para seu gerador de imagens. Este serviço é uma API compatível com OpenAI, apenas de texto, que serve um único modelo de pesos abertos de um provedor independente. Não é o ChatGPT e não é um produto da OpenAI, mas qualquer SDK da OpenAI fala com ele assim que você altera a URL base e a chave.
Nenhuma das abordagens desenha imagens. Em ambas, o modelo produz texto e uma ferramenta separada, como SDXL, o renderiza.
Lado a lado
| Fator | Janela de chat | Script de API |
|---|---|---|
| Configuração | Nenhum | Chave, 30 linhas de Python |
| Melhor tamanho de lote | 1 a 20 prompts | Centenas a milhares |
| Formato de saída | O que o chat retornar; você limpa manualmente | O modo JSON retorna campos que você pode analisar |
| Repetibilidade | Deriva conforme a conversa cresce | Mesma instrução em cada chamada, seed opcional |
| Iteração | Natural: responder com feedback | Você edita o script e executa novamente |
| Modelo de custo | Depende do plano que você possui; verifique seus termos atuais | Pague por token, crédito pré-pago |
| Recusas | Depende da política de conteúdo do assistente | Este modelo responde sem recusas de conteúdo para uso adulto legal |
O resumo honesto: se você faz um punhado de imagens por semana e gosta de conversar sobre elas, fique com o chat. Um script começa a valer a pena no ponto em que copiar e colar se torna a etapa mais lenta do seu pipeline.
O custo de tempo de copiar e colar
Faça uma suposição modesta: 30 segundos por prompt para digitar a ideia, esperar, copiar o resultado e colá-lo onde pertence. Em 1.000 prompts, isso são 1.000 × 30 s = 30.000 s, ou cerca de 8,3 horas de atenção.
Um script tem um formato diferente. Digamos que cada chamada de API leve cerca de 5 segundos (essa é uma suposição, então meça a sua). Com 8 requisições em andamento, que é o limite de concorrência de uma chave completa, 1.000 chamadas levam cerca de 1.000 / 8 × 5 s = 625 s, pouco mais de 10 minutos. O limite de 300 requisições por minuto significa que o piso absoluto é pouco mais de 3 minutos. Você inicia, faz café e lê o arquivo depois.
O tempo economizado é o principal argumento. O dinheiro é secundário, como a próxima seção mostra.
Custo por 1.000 prompts
Esta API cobra $0,15 por 1M de tokens de entrada e $0,50 por 1M de tokens de saída. Suponha que cada chamada envie uma instrução de 250 tokens e uma ideia de 50 tokens (300 in) e retorne um prompt de 200 tokens.
- Entrada: 1.000 × 300 = 300.000 tokens × $0,15 / 1M = $0,045.
- Saída: 1.000 × 200 = 200.000 tokens × $0,50 / 1M = $0,10.
- Total: $0,145 para 1.000 prompts.
Para comparar com uma assinatura de chat ou outra API, divida o preço desse plano pelo número de prompts que você realmente fará em um mês e verifique a precificação atual deles em vez de confiar em um valor de um artigo. O crédito de teste de $0,50, reivindicado com um clique na página da chave de API após o login, cobre um pouco mais de 3.400 prompts desse tamanho. Veja a página de preços para recarregamentos de $20 a $500, por cripto.
Um script em lote com retentativas
O script abaixo lê ideias de ideas.txt, uma por linha, e grava prompts.jsonl. Ele executa 6 workers em paralelo e faz retentativas em 429.
import json, time
from concurrent.futures import ThreadPoolExecutor
from openai import OpenAI, RateLimitError
client = OpenAI(base_url="https://api.sdxlapi.com/v1", api_key="YOUR_KEY", max_retries=0)
SYSTEM = (
"Expand the idea into one SDXL prompt of 40 to 60 words: subject, setting, "
"lighting, style, mood, comma-separated. Return JSON with key 'prompt'."
)
def make(idea):
for attempt in range(5):
try:
r = client.chat.completions.create(
model="uncensored",
messages=[{"role": "system", "content": SYSTEM},
{"role": "user", "content": idea}],
response_format={"type": "json_object"},
temperature=0.8,
)
return {"idea": idea, **json.loads(r.choices[0].message.content)}
except RateLimitError:
time.sleep(5 * (attempt + 1))
return {"idea": idea, "prompt": None}
ideas = [l.strip() for l in open("ideas.txt") if l.strip()]
with ThreadPoolExecutor(max_workers=6) as pool, open("prompts.jsonl", "w") as out:
for row in pool.map(make, ideas):
out.write(json.dumps(row, ensure_ascii=False) + "\n")
Mantenha a contagem de workers no máximo 8 com uma chave completa, ou 2 com uma chave de teste. Se você vir 429 com o código concurrency, diminua; rate_limited significa que você excedeu o limite por minuto. Requisições falhas não são cobradas, então as repetições são gratuitas. Mais sobre parâmetros está na documentação.
Obtendo melhores resultados do script
A primeira execução de um lote raramente é a melhor. Três alterações baratas melhoram os resultados mais do que trocar de ferramenta.
- Adicione dois ou três exemplos ao prompt do sistema. Cole prompts que geraram imagens que você gostou, cada um com a ideia curta que o produziu. O modelo copia a estrutura e o nível de detalhe.
- Passe um campo de estilo. Mantenha um pequeno dicionário como "cena de filme", "aquarela", "render isométrico" e anexe o estilo escolhido a cada ideia. Uma lista de ideias pode então gerar várias aparências.
- Filtre a saída. Rejeite linhas cujo prompt tenha menos de 25 palavras ou mais de 80, depois execute novamente apenas aquelas. Uma verificação rápida no código supera a leitura de mil linhas.
Salve a ideia ao lado de cada resultado. Quando uma imagem sai bem, você quer ver exatamente o que a produziu, e o histórico de bate-papo desaparece da tela. O assunto continua sendo sua decisão: o modelo é ajustado para uso adulto legal, e o limite rígido é que nada sexual envolvendo menores de idade é gerado.
Quando permanecer no chat
Um script nem sempre é a melhor escolha. Continue com um assistente de chat quando você ainda não sabe o que quer, quando cada imagem precisa de uma conversa sobre composição, ou quando seu volume é pequeno o suficiente para que o tempo de configuração exceda o tempo economizado. Um padrão comum é usar o chat para encontrar uma boa instrução, depois colar essa instrução no script como prompt do sistema e executar o trabalho em massa lá.
Pense também nos dados. Os prompts enviados para esta API não são usados para treinamento. Para qualquer outro serviço, leia a política de dados antes de enviar trabalho criativo não lançado.
Mais guias
Perguntas e respostas
Esta API é igual ao ChatGPT?
Não. É um endpoint compatível com OpenAI que serve um único modelo de pesos abertos de um provedor independente. Não é um produto da OpenAI.
A API pode gerar a imagem SDXL também?
Não. Ele produz apenas texto. Seu prompt vai para SDXL, ComfyUI, Automatic1111 ou outra ferramenta de imagem.
Quanto custa gerar 1.000 prompts?
Cerca de $0,145 para prompts de aproximadamente 300 tokens de entrada e 200 de saída, a $0,15 por 1M de tokens de entrada e $0,50 por 1M de tokens de saída.
A que velocidade um lote pode ser executado?
Uma chave completa permite 8 requisições simultâneas e 300 por minuto, então 1.000 prompts curtos podem ser concluídos em minutos. Chaves de teste permitem 2 e 60.
Sua chave está a um formulário de distância
Crie uma conta, copie a chave e altere a URL base. Essa é toda a configuração.