目录
[1. 意图](#1. 意图)
[1.1. 意图分类](#1.1. 意图分类)
[1.1.1 入口意图(Entry Intent)](#1.1.1 入口意图(Entry Intent))
[1.1.2 对话意图(Dialog Intent)](#1.1.2 对话意图(Dialog Intent))
[1.2. 意图类型切换操作步骤](#1.2. 意图类型切换操作步骤)
[2. 语料](#2. 语料)
[2.1 语料分类详解](#2.1 语料分类详解)
[2.2 语料编写规范详解](#2.2 语料编写规范详解)
[2.3 标签符号深度说明](#2.3 标签符号深度说明)
[3. 词槽](#3. 词槽)
[3.1 符类型要求](#3.1 符类型要求)
[3.2 格式规范示例](#3.2 格式规范示例)
[3.3 特殊处理建议](#3.3 特殊处理建议)
[3.4 应用场景示例](#3.4 应用场景示例)
[3.5 错误示范](#3.5 错误示范)
1. 意图
意图指一个明确的用户目的或用户想要完成的具体任务。在对话系统中,意图识别是理解用户输入的关键环节。
例如:
-
在餐厅技能中,"订位"意图对应预订餐桌功能,"点餐"意图对应菜品选择功能
-
在天气技能中,"查询天气"意图对应获取天气信息功能
意图是对话技能的基础组成部分,每个意图通常代表:
-
一个独立功能(如"查询余额")
-
一组相关功能(如"账户管理"可能包含查询余额、修改密码等子意图)
-
特定场景下的交互流程(如"投诉处理"可能包含多个步骤的对话)
1.1. 意图分类
1.1.1 入口意图(Entry Intent)
-
特点:独立性强,不需要依赖历史对话信息即可响应
-
触发条件:用户首次使用技能或切换技能时的初始请求
-
示例:
-
直接说"打开餐厅技能"触发入口意图
-
"我要订餐"作为首次请求触发订餐入口意图
-
-
作用:确定交互场景,建立技能上下文
1.1.2 对话意图(Dialog Intent)
-
特点:需要基于已有交互上下文才能正确响应
-
触发条件:必须在该技能的对话流程中才能识别
-
工作机制:
-
先通过入口意图确定技能范围
-
在后续对话中识别对话意图
-
-
示例:
-
在餐厅技能中,先触发"订位"入口意图后
-
接着询问"需要几人位"识别为"人数确认"对话意图
-
-
设计目的:
-
避免不同技能间的意图混淆
-
确保对话流程的连贯性
-
支持多轮对话的上下文理解
-
1.2. 意图类型切换操作步骤
-
登录系统后,在左侧导航栏中找到"意图管理"模块并点击进入
-
在意图列表中找到需要修改的意图(可通过搜索框输入意图名称快速定位)
-
点击该意图名称或右侧的"详情"按钮,进入意图详情页面
-
在意图详情页面上方找到并点击"编辑"按钮(通常显示为铅笔图标或"编辑"文字按钮)
-
在编辑模式下,定位到"意图类型"设置项(通常位于基本信息区域)
-
点击意图类型下拉菜单,系统会显示可选类型,如:
-
问答型
-
任务型
-
导航型
-
推荐型
-
-
选择新的意图类型(注意不同类型可能对应不同的参数配置)
-
确认修改无误后,点击页面底部的"保存"按钮
-
系统会弹出保存成功的提示,并自动返回意图详情页面
注意事项:
-
意图类型切换可能会影响与该意图关联的对话流程
-
某些特定类型之间可能存在转换限制
-
建议在非业务高峰期进行此类操作
-
修改前可通过"历史版本"功能备份当前配置
2. 语料
2.1 语料分类详解
模板语料(推荐使用)
模板语料采用结构化方式定义,由固定文本和可变槽位组成,使用{}包裹槽位名称。每个槽位可以绑定特定实体类型(如时间、地点等)或辅助词,实现灵活匹配。
典型特征:
-
结构清晰,便于系统解析
-
支持多种参数化组合
-
示例扩展:
-
{city}{date}天气
→ "北京今天天气"、"上海明天天气" -
查一下{product}的价格
→ "查一下手机的价格"、"查一下笔记本电脑的价格"
-
例句语料
由完整自然语句构成,需要通过手动标注方式标记槽位。适用于以下场景:
-
收集真实用户表达样本
-
处理特殊表达句式
-
示例标注过程: 原始例句:"帮我订明天上午的机票" 标注后:"帮我订{date}{time}的机票"
重要限制:
-
同一意图内禁止混合使用两种语料类型
-
模板语料优先用于可抽象的场景
-
例句语料适合处理固定说法
2.2 语料编写规范详解
模板语料字符集
允许使用范围更广的符号集,包含:
-
基础字符:汉字、数字、字母(大小写)
-
数学符号:+ - × ÷ / =
-
标点符号:英文,.!? 中文,。!
-
特殊符号:<>{}|_#'"°%
应用示例:
-
查询{stock_code}[的股价]
→ 可匹配"查询AAPL"和"查询AAPL的股价" -
设置闹钟为{time}(am|pm)
→ 匹配"设置闹钟为8:30am"
例句语料字符集
限制较多,主要包含:
-
基本标点:,。.!?
-
运算符号:+ - × ÷ /
-
特殊符号:_#'"°%
典型用例:
-
"订单号ABC123_456,尽快发货!"
-
"当前室温25°C,湿度60%"
2.3 标签符号深度说明
词槽标记 {}
-
命名规范示例:
-
合法:{user_name}、{order.no}、{item_3}
-
非法:{用户名}(含中文)、{date!}(含特殊符号)
-
-
绑定示例:
{city}天气
+ 绑定"city"到"城市"实体 → 可识别"北京天气"、"上海天气"
必选分组 ()
-
实现分支匹配:
(打开|关闭)灯
等效于:-
"打开灯"
-
"关闭灯"
-
-
嵌套使用:
(查询|查找)(机票|酒店)
生成4种组合
可选标记 []
-
多级可选:
[请][帮我]查询余额
匹配:-
"查询余额"
-
"请查询余额"
-
"帮我查询余额"
-
"请帮我查询余额"
-
-
组合应用:
[查询]{product}[的](价格|售价)
可匹配: "手机价格"、"查询笔记本电脑的售价"等8种组合
特殊注意事项
-
符号必须成对出现
-
嵌套层级建议不超过3层
-
避免过度复杂化,如:
[([{date}]的)]天气
(不易维护) -
性能考虑:单句语料总组合数建议控制在100种以内
例句语料如需配置词槽可有可无,可将对应词槽转换为辅助词,并取消勾选表述必须。
3. 词槽
词槽是自然语言处理中用于结构化信息提取的重要工具,建议使用以下规范来填充词槽内容:
3.1 符类型要求
-
优先使用小写字母(a-z)
-
数字(0-9)可用于表示数量、编号等信息
-
下划线(_)可用于连接单词或短语
-
连字符(-)可用于表示范围或连接
3.2 格式规范示例
-
日期格式:2023-08-15
-
时间格式:14:30
-
电话号码:+86_13800138000
-
商品编号:item_2023_001
3.3 特殊处理建议
-
避免使用空格、中文标点等特殊字符
-
统一大小写格式(推荐全小写)
-
对于专有名词可保留首字母大写
-
超过15个字符时建议使用缩写
3.4 应用场景示例
-
航班预订:"departure_city=shanghai"
-
酒店查询:"check_in_date=2023-12-25"
-
电商购物:"product_id=phone_x200"
3.5 错误示范
-
包含空格:"new york"(应改为"new_york")
-
使用中文字符:"北京"(应改为"beijing")
-
特殊符号:"price=¥100"(应改为"price=100")