Maison  >  Article  >  développement back-end  >  Utilisation de l'API Web pour FLUX [pro] : le dernier modèle d'IA de génération d'images par l'équipe originale de Stable Diffusion

Utilisation de l'API Web pour FLUX [pro] : le dernier modèle d'IA de génération d'images par l'équipe originale de Stable Diffusion

Mary-Kate Olsen
Mary-Kate Olsenoriginal
2024-10-20 12:38:02456parcourir

Introduction

Auparavant, j'ai écrit un article intitulé « Exécuter le modèle d'IA de génération d'images FLUX.1 ([dev]/[schnell]) par les développeurs originaux de Stable Diffusion sur un MacBook (M2)." Il a présenté le modèle de génération d'images FLUX.1 de Black Forest Labs, fondé par les créateurs de Stable Diffusion.

Maintenant, deux mois plus tard, FLUX 1.1 [pro] (nom de code Blueberry) a été publié, ainsi que l'accès public à son API Web, bien qu'il soit toujours en version bêta.

Aujourd'hui, nous publions FLUX1.1 [pro], notre modèle le plus avancé et le plus efficace à ce jour, parallèlement à la disponibilité générale de l'API bêta BFL. Cette version marque une avancée significative dans notre mission visant à doter les créateurs, les développeurs et les entreprises d'une technologie générative de pointe et évolutive.

Référence : Annonce de FLUX1.1 [pro] et de l'API BFL - Black Forest Labs

Dans cet article, je vais vous montrer comment utiliser l'API Web FLUX 1.1 [pro].

Tous les exemples de code sont écrits en Python.

Créer un compte et une clé API

Commencez par créer un compte et connectez-vous sur la page API sous l'option S'inscrire.

Les crédits sont au prix de 0,01 $ chacun et j'ai reçu 50 crédits lors de l'inscription (cela peut varier).

Sur la base de la page Tarifs, les coûts du modèle sont les suivants :

  • FLUX 1.1 [pro] : 0,04 $ par image
  • FLUX.1 [pro] : 0,05 $ par image
  • FLUX.1 [dev] : 0,025 $ par image

Une fois connecté, générez une clé API en sélectionnant Ajouter une clé et en saisissant le nom de votre choix.

Using the Web API for FLUX  [pro]: The Latest Image Generation AI Model by the Original Team of Stable Diffusion

Votre clé apparaîtra comme indiqué ci-dessous.

Using the Web API for FLUX  [pro]: The Latest Image Generation AI Model by the Original Team of Stable Diffusion

Configuration de l'environnement

J'utilise macOS 14 Sonoma comme système d'exploitation.

La version Python est :

$ python --version
Python 3.12.2

Pour exécuter l'exemple de code, j'ai installé les requêtes :

$ pip install requests

J'ai confirmé la version installée :

$ pip list | grep -e requests 
requests           2.31.0

Pour éviter le codage en dur, j'ai enregistré la clé API en tant que variable d'environnement en éditant le fichier zshrc.

$ open ~/.zshrc

J'ai nommé la variable d'environnement BFL_API_KEY:

export BFL_API_KEY=<Your API Key Here>

Exemple de code

Vous trouverez ci-dessous l'exemple de code du guide de démarrage, avec quelques commentaires supplémentaires. Idéalement, il devrait gérer les erreurs en utilisant le statut, mais je l'ai laissé inchangé par souci de simplicité.

import os
import requests
import time

# Request
request = requests.post(
    'https://api.bfl.ml/v1/flux-pro-1.1',
    headers={
        'accept': 'application/json',
        'x-key': os.environ.get("BFL_API_KEY"),
        'Content-Type': 'application/json',
    },
    json={
        'prompt': 'A cat on its back legs running like a human is holding a big silver fish with its arms. The cat is running away from the shop owner and has a panicked look on his face. The scene is situated in a crowded market.',
        'width': 1024,
        'height': 768,
    },
).json()
print(request)
request_id = request["id"]

# Wait for completion
while True:
    time.sleep(0.5)
    result = requests.get(
        'https://api.bfl.ml/v1/get_result',
        headers={
            'accept': 'application/json',
            'x-key': os.environ.get("BFL_API_KEY"),
        },
        params={
            'id': request_id,
        },
    ).json()
    if result["status"] == "Ready":
        print(f"Result: {result['result']['sample']}")
        break
    else:
        print(f"Status: {result['status']}")

Dans cet exemple, l'invite est :

Un chat sur ses pattes arrière courant comme un humain tient un gros poisson argenté avec ses bras. Le chat s'enfuit du commerçant et a un air paniqué sur le visage. La scène se situe dans un marché bondé.

Le format du résultat final ressemble à ceci. Le temps de réponse était plus rapide que celui des autres API que j'ai testées.

$ python --version
Python 3.12.2

Le exemple contient l'URL de l'image générée, qui était hébergée sur bflapistorage.blob.core.windows.net lorsque je l'ai testé.

Voici l'image générée :

Using the Web API for FLUX  [pro]: The Latest Image Generation AI Model by the Original Team of Stable Diffusion

Le résultat correspond étroitement à l'invite, capturant le sentiment d'urgence.

Expérimenter avec des invites alternatives

J'ai essayé différentes invites pour générer des images variées.

Héroïne Moe japonaise

Invite : "Héroïne moe japonaise", en utilisant le style anime.

$ pip install requests

Using the Web API for FLUX  [pro]: The Latest Image Generation AI Model by the Original Team of Stable Diffusion

Bonbons d'anime japonais populaire

Invite : "Bonbons qui apparaissent dans les dessins animés japonais populaires", en utilisant le style anime.

$ pip list | grep -e requests 
requests           2.31.0

Using the Web API for FLUX  [pro]: The Latest Image Generation AI Model by the Original Team of Stable Diffusion

Lycéen masculin en voyage scolaire

Invite : "Lycéen en voyage scolaire", en utilisant le style anime.

$ open ~/.zshrc

Using the Web API for FLUX  [pro]: The Latest Image Generation AI Model by the Original Team of Stable Diffusion

Une princesse jouant de la guitare

Invite : "Une princesse jouant de la guitare", en utilisant un style d'art fantastique.

export BFL_API_KEY=<Your API Key Here>

Using the Web API for FLUX  [pro]: The Latest Image Generation AI Model by the Original Team of Stable Diffusion

Une jolie fée sur un ordinateur portable blanc

Invite : "Une jolie fée sur un ordinateur portable blanc", en utilisant un style photographique.

import os
import requests
import time

# Request
request = requests.post(
    'https://api.bfl.ml/v1/flux-pro-1.1',
    headers={
        'accept': 'application/json',
        'x-key': os.environ.get("BFL_API_KEY"),
        'Content-Type': 'application/json',
    },
    json={
        'prompt': 'A cat on its back legs running like a human is holding a big silver fish with its arms. The cat is running away from the shop owner and has a panicked look on his face. The scene is situated in a crowded market.',
        'width': 1024,
        'height': 768,
    },
).json()
print(request)
request_id = request["id"]

# Wait for completion
while True:
    time.sleep(0.5)
    result = requests.get(
        'https://api.bfl.ml/v1/get_result',
        headers={
            'accept': 'application/json',
            'x-key': os.environ.get("BFL_API_KEY"),
        },
        params={
            'id': request_id,
        },
    ).json()
    if result["status"] == "Ready":
        print(f"Result: {result['result']['sample']}")
        break
    else:
        print(f"Status: {result['status']}")

Using the Web API for FLUX  [pro]: The Latest Image Generation AI Model by the Original Team of Stable Diffusion

Femme japonaise de 28 ans aux cheveux noirs coupés

Invite : "Jolie femme japonaise de 28 ans aux cheveux noirs coupés", en utilisant le style photographique.

$ python --version
Python 3.12.2

Using the Web API for FLUX  [pro]: The Latest Image Generation AI Model by the Original Team of Stable Diffusion

Le centre-ville de Hong Kong dans les années 1980

Invite : "Le centre-ville de Hong Kong dans les années 1980", en utilisant le style photographique.

$ pip install requests

Using the Web API for FLUX  [pro]: The Latest Image Generation AI Model by the Original Team of Stable Diffusion

Shinjuku Kabukicho en 2020

Invite : "Shinjuku Kabukicho en 2020", en utilisant le style photographique.

$ pip list | grep -e requests 
requests           2.31.0

Using the Web API for FLUX  [pro]: The Latest Image Generation AI Model by the Original Team of Stable Diffusion

Toutes les images générées étaient d'une qualité exceptionnelle.

Après avoir généré autant d'images IA de haute qualité, la réalité semble presque surréaliste.

Conclusion

Black Forest Labs continue d'innover et d'améliorer ses modèles d'IA.

J'attends avec impatience la future version des capacités de génération vidéo.

Article japonais original

Diffusion stable par AI FLUX 1.1 [pro] avec API Web像を生成してみた

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn