亚马逊AWS官方博客

利用 Bedrock 生成视频内容摘要

概述

随着 GenAI 的普及,视频内容摘要生成成为一个备受关注的领域。通过将视频内容转化为文本,我们可以探索到更广泛的应用场景,其中包括:

  1. 视频搜索与索引:将视频内容转化为文本形式,可以方便地进行搜索和索引操作。用户可以通过关键词搜索视频中的特定内容,无需观看整个视频。这一技术在视频共享平台、视频管理系统和大规模视频数据库中具有重要意义。
  2. 视频摘要与预览:将视频内容概括为文本,可以生成视频摘要或预览,让用户能够快速了解视频的核心内容和要点。这对于视频分享平台、新闻摘要和视频广告等场景尤其有用。
  3. 视频内容推荐与个性化推送:通过分析视频内容的文本摘要,可以根据用户的兴趣和偏好进行个性化的视频推荐。这对于视频流媒体平台和内容分发平台至关重要。

以上应用场景都在不同程度上受益于将视频内容转化为文本并总结的能力,使得视频更易于搜索、浏览和推荐,提供了更高效、智能和个性化的视频体验。

通过本文你可以了解到如何通过 SST 快速部署一套 Serverless 架构到视频内容摘要生成方案。

架构

通过 SST 框架,我们构建了一个 Serverless 应用程序来实现整体功能。 通过 S3 文件上传成功事件触发 Lambda 以执行 Amazon Transcribe 作业。该作业会将视频中的语音内容转换为文本内容,并将其存储在另一个 S3 存储桶中。通过 S3 中视频内容文本的创建事件,会自动触发 Lambda 函数读取文件内容并将其转发到 Bedrock 的 Claude 模型进行文本摘要任务。最终获得的摘要文本将存储在新的 S3 存储桶中。

关于 SST

SST是一个基于 CDK 的开源框架,它可以实现 IaaC(Infrastructure as a Service)。通过这个框架,我们可以将 Lambda 的开发调试工作放在本地进行,例如打断点,打印日志等操作。

部署

先决条件

  • 需要安装 js。如果您还没有安装,请从 node.js 官网下载安装包并安装
  • 在 Amazon Bedrock 中开通 Claude 模型的访问权限,步骤参考文档

运行脚本

git clone https://github.com/yourlin/summarize-video-with-bedrock.git
npm install
sst build
sst deploy

用法

介绍

在 AWS 控制台中打开 S3,搜索 summary-video 关键字,可以找到 3 个相关的 bucket。 他们是:

  • <custom-filed>-summarize-video-summarizeinputbucket<随机字符串>
  • <custom-filed>-summarize-video-summarizeoutputbucket<随机字符串>
  • <custom-filed>-summarize-video-transcribeoutputbucket<随机字符串>

或者您可以在 Cloudformation 对应的堆栈和输出标签页中找到这三个桶。

  • summarizeinputbucket:用于上传视频文件
  • transcribeoutputbucket:用于转录输出结果
  • summarizeoutputbucket:Bedrock 使用来总结文本并输出结果

测试

现在您可以将视频/音频文件上传到“summarizeinputbucket”存储桶。

等待几十秒后,我们可以看到 summarizeoutputbucket 的 S3 桶中已经生成了摘要文本。

效果

以下是 Bedrock 生成的内容摘要。

Here is a summary of the key points in the text:
– Video transcoding has many applications such as live broadcasts, video conferencing, online education, corporate training, and digital advertising. It allows videos to be optimized for different devices and network environments.
– With the growth of internet technology and its usage, video transcoding plays an important role in more fields. Billions of hours of video need to be transcoded globally each day from various sources and platforms.
– Transcoding ensures videos can be smoothly streamed and played back on different devices like smartphones, tablets, and computers. It adjusts video parameters and formats to accommodate different internet speeds and device capabilities.
– Adaptive bitrate streaming optimized by transcoding manages bandwidth consumption by adjusting video quality based on the user’s network conditions. This allows users with limited bandwidth to still stream content smoothly.

这些内容是根据这个 10 分钟的视频内容生成的摘要,完全符合我们的预期。

总结

这套解决方案的优势在于它的灵活性和可扩展性。采用 Serverless 架构,我们可以根据需要自动扩展计算资源,无需担心容量或性能的限制。这使得系统具备高可用性,能够处理大规模的视频处理任务,无论是个别用户的请求还是大量并发的操作。

同时,使用 Bedrock 技术,我们能够快速构建、部署和管理大语言模型解决方案。这让我们可以更快地响应业务需求,将创新理念迅速转化为实际应用。借助 Bedrock 的工具和资源,我们可以轻松地进行系统监控、错误处理和调优,确保系统的稳定性和性能。

总之,这个 Serverless 视频内容摘要提取方案以其高可用性和高弹性的特点脱颖而出。利用 Bedrock 的能力,我们能够快速赋能业务团队,加速业务创新,为用户提供高效、可靠的视频内容摘要服务。

参考

本篇作者

林业

AWS 解决方案架构师,负责基于 AWS 的云计算方案的咨询与架构设计。拥有超过 14 年研发经验,曾打造千万级用户 APP,多项 Github 开源项目贡献者。在游戏、IoT、智慧城市、汽车、电商等多个领域都拥有丰富的实践经验。