亚马逊云科技人工智能内容审核服务:大大降低生成不安全内容的风险

生成式人工智能技术发展日新月异,现在已经能够根据文本输入生成文本和图像。Stable Diffusion是一种文本转图像模型,可以创建栩栩如生的图像应用。通过Amazon SageMaker JumpStart,使用Stable Diffusion模型轻松地从文本生成图像。

 尽管生成式人工智能解决方案功能强大,应用广泛,但它们也很容易受到操纵和滥用。用户在使用它们生成图片时,应实施严格的审核程序,高度重视内容审核,以便保护其用户、平台和品牌,在创造安全和积极的用户体验的同时,确保平台和品牌的声誉不会受损。

 此篇内容我们将探讨如何使用亚马逊云科技人工智能服务Amazon Rekognition和Amazon Comprehend以及其他技术,近乎实时地有效审核Stable Diffusion模型生成的内容。

解决方案概览

 Amazon Rekognition和Amazon Comprehend是托管式人工智能服务,它们通过API接口提供预训练且可自定义的机器学习模型,无需机器学习(ML)专业知识。Amazon Rekognition Content Moderation可自动完成图像和视频的审核,简化这一过程。Amazon Comprehend利用机器学习来分析文本,发现有价值的洞察和关系。

 以下参考资料介绍了如何创建RESTful代理API,用于近乎实时地审核Stable Diffusion文本转图像模型生成的图像。在此解决方案中,使用JumpStart启动并部署了Stable Diffusion模型(基于v2-1)。该解决方案使用负向提示、文本审核解决方案(例如Amazon Comprehend)以及基于规则的筛选条件来审核输入提示。它还利用Amazon Rekognition来审核生成的图像。在检测到不安全信息时,RESTful API会将生成的图像和审核警告返回给客户端。

此工作流中的步骤如下:

  • 用户发送提示以生成图像。

  • AWS Lambda函数使用Amazon Comprehend、JumpStart和Amazon Rekognition协调图像的生成和审核:

  • 将基于规则的条件应用到Lambda函数中的输入提示,使用禁用词检测强制执行内容审核。

  • 使用Amazon Comprehend自定义分类器,分析提示文本以进行毒性分类。

  • 通过SageMaker端点将提示发送到Stable Diffusion模型,传递提示作为用户输入,并传递预定义列表中的负向提示。

  • 将从SageMaker端点返回的图像字节发送到Amazon Rekognition DetectModerationLabel API进行图片审核。

  • 如果之前的步骤在提示或生成的图像中检测到任何不当信息,则会构造包含图像字节和警告的响应消息。

  • 服务将响应发送回客户端。

 以下屏幕截图显示了使用上述架构构建的示例应用程序。Web UI将用户输入提示发送到RESTful代理API,并显示从响应中收到的图像和所有审核警告。如果实际生成的图像包含不安全的内容,则演示应用程序会对内容进行模糊处理。我们使用示例提示“一位性感女士”测试了该应用程序。

 您可以实施更复杂的逻辑来获得更好的用户体验,例如,在提示包含不安全的信息时拒绝请求。此外,您可以制定重试策略,在提示是安全的、但输出不安全时,重新生成图像。

预定义负向提示列表

 Stable Diffusion支持负向提示,这样便可以指定在图像生成期间要避免的提示。创建预定义的负向提示列表是一种实用的主动式方法,用于防止模型生成不安全的图像。在调用SageMaker端点来运行Stable Diffusion模型的推理时,可以在Lambda函数中管理该实施,传递用户输入中的提示,并传递预定义列表中的负向提示。

 尽管这种方法行之有效,但它可能会影响Stable Diffusion模型生成的结果并限制其功能。所以,要点在于将其视为审核技术之一,再结合其他方法,例如使用Amazon Comprehend和Amazon Rekognition进行文本和图像审核。

审核输入提示

 文本审核的常用方法是使用基于规则的关键字查找方法,识别输入文本是否包含预定义列表中的任何禁用词或短语。这种方法相对容易实施,对性能的影响很小,成本也更低。但是,这种方法的主要缺点是,它只检测预定义列表中包含的单词,无法检测未包含在列表中的禁用词新变体或修改后的变体。用户还可以尝试使用其他拼写或特殊字符来替换字母,从而绕过规则。

 为了解决基于规则的文本审核的局限性,许多解决方案采用混合方法,将基于规则的关键字查找与基于机器学习的毒性监察相结合。两种方法的结合可以提供更全面、更有效的文本审核解决方案,能够检测更大范围内的不当内容并提高审核结果的准确性。

 在此解决方案中,使用Amazon Comprehend自定义分类器来训练毒性监察模型,使用该模型来检测在输入提示中可能存在有害内容、但未检测到明确使用禁用词的情况。借助机器学习的强大功能,可以教导模型识别文本中可能存在毒性内容的模式,即使基于规则的方法难于检测到此类模式也没问题。

 使用Amazon Comprehend作为托管式人工智能服务,可以简化训练和推理。只需两个步骤,就可以轻松地训练和部署Amazon Comprehend自定义分类。

审核输出图像

 尽管审核输入文本提示很重要,但它并不能保证对于目标受众而言,Stable Diffusion模型生成的所有图像都是安全的,因为该模型的输出可能包含一定程度的随机性。因此,审核Stable Diffusion模型生成的图像同样重要。

 在此解决方案中,利用Amazon Rekognition Content Moderation这个预先训练过的机器学习模型,检测图像和视频中的不当内容。在此解决方案中,使用Amazon Rekognition DetectModerationLabel API,近乎实时地审核Stable Diffusion模型生成的图像。Amazon Rekognition Content Moderation提供预先训练的API,用于分析各种不当或冒犯性内容,。

用于微调模型的有效图像审核技术

 微调是一种常用技术,用于根据特定任务来调节预训练的模型。对于Stable Diffusion,微调可用于生成包含特定对象、样式和字符的图像。在训练Stable Diffusion模型以防止创建不当或冒犯性的图像时,内容审核至关重要。这包括仔细审查并筛选出任何可能导致生成此类图像的数据。通过这样做,模型可以从更多样化和更具代表性的数据点进行学习,从而提高准确性并防止传播有害内容。

审核延迟和成本

 此解决方案使用顺序模式来审核文本和图像。文本审核需要调用基于规则的函数和Amazon Comprehend,Amazon Rekognition则用于在调用Stable Diffusion之前和之后的图像审核。尽管这种方法可以有效地审核输入提示和输出图像,但它可能会增加解决方案的总体成本和延迟,这是需要考虑的问题。

延迟

 Amazon Rekognition和Amazon Comprehend均提供了托管API,具备高可用性和内置的可扩展性。尽管由于输入大小和网络速度可能导致延迟变化,但在此解决方案中,所用两项服务中的API都提供了近实时的推理。对于大小小于100个字符的输入文本,Amazon Comprehend自定义分类器端点的处理速度低于200毫秒,而对于平均大小小于1MB的文件,Amazon Rekognition Image Moderation API的速度大约为500毫秒。

 总共而言,对Amazon Rekognition和Amazon Comprehend的审核API调用会增加700毫秒的API调用时间。需要注意的是,根据提示的复杂性和底层基础设施功能,Stable Diffusion请求通常需要更长的时间。在测试账户中,使用ml.p3.2xlarge实例类型,通过SageMaker端点调用Stable Diffusion模型的平均响应时间约为15秒。因此,审核引入的延迟约为总响应时间的5%,因此对系统整体性能的影响微乎其微。

成本

 Amazon Rekognition Image Moderation API采用基于请求数量的即用即付模式。费用因所用亚马逊云科技区域而异,采用分层定价结构。随着请求数量的增加,每次请求的成本会降低。

 在此解决方案中,使用了Amazon Comprehend自定义分类器,并将其部署为Amazon Comprehend端点,以协助进行实时推理。这种实施会产生一次性训练成本和持续的推理成本。

 使用Jumpstart,可以将Stable Diffusion模型作为单个软件包来快速启动和部署。在Stable Diffusion模型上运行推理将产生底层Amazon Elastic Compute Cloud(Amazon EC2)实例费用,以及入站和出站数据传输费用。

小结

 综上所述,概述了一个示例解决方案,该解决方案展示了如何使用Amazon Comprehend和Amazon Rekognition,审核Stable Diffusion输入提示和输出图像。此外,可以在Stable Diffusion中定义负向提示,以防止生成不安全的内容。通过实施多个审核层,可以大大降低生成不安全内容的风险,从而确保更安全、更可靠的用户体验。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/74454.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

并发-Executor框架笔记

Executor框架 jdk5开始,把工作单元与执行机制分离开来,工作单元包括Runable和Callable,执行机制由Executor框架来提供。 Executor框架简介 Executor框架的两级调度模型 Java线程被一对一映射为本地操作系统线程 java线程启动会创建一个本…

Unity3D URP 仿蜘蛛侠风格化BloomAO

Unity3D URP 仿蜘蛛侠风格化Bloom&AO BloomBloom效果流程:制作控制面板VolumeComponent.CSCustom Renderer FeatherCustom Renderer PassBloom ShaderComposite Shader 完善Custom Feather风格化AO 总结 本篇文章介绍在URP中如何进行风格化后处理,使…

高阶数据结构-----三种平衡树的实现以及原理(未完成)

TreeMap和TreeSet的底层实现原理就是红黑树 一)AVL树: 1)必须是一棵搜索树:前提是二叉树,任取一个节点,它的左孩子的Key小于父亲节点的Key小于右孩子节点的Key,中序遍历是有序的,按照Key的大小进行排列,高度平衡的二叉…

2024字节跳动校招面试真题汇总及其解答(一)

1. 【算法题】重排链表 给定一个单链表 L 的头节点 head ,单链表 L 表示为: L0 → L1 → … → Ln - 1 → Ln请将其重新排列后变为: L0 → Ln → L1 → Ln - 1 → L2 → Ln - 2 → … 不能只是单纯的改变节点内部的值,而是需要实际的进行节点交换。 示例 1: 输入:hea…

SSH是如何配置的

目录 什么是SSH SSH可以做什么其他用途? ssh有几种连接方法吗 我应该用哪种方法连接SSH1或SSH2? 每天都在用SSH你知道SSH的原理吗 开启ssh后telnet会关闭吗 SSH的优缺点 SSH和Telnet之间优缺点的对比 SSH的配置实验 ensp Cisco H3C 1、什么是…

QT—基于http协议的网络文件下载

1.常用到的类 QNetworkAccessManager类用于协调网络操作,负责发送网络请求,创建网络响应 QNetworkReply类表示网络请求的响应。在QNetworkAccessManager发送一个网络请求后创建一个网络响应。它提供了以下信号: finished():完成…

【八大经典排序算法】:直接插入排序、希尔排序实现 ---> 性能大比拼!!!

【八大经典排序算法】:直接插入排序、希尔排序实现 ---> 性能大比拼!!! 一、 直接插入排序1.1 插入排序原理1.2 代码实现1.3 直接插入排序特点总结 二、希尔排序 ( 缩小增量排序 )2.1 希尔排序原理2.2 代码实现2.3 希尔排序特点…

数据可视化、BI和数字孪生软件:用途和特点对比

在现代企业和科技领域,数据起着至关重要的作用。为了更好地管理和理解数据,不同类型的软件工具应运而生,其中包括数据可视化软件、BI(Business Intelligence)软件和数字孪生软件。虽然它们都涉及数据,但在功…

文献阅读:Chain-of-Thought Prompting Elicits Reasoning in Large Language Models

文献阅读:Chain-of-Thought Prompting Elicits Reasoning in Large Language Models 1. 文章简介2. 具体方法3. 实验结果 1. 数学推理 1. 实验设计2. 实验结果3. 消解实验4. 鲁棒性考察 2. 常识推理 1. 实验设计2. 实验结果 3. 符号推理 1. 实验设计2. 实验结果 4.…

华为数通方向HCIP-DataCom H12-821题库(单选题:241-260)

第241题 ​​LS Request​​报文不包括以下哪一字段? A、通告路由器(Advertising Router) B、链路状态 ID (Link Srate ID) C、数据库描述序列号(Database Dascription Sequence lumber) D、链路状态类型 Link state type) 答案:C 解析: LS Request 报文中包括以下字段…

协议定制 + Json序列化反序列化

文章目录 协议定制 Json序列化反序列化1. 再谈 "协议"1.1 结构化数据1.2 序列化和反序列化 2. 网络版计算器2.1 服务端2.2 协议定制(1) 网络发送和读取的正确理解(2) 协议定制的问题 2.3 客户端2.4 代码 3. Json实现序列化反序列化3.1 简单介绍3.2 使用 协议定制 J…

【送书活动】揭秘分布式文件系统大规模元数据管理机制——以Alluxio文件系统为例

前言 「作者主页」:雪碧有白泡泡 「个人网站」:雪碧的个人网站 「推荐专栏」: ★java一站式服务 ★ ★ React从入门到精通★ ★前端炫酷代码分享 ★ ★ 从0到英雄,vue成神之路★ ★ uniapp-从构建到提升★ ★ 从0到英雄&#xff…

python调用GPT实现:智能用例生成工具

工具作用: 根据输入的功能点,生成通用测试点 实现步骤 工具实现主要分2个步骤: 1.https请求调用Gpt,将返回响应结果保存为.md文件 2.用python实现 将 .md文件转换成.xmind文件 3.写个简单的前端页面,调用上述步骤接口 详细代…

操作系统强化认识之Shell编程学习与总结

目录 1.Shell的概述 2.Shell脚本入门 3.变量 3.1.系统预定义变量 3.2.自定义变量 3.3.特殊变量 4.运算符 5.条件判断 6.流程控制 6.1.if判断 6.2.case语句 6.3.for循环 6.4.while循环 7.read读取控制台输入 8.函数 8.1.系统函数 8.2.自定义函数 9.正则表示式入…

【C++入门到精通】C++入门 ——搜索二叉树(二叉树进阶)

阅读导航 前言一、搜索二叉树简介1. 概念2. 基本操作⭕搜索操作🍪搜索操作基本代码(非递归) ⭕插入操作🍪插入操作基本代码(非递归) ⭕删除操作🍪删除操作基本代码(非递归&#xff0…

MySQL无法查看系统默认字符集以及校验规则

show variables like character_set_database; show variables like collation_database;这个错误信息表示MySQL在尝试访问performance_schema.session_variables表时,发现该表不存在。这个问题可能是由于MySQL的版本升级导致的。解决这个问题的一种方法是运行mysql…

论文浅尝 | 训练语言模型遵循人类反馈的指令

笔记整理:吴亦珂,东南大学硕士,研究方向为大语言模型、知识图谱 链接:https://arxiv.org/abs/2203.02155 1. 动机 大型语言模型(large language model, LLM)可以根据提示完成各种自然语言处理任务。然而&am…

Java JUC 并发编程(笔记)

文章目录 再谈多线程并发与并行顺序执行并发执行并行执行 再谈锁机制重量级锁轻量级锁偏向锁锁消除和锁粗化 JMM内存模型Java内存模型重排序volatile关键字happens-before原则 多线程编程核心锁框架Lock和Condition接口可重入锁公平锁与非公平锁 读写锁锁降级和锁升级 队列同步…

[构建 Vue 组件库] 小尾巴 UI 组件库 —— 横向商品卡片(仿淘宝)

文章归档于:https://www.yuque.com/u27599042/row3c6 组件库地址 npm:https://www.npmjs.com/package/xwb-ui?activeTabreadmegitee:https://gitee.com/tongchaowei/xwb-ui 下载 npm i xwb-ui配置 按需导入 import {组件名 } from xwb-…

【Unity】 2D 游戏 库存模块实现

库存模块主要参考了 youtube 上的视频 BMo 的 Flexible INVENTORY SYSTEM in Unity with Events and Scriptable Objects 和 Simple Inventory UI in Unity With Grid Layouts 这两个视频是一个系列 还是一个视频也是 BMo的 How To INTERACT with Game Objects using UNITY E…