SMP2017-ECDT评测任务2具体评测方案:
一、参赛方各自实现可公网访问的web服务,格式:
http(s)://your.site.org/api?query=xx&sessionId=xxx×tamp=xxxx&token=xxxxxx
各参数说明:
1、 query:测试人员输入的文本,utf-8编码。
例如:“你好,我想订机票”,“从哈尔滨到北京”等。
2、sessionId:测试人员输入的文本所属会话的唯一标识,归属于同一sessionId的query视为同一组对话请求。
3、timestamp:当前UNIX时间戳(date +%s),用于输入时效合法性验证。【注意】对于特定session中的单次输入(不包括EOD)时间超过10秒钟未收到回复视为未响应,当前session结束且判定当前session任务未完成。
4、token:用于服务器对请求的合法性校验。生成方法:md5sum(string(key+query+timestamp)),其中key是由评测组织方分配给各参赛方的密钥,用于请求合法性校验。
二、http响应的数据格式,编码为UTF-8:
json格式。具体格式和字段为:
{
“query”: “xxx”,
“sessionId”: “xxx”,
“prompt”: “xxx”,
“data”: []
}
说明:
(1)query为本次响应所对应的请求文本。
(2)sessionId为本次响应所对应的请求的sessionId,sessionId是随机生成的,一般在一个对话session中保持不变,但当用户输入EOD,就重新随机生成一个新的sessionId。
(3)prompt为语义理解后系统返回的回答文本,
(4)data为语义理解以及动作处理后得到的数据条目集合(至多显示相关性最高的前5条),格式为json数组,数组内每个元素对象的格式为三类数据库文件中的数据格式。
(5)对话示例:
测试人员输入 | 发送到系统的消息 | 系统响应的消息 | 系统输出 |
我想订机票 |
http(s)://your.site.org/api?query=我想订机票&sessionId=[ sessionId]×tamp=[timestamp]&token=[token] |
{“query”: “我想订机票”,”sessionId”: “[sessionId]“,
“prompt”: “请问您要从哪出发?”, “data”: [] } |
请问您要从哪出发? |
北京到哈尔滨 | http(s)://your.site.org/api?query=北京到哈尔滨&sessionId=[ sessionId]×tamp=[timestamp]&token=[token] | {“query”: “北京到哈尔滨”,”sessionId”: “[sessionId]“,
“prompt”: “请问您想哪天出发?”, “data”: [] } |
请问您想哪天出发? |
明天吧 | http(s)://your.site.org/api?query=明天吧&sessionId=[ sessionId]×tamp=[timestamp]&token=[token] |
{ “query”: “明天吧”, “sessionId”: “[sessionId]“, “prompt”: “已为您找到以下航班:”, “data”: [{"departCity": "北京", "standardPrice": "1180.0000", "flight": "CA1621", "aPort": "太平国际机场", "takeOffTime": "2017-04-18 06:40:00", "price": "630", "rate": "0.53", "arriveTime": "2017-04-18 08:45:00", "arriveCity": "哈尔滨", "airline": "中国国际航空股份有限公司", "dPort": "首都国际机场", "cabinInfo": "经济舱", "quantity": "10"},…] } |
已为您找到以下航班:[航班查询结果] |
三、测试过程及指标
1、对于测试集中相同的用户意图描述,给定不同的待评测系统相同的首句来启动对话。
2、测试人员输入字符串“EOD”来结束当前sessionId的对话(结束当前对话不意味着停机,测试过程中,系统需要一直在线可用)。
3、评测指标包括任务完成率、用户满意度、回复语言的自然度(也称作流畅度)、对话轮数、静态的数据库资源未覆盖情况的引导能力。
说明:
(1) 最终公布的成绩为多个测试人员在多个用户意图描述上测试的以上指标的平均值。
(2) 任务完成率:每一个测试对话看做是一个任务,测试过程中完成的任务数占任务总数的比率,即为任务完成率。
(3) 用户满意度:包含5个取值{-2,-1,0,1,2},分别对应着{非常不满意,不满意,中性,满意,非常满意}。
(4) 回复语言的自然度:包含3个取值{-1,0,1},分别对应着{不自然,中性,自然}。
(5) 对话轮数:完成一个任务所产生的对话句子(utterance)数,即为对话轮数。对于任务型对话而言,通常在完成任务的前提下,话轮数越少越好。
(6) 静态的数据库资源未覆盖情况的引导能力:包含2个取值{0,1}分别表示{不能引导,能够引导}。在测试过程中,对于不同的系统在同一个任务下,测试人员会等数量地输入静态的数据库资源中不存在相应属性的句子,系统能够识别属性未覆盖且正确引导则该指标增加,否则不变。
四、 注意事项和联系方式
1、建议参赛者短期租用云服务器来搭建服务,如参赛者本身处于局域网并想在本机搭建服务,可能需要下载相关软件做地址映射,确保在公网可以顺利访问到局域网内的服务。
2、如有问题或建议,请反馈至 smp2017ecdt@126.com 或者 lzli@ir.hit.edu.cn。