[SEO 副标题]
本指南展示如何使用 AWS 机器学习和生成式人工智能服务将图像转换为文本和语音。将图像转换为文本是在 Amazon Kendra 的帮助下完成的,该搜索引擎可用于为图像存储库编制索引和搜索数据。接下来,生成式人工智能用于为图像制作说明文字,识别对象和特征,生成人类可读的文本描述,通常是基于提取的视觉特征的说明。本指南还介绍了如何将图像转换为语音,并且可以扩展到通过支持语音的设备(例如 Amazon Alexa)提供内容。这涉及到 Describe for Me Web 应用程序,该应用程序可生成图像说明,并以清晰、听起来像人类的声音(包括各种语言和方言)读回图像。
请注意:[免责声明]
架构图
-
图像转文本
-
图像转语音
-
图像转文本
-
此架构图演示了如何将图像转换为文本。
第 1 步
用户将图像上传到 Amazon Simple Storage Service(Amazon S3)存储桶等图像存储库。第 2 步
调用 AWS Lambda 函数来按需丰富 Amazon Kendra 索引。第 3 步
Amazon Kendra 是一个可用于搜索结构化和非结构化数据的搜索引擎,可为图像存储库编制索引。Lambda 函数调用 Amazon Textract 和作为近实时推理端点部署在 Amazon SageMaker 上的生成式人工智能模型。第 4 步
用于制作图像说明的生成式人工智能模型会处理上传的图像,识别对象和特征,生成人类可读的文本描述,通常是基于提取的视觉特征的说明。
第 5 步
同时,该解决方案的另一个组件使用了 Amazon Textract。Amazon Textract 用于提取图像中可见的任何文本,由 Lambda 函数调用。提取的文本也被视为图像元数据的一部分。
第 6 步
图像说明存储在 Amazon S3 存储桶中。
第 7 步
通过生成式人工智能模型生成的图像描述和通过 Amazon Textract 提取的文本都被视为所上传图像的元数据。这些元数据与 Amazon Kendra 索引中的图像相关联。
然后,用户可以通过 Amazon Kendra 控制台、AWS 软件开发工具包(AWS SDK)或 API,使用自然语言查询搜索图像,例如“查找红玫瑰的图片”或“给我看狗在公园里玩耍的照片”。这些查询由 Amazon Kendra 处理,它使用机器学习(ML)算法来理解查询背后的含义,并从带索引的存储库中检索相关图像。
-
图像转语音
-
此架构图演示了如何将图像转换为语音;它可以扩展到通过支持语音的设备(例如 Alexa)提供内容。
第 1 步
AWS SDK 可将移动客户端连接到 AWS Amplify。第 2 步
Amazon Cognito 身份池允许用户临时访问 Amazon S3 存储桶。第 3 步
用户可以将图像文件上传到 Amazon S3 存储桶。
第 4 步
Describe for Me Web 应用程序通过将负载中的 Amazon S3 对象键发送到 Amazon API Gateway,来调用后端人工智能(AI)服务。第 5 步
API Gateway 会实例化 AWS Step Functions 工作流程。状态机使用 Lambda 函数来编排 AI/ML 服务 Amazon Textract、Amazon Rekognition、Amazon SageMaker、Amazon Translate 和 Amazon Polly。第 6 步
Step Functions 工作流程会创建音频文件输出,并以 MP3 格式将其存储在 Amazon S3 中。
第 7 步
包含存储在 Amazon S3 中的音频文件位置的预签名 URL 将通过 API Gateway 发送回用户的浏览器。用户的移动设备使用预签名 URL 播放音频文件。
Well-Architected 支柱
当您在云中构建系统时,AWS Well-Architected Framework 可以帮助您了解所做决策的利弊。框架的六大支柱使您能够学习设计和操作可靠、安全、高效、经济高效且可持续的系统的架构最佳实践。使用 AWS 管理控制台中免费提供的 AWS Well-Architected Tool,您可以通过回答每个支柱的一组问题,根据这些最佳实践来检查您的工作负载。
上面的架构图是按照 Well-Architected 最佳实践创建的解决方案示例。要做到完全的良好架构,您应该遵循尽可能多的 Well-Architected 最佳实践。
-
卓越运营
本指南使用 Lambda 和 Step Functions 等 AWS 服务来自动执行任务,减少人工工作和错误,并使用 Amazon S3 提供可靠的数据存储。这些服务可以轻松适应不断变化的工作负载,并支持高效、一致的运营。此外,您还可以使用 Amazon CloudWatch 来监控运营并获得见解。
-
安全性
本指南使用 Lambda 和 Step Functions 来自动执行与安全相关的任务,从而降低安全流程中出现人为错误的风险。此外,API Gateway 会强制对 API 端点执行安全管理,Amazon Cognito 可增强用户身份验证和授权流程,而 AWS Identity and Access Management(IAM)会控制 AWS 资源的访问权限。最后,CloudWatch 有助于实时检测安全事件或异常活动,从而推动快速响应事件和缓解威胁。
-
可靠性
本指南通过 Lambda 和 Step Functions 使用自动化来降低出现可能影响可靠性的人为错误的风险。此外,Amazon S3 提供数据复制和冗余功能以提高数据可靠性,而 API Gateway 则允许用户一致、安全地访问 API,以确保工作负载的可靠性。CloudWatch 监控运营,帮助检测和解决问题。这种主动方法通过最大限度地减少停机时间和中断来增强工作负载的可靠性。
-
性能效率
本指南使用 Lambda 和 Step Functions 实现流程自动化和简化工作流程,从而减少延迟和资源效率低下的情况。此外,SageMaker 和 Amazon Polly 实现了实时内容生成,支持更快、更高效的工作负载,而 API Gateway 则优化了 API 管理,实现低延迟且一致的访问来提高性能效率。
-
成本优化
本指南通过使用 Lambda 和 Step Functions 来促进资源的高效利用,降低持续手动干预的需求,最大限度地减少人为错误和资源浪费,从而最大限度地减少运营开支。此外,Amazon Polly 还降低了对昂贵的手动内容创建的需求,API Gateway 优化了 API 管理,降低了计算相关成本,而 Amazon Kendra 提高了搜索效率,减少了在信息检索方面花费的时间和资源。最后,Amazon S3 提供可扩展且经济实惠的存储解决方案,使您可以高效地存储和访问数据,而不会产生不必要的开支。
-
可持续性
本指南使用 Lambda 和 API Gateway 等无服务器服务来提高能效、资源使用效率,并将可再生能源纳入使用范围。这些做法有助于实现可持续发展目标,帮助您减少碳足迹。
实施资源
提供了在 AWS 账户中进行实验和使用的详细指南。构建指南的每个阶段(包括部署、使用和清理)都将被检查,以便为部署做好准备。
示例代码为起点。它经过行业验证,是规范性但不是决定性的,可以帮助您开始。
相关内容
使用生成式人工智能和 Amazon Kendra 在企业范围内自动创建图像说明和搜索图像
Introducing an image-to-speech Generative AI application using Amazon SageMaker and Hugging Face
免责声明
示例代码;软件库;命令行工具;概念验证;模板;或其他相关技术(包括由我方人员提供的任何前述项)作为 AWS 内容按照《AWS 客户协议》或您与 AWS 之间的相关书面协议(以适用者为准)向您提供。您不应将这些 AWS 内容用在您的生产账户中,或用于生产或其他关键数据。您负责根据特定质量控制规程和标准测试、保护和优化 AWS 内容,例如示例代码,以使其适合生产级应用。部署 AWS 内容可能会因创建或使用 AWS 可收费资源(例如,运行 Amazon EC2 实例或使用 Amazon S3 存储)而产生 AWS 费用。
本指南中提及第三方服务或组织并不意味着 Amazon 或 AWS 与第三方之间存在认可、赞助或从属关系。AWS 的指导是一个技术起点,您可以在部署架构时自定义与第三方服务的集成。