使用 Web API for FLUX [pro]:Stable Diffusion 原创团队最新的图像生成 AI 模型

Mary-Kate Olsen
发布: 2024-10-20 12:38:02
原创
454 人浏览过

介绍

之前,我写过一篇题为“由 Stable Diffusion 的原始开发人员在 MacBook (M2) 上运行 FLUX.1 图像 ([dev]/[schnell]) 生成 AI 模型”的文章。它演示了 Black Forest Labs 的 FLUX.1 图像生成模型,该模型由 Stable Diffusion 的创建者创建。

现在,两个月后,FLUX 1.1 [pro](代号 Blueberry)已经发布,并且公开访问其 Web API,尽管它仍处于测试阶段。

今天,我们发布了 FLUX1.1 [pro],这是我们迄今为止最先进、最高效的模型,同时发布了 beta BFL API。此版本标志着我们在为创作者、开发者和企业提供可扩展、最先进的生成技术的使命中向前迈出了重要一步。

参考:宣布推出 FLUX1.1 [pro] 和 BFL API - Black Forest Labs

在这篇文章中,我将演示如何使用 FLUX 1.1 [pro] Web API。

所有代码示例均使用Python编写。

创建帐户和 API 密钥

首先注册一个帐户并登录注册选项下的API页面。

每个积分的价格为 0.01 美元,我在注册时收到了 50 个积分(可能会有所不同)。

根据定价页面,模型成本如下:

  • FLUX 1.1 [专业版]:每张图像 0.04 美元
  • FLUX.1 [专业版]:每张图片 0.05 美元
  • FLUX.1 [开发]:每张图像 0.025 美元

登录后,选择添加密钥并输入您选择的名称来生成 API 密钥。

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

您的密钥将如下所示。

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

环境设置

我使用 macOS 14 Sonoma 作为我的操作系统。

Python 版本是:

$ python --version
Python 3.12.2
登录后复制
登录后复制
登录后复制

为了运行示例代码,我安装了请求:

$ pip install requests
登录后复制
登录后复制
登录后复制

我确认安装的版本:

$ pip list | grep -e requests 
requests           2.31.0
登录后复制
登录后复制
登录后复制

为了避免硬编码,我通过编辑 zshrc 文件将 API 密钥保存为环境变量。

$ open ~/.zshrc
登录后复制
登录后复制

我将环境变量命名为BFL_API_KEY:

export BFL_API_KEY=<Your API Key Here>
登录后复制
登录后复制

示例代码

下面是入门中的示例代码,以及一些附加注释。理想情况下,它应该使用状态来处理错误,但为了简单起见,我将其保留不变。

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']}")
登录后复制
登录后复制

本例中,提示符为:

一只像人一样用后腿奔跑的猫,手臂上抱着一条银色的大鱼。猫正从店主身边逃跑,脸上露出惊慌的表情。场景位于拥挤的市场。

最终的结果格式如下所示。与我测试过的其他 API 相比,响应时间更快。

$ python --version
Python 3.12.2
登录后复制
登录后复制
登录后复制

样本包含生成图像的URL,当我测试它时,该图像托管在bflapistorage.blob.core.windows.net上。

这是生成的图像:

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

结果与提示非常吻合,抓住了紧迫感。

尝试替代提示

我尝试了不同的提示来生成不同的图像。

日本萌女主角

提示:“日本萌女主角”,使用动漫风格

$ pip install requests
登录后复制
登录后复制
登录后复制

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

日本热门动漫中的甜点

提示:“日本流行动漫中出现的糖果”,使用动漫风格

$ 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

修学旅行的男高中生

提示:“修学旅行的男高中生”,使用动漫风格

$ open ~/.zshrc
登录后复制
登录后复制

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

弹吉他的公主

提示:“弹吉他的公主”,使用奇幻艺术风格

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

白色笔记本电脑上的可爱仙女

提示:“白色笔记本电脑上的可爱仙女”,使用摄影风格

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

28 岁的日本女性,黑色短发

提示:“28岁日本黑短发美女”,使用摄影风格

$ 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

20世纪80年代的香港市中心

提示:“1980年代的香港市中心”,使用摄影风格

$ pip install requests
登录后复制
登录后复制
登录后复制

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

2020年的新宿歌舞伎町

提示:“2020年新宿歌舞伎町”,使用摄影风格

$ 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

所有生成的图像都具有卓越的质量。

在生成如此多高质量的 AI 图像后,现实几乎感觉超现实。

结论

黑森林实验室不断创新和增强其人工智能模型。

我很期待未来发布的视频生成功能。

日本原创文章

稳定扩散のオリジナル开発阵による肖像生成AIモデル最新版FLUX 1.1 [pro]のWeb APIを呼んでいくつかの肖像を生成してみた

以上是使用 Web API for FLUX [pro]:Stable Diffusion 原创团队最新的图像生成 AI 模型的详细内容。更多信息请关注PHP中文网其他相关文章!

来源:dev.to
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
作者最新文章
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责声明 Sitemap
PHP中文网:公益在线PHP培训,帮助PHP学习者快速成长!