场景

一个场景通常对应着从用户提问到AI产生答复的一轮交互过程。一个场景包含:用户提问、行动、AI回复和输入输出状态。如果把应用比喻成一栋房子,那么应用包含的各种场景就是房子墙壁上一块一块的砖。

用户提问

自动词库标识

在添加用户提问语料时,系统会自动识别用户输入语句中包含的系统和开发者词库,识别成功会高亮显示词库标识,同时根据词库类别名称自动生成参数名称。

手动词库标识

开发者可以在用户提问语料列表中手动标识词库,当然也可以修改识别出的词库的类型和名称。如果修改词库标识列表中的类型和名称,对应参数类型和名称也会对应自动改变。同样,改变参数的类型或名称,其对应语料中的词库标识对应的类型和名称也会跟着改变。

image

删除词库标识

鼠标点击要删除的词库标识,词库标识列表就会展开,点击后边的删除按钮就可以删除此标识。删除词库标识,其对应的参数也会被删除;同样,删除参数也会删除对应的词库标识。

image

直接引用词库名称

在添加用户提问语料时,开发者不需要将一个词库里面的所有词都列举一遍,而是可以直接使用${词库名称}的方式直接引用词库名称。

image

删除用户提问语料

鼠标浮动到要删除的用户提问语料上,点击右边出现的垃圾桶图标就可以了。

image

动作和参数

动作是用户提问匹配到的场景执行后触发的一个特定操作,它可以从用户提问语料中提取信息参数。动作相当于代码中的函数,其具体实现在开发者端,一个AI系统端只是一个标识,相当于函数声明。

动作部分包含动作名称参数列表。动作名称是开发者手动输入,该名称作为一个场景完成后触发特定操作的标识符。参数可以在用户提问语料中由系统自动识别,也可以手动添加。

更多信息可见动作和参数

AI回复

在应用中,开发者可以为每个场景添加多个AI回复,用于场景触发时产生回复语。开发者设定的多个AI回复会随机被用于回答用户提问。回复语中可以包含引用的参数,参数格式如下:

使用格式 说明
`${parameter_name}` 参数的原始值
`${parameter_name:value}` 参数的解析值
`${parameter_name_for_composite_entity.inner_para} ` 一个组合实体内部变量的取值
`#{state.parameter_name}` 输出状态中的参数的原始值
`#{state.parameter_name:value}` 输出状态中的参数的解析值
`#{state.parameter_name_for_composite_entity.inner_para}` 输出状态中的组合实体内部变量的取值

状态

状态记录了对话交互的背景信息,主要用于上下文信息(如参数值)的传递。此外,它可以被用于管理会话流,串联起原本孤立的不同场景。开发者可以在场景中定义输入输出的状态名称,状态向下传递次数,甚至关闭所有存在的状态。

更多信息可见状态

场景优先级

场景优先级主要用于表示场景的重要性。在匹配用户提问时,优先匹配更高优先级的场景。

image

results matching ""

    No results matching ""