本文档概述了如何使用大型语言模型(LLM)和专门的图像生成模型构建生成图像的应用程序。这些应用程序使用户能够根据文本描述创建图像,为教育、创意工作和各种行业提供强大的功能。有关文本生成应用程序的信息,请参阅文本生成应用程序,有关聊天应用程序的信息,请参阅聊天应用程序。
图像生成是生成式AI的一项关键能力,它超越了文本生成。通过使用专用模型,应用程序可以将文本描述转换为视觉内容。本节将介绍主要的图像生成模型及其在应用程序中的工作原理。
资料来源:09-building-image-applications/README.md, 02-exploring-and-comparing-different-llms/README.md
DALL-E 是由 OpenAI 开发的一种生成式 AI 模型,可以根据文本描述创建图像。它可通过 Azure OpenAI Service 获得,并能根据自然语言提示生成、编辑和创建图像的变体。
DALL-E 通过两个模型的组合工作
最新版本(DALL-E 2 和 3)提供了对生成图像的更多控制,并且更好地遵守提示规范。
Midjourney 是另一个流行的图像生成模型,其工作方式与 DALL-E 类似,根据文本提示生成图像。它以其艺术品质和独特的美学而闻名。Midjourney 通过 Discord 运行,并因其创意应用而广受欢迎。
资料来源:09-building-image-applications/README.md
图像生成模型使用自回归Transformer架构。这意味着它们一次生成一个像素,并利用先前生成的像素来通知下一个像素。通过多个神经网络层,模型构建一个完整的图像,满足提示中指定的属性、对象和特征。
资料来源:09-building-image-applications/README.md
创建图像生成应用程序需要几个关键组件
python-dotenv:用于管理环境变量和 API 密钥openai:用于与 OpenAI API 交互pillow:用于 Python 中的图像处理requests:用于处理 HTTP 请求典型的图像生成应用程序遵循以下步骤
资料来源:09-building-image-applications/README.md
以下是使用 Azure OpenAI 创建图像生成应用程序的简化概述
设置身份验证和环境变量:将 API 密钥安全地存储在 .env 文件中,并在应用程序中加载它们
配置 OpenAI 客户端:
生成图像:
检索和显示图像:
图像生成的主要参数包括
prompt:要生成的图像的文本描述size:输出图像的尺寸(例如,“1024x1024”)n:要生成的图像数量temperature:控制随机性(0 = 更具确定性,1 = 更具多样性)资料来源:09-building-image-applications/README.md
创建有效的提示对于生成高质量图像至关重要。考虑以下策略
元提示为您的应用程序定义边界,并指导模型生成适当的输出。这对于教育应用程序尤其重要,以确保内容适当且相关。
元提示结构示例
You are an AI assistant helping students create educational images.
Generate images that are:
1. Age-appropriate for [age group]
2. Focused on [educational topic]
3. In a [specific style] that helps learning
元提示可以与用户提示结合使用,为图像生成模型创建完整的提示。
资料来源:09-building-image-applications/README.md
本课程包含一个名为 Edu4All 的教育初创公司示例,该公司使用图像生成来帮助学生为其作业创建视觉内容。
Edu4All 的用例包括
示例提示
“清晨阳光下埃菲尔铁塔旁边的狗”
这将生成一张可以用于关于古迹或法国文化的课堂项目的图像。
资料来源:09-building-image-applications/README.md
构建图像生成应用程序时,请牢记以下注意事项
| 考量因素 | 描述 | 实现方法 |
|---|---|---|
| 安全 | 保护 API 密钥安全 | 使用带有 python-dotenv 的环境变量 |
| 成本管理 | 图像生成会消耗 API 令牌 | 监控使用情况并实施速率限制 |
| 内容过滤 | 确保生成适当的内容 | 实施元提示和内容过滤 |
| 错误处理 | 优雅地处理 API 错误 | 使用 try/except 块进行稳健的错误处理 |
| 性能 | 考虑响应时间以获得良好的用户体验 | 优化提示长度并实施加载状态 |
| 存储 | 确定生成图像的存储位置 | 考虑临时与永久存储选项 |
由于图像生成可能资源密集且成本高昂,请实施适当的速率限制和监控
资料来源:09-building-image-applications/README.md, 13-securing-ai-applications/README.md
图像生成在众多行业都有应用
图像生成模型的灵活性使其能够通过仔细的提示工程以及针对特定应用的微调来适应特定领域。
资料来源:09-building-image-applications/README.md, 02-exploring-and-comparing-different-llms/README.md
图像生成应用程序将生成式 AI 的能力扩展到文本之外,能够根据文本描述创建视觉内容。通过其 API 利用 DALL-E 和 Midjourney 等模型,开发人员可以构建为教育、创意工作和各种行业生成图像的应用程序。
构建这些应用程序的关键组件包括
具备这些要素,开发人员就可以创建强大的应用程序,释放 AI 生成图像的创意和教育潜力。
资料来源:09-building-image-applications/README.md, README.md