programa
Como você pode usar a API do Stable Diffusion 3
A Stability AI anunciou uma prévia do Stable Diffusion 3 em fevereiro de 2024. O modelo de IA ainda está em fase de pré-visualização, mas em abril de 2024, a equipe anunciou que disponibilizaria o Stable Diffusion 3 e o Stable Diffusion 3 Turbo na API da Stability AI Developer Platform após uma parceria com a Fireworks AI, a plataforma de API mais rápida e confiável do mercado.
Observe que o Stable Diffusion 3 é simplesmente uma série de modelos de IA geradores de texto para imagem. De acordo com a equipe da Stability AI, o modelo é "igual ou superior" a outros geradores de texto para imagem, como o DALL-E 3 e o Midjourney v6 da OpenAI, em "tipografia e aderência imediata".
Neste tutorial, você aprenderá as etapas práticas para começar a usar a API, de modo que possa começar a gerar suas próprias imagens.
Por que o Stable Diffusion 3?
O Stable Diffusion 3 apresenta vários avanços e recursos que o diferenciam de seus antecessores e o tornam altamente competitivo no espaço de geração de texto para imagem, especialmente em termos de geração de texto aprimorada e recursos de acompanhamento de solicitações.
Vamos explorar esses avanços:
Prompt aprimorado a seguir
- Compreensão contextual: O Stable Diffusion 3 incorpora técnicas de processamento de linguagem natural (NLP) de última geração, o que permite que você entenda melhor e interprete as solicitações do usuário. Isso permite respostas mais precisas e contextualmente relevantes às entradas do usuário.
- Prompt de continuidade: Diferentemente das versões anteriores, o Stable Diffusion 3 mantém uma melhor continuidade nos prompts seguintes, garantindo que o texto gerado permaneça coerente e alinhado com a entrada do usuário durante toda a conversa.
Geração de texto aprimorada
- Modelos de linguagem com ajuste fino: O Stable Diffusion 3 utiliza modelos de linguagem bem ajustados que foram submetidos a treinamento extensivo em grandes conjuntos de dados, resultando em recursos aprimorados de geração de texto. Esses modelos compreendem melhor a gramática, a sintaxe e a semântica, o que resulta em respostas mais coerentes e naturais.
- Redução da variabilidade da resposta: Por meio de metodologias de treinamento e arquiteturas de modelo aprimoradas, o Stable Diffusion 3 reduz a variabilidade das respostas, gerando resultados mais consistentes e de alta qualidade em diferentes solicitações e contextos.
Expansão avançada do prompt
- Suporte a diálogos com várias voltas: O Stable Diffusion 3 pode lidar com diálogos de várias voltas com mais eficiência, mantendo a coerência e o contexto em várias trocas entre o usuário e o modelo de IA.
- Técnicas de expansão imediatas: O modelo emprega técnicas avançadas de expansão de prompts para gerar respostas mais informativas e contextualmente relevantes, enriquecendo o diálogo e fornecendo aos usuários respostas abrangentes às suas consultas.
Mecanismos de controle ajustados
- Ajuste de parâmetros: O Stable Diffusion 3 apresenta mecanismos de controle refinados que permitem aos usuários ajustar parâmetros como duração da resposta, nível de criatividade e relevância do tópico, possibilitando uma experiência de interação mais personalizada.
- Mitigação de vieses: O modelo incorpora medidas para atenuar os vieses na geração de texto, promovendo a justiça e a inclusão em suas respostas às solicitações do usuário.
Primeiros passos com a API do Stable Diffusion 3
Esta seção abordará as etapas para você começar a usar a API de estabilidade.
Etapa 1: Crie sua conta. Você precisará criar uma conta para poder usar a API da Stability AI. Você pode se inscrever usando um nome de usuário e uma senha, mas os novos usuários recebem 25 créditos gratuitos por se inscreverem usando sua conta do Google.
Etapa 2: Solicite sua chave de API. Depois de criar sua conta, você precisará de um API get. Você pode encontrar isso na página Chaves de API. Na documentação, a Stability AI afirma que "Todas as APIs documentadas neste site usam o mesmo mecanismo de autenticação: passar a chave da API por meio do cabeçalho de autorização".
Etapa 3: Recarga de créditos. Você deve ter créditos para solicitar a API. Os créditos são a unidade monetária consumida ao chamar a API - o valor consumido varia de acordo com os modelos e as modalidades. Depois de usar todos os seus créditos, você pode comprar mais por meio do painel de faturamento a US$ 1 por 100 créditos.
Neste tutorial, usaremos o Google Colab e o ComfyUI para demonstrar como você pode gerar imagens usando a API Stable Diffusion 3. Na próxima seção, abordaremos as etapas para começar a usar cada ferramenta.
Usando a API Stable Diffusion 3 com o Google Colab
Para começar a usar o Google Colab, você deve criar uma conta do Google - clique no link e siga as instruções.
Se você já tiver uma conta do Google, abra um novo bloco de notas e siga as etapas abaixo.
Observação: O código usado neste exemplo foi retirado do tutorial SD3_API da Stability AI.
Etapa 1: Instale os requisitos.
from io import BytesIO
import IPython
import json
import os
from PIL import Image
import requests
import time
from google.colab import output
Etapa 2: Conecte-se à API de estabilidade.
import getpass
# To get your API key, visit https://platform.stability.ai/account/keys
STABILITY_KEY = getpass.getpass('Enter your API Key')
Etapa 3. Definir funções
def send_generation_request(
host,
params,
):
headers = {
"Accept": "image/*",
"Authorization": f"Bearer {STABILITY_KEY}"
}
# Encode parameters
files = {}
image = params.pop("image", None)
mask = params.pop("mask", None)
if image is not None and image != '':
files["image"] = open(image, 'rb')
if mask is not None and mask != '':
files["mask"] = open(mask, 'rb')
if len(files)==0:
files["none"] = ''
# Send request
print(f"Sending REST request to {host}...")
response = requests.post(
host,
headers=headers,
files=files,
data=params
)
if not response.ok:
raise Exception(f"HTTP {response.status_code}: {response.text}")
return response
Etapa 4. Gerar imagens.
De acordo com a documentação, os serviços Stable Image incluem apenas uma oferta que está em produção no momento:
- SD3: usa 6,5 créditos
- SD3 Turbo: usa 4 créditos
Vamos testá-los.
Neste exemplo, criaremos uma imagem de um pássaro tucano em uma área tropical de planície.
# SD3
prompt = "This dreamlike digital art captures a vibrant, Toucan bird in a lowland tropic area" #@param {type:"string"}
negative_prompt = "" #@param {type:"string"}
aspect_ratio = "1:1" #@param ["21:9", "16:9", "3:2", "5:4", "1:1", "4:5", "2:3", "9:16", "9:21"]
seed = 0 #@param {type:"integer"}
output_format = "jpeg" #@param ["jpeg", "png"]
host = f"https://api.stability.ai/v2beta/stable-image/generate/sd3"
params = {
"prompt" : prompt,
"negative_prompt" : negative_prompt,
"aspect_ratio" : aspect_ratio,
"seed" : seed,
"output_format" : output_format,
"model" : "sd3",
"mode" : "text-to-image"
}
response = send_generation_request(
host,
params
)
# Decode response
output_image = response.content
finish_reason = response.headers.get("finish-reason")
seed = response.headers.get("seed")
# Check for NSFW classification
if finish_reason == 'CONTENT_FILTERED':
raise Warning("Generation failed NSFW classifier")
# Save and display result
generated = f"generated_{seed}.{output_format}"
with open(generated, "wb") as f:
f.write(output_image)
print(f"Saved image {generated}")
output.no_vertical_scroll()
print("Result image:")
IPython.display.display(Image.open(generated))
Aqui está o que você criou:
Imagem criada pelo autor usando o Stable Diffusion 3
Agora, vamos criar uma imagem de um carro feito de frutas usando o SD3 Turbo:
#SD3 Turbo
prompt = "A car made out of fruits." #@param {type:"string"}
aspect_ratio = "1:1" #@param ["21:9", "16:9", "3:2", "5:4", "1:1", "4:5", "2:3", "9:16", "9:21"]
seed = 0 #@param {type:"integer"}
output_format = "jpeg" #@param ["jpeg", "png"]
host = f"https://api.stability.ai/v2beta/stable-image/generate/sd3"
params = {
"prompt" : prompt,
"aspect_ratio" : aspect_ratio,
"seed" : seed,
"output_format" : output_format,
"model" : "sd3-turbo"
}
response = send_generation_request(
host,
params
)
# Decode response
output_image = response.content
finish_reason = response.headers.get("finish-reason")
seed = response.headers.get("seed")
# Check for NSFW classification
if finish_reason == 'CONTENT_FILTERED':
raise Warning("Generation failed NSFW classifier")
# Save and display result
generated = f"generated_{seed}.{output_format}"
with open(generated, "wb") as f:
f.write(output_image)
print(f"Saved image {generated}")
output.no_vertical_scroll()
print("Result image:")
IPython.display.display(Image.open(generated))
A execução desse código produziu a seguinte imagem:
Imagem criada pelo autor usando o Stable Diffusion 3 Turbo
Usando a API com o ComfyUI
ComfyUI é uma interface gráfica do usuário (GUI) robusta e flexível para difusão estável. Ele apresenta uma interface baseada em gráficos e usa um design no estilo de fluxograma para permitir que os usuários criem e executem fluxos de trabalho de difusão sofisticados e estáveis.
Requisitos do sistema:
- Unidade de processamento gráfico (GPU): Uma GPU NVIDIA adequada com um mínimo de 8 GB de VRAM, como a RTX 3060 Ti ou superior.
- Unidade central de processamento (CPU): Um processador moderno, incluindo Intel Xeon E5, i5, Ryzen 5 ou superior.
- Memória de acesso aleatório (RAM): 16 GB ou mais.
- Sistema operacional: Windows 10/11 ou Linux.
- Espaço de armazenamento adequado em seu computador para modelos e imagens geradas.
Etapa 1: Instalar a ComfyUI
O método mais simples de instalar o ComfyUI no Windows envolve a utilização do instalador autônomo encontrado na página de versões. Esse instalador inclui dependências essenciais, como PyTorch e Hugging Face Transformers, eliminando a necessidade de instalações separadas.
Ele fornece um pacote abrangente, permitindo uma configuração rápida do ComfyUI no Windows sem a necessidade de configurações complexas.
Basta fazer o download, extrair, adicionar modelos e iniciar!
Etapa 1.1: Faça o download da versão autônoma do ComfyUI a partir deste repositório do GitHub - ao clicar no link, você iniciará o download.
Etapa 1.2: Depois que você tiver feito o download do arquivo comfyui-windows.zip mais recente, extraia-o usando um utilitário como o 7-Zip ou o WinRAR.
Etapa 1.3: Você precisa de um modelo de ponto de verificação para começar a usar o ComfyUI. Você pode fazer download de um modelo de ponto de verificação do Stable Diffusion ou do Hugging Face. Coloque o modelo na pasta:
ComfyUI_windows_portable\ComfyUI\models\checkpoints
Etapa 1.4: Agora, basta executar o arquivo run_nvidia_gpu.bat (recomendado) ou run_cpu.bat. Isso deve iniciar automaticamente o ComfyUI em seu navegador.
A linha de comando será executada e gerará um URL http://127.0.0.1:8188/
que você poderá abrir no navegador.
Etapa 2: Instalar o ComfyUI Manager
No aplicativo File Explorer, localize o diretório que você acabou de instalar. Como você está usando o Windows, ele deve se chamar "ComfyUI_windows_portable.
". A partir daqui, navegue até ComfyUI
e, em seguida, custom_nodes
. Nesse local, digite cmd
na barra de endereços e pressione Enter.
Isso deve abrir um terminal de prompt de comando, no qual você deve inserir o seguinte comando:
git clone https://github.com/ltdrdata/ComfyUI-Manager
Quando isso for concluído, reinicie o ComfyUI. O novo botão "Manager" deve aparecer no painel flutuante.
Etapa 3: Instale o nó da API do Stability AI
Selecione o botão Manage (Gerenciar) e navegue até "Install Custom Nodes" (Instalar nós personalizados).A partir daí, pesquise "stability API".
Localize o nó "Stability API nodes for ComfyUI" e clique no botão Install (Instalar) localizado no lado direito para iniciar o processo de instalação. Em seguida, um botão "Reiniciar" ficará visível. Clique em "Restart" (Reiniciar) para reiniciar o ComfyUI.
Etapa 4: Definir a chave de API de todo o sistema
Esta etapa é opcional, mas é recomendada. Ou seja, você pode definir uma chave de API do Stability AI para cada nó dentro do nó personalizado do Stability AI. Isso evita a necessidade de inserir a chave de API repetidamente em cada fluxo de trabalho e reduz o risco de compartilhar inadvertidamente a chave de API ao compartilhar o arquivo JSON do fluxo de trabalho.
Para fazer isso, navegue até o diretório do nó personalizado:
ComfyUI_windows_portable > ComfyUI > custom_nodes > ComfyUI-SAI_API.
Crie um novo arquivo chamado sai_platform_key.txt.
. Cole sua chave de API no arquivo, salve o documento e reinicie o ComfyUI.
Etapa 5: Carregar e executar o fluxo de trabalho
Instale o fluxo de trabalho de texto para imagem do Stable Diffusion 3 e solte-o no ComfyUI.
Agora você está pronto para começar!
Solução de problemas e dicas
Como acontece com qualquer ferramenta, sempre há uma chance de você encontrar alguns problemas ao longo do caminho. Aqui estão os desafios mais comuns e as etapas de solução de problemas para usuários que enfrentam problemas com a API ou com o processo de configuração.
Chave de API e problemas de autenticação
Desafio: Os usuários podem enfrentar erros de autenticação ao acessar a API devido a uma chave de API incorreta ou a credenciais de autenticação incorretas.
Solução de problemas: Verifique novamente a chave da API e certifique-se de que ela foi copiada e colada corretamente. Verifique se não há espaços ou caracteres extras na chave. Certifique-se de que a chave de API seja autenticada corretamente pelo servidor Stable Diffusion 3.
Problemas de gerenciamento de crédito
Desafio: Os usuários podem encontrar problemas relacionados ao gerenciamento de crédito, como créditos insuficientes ou erros de cobrança.
Solução de problemas: Verifique seu saldo de crédito no painel do Stable Diffusion 3 para garantir que você tenha créditos suficientes. Verifique suas informações de cobrança e resolva quaisquer erros ou discrepâncias de cobrança com a equipe de suporte.
Problemas de conectividade e de rede
Desafio: Os usuários podem ter problemas de conectividade ou interrupções de rede que os impeçam de acessar a API.
Solução de problemas: Certifique-se de que você tenha uma conexão estável com a Internet e que não haja interrupções na rede. Para isolar o problema, tente acessar a API de uma rede ou dispositivo diferente. Entre em contato com o provedor de serviços de Internet se você continuar a ter problemas de conectividade.
Erros de compatibilidade e dependência
Desafio: Os usuários podem encontrar problemas de compatibilidade ou erros de dependência ao instalar ou usar as ferramentas e bibliotecas necessárias.
Solução de problemas: Verifique os requisitos de compatibilidade da API do Stable Diffusion 3 e certifique-se de que você esteja usando versões compatíveis de ferramentas e bibliotecas. Atualize ou reinstale as dependências que estão causando erros. Consulte a documentação e os fóruns da comunidade para obter orientação sobre a solução de problemas.
Desempenho e tempo de resposta
Desafio: Os usuários podem ter tempos de resposta lentos ou problemas de desempenho ao interagir com a API, especialmente durante os horários de pico de uso.
Solução de problemas: Monitore o desempenho da API e acompanhe os tempos de resposta para identificar padrões ou tendências. Considere a possibilidade de fazer upgrade para um plano de assinatura de nível superior para obter melhor desempenho e acesso prioritário. Entre em contato com a equipe de suporte se você tiver tempos de resposta lentos de forma consistente.
Documentação e suporte
Desafio: Os usuários podem ter dificuldades para entender a documentação da API ou precisar de assistência para solucionar problemas específicos.
Solução de problemas: Para obter orientação sobre o uso da API, solução de problemas e práticas recomendadas, consulte a documentação do Stable Diffusion 3. Se você tiver algum problema ou dúvida não resolvida, entre em contato com a equipe de suporte ou com os fóruns da comunidade.
Conclusão
O Stable Diffusion 3 é uma série de modelos de IA geradores de texto para imagem. Este artigo abordou as etapas práticas para você começar a usar a API com o Google Colab e o ComfyUI. Agora, você tem as habilidades para criar suas próprias imagens; certifique-se de aplicar o que aprendeu o mais rápido possível para não esquecer.
Obrigado pela leitura!
Aprendizado adicional
Perguntas frequentes
Quais são as práticas recomendadas para que você use a API do Stable Diffusion 3 de forma eficaz?
As práticas recomendadas para usar a API Stable Diffusion 3 incluem o fornecimento de prompts claros e específicos, a experimentação de diferentes parâmetros para obter os resultados desejados, o monitoramento do uso do crédito para evitar o esgotamento e a atualização da documentação e dos recursos mais recentes.
O que é Stable Diffusion 3?
O Stable Diffusion é composto por uma coleção de modelos de IA voltados para a geração de imagens a partir de solicitações textuais. Os usuários fornecem descrições das imagens desejadas, e o modelo gera representações visuais correspondentes com base nesses avisos.
Como funciona o Stable Diffusion?
O Stable Diffusion 3 emprega uma arquitetura de transformador de difusão semelhante à do Sora, diferente das versões anteriores que utilizavam um modelo de difusão semelhante à maioria das IAs de geração de imagens existentes. Essa inovação mescla a arquitetura de transformação comumente usada em grandes modelos de linguagem, como o GPT, com modelos de difusão, oferecendo o potencial de aproveitar os pontos fortes de ambas as arquiteturas.
Continue sua jornada de IA hoje mesmo!
curso
Large Language Models (LLMs) Concepts
curso
Developing LLM Applications with LangChain
blog
Stability AI anuncia a difusão estável 3: Tudo o que sabemos até agora
blog
As 5 melhores ferramentas de IA para ciência de dados em 2024: Aumente seu fluxo de trabalho hoje mesmo
tutorial
Uma introdução ao uso do DALL-E 3: Dicas, exemplos e recursos
tutorial
Primeiros passos com o Claude 3 e a API do Claude 3
tutorial
Tutorial da API de assistentes da OpenAI
tutorial