Last chance! 50% off DataCamp Premium
Sale ends in
Stability AI kondigde in februari 2024 een vroege preview van Stable Diffusion 3 aan. Het AI-model is nog steeds in preview, maar in april 2024 kondigde het team aan dat ze Stable Diffusion 3 en Stable Diffusion 3 Turbo beschikbaar zouden maken op de Stability AI Developer Platform API na een samenwerking met Fireworks AI, het snelste en meest betrouwbare API-platform op de markt.
Let op: Stable Diffusion 3 is simpelweg een reeks text-to-image generatieve AI-modellen. Volgens het team van Stability AI is het model “gelijk aan of beter dan” andere text-to-image generators, zoals DALL-E 3 van OpenAI en Midjourney v6, op het gebied van “typografie en het opvolgen van prompts.”
In deze tutorial leer je praktische stappen om met de API aan de slag te gaan, zodat je je eigen afbeeldingen kunt genereren.
Stable Diffusion 3 introduceert verschillende verbeteringen en functies die het onderscheiden van zijn voorgangers en zeer competitief maken in de text-to-image space – vooral qua verbeterde tekstgeneratie en het nauwkeuriger opvolgen van prompts.
Laten we deze verbeteringen verkennen:
In dit gedeelte doorlopen we de stappen om met de Stability API te beginnen.
Stap 1: Maak je account aan. Je moet een account aanmaken voordat je de API van Stability AI kunt gebruiken. Je kunt je aanmelden met een gebruikersnaam en wachtwoord, maar nieuwe gebruikers krijgen 25 gratis credits als ze zich met hun Google-account aanmelden.
Stap 2: Claim je API-sleutel. Zodra je je account hebt aangemaakt, heb je een API-sleutel nodig. Deze is te vinden op de pagina API Keys. In de documentatie stelt Stability AI dat “alle API’s die op deze site zijn gedocumenteerd hetzelfde authenticatiemechanisme gebruiken: de API-sleutel doorgeven via de Authorization-header.”
Stap 3: Credits aanvullen. Je moet credits hebben om verzoeken naar de API te doen. Credits zijn de rekeneenheid die wordt verbruikt bij het aanroepen van de API – de hoeveelheid verschilt per model en modaliteit. Nadat je al je credits hebt gebruikt, kun je via je Billing-dashboard meer kopen voor $1 USD per 100 credits.
In deze tutorial gebruiken we Google Colab en ComfyUI om te laten zien hoe je afbeeldingen genereert met de Stable Diffusion 3 API. In de volgende sectie behandelen we de stappen om met elk hulpmiddel te beginnen.
Om met Google Colab te beginnen, moet je een Google-account aanmaken – klik op de link en volg de instructies.
Als je al een Google-account hebt, open dan een nieuw notebook en volg de onderstaande stappen.
Opmerking: De code in dit voorbeeld is afkomstig uit de SD3_API-tutorial van Stability AI.
Stap 1: Installeer de vereisten.
from io import BytesIO
import IPython
import json
import os
from PIL import Image
import requests
import time
from google.colab import output
Stap 2: Maak verbinding met de Stability API.
import getpass
# To get your API key, visit https://platform.stability.ai/account/keys
STABILITY_KEY = getpass.getpass('Enter your API Key')
Stap 3. Definieer functies
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
Stap 4. Genereer afbeeldingen.
Volgens de documentatie bevatten de Stable Image-services momenteel slechts één aanbieding die in productie is:
Laten we ze testen.
In dit voorbeeld maken we een afbeelding van een toekan in een laagland tropisch gebied.
# 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))
Dit is wat er werd gemaakt:

Afbeelding gemaakt door de auteur met Stable Diffusion 3
Laten we nu met SD3 Turbo een afbeelding maken van een auto van fruit:
#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))
Bij het uitvoeren van deze code werd de volgende afbeelding gegenereerd:

Afbeelding gemaakt door de auteur met Stable Diffusion 3 Turbo
ComfyUI is een robuuste en flexibele grafische gebruikersinterface (GUI) voor Stable Diffusion. Het heeft een grafiekgebaseerde interface en gebruikt een flowchart-achtige opzet waarmee gebruikers geavanceerde Stable Diffusion-workflows kunnen bouwen en draaien.
De eenvoudigste manier om ComfyUI op Windows te installeren is met de standalone installer op de releases-pagina. Deze installer bevat essentiële afhankelijkheden zoals PyTorch en Hugging Face Transformers, zodat je die niet apart hoeft te installeren.
Het is een compleet pakket waarmee je ComfyUI snel op Windows kunt opzetten zonder ingewikkelde configuraties.
Download, pak uit, voeg modellen toe en start!
Stap 1.1: Download de standalone-versie van ComfyUI uit deze GitHub-repository – als je op de link klikt, start de download.
Stap 1.2: Zodra je het meest recente comfyui-windows.zip-bestand hebt gedownload, pak je het uit met een tool zoals 7-Zip of WinRAR.
Stap 1.3: Er is een checkpoint-model nodig om ComfyUI te gebruiken. Je kunt een checkpoint-model downloaden van Stable Diffusion of Hugging Face . Plaats het model in de map:
ComfyUI_windows_portable\ComfyUI\models\checkpoints
Stap 1.4: Voer nu simpelweg run_nvidia_gpu.bat (aanbevolen) of run_cpu.bat uit. Hiermee zou ComfyUI automatisch in je browser moeten starten.
De opdrachtregel voert uit en genereert een URL http://127.0.0.1:8188/ die je nu in je browser kunt openen.
Zoek in de Verkenner de map die je zojuist hebt geïnstalleerd. Aangezien je Windows gebruikt, zou deze “ComfyUI_windows_portable.” moeten heten. Navigeer vanaf hier naar ComfyUI en vervolgens custom_nodes. Typ op deze locatie cmd in de adresbalk en druk op Enter.
Er opent nu een opdrachtprompt waarin je de volgende opdracht moet invoeren:
git clone https://github.com/ltdrdata/ComfyUI-Manager
Als dit klaar is, start je ComfyUI opnieuw. De nieuwe knop “Manager” zou op het zwevende paneel moeten verschijnen.
Selecteer de knop Manage en ga naar “Install Custom Nodes.” Zoek hier op “stability API.”
Zoek de node "Stability API nodes for ComfyUI" en klik op de knop Install aan de rechterkant om de installatie te starten. Hierna verschijnt een knop “Restart”. Klik op “Restart” om ComfyUI opnieuw op te starten.
Deze stap is optioneel, maar wel aan te raden. Je kunt namelijk binnen de Stability AI custom node voor elke node een Stability AI API-sleutel instellen. Zo hoef je de API-sleutel niet telkens opnieuw in te voeren in elke workflow en verklein je de kans dat je per ongeluk je API-sleutel deelt wanneer je je workflow-JSON-bestand deelt.
Ga hiervoor naar de map van de custom node:
ComfyUI_windows_portable > ComfyUI > custom_nodes > ComfyUI-SAI_API.
Maak een nieuw bestand met de naam sai_platform_key.txt. Plak je API Key in het bestand, sla het op en start ComfyUI opnieuw.
Installeer de Stable Diffusion 3 text-to-image workflow en zet deze in ComfyUI.
Je kunt nu aan de slag!
Zoals bij elk hulpmiddel is er altijd een kans dat je onderweg wat problemen tegenkomt. Dit zijn de meest voorkomende uitdagingen en stappen voor probleemoplossing voor gebruikers die issues hebben met de API of het installatieproces.
Uitdaging: Gebruikers kunnen authenticatiefouten krijgen bij toegang tot de API door een onjuiste API-sleutel of verkeerde inloggegevens.
Oplossing: Controleer de API-sleutel en zorg dat deze correct is gekopieerd en geplakt. Verifieer dat er geen extra spaties of tekens in de sleutel staan. Zorg dat de API-sleutel correct wordt geauthenticeerd door de Stable Diffusion 3-server.
Uitdaging: Gebruikers kunnen problemen ondervinden met creditbeheer, zoals onvoldoende credits of fouten bij de facturatie.
Oplossing: Controleer je creditbalans in het Stable Diffusion 3-dashboard om te zien of je voldoende credits hebt. Verifieer je facturatiegegevens en los eventuele factureringsfouten of afwijkingen op met het supportteam.
Uitdaging: Gebruikers kunnen verbindingsproblemen of netwerkonderbrekingen ervaren waardoor ze geen toegang krijgen tot de API.
Oplossing: Zorg dat je internetverbinding stabiel is en dat er geen netwerkstoringen zijn. Probeer, om het probleem te isoleren, toegang te krijgen tot de API vanaf een ander netwerk of apparaat. Neem contact op met je internetprovider als de verbindingsproblemen aanhouden.
Uitdaging: Gebruikers kunnen compatibiliteitsproblemen of afhankelijkheidsfouten tegenkomen bij het installeren of gebruiken van de vereiste tools en libraries.
Oplossing: Controleer de compatibiliteitsvereisten van de Stable Diffusion 3 API en zorg dat je compatibele versies van tools en libraries gebruikt. Werk afhankelijkheden bij of installeer ze opnieuw als ze fouten veroorzaken. Raadpleeg de documentatie en communityfora voor hulp bij probleemoplossing.
Uitdaging: Gebruikers kunnen trage responstijden of prestatieproblemen ervaren bij interactie met de API, vooral tijdens piekuren.
Oplossing: Monitor de prestaties van de API en houd responstijden bij om patronen te identificeren. Overweeg te upgraden naar een abonnement met hogere prioriteit voor betere prestaties en voorrangstoegang. Neem contact op met het supportteam als je consequent trage responstijden ervaart.
Uitdaging: Gebruikers kunnen moeite hebben de API-documentatie te begrijpen of hulp nodig hebben bij specifieke problemen.
Oplossing: Raadpleeg de documentatie van Stable Diffusion 3 voor uitleg over API-gebruik, probleemoplossing en best practices. Neem contact op met het supportteam of de communityfora als je vragen of onopgeloste problemen hebt.
Stable Diffusion 3 is een reeks generatieve AI-modellen voor tekst-naar-beeld. In dit artikel behandelden we praktische stappen om de API te gebruiken met Google Colab en ComfyUI. Je hebt nu de skills om je eigen afbeeldingen te maken; pas toe wat je hebt geleerd zodat je het niet vergeet.
Bedankt voor het lezen!
Best practices voor het effectief gebruiken van de Stable Diffusion 3 API zijn onder meer: duidelijke en specifieke prompts geven, experimenteren met verschillende parameters om het gewenste resultaat te bereiken, het creditverbruik monitoren om uitputting te voorkomen en up-to-date blijven met de nieuwste documentatie en functies.
Stable Diffusion bestaat uit een verzameling AI-modellen die zich richten op het genereren van afbeeldingen op basis van tekstuele prompts. Gebruikers geven beschrijvingen van gewenste beelden, en het model genereert bijpassende visuele weergaven op basis van deze prompts.
Stable Diffusion 3 maakt gebruik van een diffusion transformer-architectuur die lijkt op Sora, en wijkt daarmee af van eerdere versies die een diffusiemodel gebruikten zoals de meeste bestaande AI’s voor beeldgeneratie. Deze innovatie combineert de transformerarchitectuur die vaak wordt gebruikt in grote taalmodellen zoals GPT met diffusiemodellen, waardoor de sterke punten van beide benaderingen kunnen worden benut.
Zet vandaag je AI-reis voort!
Leerpad
Cursus
Cursus

blog
Adel Nehme
15 min