使用亚马逊云科技Amazon SageMaker,为营销活动制作广告素材
广告公司可以使用生成式人工智能和文字转图像根基模型,制作创新的广告素材和内容。在本篇文案中,将演示如何使用亚马逊云科技Amazon SageMaker从现有的基本图像生成新图像,这是一项完全托管式服务,用于大规模构建、训练和部署机器学习模型。采用此解决方案,企业无论规模如何,都可以比以往更快地制作新的广告素材,而且大幅降低成本。这样,便能够以低成本和高速度,为企业制作新的定制广告素材内容。
解决方案概览
想象这样一个场景:一家全球汽车公司需要为其即将发布的新车型制作新的营销材料,为此聘请了一家广告公司,该公司以向拥有强大品牌资产的客户提供广告解决方案而闻名。这家汽车制造商在寻找低成本的广告素材,以便在保持汽车制造商品牌形象的同时,使用不同的位置、颜色和视角来展示该车型。凭借先进技术的强大功能,广告公司可以在其安全的亚马逊云科技环境中,使用生成式人工智能模型为客户提供支持。
该解决方案是使用生成式人工智能以及Amazon SageMaker中的文字转图像模型开发的。SageMaker是一项完全托管式机器学习(ML)服务,可针对任何使用场景,使用完全托管的基础设施、工具和工作流,轻松地构建、训练和部署机器学习模型。Stable Diffusion是Stability AI推出的文本到图像根基模型,用于支持图像生成流程。Diffusers是预先训练的模型,通过Stable Diffusion使用现有图像,根据提示生成新图像。将Stable Diffusion与ControlNet等Diffusers结合使用,可以利用现有的品牌特定内容开发出炫目的版本。在亚马逊云科技中使用Amazon SageMaker开发解决方案的主要好处是:
-
私密性——将数据存储在Amazon Simple Storage Service(Amazon S3)中并使用SageMaker托管模型,这样就可以遵循亚马逊云科技账户中的安全最佳实践,同时不对外公开资产。
-
可扩展性——将Stable Diffusion模型部署作为SageMaker端点时,允许配置实例大小和实例数量,从而实现可扩展性。SageMaker端点还具备自动扩缩功能和高可用性。
-
灵活性——在创建和部署端点时,可以通过SageMaker灵活选择GPU实例类型。此外,在业务需求发生变化时,可以毫不费力地更改SageMaker端点后面的实例。亚马逊云科技还开发了硬件和芯片,为生成式人工智能使用AWS Inferentia2,以最低的成本实现高性能的推理。
-
快速创新——生成式人工智能是一个快速发展的领域,采用全新方法,而且还在不断开发和发布新模型。Amazon SageMaker JumpStart定期推出新模型和根基模型。
-
端到端集成——利用亚马逊云科技,能够将创作流程与任何亚马逊云科技服务集成,并开发端到端的流程,通过AWS Identity and Access Management(IAM)进行精细的访问控制,通过Amazon Simple Notification Service(Amazon SNS)发送通知,以及使用事件驱动型计算服务AWS Lambda进行后处理。
-
分发——生成新素材后,使用亚马逊云科技的Amazon CloudFront,可以通过多个区域中的全球渠道分发内容。
在此篇文案中,使用GitHub为示例,该示例使用Amazon SageMaker Studio和根基模型(Stable Diffusion)、提示、计算机视觉技术和SageMaker端点,从现有图像生成新图像。下图展示了该解决方案的架构。
该工作流包含以下步骤:
-
将现有内容(图片、品牌风格等)安全地存储在S3存储桶中。
-
在SageMaker Studio笔记本中,使用计算机视觉技术,将原始图像数据转换为图像,这将保留产品(汽车模型)的形状,去除颜色和背景,并生成单色的中间图像。
-
中间图像用作Stable Diffusion与ControlNet的控制图像。
-
在基于GPU的适宜实例大小上,从SageMaker Jumpstart部署SageMaker端点和Stable Diffusion文本转图像根基模型,并部署ControlNet。
-
使用描述新背景和汽车颜色的提示以及单色中间图像来调用SageMaker端点,从而生成新图像。
-
新图像在生成后存储在S3存储桶中。
在SageMaker端点上部署ControlNet
要将模型部署到SageMaker端点,必须为每个单独的技术模型构件创建一个压缩文件,并创建Stable Diffusion权重、推理脚本和NVIDIA Triton配置文件。
为了创建模型管道,定义一个inference.py脚本,SageMaker实时端点将使用该脚本,来加载和托管Stable Diffusion与ControlNet tar.gz文件。
从模型URI,使用所需的实例大小(GPU类型)部署SageMaker端点。
生成新图像
现在,端点已部署在SageMaker端点上,我们可以传入提示和要用作基准的原始图像。
为了定义提示,创建正向提示p_p,这是希望在新图像中出现的内容;还创建了负向提示n_p,这是希望在新图像中避免出现的内容。
最后,使用提示和源图像调用端点,以此来生成新图像。
不同的ControlNet技术
综上所述,比较不同的ControlNet技术及其在所生成图像上的效果。通过以下原始图像,使用Amazon SageMaker中的Stable Diffusion和ControlNet生成新内容。
下表显示了技术输出如何描述在原始图像中需要强调的内容。
清理
使用生成式人工智能生成新的广告素材后,清理所有不再使用的资源。删除Amazon S3中的数据并停止任何SageMaker Studio笔记本实例,以免继续产生任何费用。如果您使用SageMaker JumpStart将Stable Diffusion部署为SageMaker实时端点,请通过SageMaker控制台或SageMaker Studio删除该端点。
总结
使用SageMaker上的根基模型,从存储在Amazon S3中的现有图像创建新的内容图像。借助这些技术,营销、广告和其他创意机构都能够使用生成式人工智能工具,增强其广告创意流程。
相关文章:

使用亚马逊云科技Amazon SageMaker,为营销活动制作广告素材
广告公司可以使用生成式人工智能和文字转图像根基模型,制作创新的广告素材和内容。在本篇文案中,将演示如何使用亚马逊云科技Amazon SageMaker从现有的基本图像生成新图像,这是一项完全托管式服务,用于大规模构建、训练和部署机器…...

conda环境安装opencv带cuda版本
主要是cmake编译选项需要修改 以下两个选项按照自己情况修改 -D OPENCV_EXTRA_MODULES_PATH../opencv_contrib/modules \ -D CUDA_TOOLKIT_ROOT_DIR/usr/local/cuda-12.2 \ 其中/home/lixin/anaconda3/envs/stereo 改成你自己的conda环境 cmake -D CMAKE_BUILD_TYPER…...
R语言中的数据结构----矩阵
目录 (1)创建矩阵 (2) 线性代数运算 (3)矩阵索引 (4)矩阵元素的筛选 (5)增加或删除矩阵的行或列 (6)apply()函数 (…...

Llama-2 推理和微调的硬件要求总结:RTX 3080 就可以微调最小模型
大语言模型微调是指对已经预训练的大型语言模型(例如Llama-2,Falcon等)进行额外的训练,以使其适应特定任务或领域的需求。微调通常需要大量的计算资源,但是通过量化和Lora等方法,我们也可以在消费级的GPU上…...

C++多线程的用法(包含线程池小项目)
一些小tips: 编译命令如下: g 7.thread_pool.cpp -lpthread 查看运行时间: time ./a.out 获得本进程的进程id: this_thread::get_id() 需要引入的库函数有: #include<thread> // 引入线程库 #include<mutex> //…...

react ant ice3 实现点击一级菜单自动打开它下面最深的第一个子菜单
1.问题 默认的如果没有你的菜单结构是这样的: [{children: [{name: "通用配置"parentId: "1744857774620672"path: "basic"}],name: "系统管理"parentId: "-1"path: "system"} ]可以看到每层菜单的p…...

关于 Qt串口不同电脑出现不同串口号打开失败 的解决方法
若该文为原创文章,转载请注明原文出处 本文章博客地址:https://hpzwl.blog.csdn.net/article/details/132842297 红胖子(红模仿)的博文大全:开发技术集合(包含Qt实用技术、树莓派、三维、OpenCV、OpenGL、ffmpeg、OSG、单片机、软…...

可观测性在灰度发布中的应用
前言 随着云计算的发展、云原生时代的来临,企业数字化转型进程不断深入,应用开发也越来越多地基于微服务化模式,快速迭代的能力使得应用开发更高效、更灵活。同时,也不得不面临应用版本快速升级所带来的的巨大挑战。 传统的发布方…...

vscode开发油猴插件环境配置指南
文章目录 一、环境配置1.1油猴插件开始编写代码1.2油猴插件配置1.2.1浏览器插件权限1.2.2插件自身权限 2. 油猴脚本API学习2.1 头文件2.2 油猴API 一、环境配置 1.1油猴插件开始编写代码 在vscode 中写入如下代码‘ // UserScript // name cds_test // namespace …...

网站不收录没排名降权怎么处理-紧急措施可恢复网站
网站降权对于SEO人员来说是非常致命的打击,因为网站一旦被搜索引擎降权,排名会严重地下降,网站的流量也会大幅下降,直接影响到收益。而且处理不好的话会导致恢复的时间周期无限拉长,所以网站被降权后我们要第一时间采取…...

C++vector模拟实现
vector模拟实现 1.构造函数2.拷贝构造3.析构赋值运算符重载4.iterator5.modifiers5.1push_back5.2pop_back5.3empty5.4insert5.5erase5.6swap 6.Capacity6.1size6.2capacity6.3reserve6.4resize6.5empty 7.Element access7.1operator[]7.2at 8.在谈reserve vector官方库实现的是…...

《DATASET DISTILLATION》
这篇文章提出了数据浓缩的办法,在前面已有的知识浓缩(压缩模型)的经验上,提出了不压缩模型,转而压缩数据集的办法,在压缩数据集上训练模型得到的效果尽可能地接近原始数据集的效果。 摘要 模型蒸馏的目的是…...
GDPU 数据结构 天码行空1
1. 病历信息管理 实现病历查询功能。具体要求如下: 定义一个结构体描述病人病历信息(病历号,姓名,症状);完成功能如下: 输入功能:输入5个病人的信息; 查询功能:输入姓名,在5个病历中进行查找,如果找到则显示该人的信息,…...

【C++】红黑树的模拟实现
🌇个人主页:平凡的小苏 📚学习格言:命运给你一个低的起点,是想看你精彩的翻盘,而不是让你自甘堕落,脚下的路虽然难走,但我还能走,比起向阳而生,我更想尝试逆风…...

【多线程】Thread 类 详解
Thread 类 详解 一. 创建线程1. 继承 Thread 类2. 实现 Runnable 接口3. 其他变形4. 多线程的优势-增加运行速度 二. Thread 类1. 构造方法2. 常见属性3. 启动线程-start()4. 中断线程-interrupt()5. 线程等待-join()6. 线程休眠-sleep()7. 获取当前线程引用 三. 线程的状态1. …...

LINUX 网络管理
目录 一、NetworkManager的特点 二、配置网络 1、使用ip命令临时配置 1)查看网卡在网络层的配置信息 2)查看网卡在数据链路层的配置信息 3)添加或者删除临时的网卡 4)禁用和启动指定网卡 2、修改配置文件 3、nmcli命令行…...

refresh rate
1920 x 1080 显卡刷新率 60...
使用 NGINX Unit 实施应用隔离
原文作者:Artem Konev - Senior Technical Writer 原文链接:使用 NGINX Unit 实施应用隔离 转载来源:NGINX 中文官网 NGINX 唯一中文官方社区 ,尽在 nginx.org.cn NGINX Unit 特性集的最新动态之一是支持应用隔离,该特…...

2023/09/12 qtc++
实现一个图形类(Shape) ,包含受保护成员属性:周长、面积, 公共成员函数:特殊成员函数书写 定义一个圆形类(Circle) ,继承自图形类,包含私有属性:半径 公共成员函数:特殊成员函数…...

全科医学科常用评估量表汇总,建议收藏!
根据全科医学科医生的量表使用情况,笔者整理了10个常用的全科医学科量表,可在线评测直接出结果,可转发使用,可生成二维码使用,可创建项目进行数据管理,有需要的小伙伴赶紧收藏! 日常生活能力量表…...

Qt/C++开发监控GB28181系统/取流协议/同时支持udp/tcp被动/tcp主动
一、前言说明 在2011版本的gb28181协议中,拉取视频流只要求udp方式,从2016开始要求新增支持tcp被动和tcp主动两种方式,udp理论上会丢包的,所以实际使用过程可能会出现画面花屏的情况,而tcp肯定不丢包,起码…...

微信小程序 - 手机震动
一、界面 <button type"primary" bindtap"shortVibrate">短震动</button> <button type"primary" bindtap"longVibrate">长震动</button> 二、js逻辑代码 注:文档 https://developers.weixin.qq…...

剑指offer20_链表中环的入口节点
链表中环的入口节点 给定一个链表,若其中包含环,则输出环的入口节点。 若其中不包含环,则输出null。 数据范围 节点 val 值取值范围 [ 1 , 1000 ] [1,1000] [1,1000]。 节点 val 值各不相同。 链表长度 [ 0 , 500 ] [0,500] [0,500]。 …...

CocosCreator 之 JavaScript/TypeScript和Java的相互交互
引擎版本: 3.8.1 语言: JavaScript/TypeScript、C、Java 环境:Window 参考:Java原生反射机制 您好,我是鹤九日! 回顾 在上篇文章中:CocosCreator Android项目接入UnityAds 广告SDK。 我们简单讲…...
AspectJ 在 Android 中的完整使用指南
一、环境配置(Gradle 7.0 适配) 1. 项目级 build.gradle // 注意:沪江插件已停更,推荐官方兼容方案 buildscript {dependencies {classpath org.aspectj:aspectjtools:1.9.9.1 // AspectJ 工具} } 2. 模块级 build.gradle plu…...

AI+无人机如何守护濒危物种?YOLOv8实现95%精准识别
【导读】 野生动物监测在理解和保护生态系统中发挥着至关重要的作用。然而,传统的野生动物观察方法往往耗时耗力、成本高昂且范围有限。无人机的出现为野生动物监测提供了有前景的替代方案,能够实现大范围覆盖并远程采集数据。尽管具备这些优势…...
作为测试我们应该关注redis哪些方面
1、功能测试 数据结构操作:验证字符串、列表、哈希、集合和有序的基本操作是否正确 持久化:测试aof和aof持久化机制,确保数据在开启后正确恢复。 事务:检查事务的原子性和回滚机制。 发布订阅:确保消息正确传递。 2、性…...
【LeetCode】3309. 连接二进制表示可形成的最大数值(递归|回溯|位运算)
LeetCode 3309. 连接二进制表示可形成的最大数值(中等) 题目描述解题思路Java代码 题目描述 题目链接:LeetCode 3309. 连接二进制表示可形成的最大数值(中等) 给你一个长度为 3 的整数数组 nums。 现以某种顺序 连接…...

c++第七天 继承与派生2
这一篇文章主要内容是 派生类构造函数与析构函数 在派生类中重写基类成员 以及多继承 第一部分:派生类构造函数与析构函数 当创建一个派生类对象时,基类成员是如何初始化的? 1.当派生类对象创建的时候,基类成员的初始化顺序 …...
Vue 模板语句的数据来源
🧩 Vue 模板语句的数据来源:全方位解析 Vue 模板(<template> 部分)中的表达式、指令绑定(如 v-bind, v-on)和插值({{ }})都在一个特定的作用域内求值。这个作用域由当前 组件…...