配置语音功能
本文介绍了 Copilot Studio 中可用于 Dynamics 365 Customer Service 交互式语音应答的功能。
要让您的代理为语音服务做好准备,请参阅将支持语音的代理与 Dynamics 365 Customer Service 集成。
有关语音服务的概述,请参阅在代理中使用交互式语音应答。
语音和 DTMF 模态
支持语音的代理与基于聊天的代理不同。 支持语音的代理包括用于处理语音场景的特定语音系统主题。 基于聊天的代理默认使用文本模式。 支持语音的代理使用语音和 DTMF 模式。 这两种模态彼此不兼容。
针对语音进行优化允许您跨不同的模态创作启用语音的代理,并确保正确创作语音相关的功能。
针对语音进行优化
如果您未使用语音模板启动您的代理,则必须在代理的设置中启用针对语音进行优化选项。
打开代理,进入设置>语音。
选择语音优化。 默认情况下,还设置使用语音作为主要创作模式选项。
当您启用针对语音进行优化和使用语音作为主要创作模式选项时,您的代理会获取以下更新:
- 当从文本切换到语音和 DTMF 时创作语音功能的能力。
- 将自动添加语音系统主题静音检测、语音无法识别和未知拨号盘按键,以处理语音相关的应用场景。
- 提高代理数据的准确性(默认情况下打开),可提高语音识别准确性。
- 现有代理流没有更改,例如主菜单主题,以使用映射的 DTMF 触发器开始对话。
重要提示
- 针对语音进行优化设置仅更改语音创作功能,不会更改渠道设置。 为完全启用语音的代理打开电话服务渠道。
- 此外,针对最初未为语音功能配置的代理设置针对语音进行优化意味着该代理将没有主菜单(预览版)主题。 如果需要,您必须重新创建该主题。
禁用针对语音进行优化
如果您未启用电话服务渠道,则可以在代理创作中禁用针对语音进行优化。 禁用针对语音进行优化后,您将获得以下更改:
- 没有针对语音功能的代理创作,例如 DTMF 和打断。
- 设置默认的文本模态。
- 没有针对语音识别的改进,因为不提供语音识别。
- 没有语音系统主题或全局 DTMF 主题。
备注
如果在其他主题中引用禁用的 DTMF 主题,则某些主题可能会在发布期间报告错误。
- 不会更改您的代理流和渠道设置,因为禁用优化不会关闭电话服务通道。
- 在发布您的代理之前,启用或禁用针对语音进行优化选项不会生效。 如果意外启用或禁用了代理,并在模态之间切换代理,您将有时间修复此问题。
重要提示
如果电话服务渠道已启用,禁用针对语音进行优化可能会中断您的代理,因为将自动禁用所有 DTMF 触发器。
使用语音作为主要创作模式
针对语音功能创作中的每个节点,应选择“语音和 DTMF”模态。 您可以选择代理创作首选项作为使用语音作为主要创作模式。 此设置可确保所有输入字段都有正确的模态。 如果您已启用针对语音进行优化,使用语音作为主要创作模式选项在默认情况下处于启用状态。
消息可用性
使用文本或语音模态会对您的渠道产生不同影响。
文本模态 | 语音模态 | 代理文本和语音渠道 |
---|---|---|
消息可用 | 消息为空 | 消息可用 |
消息为空 | 消息可用 | 消息不可用 |
自定义自动语音识别
特定领域(如医疗或金融)的语音代理可能会看到用户使用金融术语或医学术语。 启用语音的代理难以通过语音转文本功能转换某些术语和行话。
若要确保能够准确识别语音输入,您可以改进语音识别:
打开代理后,选择设置>语音。
选择使用代理数据提高准确性,启用代理的默认自定义自动语音识别设置。
选择保存提交更改。
发布您的代理以查看新更改。
代理级别语音选项参考
在代理详情设置页面,您可以为各种语音相关功能配置超时。 在此页中应用的设置将成为代理中创建的主题的默认设置。
更改代理级超时选项:
打开代理,选择设置>语音。
选择所需的设置并调整代理的默认设置。
选择保存提交更改。
代理级设置
下表列出了每个选项以及它如何与节点级别设置相关。
启用语音的代理级部分 | 设置 | Description | Default value | 节点级别替代 |
---|---|---|---|---|
DTMF | 数位间超时 | 等待下一个 DTMF 键输入时允许的最大时间(毫秒)。 仅在用户不满足最大输入长度时,才应用多位数 DTMF 输入。 | 3000 毫秒 | 具有多位数 DTMF 输入的语音属性的问题节点 |
DTMF | 终止超时 | 等待 DTMF 终止键的最大持续时间(毫秒)。 在用户达到最大输入长度并且未按终止键时应用限制。 仅适用于多位数 DTMF 输入。 在限制超时并且终止 DTMF 键未到达后,代理将结束识别并返回截至该时间点的结果。 如果设置为“继续而不等待”,则代理不会等待终止键。 在用户输入最大长度后,代理将立即返回。 |
2000 毫秒 | 具有多位数 DTMF 输入的语音属性的问题节点 |
静默检测 | 静默检测超时 | 等待用户输入时允许的最大静音时间(毫秒)。 该限制适用于代理未检测任何用户输入的情况。 默认为“无静音超时”。代理将无限期等待用户输入。 语音静音检测对语音完成讲话后的时段进行计时。 |
无静音超时 | 具有多位数 DTMF 输入的语音属性的问题节点 用于配置静音检测和超时的系统主题(静音检测触发器属性) |
语音收集 | 言语结束超时 | 当用户在语音期间或之后暂停时应用限制。 如果暂停时间长于超时限制,代理将假定用户已完成讲话。 语句结束超时的最大值为 3000 毫秒。 超过 3000 毫秒的任何语句都会缩短到 3000 毫秒。 |
1500 毫秒 | 具有语音属性的问题节点 |
语音收集 | 语音识别超时 | 确定在用户开始讲话后,代理允许用户输入的时间。 默认值为 12000 毫秒(大约 12 秒)。 无识别超时意味着无限时间。 代理将重新提示该问题。 如果没有响应,语音将超过语音识别超时。 | 12,000 毫秒 | 具有语音属性的问题节点 |
延迟消息 | 发送消息延迟 | 确定在后台操作请求启动后,代理在发送延迟消息之前等待多长时间。 以毫秒为单位设置时间。 | 500 毫秒 | 长时间运行操作的操作节点属性 |
延迟消息 | 最短播放时间 | 即使在播放消息时后台操作完成,延迟消息也会播放最短时间。 以毫秒为单位设置时间。 | 5000 毫秒 | 长时间运行操作的操作模式属性 |
言语敏感度 | 敏感度 | 控制系统如何平衡语音和背景噪音的检测。 降低对嘈杂环境、公共场所和免提操作的敏感度。 提高对安静环境、轻声细语用户或语音命令检测的灵敏度。 默认设置为 0.5。 | 0.5 | 此控件没有节点级覆盖。 |
启用打断
启用打断允许您的代理用户中断您的代理。 当您不需要代理用户倾听整个消息时,此功能可能很有用。 例如,呼叫方可能已经知道菜单选项,因为他们过去听到过这些选项。 借助打断,即使代理未列出所有选项,代理用户也可以输入所需的选项。
打断禁用应用场景
- 如果您最近更新了代理消息或者如果不应中断合规性消息,请禁用打断。
- 针对第一个代理消息禁用打断,以确保代理用户了解新信息或必要信息。
规格
打断支持代理用户执行基于 DTMF 和基于语音的中断。
可以使用每个消息在一个批处理任务中控制打断。 在允许打断的每个节点之前按顺序放置
barge-in-disabled
节点。 否则,打断已禁用将被视为 allow-barge-in 消息。完成一个批处理队列后,将针对下一个批处理重置打断自动设置,并且该设置在每个后续消息中由打断标志控制。 当序列再次启动时,您可以放置打断已禁用节点。
小费
如果有连续的消息节点,后跟问题节点,则这些节点的语音消息将定义为一个批处理。 一个批处理在消息节点开始,并在问题节点停止,这将等待用户输入。
避免对很长的消息禁用打断,尤其是在您期望代理用户经常与代理交互时。 如果您的代理用户已经知道菜单选项,请让他们自行转到所需位置。
设置打断
选择消息或问题节点后,将所需模态设置为语音和 DTMF。
选择节点的更多图标 (…),然后选择属性。
对于消息节点,将在创作画布的一侧打开发送活动属性面板。
选择允许打断。
对于问题节点,将打开问题属性面板,然后选择语音。
从语音属性中,选择允许打断。
保存主题以提交您的更改。
配置静音检测和超时
通过静音检测,您可以配置代理等待用户输入的时间以及未收到输入时所采取的操作。 在响应节点级别的问题时,或者当代理等待触发短语以开始新主题时,静音检测最有用。
您可以配置主题的默认超时。
若要替代节点的默认值:
选择节点的更多图标 (…),然后选择属性。
将打开问题属性面板。
选择语音,然后对以下设置进行调整:
静音检测超时选项 Description 使用代理设置 节点使用全局设置进行静音检测。 对此节点禁用 代理将无限期等待响应。 自定义时间(毫秒) 代理将等待指定的时间,然后重复该问题。
回退操作
您可以将某些行为配置为回退操作:
- 代理应该重复问题多少次
- 重新提示消息应包含哪些内容
- 代理在指定的重复次数后应该执行哪些操作
语音输入
对于语音输入,您可以指定:
- 语句和超时:在用户完成讲话后,代理将等待多长时间
- 语音识别超时:在用户开始响应后,代理向用户提供多少时间
若要在代理等待触发短语时配置静音检测行为,请在静音时系统主题中调整设置。
为长时间运行操作添加延迟消息
对于长时间后端操作,您的代理可以向用户发送消息,以通知用户流程运行时间较长。 消息渠道上的代理也可以发送延迟消息。
延迟消息音频播放 | 聊天中的延迟消息 |
---|---|
继续循环播放,直到操作完成。 | 仅在达到指定延迟时发送一次。 |
在 Copilot Studio 中,您的代理可以在触发 Power Automate 流后重复消息。
选择节点的更多图标 (…),然后选择属性。 将打开操作属性面板。
选择发送消息。
在消息部分中,输入您希望代理说出的内容。 您可以使用 SSML 修改消息的声音。 代理重复该消息,直到流完成。
您可以在延迟部分下,调整代理在重复消息之前应等待的时间。 即时流完成,您也可以设置最小等待时间。
配置通话终止
若要将您的代理配置为结束通话并挂断,请添加新节点 (+),然后选择主题管理>结束对话。
使用 SSML 设置语音合成格式
您可以使用语音合成标记语言 (SSML),以更改代理在朗读消息时的声音播放方式。 例如,您可以更改口语的音调或频率、语速和音量。
与 HTML 类似,SSML 使用标记将要修改的文本括在一起。 您可以在 Copilot Studio 中使用以下标记:
SSML 标记 | Description | 链接到语音服务文档 |
---|---|---|
<audio src="_URL to an audio file_"/> |
在标记内添加指向音频文件的 URL。 该文件必须可供代理用户访问。 | 添加录制的音频 |
<break /> |
在单词之间插入停顿或中断。 在标记内插入中断选项。 | 添加中断 |
<emphasis>
要修改的文本</emphasis> |
为单词或短语添加重音级别。 在开始标记中添加强调选项。 在要修改的文本后添加结束标记。 | 调整强调选项 |
<prosody>
要修改的文本</prosody> |
指定对音调、音调线、范围、速率和音量所做的更改。 在开始标记中添加韵律选项。 在要修改的文本后添加结束标记。 | 调整韵律选项 |
<lang xml:lang="xx-XX">
要修改的文本</lang> |
使用多语言神经语音时,可在同一信息中调整发言语言。 | 调整发言语言 |
查找和使用标记
像 HTML 一样,SSML 使用标记将要修改的文本括在一起。
您可以在 Copilot Studio 中使用以下标记:
选择消息或问题节点后,将模式更改为语音和 DTMF。
选择 SSML 标记菜单,然后选择标记。
用标记填充消息框。 如果消息框中已有文本,将在消息末尾追加标记的代码。
在要修改的文本周围添加开始和结束标记。 您可以组合多个标记,然后使用单独的标记自定义消息的各个部分。
小费
您可以手动输入未出现在帮助程序菜单中的 SSML 标记。 要了解有关您可以使用的其他标记的详细信息,请参阅使用语音合成标记语言改进合成。
将呼叫转接到代表或外部电话号码
您可以让代理将呼叫转接到外部电话号码。 Copilot Studio 支持无条件转接到 PSTN 电话号码和直接路由号码。
若要转接到外部电话号码:
在要修改的主题中,添加新节点 (+)。 在节点菜单中,选择主题管理,然后选择转接对话。
在转接类型下,,选择外部电话号码转接,然后输入转接号码。
(可选)将 SIP UUI 标头添加到电话联络。
此标头是
key=value
对的字符串,没有空格或特殊字符,已显示以供外部系统读取。选择节点的更多图标 (…),然后选择属性。 将打开转接对话属性面板。
在 SIP UUI 标头下,输入要通过呼叫转移发送的信息。 当转接到外部电话号码时,不支持变量。
注意
仅发送字符串中的前 128 个字符。
该标头仅接受数字、字母、等号 (
=
) 和分号 (;
)。 包括空格、花括号、圆括号或公式在内的所有其他字符均不受支持,它们可能会导致转接失败。
小费
针对相应的国家/地区代码,在电话号码中包括 +
。
目标电话号码的具有 SIP UUI 的转出必须使用直接路由。 公用电话交换网 (PSTN) 电话号码不支持 SIP UUI 标头转接。
要转移到代表,请参阅显式触发器。
使用语音变量
Copilot Studio 支持变量填充。 您可以使用预定义的变量,也可以创建自定义变量。
Copilot Studio 中启用语音的代理支持上下文变量。 这些变量可帮助您在传输呼叫时将代理对话与 Dynamics 365 Customer Service 集成在一起。
有关 Dynamics 365 Customer Service 中上下文变量的更多信息,请参见 Copilot Studio 机器人的上下文变量。
当您转移时,此集成支持这些具有以下变量的方案:
变量 | 类型 | Description |
---|---|---|
System.Activity.From.Name |
String | 代理用户的呼叫方 ID |
System.Activity.Recipient.Name |
String | 用于调用或连接到代理的编号 |
System.Conversation.SipUuiHeaderValue |
String | 通过直接路由电话号码转接时的 SIP 标头值 |
System.Activity.UserInputType |
String | 代理用户是否在对话中使用了 DTMF 或语音 |
System.Activity.InputDTMFKey |
String | 代理用户的原始 DTMF 输入 |
System.Conversation.OnlyAllowDTMF |
布尔型 | 当设置为 true 时,语音忽略语音输入 |
System.Activity.SpeechRecognition.Confidence |
数字 | 来自上次语音识别事件的置信度值(介于 0 和 1 之间) |
System.Activity.SpeechRecognition.MinimalFormattedText |
String | 在 Copilot Studio 应用其专用自然语言理解模型之前的语音识别结构(作为原始文本) |
备注
- 具有较大触发短语和实体大小调整的代理需要较长时间才能发布。
- 如果多个用户同时发布同一代理,则您的发布操作将被阻止。 您需要在其他人完成其现有代理编辑之后重新发布该代理。
若要了解有关发布基础知识的详细信息,请参阅关键概念 - 发布并部署您的代理。