[SEO 副标题]
本指南演示了如何利用生成式人工智能(AI)进行语义视频搜索。它简化了从大量视频数据中查找和提取相关视频片段的过程。该服务通过自然语言查询,无需观看完整的原始视频即可快速搜索特定的场景、动作、概念、人物、物体等。本指南旨在提高媒体供应链管理的成本效率和可扩展性,专为希望通过自动化从现有视频资产中高效生成预告片、体育集锦、字幕和说明等内容的用户而设计。
请注意:[免责声明]
架构图
[架构图描述]
第 1 步
Amazon Simple Storage Service(Amazon S3)托管用于语义视频搜索的静态网站(由 Amazon CloudFront 分发服务提供服务)。Amazon Cognito 为 Web 应用程序提供客户身份和访问管理。
第 2 步
使用 Amazon S3 预签名 URL 将视频上传到 Amazon S3。
第 3 步
视频上传成功后,对 Amazon API Gateway 的 API 调用会调用 AWS Lambda 在 Amazon Simple Queue Service(Amazon SQS)中对新的索引视频请求进行排队。
第 4 步
Lambda 在 Amazon SQS 队列中处理新消息,启动 AWS Step Functions 工作流程。
第 5 步
Amazon Rekognition 可检测原始视频中的多个视频镜头,包括每个镜头的开始、结束和时长。镜头元数据用于生成一系列帧,按单个视频镜头将这些帧分组并存储在 Amazon S3 中。
第 6 步
Step Functions 使用 Map 状态为存储在 Amazon S3 中的每个帧并行运行一组工作流程。
第 7 步
Amazon Rekognition 可检测帧中的名人和文本。
第 8 步
Amazon Bedrock 中的基础模型(FM)可根据帧数据和帧中检测到的文本或名人生成图像描述。FM 根据相关帧的一系列描述创建视频镜头的描述。
第 9 步
Amazon Bedrock 中的嵌入模型可生成视频描述的嵌入。Amazon OpenSearch Service 将嵌入和其他相关信息存储在向量数据库中。
第 10 步
Amazon Bedrock 中的嵌入模型可生成用户查询的嵌入,然后用于对 OpenSearch Service 向量数据库中的视频进行语义搜索。
第 11 步
Amazon DynamoDB 表存储分析和视频索引任务元数据,以跟踪任务状态和其他相关信息。
Well-Architected 支柱
当您在云中构建系统时,AWS Well-Architected Framework 可以帮助您了解所做决策的利弊。框架的六大支柱使您能够学习设计和操作可靠、安全、高效、经济高效且可持续的系统的架构最佳实践。使用 AWS 管理控制台中免费提供的 AWS Well-Architected Tool,您可以通过回答每个支柱的一组问题,根据这些最佳实践来检查您的工作负载。
上面的架构图是按照 Well-Architected 最佳实践创建的解决方案示例。要做到完全的良好架构,您应该遵循尽可能多的 Well-Architected 最佳实践。
-
卓越运营
使用 Amazon CloudWatch 监控您的工作负载并深入了解性能,从而使您的应用程序有效运行和响应。除此之外,还可搭配使用 Step Functions 来协调无服务器工作流程,自动处理错误并保持处理过程的一致性。这些服务赋予您主动识别和解决问题所需的可观测性和控制力。
-
安全性
使用 Cognito 对用户进行身份验证并授权访问您的资源。该服务与 CloudFront 配合使用,同时采用 AWS Shield Standard 的内置分布式拒绝服务(DDoS)保护,您便可安全地在全球范围内交付内容。这些服务确保只有有效用户才能访问您的应用程序,同时保护您的数据安全。
-
可靠性
Amazon S3 对您的视频、图像和其他媒体对象的存储具有高可用性和耐久性,将数据丢失或停机的风险降至最低。它还支持版本控制、跨区域复制和生命周期策略等功能,有助于提高数据的完整性和可用性。该服务与 CloudWatch 搭配,可以监控您的应用程序,并在突破阈值时自动响应事件。最后,使用 Step Functions 编排您的无服务器工作流程,内置的错误处理和重试机制可支持一致的处理过程和容错能力。
-
性能效率
利用 Lambda 的无服务器计算,优化应用程序的性能。您可以与 Amazon Bedrock 结合使用,实现高性能的机器学习推理,并且 CloudFront 全球覆盖范围广泛,从而可以以低延迟交付内容。这些服务协同工作,可以有效地扩展您的应用程序并提供响应及时的用户体验。
-
成本优化
使用 Amazon S3 Intelligent-Tiering 和 Amazon S3 生命周期配置,以最具成本效益的方式自动存储您的媒体,从而优化成本。Amazon S3 生命周期可根据规则将文件转移到更便宜的存储层或删除文件,从而降低成本。Lambda 和 Amazon Bedrock 也有助于降低成本,因为您只需为使用的资源付费,并且无需预置服务器。Lambda 可按需扩展,仅按使用的计算时间收费,并且 Amazon Bedrock 也是按需调用,从而避免了基础设施闲置成本。
-
可持续性
Lambda 可根据需求动态扩展,从而提高效率并避免长期进行服务器配置的需求。它还支持针对 Amazon SQS 筛选事件,以减少 Lambda 函数的流量。除此之外,搭配使用 Amazon S3 Intelligent-Tiering 和 Amazon S3 生命周期,可根据使用情况自动将数据转移到最合适的存储层。这样可以最大限度地减少昂贵的存储费用和不必要的数据。最后,CloudFront 将内容缓存到离用户更近的位置,从而降低数据传输的网络流量和能耗。
实施资源
提供了在 AWS 账户中进行实验和使用的详细指南。构建指南的每个阶段(包括部署、使用和清理)都将被检查,以便为部署做好准备。
示例代码为起点。它经过行业验证,是规范性但不是决定性的,可以帮助您开始。
相关内容
免责声明
示例代码;软件库;命令行工具;概念验证;模板;或其他相关技术(包括由我方人员提供的任何前述项)作为 AWS 内容按照《AWS 客户协议》或您与 AWS 之间的相关书面协议(以适用者为准)向您提供。您不应将这些 AWS 内容用在您的生产账户中,或用于生产或其他关键数据。您负责根据特定质量控制规程和标准测试、保护和优化 AWS 内容,例如示例代码,以使其适合生产级应用。部署 AWS 内容可能会因创建或使用 AWS 可收费资源(例如,运行 Amazon EC2 实例或使用 Amazon S3 存储)而产生 AWS 费用。
本指南中提及第三方服务或组织并不意味着 Amazon 或 AWS 与第三方之间存在认可、赞助或从属关系。AWS 的指导是一个技术起点,您可以在部署架构时自定义与第三方服务的集成。