在浏览器/Python中使用 Azure OpenAI 生成图像,图像生成 API 根据文本提示创建图像。
关注TechLead,分享AI全维度知识。作者拥有10+年互联网服务架构、AI产品研发经验、团队管理经验,同济本复旦硕,复旦机器人智能实验室成员,阿里云认证的资深架构师,项目管理专业人士,上亿营收AI产品研发负责人
环境准备
- [DALL-E 3]
- Azure 订阅。 免费创建一个。
- 已在所需的 Azure 订阅中授予对 DALL-E 的访问权限。
- 在 SwedenCentral 区域创建的 Azure OpenAI 资源。
- 然后,需要使用 Azure 资源部署 dalle3 模型。
浏览器使用
浏览到 Azure OpenAI Studio,然后使用与 Azure OpenAI 资源关联的凭据登录。 在登录过程中或登录之后,选择适当的目录、Azure 订阅和 Azure OpenAI 资源。
- [DALL-E 3]
在 Azure OpenAI Studio 登陆页中,选择“DALL·E playground(预览版)”,以使用图像生成 API。 选择页面顶部附近的“设置”,并确认“部署”下拉列表选择了 DALL-E 3 部署。
通过 DALL·E playground(预览版)开始探索使用无代码方法的 Azure OpenAI 功能。 在文本框中输入图像提示,然后选择“生成”。 AI 生成的图像准备就绪后,它将显示在页面上。
在 DALL·E playground(预览版)中,还可以查看根据设置预填充的 Python 和 cURL 代码示例。 选择页面顶部附近的“查看代码”。 可以使用此代码编写完成相同任务的应用程序。
Python使用API
检索密钥和终结点
若要成功调用 Azure OpenAI API,需要有关 Azure OpenAI 资源的以下信息:
变量 名称 值 终结点 api_base 终结点值位于 Azure 门户中资源的“密钥和终结点”下。 也可在“Azure OpenAI Studio”>“操场”>“代码视图”中找到该值。 示例终结点为:https://docs-test-001.openai.azure.com/。 键 api_key 密钥值也位于 Azure 门户中资源的“密钥和终结点”下。 Azure 为资源生成两个密钥。 可以使用其中任意一个值。 在 Azure 门户中转到你的资源。 在导航窗格中,选择“资源管理”下的“密钥和终结点”。 复制“终结点”值和访问密钥值。 可以使用 KEY 1 或 KEY 2 值。 始终准备好两个密钥可以安全地轮换和重新生成密钥,而不会导致服务中断。
为密钥和终结点创建和分配持久环境变量。
环境变量
为密钥和终结点创建和分配持久环境变量。
- [命令行]
- [PowerShell]
- [Bash]
setx AZURE_OPENAI_KEY "REPLACE_WITH_YOUR_KEY_VALUE_HERE"
setx AZURE_OPENAI_ENDPOINT "REPLACE_WITH_YOUR_ENDPOINT_HERE"
[System.Environment]::SetEnvironmentVariable('AZURE_OPENAI_KEY', 'REPLACE_WITH_YOUR_KEY_VALUE_HERE', 'User')
[System.Environment]::SetEnvironmentVariable('AZURE_OPENAI_ENDPOINT', 'REPLACE_WITH_YOUR_ENDPOINT_HERE', 'User')
echo export AZURE_OPENAI_KEY="REPLACE_WITH_YOUR_KEY_VALUE_HERE" >> /etc/environment && source /etc/environment
echo export AZURE_OPENAI_ENDPOINT="REPLACE_WITH_YOUR_ENDPOINT_HERE" >> /etc/environment && source /etc/environment
创建新的 Python 应用程序
打开命令提示符并浏览到你的项目文件夹。 创建新的 python 文件 quickstart.py。
安装 Python SDK
使用以下命令安装 OpenAI Python SDK:
- [DALL-E 3]
pip install openai
同时安装以下库:
pip install requests pip install pillow
使用 DALL-E 生成图像
在首选编辑器或 IDE 中打开 _quickstart.py。
将 quickstart.py 的内容替换为以下代码。
- [DALL-E 3]
from openai import AzureOpenAI import os import requests from PIL import Image import json client = AzureOpenAI( api_version="2023-12-01-preview", api_key=os.environ["AZURE_OPENAI_API_KEY"], azure_endpoint=os.environ['AZURE_OPENAI_ENDPOINT'] ) result = client.images.generate( model="dalle3", # the name of your DALL-E 3 deployment prompt="a close-up of a bear walking throughthe forest", n=1 ) json_response = json.loads(result.model_dump_json()) # Set the directory for the stored image image_dir = os.path.join(os.curdir, 'images') # If the directory doesn't exist, create it if not os.path.isdir(image_dir): os.mkdir(image_dir) # Initialize the image path (note the filetype should be png) image_path = os.path.join(image_dir, 'generated_image.png') # Retrieve the generated image image_url = json_response["data"][0]["url"] # extract image URL from response generated_image = requests.get(image_url).content # download the image with open(image_path, "wb") as image_file: image_file.write(generated_image) # Display the image in the default image viewer image = Image.open(image_path) image.show()
- 在相应的字段中输入终结点 URL 和密钥。
- 将 prompt 的值更改为首选文本。
- 将值 model 更改为已部署的 DALL-E 3 模型的名称。
使用 python 命令运行应用程序:
python quickstart.py
片刻之后即可获得响应。
输出
Azure OpenAI 将输出映像存储在指定目录中的 generated_image.png 文件中。 脚本还将在默认图像查看器中显示该图像。
图像生成 API 附带内容审核筛选器。 如果服务将你的提示识别为有害内容,则不会生成图像。
关注TechLead,分享AI全维度知识。作者拥有10+年互联网服务架构、AI产品研发经验、团队管理经验,同济本复旦硕,复旦机器人智能实验室成员,阿里云认证的资深架构师,项目管理专业人士,上亿营收AI产品研发负责人
- [DALL-E 3]
- [DALL-E 3]
- [DALL-E 3]
猜你喜欢
- 2小时前OBD汽车
- 2小时前Azure机器学习 - 使用与Azure集成的Visual Studio Code实战教程
- 2小时前Python爬虫淘宝手机数据可视化分析大屏全屏系统
- 2小时前HTML5中form表单防止重复提交的两种方法
- 2小时前vue基于Spring Boot的中医在线学习课程购买服务管理系统
- 2小时前解决Python ImportError: No module named ‘distutils.util‘错误
- 2小时前可视化 | 教你用Python实现热力图(一)
- 2小时前Python 模块下
- 33分钟前耋耄怎么读(耋耄怎么读音读出来)
- 18分钟前汽车仪表盘红色感叹号(汽车仪表盘红色感叹号报警)
网友评论
- 搜索
- 最新文章
- 热门文章