了解 Amazon Chime SDK 基于机器学习的分析工作流程
下面几节介绍如何从 Amazon Chime SDK 呼叫分析工具包提供的机器学习分析功能。
注意
如果您计划在同一 Kinesis 视频流上运行多个机器学习分析,则可能需要提高视频流 GetMedia
和 GetMediaForFragmentList
的连接级别限制。有关更多信息,请参阅《Kinesis 视频流开发者指南》中的 Kinesis 视频流限制。
在以下情况下使用此工作流程:
-
您需要控制台驱动的设置。
-
您已经使用或计划使用 Voice Connector 将 SIP 媒体引入呼叫分析。Voice Connector 支持 SIP 和 SIPREC。有关配置 Voice Connector 的更多信息,请参阅管理 Amazon Chime SDK Voice Connector。
-
您希望将相同的媒体见解配置应用于每个 Voice Connector 呼叫。
-
您需要使用 Amazon Chime SDK 语音分析,这需要 Voice Connector 或媒体见解管道。
要在 Amazon Chime SDK 控制台中启用此工作流程,请按照配置 Voice Connector 以使用呼叫分析中的步骤创建录音配置。
要以编程方式启用此工作流程,请使用以下 API:CreateMediaInsightsPipelineConfiguration API 创建呼叫分析配置,然后使用 PutVoiceConnectorStreamingConfiguration API 将配置关联到 Voice Connector。有关更多信息,请参阅《Amazon Chime SDK 管理员指南》中的配置 Voice Connector 以使用语音分析。
下图显示了 Voice Connector 启动呼叫分析会话时的数据流。图表中的数字对应于下面的带编号的文本。
在下图中:
-
您可以使用 Amazon Chime SDK 控制台或 CreateMediaInsightsPipelineConfiguration API 来创建媒体见解管道配置。
-
您可以使用 Amazon Chime SDK 控制台或 PutVoiceConnectorStreamingConfiguration API 将配置与 Voice Connector 关联起来。要将现有配置与 Voice Connector 相关联,请参阅《Amazon Chime SDK 管理员指南》中的配置 Voice Connector 以使用呼叫分析。
-
在拨出呼叫期间,Voice Connector 会接收每个呼叫参与者的音频。
-
由于与呼叫分析的内置集成,如果将呼叫分析配置附加到 Voice Connector,则 Voice Connector 服务将使用媒体管道服务启动呼叫分析会话。
-
媒体管道服务调用配置中指定的一个或多个媒体处理器。
-
媒体管道服务根据配置将输出数据发送到一个或多个目的地。例如,您可以通过 Amazon Kinesis Data Streams 发送实时分析,如果已配置,则可以将呼叫元数据和分析数据发送到 Amazon S3 数据仓库。
-
媒体管道服务将管道状态事件发送到默认的 Amazon EventBridge。如果您已配置规则,则这些规则的通知也将发送到 Amazon EventBridge。有关更多信息,请参阅使用 EventBridge 通知。
注意
-
只有当您调用 StartSpeakerSearchTask 或 StartVoiceToneAnalyisTask API 时,语音分析处理器才会自动启动。
-
您必须启用 Voice Connector 流媒体才能将呼叫分析与 Voice Connector 结合使用。此功能允许将通话数据流式传输到您账户中由 Voice Connector 管理的 Kinesis 视频流。有关更多信息,请参阅《Amazon Chime SDK 管理员指南》中的将 Amazon Chime SDK Voice Connector 媒体流式传输到 Kinesis 视频流。
您可以将 Voice Connector 通话数据存储在 Kinesis 视频流中,存储时间各不相同,从数小时到数年不等。选择不保留数据会限制呼叫数据的可用性,便于立即使用。Kinesis 视频流的成本是根据使用的带宽和总存储空间来确定的。通过编辑 Voice Connector 的流媒体配置,可以随时调整数据保留期。要启用呼叫分析录音,您必须确保 Kinesis 视频流在呼叫分析完成之前保留数据。您可以通过指定合适的数据保留期来达到此目的。
您可以根据需要将媒体见解管道配置与任意数量的 Voice Connector 相关联。您也可以为每个 Voice Connector 创建不同的配置。Voice Connector 使用 AWSServiceRoleForAmazonChimeVoiceConnector 代表您调用 CreateMediaInsightsPipeline API,每个交易 ID 一次。有关该角色的信息,请参阅《Amazon Chime SDK 管理员指南》中的为 Amazon Chime SDK Voice Connector 使用 Amazon Chime SDK 服务相关角色。
如果您使用 Voice Connector,但需要控制何时应用呼叫分析配置以及将配置应用于哪个呼叫,请使用此工作流程。
要使用此方法,您需要为 Voice Connector 发布的事件创建 EventBridge 目标,然后使用这些事件触发呼叫分析管道 API。有关更多信息,请参阅《Amazon Chime SDK 管理员指南》中的使用 EventBridge 自动运行 Amazon Chime SDK。
下图显示了在 Voice Connector 中使用呼叫分析时如何实现更精细的控制。图表中的数字对应于下方文本中的数字。
在下图中:
-
您可以使用 Amazon Chime SDK 控制台或 CreateMediaInsightsPipelineConfiguration API 来创建媒体见解管道配置。
-
在拨出呼叫期间,Voice Connector 将接收参与者的音频。
-
Voice Connector 将通话音频发送到 Kinesis 视频流,将相应的事件发送到 EventBridge。这些事件具有流和通话元数据。
-
您的应用程序已通过 EventBridge 目标订阅了 EventBridge。
-
您的应用程序调用了 Amazon Chime SDK CreateMediaInsightsPipeline API。
-
媒体管道服务根据媒体见解管道配置中的处理器元素调用一个或多个媒体处理器。
-
媒体管道服务根据配置将输出数据发送到一个或多个目的地。Amazon Chime SDK 呼叫分析将通过 Amazon Kinesis Data Streams 提供实时分析,如果已配置,则可对 Amazon S3 数据仓库进行调用元数据分析。
-
媒体管道服务将事件发送到 Amazon EventBridge。如果您已配置规则,则这些规则的通知也将发送到 Amazon EventBridge。
-
您可以通过调用 UpdateMediaInsightsPipelineStatus API 来暂停或恢复呼叫分析会话。
注意
通话录音不支持暂停和恢复通话。此外,当您暂停会话时,为呼叫启动的语音分析任务也会停止。要重新启动任务,您必须调用 StartSpeakerSearchTask 或 StartVoiceToneAnalyisTask API。
-
如果您在配置期间选择语调分析,则可以通过调用 StartSpeakerSearchTask 或 StartVoiceToneAnalyisTask API 来开始语音分析。
要使用此选项,您需要将音频数据发布到 Kinesis 视频流(KVS),然后使用 KVS 流频道信息调用 CreateMediaInsightsPipeline API。
注意
呼叫分析 API 最多支持两个音频频道。
在调用 CreateMediaInsightsPipeline API 时,您可以为每个 KVS 流频道定义指定片段编号。如果您提供片段编号,则呼叫分析将开始处理该片段上的流。否则,呼叫分析将开始处理来自最新可用片段的流。
呼叫分析支持 PCM 音频(仅限带签名的 16 位小端序音频格式,不包括 WAV),音频采样率介于 8kHz 和 48kHz 之间。低质量的音频(例如电话音频)通常在 8,000Hz 左右。高质量音频的范围通常在 16,000Hz 到 48,000Hz 之间。您指定的采样率必须与音频的采样率相匹配。如需了解更多信息,请参阅《Amazon Chime SDK API 参考》中的 KinesisVideoStreamSourceRuntimeConfiguration。
Kinesis Video Streams 创建者开发工具包提供了一组库,您可以用这些库将音频数据流式传输到 Kinesis 视频流。有关更多信息,请参阅《Amazon Kinesis Video Streams 开发者指南》中的 Kinesis 视频流创建者库。
下图显示了与自定义 Kinesis Video Streams 创建者一起使用呼叫分析时的数据流。图表中的数字对应于下面的带编号的文本。
-
您可以使用 AWS 控制台或 CreateMediaInsightsPipelineConfiguration API 来创建媒体见解管道配置。
-
您可以使用 Kinesis Video Streams 创建者向 Kinesis 视频流写入音频。
-
您的应用程序中会调用 CreateMediaInsightsPipeline API。
-
媒体管道服务从客户的 Kinesis 视频流读取音频。
-
媒体管道服务将事件发送到 Amazon EventBridge。如果您已配置规则,则这些规则的通知也将发送到 Amazon EventBridge。
-
媒体管道服务调用一个或多个处理器元素。
-
媒体管道服务将输出数据发送到一个或多个接收器元素。
-
您可以通过调用 UpdateMediaInsightsPipelineStatus API 来暂停或恢复呼叫分析会话。
注意
通话录音不支持暂停和恢复。
-
您的应用程序可以处理 Amazon EventBridge 事件以触发自定义业务工作流程。
-
如果您在创建配置时选择语音分析,您的应用程序可以通过调用 StartSpeakerSearchTask 或 StartVoiceToneAnalyisTask API 来启动语音分析。