使用Azure OpenAI服务生成图像:详细指南

在数字时代,人工智能和机器学习技术正在不断进步,为我们提供了许多令人惊叹的工具和应用程序。Azure OpenAI服务是微软提供的一项强大的云计算服务,可以用于生成图像、文本和更多内容。在本文中,我们将深入探讨如何使用Azure OpenAI服务生成图像,同时介绍了必要的设置和认证步骤。

步骤1:准备工作

在开始之前,我们需要安装必要的依赖项。这些依赖项将帮助我们与Azure OpenAI服务进行通信,并处理生成的图像。

! pip install openai
! pip install requests
! pip install pillow
! pip install azure-identity

除了安装依赖项外,还需要在Azure门户中创建必要的资源。你可以在Microsoft Docs中找到关于如何创建这些资源的详细指南。

一旦资源创建完毕,我们需要获取Azure OpenAI服务的端点(Endpoint)。你可以在Azure门户中的"资源管理" -> "密钥和端点"下找到端点信息。有了这个信息,我们就可以设置SDK以连接到Azure OpenAI服务。

import os
import openai

openai.api_base = '' # 在这里添加你的端点
openai.api_version = '2023-06-01-preview'

步骤2:认证

Azure OpenAI服务支持多种认证机制,包括API密钥和Azure凭据。

使用API密钥认证

要配置OpenAI SDK以使用Azure API密钥,我们需要设置api_type为azure,并将api_key设置为与你的端点关联的密钥。你可以在Azure门户的"资源管理" -> "密钥和端点"中找到这个密钥。

use_azure_active_directory = False

if not use_azure_active_directory:
    openai.api_type = 'azure'
    openai.api_key = os.environ["OPENAI_API_KEY"]

请注意,在这个示例中,我们通过在代码中设置变量来配置库以使用Azure API。但在开发过程中,考虑使用环境变量来配置,以提高安全性。

使用Microsoft Active Directory认证

现在,让我们看看如何通过Microsoft Active Directory认证来获取密钥。

from azure.identity import DefaultAzureCredential

if use_azure_active_directory:
    default_credential = DefaultAzureCredential()
    token = default_credential.get_token("https://cognitiveservices.azure.com/.default")

    openai.api_type = 'azure_ad'
    openai.api_key = token.token

需要注意的是,令牌在一段时间后会过期。为了确保每次请求都发送有效的令牌,你可以通过请求认证来刷新即将过期的令牌。下面是一个示例,展示了如何刷新令牌的过程。

步骤3:生成图像

设置和认证完成后,你现在可以使用Azure OpenAI服务生成图像,并从返回的URL中检索它们。

生成图像

首先,让我们生成图像。在这个过程中,我们需要提供一个提示(prompt),指示生成器生成什么样的图像。

generation_response = openai.Image.create(
    prompt='一只赛博朋克猴子梦见一串美味的香蕉,数字艺术',
    size='1024x1024',
    n=2
)

print(generation_response)

在上述代码中,我们通过调用Image.create方法生成了图像。生成的图像将包含在响应中。

下载并显示图像

有了生成图像的URL,我们可以使用requests库来下载图像,并使用Pillow库来打开和显示它。

import os
import requests
from PIL import Image

image_dir = os.path.join(os.curdir, 'images')
if not os.path.isdir(image_dir):
    os.mkdir(image_dir)

image_path = os.path.join(image_dir, 'generated_image.png')
image_url = generation_response["data"][0]["url"]
generated_image = requests.get(image_url).content

with open(image_path, "wb") as image_file:
    image_file.write(generated_image)

display(Image.open(image_path))

上述代码首先设置了保存图像的目录,并下载了生成的图像。然后,它使用Pillow库来打开图像并在Jupyter Notebook中显示出来。

结论

通过本文,我们深入探讨了如何使用Azure OpenAI服务生成图像。从设置和认证到生成图像和显示图像,我们详细介绍了整个过程。Azure OpenAI服务为开发者提供了一个强大的工具,可用于自动化生成图像,这在许多应用中都具有潜力。

如果你对Azure OpenAI服务的其他功能和用途感兴趣,还可以进一步研究和探索。Azure提供了丰富的机器学习和人工智能工具,可用于解决各种问题和挑战。

希望本文能够帮助你开始使用Azure OpenAI服务生成图像,同时也激发你探索更多机器学习和人工智能领域的想法。

本文由作者 王大神 原创发布于 大神网的AI博客。

转载请注明作者:王大神

原文出处:使用Azure OpenAI服务生成图像:详细指南

(0)
打赏 微信扫一扫 微信扫一扫
上一篇 2023年9月17日
下一篇 2023年9月17日

相关推荐

  • 从代码爱好者到密码破译大师:我与Ciphey的故事

    摘要:在这篇文章中,我将分享我如何从一个普通的代码爱好者,变成了一名使用Ciphey进行密码破译的大师。我会讲述我在使用Ciphey中的经验,以及它如何帮助我解决了许多看似无解的加密问题,从而节省了大量的时间和…

    2024年3月17日
    00
  • 2023年AI技术飞跃:探索最新进展与重大争议

    在2023年,人工智能(AI)行业经历了飞速的发展和深刻的变革。从技术进步到行业合作,再到引发热烈讨论的争议事件,这一年对AI的未来轨迹产生了决定性的影响。让我们深入探讨这一年中AI领域的三个重要方面:技术创新…

    2023年12月28日
    00
  • Google 地图迎来人工智能革命:更智能、更便捷的导航体验

    在这个数字时代,地图导航已经成为了我们生活中的不可或缺的一部分。而今,Google地图正通过引入人工智能技术,彻底改变着我们对导航和搜索的认知。AI技术的崭新应用,使Google地图变得更加智能、更加便捷,实现了…

    2023年10月27日
    00
  • 前苹果高管创立Humane公司,将发布无屏幕AI可穿戴设备Ai Pin

    Humane公司,由两位前苹果公司的设计和工程团队高管创立,即将发布一款引人注目的无屏幕AI可穿戴设备——Ai Pin。这个备受期待的新产品将在11月9日正式亮相,让我们一起来了解一下这个新兴品牌和他们的创新之处。 Hum…

    2023年11月7日
    00
  • 百度还有希望崛起吗?如何重新回到互联网第一梯队?

    本文探讨百度能否在错过多次风口后重新崛起并重回互联网第一梯队。通过分析百度的现状、存在的问题以及未来的发展机遇,本文为读者提供全面的视角和深入的见解。 前言 百度曾是中国互联网的领军企业之一,但近年来…

    2024年6月21日
    00
  • 提示工程:如何写好LLM的Prompt

    在现代人工智能领域,大型语言模型(LLM)如ChatGPT和GPT-4已经成为了不可或缺的工具。它们可以进行文本生成、自然语言理解、答案生成等任务,但要让它们发挥最佳效果,关键在于写好提示(Prompt)。Prompt相当于给…

    2023年12月26日
    00
  • 免费GPT API:开启人工智能文本生成新时代

    在现代科技的飞速发展中,人工智能已经成为我们生活中不可或缺的一部分。尤其是在文本生成领域,GPT(生成预训练变换器)模型已经崭露头角,成为了一种强大的文本生成工具。无论是创作诗歌、编写文章,还是生成代码…

    2023年8月21日
    00
  • 如何使用Django的管理命令在Azure上运行Python Web应用

    你是否正在开发一个使用Django框架构建的Python Web应用,并希望将它部署到Azure云上?如果是的话,你来对地方了!在本教程中,我们将向你展示如何在Azure上托管你的Python Web应用,并使用Django的管理命令来执行…

    2023年9月19日
    00
  • GPT-4.5 Turbo:人工智能时代的新引擎

    人工智能领域的发展日新月异,技术不断迭代更新,而在这个领域中,OpenAI(开放人工智能)一直是引领潮流的先锋之一。最近,关于GPT-4.5 Turbo的消息引起了广泛的关注和热议。这款新型人工智能模型的即将问世,引发…

    2024年3月13日
    00
  • Sam Altman 重返 OpenAI:解读人工智能巨头的董事会政变

    本周,OpenAI 迎来了一场轰动的董事会政变,Sam Altman 重新出任首席执行官的消息震撼了整个人工智能领域。在此之前,他曾因一系列不明原因的事件被解雇,然而,现在他再度回到了 OpenAI 的掌舵位置。这一事件引起…

    2023年12月2日
    00