CN109783065A - 产生对话式用户接口的方法及系统 - Google Patents
产生对话式用户接口的方法及系统 Download PDFInfo
- Publication number
- CN109783065A CN109783065A CN201711234857.XA CN201711234857A CN109783065A CN 109783065 A CN109783065 A CN 109783065A CN 201711234857 A CN201711234857 A CN 201711234857A CN 109783065 A CN109783065 A CN 109783065A
- Authority
- CN
- China
- Prior art keywords
- field
- user interface
- data
- dialog mode
- mode user
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 39
- 230000006870 function Effects 0.000 claims description 12
- 238000012549 training Methods 0.000 claims description 11
- 238000012790 confirmation Methods 0.000 claims description 6
- 238000004590 computer program Methods 0.000 description 5
- 238000010586 diagram Methods 0.000 description 4
- 239000000284 extract Substances 0.000 description 4
- 230000008569 process Effects 0.000 description 4
- 230000005540 biological transmission Effects 0.000 description 3
- 230000008859 change Effects 0.000 description 2
- 238000004891 communication Methods 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 238000010606 normalization Methods 0.000 description 2
- 238000012545 processing Methods 0.000 description 2
- 238000013528 artificial neural network Methods 0.000 description 1
- 238000005034 decoration Methods 0.000 description 1
- 230000003247 decreasing effect Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000009472 formulation Methods 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
- 239000000203 mixture Substances 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000013519 translation Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/048—Interaction techniques based on graphical user interfaces [GUI]
- G06F3/0481—Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/10—Text processing
- G06F40/166—Editing, e.g. inserting or deleting
- G06F40/174—Form filling; Merging
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
- G06F40/205—Parsing
- G06F40/211—Syntactic parsing, e.g. based on context-free grammar [CFG] or unification grammars
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/30—Semantic analysis
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/042—Knowledge-based neural networks; Logical representations of neural networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N5/00—Computing arrangements using knowledge-based models
- G06N5/04—Inference or reasoning models
- G06N5/046—Forward inferencing; Production systems
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computational Linguistics (AREA)
- Artificial Intelligence (AREA)
- General Health & Medical Sciences (AREA)
- Health & Medical Sciences (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Computing Systems (AREA)
- Software Systems (AREA)
- Mathematical Physics (AREA)
- Data Mining & Analysis (AREA)
- Evolutionary Computation (AREA)
- Life Sciences & Earth Sciences (AREA)
- Molecular Biology (AREA)
- Biophysics (AREA)
- Biomedical Technology (AREA)
- Human Computer Interaction (AREA)
- Information Transfer Between Computers (AREA)
Abstract
一种产生对话式用户接口的方法,经由处理器执行下列步骤。撷取网页的内容;取得网页内的第一窗体;根据第一窗体取得多个第一字段;根据多个第一字段以建立第一填充模型;以及产生对话式用户接口。其中处理器使用第一填充模型以判断多个第一字段所需数据,并根据输入对话数据以取得可填入对应多个第一字段的数据以供填入多个第一字段。
Description
【技术领域】
本发明是有关于一种对话式用户接口,且特别是有关于一种从网页自动产生对话式用户接口的方法与系统。
【背景技术】
在网络蓬勃发展的现在,企业或服务提供商可通过网页或是手机应用程序(app)发送信息并且与用户互动。当用户面对像是网页的图形化接口时,需在页面中自行探索以寻找需要的信息。而随着计算机科技快速发展,为了提供更佳的使用者体验,可使用虚拟助理(virtual assistant)作为沟通管道,协助使用者快速从网页取得想要的信息,例如查询住宿数据、查询班机表、订购电影票、买卖股票、网络购物、投资理财等等。虚拟助理与用户为实时互动模式,例如是一个对话式用户接口(conversational user interface,CUI),让使用者只需通过输入自然对话语言,便能得到需要的结果。然而,要开发一项服务专属的对话式用户接口,需要花费不少的人力与时间,且逐一制作,而每当有新的服务或网页出现时,设计人员必须花时间了解新服务或网页系统架构逻辑,才能完成对应的对话式用户接口。因此,如何快速产生对话式用户接口,乃目前业界所致力课题之一。
【发明内容】
本发明是有关于一种产生对话式用户接口的方法与系统,能够从输入的网页自动产生所需的对话式用户接口,大幅减少开发一个新的对话式用户接口所需的时间。
根据本发明的一实施例,提出一种产生对话式用户接口的方法,经由处理器执行下列步骤,方法包括:处理器撷取网页的内容;处理器取得网页内的第一窗体;处理器根据第一窗体取得多个第一字段;处理器根据多个第一字段以建立第一填充模型;以及处理器产生对话式用户接口,其中处理器使用第一填充模型以判断多个第一字段所需数据,并根据输入对话数据以取得可填入对应多个第一字段的数据以供填入多个第一字段。
根据本发明的另一实施例,提出一种产生对话式用户接口的系统,包括一处理器以执行以下各模块:网页撷取模块、网页分析模块、以及模型建立模块。网页撷取模块用以撷取网页的内容。网页分析模块用以取得网页内的第一窗体,并且根据第一窗体取得多个第一字段。模型建立模块用以根据多个第一字段以建立第一填充模型,并且产生对话式用户接口。其中模型建立模块使用第一填充模型以判断多个第一字段所需数据,并根据输入对话数据以取得可填入对应多个第一字段的数据以供填入多个第一字段。
根据本发明的又另一实施例,提出一种产生对话式用户接口的系统,该系统包括处理器以及储存装置,处理器能够执行多个计算机程序模块,储存装置储存可由处理器执行的计算机程序模块,其中该计算机程序模块在由处理器执行时使处理器进行以下操作:撷取网页的内容;取得网页内的第一窗体;根据第一窗体取得多个第一字段;根据多个第一字段以建立第一填充模型;以及产生对话式用户接口。其中处理器使用第一填充模型以判断多个第一字段所需数据,并根据输入对话数据以取得可填入对应多个第一字段的数据以供填入多个第一字段。
为了对本发明的上述及其他方面有更佳的了解,下文特举实施例,并配合所附图式详细说明如下:
【附图说明】
图1绘示依照本发明第一实施例的产生对话式用户接口的方法流程图。
图2绘示依照本发明第一实施例的产生对话式用户接口的系统示意图。
图3绘示依照本发明第一实施例从网页产生对话式用户接口的方法细部流程图。
图4绘示依照本发明第一实施例的更新任务数据文件流程图。
图5绘示依照本发明第一实施例的对话式用户接口操作逻辑流程图。
图6绘示依照本发明第一实施例根据填充模型填入字段的流程图。
【符号说明】
S101、S103、S105、S107、S109:步骤
20:产生对话式用户接口的系统
200:处理器
201:储存装置
202:网页撷取模块
204:网页分析模块
206:模型建立模块
301、302、311、312、313、320、602、603、611、621、622、
623、702、703、704、705、706、711、801、802、803、804、
805、806:步骤
314:填充模型
500:网页
501:窗体页面
502:信息页面
510:历史数据
601:输入窗体页面
612:输出Intent与Slot
700:任务数据文件
701、707:使用者输入内容
712:输出消息告知用户任务已完成
【具体实施方式】
本发明提出一种可自动将网页转换为对话式用户接口的方法与系统。本发明所指的对话式用户接口例如是网页中跳出的对话窗口,或是聊天机器人(chatbot),聊天机器人可建构于实时通信软件当中,例如Facebook messenger、WhatsApp、WeChat、Line、Telegram、Skype等等的实时通信平台,亦可将本发明嵌入于APP软件或网站中。企业通过聊天机器人可提供全年无休24小时的实时客户服务,而使用者也可通过聊天机器人快速解决问题。
图1绘示依照本发明第一实施例的产生对话式用户接口的方法流程图,如图1所示的方法可以经由处理器(processor)执行,处理器可以是一般的中央处理器、微处理器等,也可以是设置于计算机、移动装置、云端服务器等中的处理器。方法包括以下步骤。步骤S101:撷取网页的内容。步骤S103:取得网页内的第一窗体(form),第一窗体例如为网页中需要用户输入数据的处。步骤S105:根据第一窗体取得多个第一字段(slot)。步骤S107:根据多个第一字段以建立第一填充模型(slot filling model),据以产生对话式用户接口,第一填充模型例如可定义多个第一字段所需数据。其中各步骤可由处理器执行,处理器使用第一填充模型以判断多个第一字段所需数据,并根据输入对话数据以取得可填入对应多个第一字段的数据以供填入多个第一字段。
如图1所示的方法可以实作为一软件程序,此软件程序可储存于非瞬时计算机可读取媒体(non-transitory computer readable medium),例如硬盘、光盘、随身碟、内存等程序储存装置,当处理器从非瞬时计算机可读取媒体加载此软件程序时,可执行如图1的方法流程,将一个网页转换为一个对话式用户接口。所产生的对话式用户接口可以使用第一填充模型,借由与用户对话,根据用户的输入对话数据填入第一字段所需数据,进而完成用户欲执行的工作。由于图1所示的方法可由网页自动产生对话式用户接口,因此当企业有新的服务上线时,只需提供对应的网页,便可借由本发明所提出的方法快速产生所需的对话式用户接口,可节省大量人力与时间,并可避免人工的需求理解及程序代码撰写,能够大幅降低对话式用户接口的开发成本,并且提升实际应用的可行性。
在一实施例中,产生对话式用户接口的系统可包括处理器及程序储存装置,处理器能够执行一或多个计算机可执行指令,程序储存装置储存可由处理器执行的计算机程序模块,其中该计算机程序模块在由处理器执行时使处理器进行如图1所示各步骤的操作。
图2绘示依照本发明第一实施例的产生对话式用户接口的系统示意图。产生对话式用户接口的系统20包括处理器200和储存装置201,储存装置201储存有下列各模块,由处理器200执行。网页撷取模块202、网页分析模块204、以及模型建立模块206。网页撷取模块202可用以撷取网页的内容。网页分析模块204可用以取得网页内的第一窗体,并且根据第一窗体取得多个第一字段。模型建立模块206可用以根据多个第一字段以建立第一填充模型,并且产生对话式用户接口。其中模型建立模块206使用第一填充模型以判断多个第一字段所需数据,并根据输入对话数据以取得可填入对应多个第一字段的数据以供填入多个第一字段。举例来说,模型建立模块206可以使用第一填充模型分析输入对话数据的文字以取得至少一字词,并且比对至少一字词与各个第一字段的规则(如类型、属性、及/或选项),以供填入多个第一字段。
图2所示的产生对话式用户接口的系统20为可用以执行如图1所示方法的一种实施例。在另一实施例中,网页撷取模块202、网页分析模块204、以及模型建立模块206可以个别被实施为软件单元或硬件单元,亦可以部分模块合并以软件实施、部分模块合并以硬件实施。以软件实施的模块,可被处理器加载而执行对应的功能。以硬件实施的模块,例如可被实施为微控制单元(microcontroller)、微处理器(microprocessor)、数字信号处理器(digital signal processor)、特殊应用集成电路(application specific integratedcircuit,ASIC)、数字逻辑电路、或现场可程序逻辑门阵列(field programmable gatearray,FPGA)。
图3绘示依照本发明第一实施例从网页产生对话式用户接口的方法细部流程图。输入的数据是网页500,首先执行步骤301网页撷取,步骤301例如对应图1的步骤S101,可由网页撷取模块202执行,网页撷取模块202的一种实施例为网络爬虫(crawler)。接着执行步骤302网页分类,将撷取的网页500分类为窗体页面501以及信息页面502。窗体页面501为任务导向类,通常包括一些需要用户填入的数据,应用如订票及订房;信息页面502为信息查询类,通常包括文句说明信息,应用如条文规范及常见问题回答(FAQ)。对于信息页面502,可执行步骤320抽取数据,以找出关键词并进行数据索引标注。
接着针对任务导向类的处理流程进行说明。对于窗体页面501,可先执行步骤311取得窗体结构,此处所述的窗体例如对应于图1步骤S103所述的第一窗体。在一实施例中,步骤311可解析(parse)描述网页500的结构化语言,以抽取出网页中的窗体(form)及其需要的输入(input)。描述网页500的结构化语言例如是html,步骤311可从html档案中寻找关键词form与input,而找出窗体的位置,取得窗体名称以及输入名称。描述网页500的结构化语言亦可以是例如xml或是JSON等等具有结构特性、并可从中抽取出窗体信息的文件格式。在本说明书中以下将使用html语言作为范例说明,然而本发明并不仅限于解析html语言。
在一实施例中,步骤311还可以包括根据窗体(例如对应于图1步骤S105的第一窗体)取得对应于各字段(例如对应于图1步骤S105的第一字段)的规则,此规则至少包括以下其中之一:类型(type)、属性(attribute)、以及选项(option)。该多个规则可代表用户输入数据需符合的格式、类型、数值范围、或文字样式等等。步骤311例如可从html档案中寻找对应于各输入的关键词type、option、max、min等等,以取得各字段的规则。在一实施例中,网页分析模块204可根据网页分析各字段以判断其对应于类型、属性、以及选项的至少其中之一,根据分析结果以建立各字段的规则,举例而言,各字段的规则可以记载输入数据符合其类型的条件、符合其属性的条件、及/或符合其选项的条件。
根据步骤311取得的窗体,可接着执行步骤312定义slot与intent,其中slot代表对应于窗体的多个字段,intent代表使用者意图,用户意图可对应于窗体的功能(订票、订房)。举例而言,步骤312可以使用取得的窗体名称(form title)作为intent,以及使用窗体的输入部分作为slot。
以下使用一实际范例说明步骤311以及步骤312的执行结果,此二步骤例如可由图2所示的网页分析模块204执行。此处所使用范例为电影订票网页,经过步骤311解析网页html之后可取得窗体,此窗体可表示为以下表一所示的数据结构。
表一
在一实施例中,步骤311亦可将从网页取得的窗体转为另一种具结构性的数据格式,例如angular schema form,以另一种形式描述如同表一的记载内容。
根据表一,步骤312可以定义窗体的功能(对应于窗体名称)为「订票」,窗体的多个字段(对应于输入名称)包括「电子邮件」、「电影名称」、「戏院名称」、「日期」、「放映时间」、以及「人数」。
在一实施例中,各字段的规则还可包括语法规则,语法规则可用以表示输入数据的句法规则。举例而言,语法规则可使用正规表示式(regular expression),但并不局限于此,亦可使用其他能够表达句法规则的方式。在一实施例中,可以根据类型、属性、选项的至少其中之一,建立语法规则。例如当输入数据符合其属性的条件是数值范围1到10,可以使用正规表示式^[1-10]$,又例如当符合类型的条件是日期,可以建立对应于日期格式的正规表示式。
在一实施例中,图2所示的产生对话式用户接口的系统20还可包括语法训练模块,语法训练模块可由软件或硬件实施,例如可由处理器实施。语法训练模块可以借由历史数据(log data)训练以建立各字段的规则,所使用的历史数据为相关于窗体的存取。如图3所示,步骤313训练字段填充规则可以读入历史数据510,以机器学习(例如神经网络)的方式建立规则。沿续前述的电影订票网页范例,历史数据510可以是过去的多笔订票纪录,从历史数据510可以得到在「电子邮件」这个字段曾经填入的多个字符串,步骤313可借由机器学习,以建立该多个字符串具有的句法规则,而得到「电子邮件」字段的规则,例如可包括正规表示式。
各字段的规则包括有语法规则的范例可见以下表二,相较于表一,表二再增加了一个语法规则的字段。
表二
于步骤312定义intent与slot以及步骤313训练字段填充规则之后,如图2所示的模型建立模块206便可据以建立填充模型314。而借由从窗体页面501建立的填充模型314,以及从信息页面502由步骤320建立的数据索引,即可完成对应于网页500的对话机器人,可与使用者进行对话互动。
需说明的是,步骤313训练字段填充规则可为选择性执行。即使没有历史数据510训练,亦可直接从步骤312定义好的slot而建立填充模型314。例如在一些使用情境中,存取窗体的历史数据510具有隐私性无法提供,或是在企业的新服务上线时,尚未具有足够数量的历史数据510。
在一实施例中,可以根据各字段的规则当中的类型、属性、选项的至少其中之一,制定一判断准则,以决定对应的字段是否需要执行步骤313。举例而言,若是类型为字符串且选项有值(例如表二的「电影名称」),则可以直接使用选项的值作为比对依据,而不执行步骤313。若是类型为数字且已有属性限制(例如表二的「人数」),则可以直接从属性转换为语法规则,不需执行步骤313。此处所述的判断准则仅为示例性说明,并非用以限定本发明。
各个字段的规则可能有一部分是会更新的内容,一部分则是固定的内容。参考表二的电影订票范例,「电子邮件」以及「人数」字段的条件为固定的,然而「电影名称」及「日期」的条件则可能会每天更动。一种解决方式为,可对于每天更新的网页500,重新执行一次如图3或图1的流程,以产生对应于更新网页的对话式用户接口。然而,此方式需要每天重新产生新的对话式用户接口程序代码,对于企业可能有管理不便的问题,也不易对于产生的对话式用户接口进一步客制化修改。
因此,在一实施例中,图2所示的产生对话式用户接口的系统20还可包括数据更新模块,数据更新模块可由软件单元或硬件单元实施,例如可由处理器实施。数据更新模块可以于排程时间(例如每天的固定时间、或每星期三、或是每个月的1日)重新撷取网页,找出窗体内哪些部分是会持续更新的,据以决定规则(包括类型、属性、选项、语法规则)的更新部分,并将规则的更新部分储存为数据文件。如此一来,即使当网页每天持续更新,本发明所提出的方法仅需更新此数据文件,并读取这个数据文件,便可无需重新执行如图1或图3产生对话式用户接口的流程。此数据文件并无特定格式限制,亦无数量限制,例如可具有2个或多个数据文件,分别对应不同的字段。为了便于说明,在以下的例子中,将以任务数据文件作为此数据文件的一种范例。
图4绘示依照本发明第一实施例的更新任务数据文件流程图。输入的数据为输入窗体页面601,步骤602从原始网页抽取form与input,类似于图3的步骤311,此处不再重复赘述。步骤603可判断此时要建立intent与slot或是要更新任务数据文件,若是要建立intent与slot,则执行步骤611定义intent与slot,产生数据输出intent与slot 612,步骤611类似于图3的步骤312。而若是步骤603决定要更新任务数据文件,则执行步骤621由窗体中撷取需要实时更新部分之内容(例如「电影名称」的「选项」)。接着执行步骤622比对新撷取之内容与目前任务数据文件中的内容是否一致,若是不相同,则执行步骤623更新任务数据文件,将新撷取到网页的内容写入任务数据文件;若是相同,则可跳过步骤623。借由如图4所示的方法,可以定义出窗体的intent与slot,并且可以建立对应于网页更新数据的任务数据文件。
图5绘示依照本发明第一实施例的对话式用户接口操作逻辑流程图。来源输入数据为用户输入内容701,使用者输入内容701可以是自然语言对话数据,例如「您好」、「我今天想看电影」、「我下午3点想去戏院Q看电影B」等等。步骤702读取工作slot S1、S2、…、Sn,例如表二中的电子邮件、电影名称、戏院名称、日期、放映时间、人数。步骤703利用已建立的填充模型,填入多个字段所需的数据,步骤703可称为slot filling。在一实施例中,由于各个字段有对应的规则,因此执行步骤703时,可以借由比对各字段的规则,找出目前用户输入的对话数据是要填到哪一个字段。在一实施例中,步骤703可由模型建立模块206读入任务数据文件700,进行任务数据文件比对以进行各字段的内容填充。关于步骤703的详细叙述可参考图6。
接着于步骤704判断是否所有的slot都已填满,若尚未填满(例如目前仅知道日期),则于步骤705找到未填的slot,假设为Si(例如为电影名称),步骤706输出消息指引用户输入Si相关信息,于输出消息中亦可包括字段Si对应的选项(例如可输出对话「请问您想看哪一部电影?(电影A/电影B/电影C)」)。接收使用者输入内容707之后,再回到步骤703执行slot filling。在一实施例中,步骤705可以对于要填入的多个字段排定优先权顺序,从目前缺少的字段中,选择优先权最高的字段,优先对使用者提问。
当步骤704判断所有的slot都已填满,则进入步骤711执行任务。以电影订票网页为例,步骤711可将收集到的电影订票信息,传送至订票网页对应的网站,以完成订票动作。步骤711执行任务可以有多种实作方式,例如可以传送请求至网站、根据字段的数据和网页呼叫(或执行)网站的应用程序编程接口(application programming interface,API)、以使用窗体传送或呼叫服务(service)的方式送至后端服务器、或是任何可将已填满的字段内容送至后端服务器的传输手段。最后可输出告知用户任务已完成的消息712,消息712可以是文字消息(例如「以下是您的订票信息……」),亦可以是将网站回传的消息撷取下来后(例如包括文字、图片、超链接)传送给使用者。
在一实施例中,于取得可填入字段的数据之后,在步骤711执行任务之前,可以显示一确认消息至显示设备,例如将目前填入各字段的数据以完整的语句呈现于手机屏幕或计算机屏幕,让用户确认即将要执行的任务是否正确,即确认填入各字段的数据是否正确。若是不正确,则可重新执行步骤702~步骤706以重新填入字段。而于确认消息被确认正确后,可执行步骤711,如传送请求至网站,或产生对应的API以传送到网站。
在一实施例中,步骤703使用的填充模型,是用以分析输入对话数据的文字以取得至少一字词,并且比对从输入对话数据所取得的一或多个字词与各字段的规则,以供填入字段。相关流程图可参考图6,其绘示依照本发明第一实施例根据填充模型填入字段内容的流程图。
步骤801接收用户的自然语言输入。步骤802可对用户输入的自然语言执行断词与词性标注,步骤803执行内容正规化。举例而言,当使用者输入「我要订今天电影票两张」,步骤802可取得多个字词「我」、「要」、「订」、「今天」、「电影票」、「两」、「张」,步骤803正规化可将「今天」转为「2017-08-23」,将「两」转为「2」。
步骤804可以使用任务数据文件比对,计算最小编辑距离,抽取与选项内容相符字词,以填入slot。在上述的例子中,可以根据选项比对出2017-08-23,而填入日期字段。另外,使用者可能输入「我想看电影xxx」,使用者输入的电影名称xxx可能由于翻译名称、输入错误、记错等等原因,而无法匹配任何一个可能的选项。此时可借由计算最小编辑距离,决定可能选项中与xxx最接近的一者,而填入电影名称字段。在没有使用任务数据文件的实施例中,步骤804可以略过以任务数据文件进行字段内容填充的步骤。
步骤805可以根据各字段的规则以及从对话数据取得的字词,进行语法规则比对、类型比对、属性比对、选项比对,以填入slot。在上述的例子中,可以根据类型与属性比对出用户输入的「2」应填入「人数」字段。若是用户有输入电子邮件地址,步骤805亦可借由语法规则比对而填入「电子邮件」字段。将可填入的数据填入对应字段之后,执行步骤806语意框架(semantic frame)输出,接着便进入图5所示的步骤704。
上述的多个实施例为网页内有一个窗体的情形,而有些网页可能包含多于两个窗体,例如旅行业者网页可能有国内旅游窗体与国外旅游窗体,租屋网页可能有房客找房窗体以及房东出租窗体。在一实施例中,如图2所示的网页分析模块204可用以取得网页内的第一窗体以及第二窗体,并且取得对应于第一窗体的第一功能与多个第一字段,以及取得对应于第二窗体的第二功能与多个第二字段,窗体对应的功能例如可从窗体名称取得。模型建立模块206可根据多个第一字段建立第一填充模型,以及根据多个第二字段建立第二填充模型。建立填充模型的方法可参考图3。
模型建立模块206所产生的对话式用户接口可用以决定用户意图,举例而言,对话式用户接口可于屏幕画面显示多个按钮让用户选择,或者可借由包含多个选项的提问方式让使用者回答。接着可根据取得的使用者意图,决定使用哪一个对应的窗体。例如当用户意图对应于第一功能时,模型建立模块206使用第一填充模型,根据输入对话数据以取得可填入对应多个第一字段的数据以供填入多个第一字段;当用户意图对应于第二功能时,模型建立模块206使用第二填充模型,根据输入对话数据以取得可填入对应多个第二字段的数据以供填入多个第二字段。
根据上述多个实施例的产生对话式用户接口的方法与系统,可以从一个输入的网页,自动快速产生对话式用户接口,能够减少程序开发所需的人力以及时间成本。而借由解析网页可取得各个字段的规则,因而能够在读取用户输入的对话数据时,使各个字段有比对的依据,而能够将数据填入适当的字段。此外,更可以通过存取网页的历史数据训练而建立各字段的规则。本发明同时亦考虑到字段规则可能会随时间变化的情形,可借由重新撷取网页而将需要更新的部分储存于数据文件,如此能够避免重复产生新的对话用户界面,增加管理的便利性并提高使用弹性。而本发明亦能够处理具有多个窗体的网页,可先判断使用者意图,据以决定使用的填充模型。
综上所述,虽然本发明已以实施例揭露如上,然其并非用以限定本发明。本发明所属技术领域中具有通常知识者,在不脱离本发明的精神和范围内,当可作各种的更动与润饰。因此,本发明的保护范围当视后附的申请专利范围所界定者为准。
Claims (20)
1.一种产生对话式用户接口的方法,经由一处理器执行下列步骤,其特征在于,该方法包括:
该处理器撷取一网页的内容;
该处理器取得该网页内的一第一窗体;
该处理器根据该第一窗体取得多个第一字段;
该处理器根据该多个第一字段以建立一第一填充模型;以及
该处理器产生一对话式用户界面,其中该处理器使用该第一填充模型以判断该多个第一字段所需数据,并根据一输入对话数据以取得可填入对应该多个第一字段的数据以供填入该多个第一字段。
2.如权利要求1所述的产生对话式用户接口的方法,其特征在于,更包括:
该处理器根据该第一窗体取得对应于各该第一字段的一规则,以建立该第一填充模型,其中该规则至少包括以下其中之一:一类型、一属性以及一选项。
3.如权利要求2所述的产生对话式用户接口的方法,其特征在于,该第一填充模型用以分析该输入对话数据的文字以取得至少一字词,并且比对该至少一字词与各该第一字段的该规则,以供填入该多个第一字段。
4.如权利要求2所述的产生对话式用户接口的方法,其特征在于,更包括:
该处理器根据该网页分析各第一字段以判断其对应于该类型、该属性、以及该选项的至少其中之一,建立该规则。
5.如权利要求2所述的产生对话式用户接口的方法,其特征在于,更包括:
该处理器借由一历史数据训练以建立该规则,其中该历史数据相关于存取该第一窗体。
6.如权利要求2所述的产生对话式用户接口的方法,其特征在于,更包括:
该处理器于一排程时间重新撷取该网页,据以决定该规则的一更新部分;以及
将该规则的该更新部分储存为一数据文件。
7.如权利要求6所述的产生对话式用户接口的方法,其特征在于,该处理器用以:
读取该数据文件;
根据该数据文件更新各该第一字段的该规则;以及
分析该输入对话数据的文字以取得至少一字词,并且比对该至少一字词与各该第一字段的该规则,以供填入该多个第一字段。
8.如权利要求1所述的产生对话式用户接口的方法,其特征在于,更包括:
该处理器解析描述该网页的一结构化语言,据以取得该第一窗体以及该多个第一字段。
9.如权利要求1所述的产生对话式用户接口的方法,其特征在于,更包括:
该处理器取得对应于该第一窗体的一第一功能;
其中该处理器根据该输入对话数据以决定一用户意图,当该使用者意图对应于该第一功能时,该处理器使用该第一填充模型,根据该输入对话数据以取得可填入对应该多个第一字段的数据以供填入该多个第一字段。
10.如权利要求1所述的产生对话式用户接口的方法,其特征在于,该处理器于取得可填入该多个第一字段的数据之后,于该对话式用户接口显示一确认消息,并且于该确认消息被确认正确后,根据该可填入对应该多个第一字段的数据和该网页产生对应的API,以传送到该网页对应的一网站。
11.一种产生对话式用户接口的系统,其特征在于,包括一处理器以执行以下各模块:
一网页撷取模块,用以撷取一网页的内容;
一网页分析模块,用以取得该网页内的一第一窗体,并且根据该第一窗体取得多个第一字段;以及
一模型建立模块,用以根据该多个第一字段以建立一第一填充模型,并且产生一对话式用户接口;
其中该模型建立模块使用该第一填充模型以判断该多个第一字段所需数据,并根据一输入对话数据以取得可填入对应该多个第一字段的数据以供填入该多个第一字段。
12.如权利要求11所述的产生对话式用户接口的系统,其特征在于,该网页分析模块用以根据该第一窗体取得对应于各该第一字段的一规则,用以建立该第一填充模型,其中,该规则至少包括以下其中之一:一类型、一属性以及一选项。
13.如权利要求12所述的产生对话式用户接口的系统,其特征在于,该第一填充模型用以分析该输入对话数据的文字以取得至少一字词,并且比对该至少一字词与各该第一字段的该规则,以供填入该多个第一字段。
14.如权利要求12所述的产生对话式用户接口的系统,其特征在于,该网页分析模块用以根据该网页分析各第一字段以判断其对应于该类型、该属性、以及该选项的至少其中之一,建立该规则。
15.如权利要求12所述的产生对话式用户接口的系统,其特征在于,更包括:
一语法训练模块,用以借由一历史数据训练以建立该规则,其中,该历史数据相关于存取该第一窗体。
16.如权利要求12所述的产生对话式用户接口的系统,其特征在于,更包括一数据更新模块,该数据更新模块用以:
于一排程时间重新撷取该网页,据以决定该规则的一更新部分;以及
将该规则的该更新部分储存为一数据文件。
17.如权利要求16所述的产生对话式用户接口的系统,其特征在于,该模型建立模块用以:
读取该数据文件;
根据该数据文件更新各该第一字段的该规则;以及
分析该输入对话数据的文字以取得至少一字词,并且比对该至少一字词与各该第一字段的该规则,以供填入该多个第一字段。
18.如权利要求11所述的产生对话式用户接口的系统,其特征在于,该网页分析模块用以解析描述该网页的一结构化语言,据以取得该第一窗体及该多个第一字段。
19.如权利要求11所述的产生对话式用户接口的系统,其特征在于,该网页分析模块用以取得对应于该第一窗体的一第一功能;
其中该模型建立模块根据该输入对话数据决定一用户意图,当该使用者意图对应于该第一功能时,该模型建立模块使用该第一填充模型,根据该输入对话数据以取得可填入对应该多个第一字段的数据以供填入该多个第一字段。
20.如权利要求11所述的产生对话式用户接口的系统,其特征在于,该模型建立模块于取得可填入该多个第一字段的数据之后,于该对话式用户接口显示一确认消息,并且于该确认消息被确认正确后,根据该可填入对应该多个第一字段的数据和该网页产生对应的API,以传送到该网页对应的一网站。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
TW106139454A TWI661349B (zh) | 2017-11-15 | 2017-11-15 | 產生對話式使用者介面的方法及系統 |
TW106139454 | 2017-11-15 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN109783065A true CN109783065A (zh) | 2019-05-21 |
Family
ID=66433343
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201711234857.XA Pending CN109783065A (zh) | 2017-11-15 | 2017-11-30 | 产生对话式用户接口的方法及系统 |
Country Status (3)
Country | Link |
---|---|
US (1) | US20190147029A1 (zh) |
CN (1) | CN109783065A (zh) |
TW (1) | TWI661349B (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110569341A (zh) * | 2019-07-25 | 2019-12-13 | 深圳壹账通智能科技有限公司 | 配置聊天机器人的方法、装置、计算机设备和存储介质 |
CN113449503A (zh) * | 2020-03-26 | 2021-09-28 | 腾讯科技(深圳)有限公司 | 会话式信息管理方法、装置、设备及其存储介质 |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10915588B2 (en) | 2018-08-02 | 2021-02-09 | International Business Machines Corporation | Implicit dialog approach operating a conversational access interface to web content |
US10824658B2 (en) * | 2018-08-02 | 2020-11-03 | International Business Machines Corporation | Implicit dialog approach for creating conversational access to web content |
US11361164B2 (en) * | 2020-02-13 | 2022-06-14 | Bank Of America Corporation | Natural language platform for automated message processing |
TWI746214B (zh) * | 2020-10-19 | 2021-11-11 | 財團法人資訊工業策進會 | 機器閱讀理解方法、機器閱讀理解裝置及非暫態電腦可讀取媒體 |
US11816437B2 (en) * | 2020-12-15 | 2023-11-14 | International Business Machines Corporation | Automatical process application generation |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20160299936A1 (en) * | 2015-04-08 | 2016-10-13 | Oracle International Corporation | Automated test for uniform web service interfaces |
CN106681971A (zh) * | 2015-11-11 | 2017-05-17 | 阿里巴巴集团控股有限公司 | 一种表单数据处理方法及装置 |
CN106681973A (zh) * | 2016-12-20 | 2017-05-17 | 北京奇虎科技有限公司 | 一种测试中实现自动填充浏览器表单的方法和装置 |
CN107102859A (zh) * | 2017-04-20 | 2017-08-29 | 千寻位置网络有限公司 | 自动填充Web表单的方法 |
CN107145481A (zh) * | 2017-05-05 | 2017-09-08 | 恒生电子股份有限公司 | 电子设备、存储介质、网页表单填充方法及装置 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8451232B2 (en) * | 2007-01-07 | 2013-05-28 | Apple Inc. | Portable multifunction device, method, and graphical user interface for interacting with user input elements in displayed content |
US10481769B2 (en) * | 2013-06-09 | 2019-11-19 | Apple Inc. | Device, method, and graphical user interface for providing navigation and search functionalities |
US20150169285A1 (en) * | 2013-12-18 | 2015-06-18 | Microsoft Corporation | Intent-based user experience |
US9971500B2 (en) * | 2014-06-01 | 2018-05-15 | Apple Inc. | Displaying options, assigning notification, ignoring messages, and simultaneous user interface displays in a messaging application |
-
2017
- 2017-11-15 TW TW106139454A patent/TWI661349B/zh active
- 2017-11-30 CN CN201711234857.XA patent/CN109783065A/zh active Pending
- 2017-12-01 US US15/829,056 patent/US20190147029A1/en not_active Abandoned
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20160299936A1 (en) * | 2015-04-08 | 2016-10-13 | Oracle International Corporation | Automated test for uniform web service interfaces |
CN106681971A (zh) * | 2015-11-11 | 2017-05-17 | 阿里巴巴集团控股有限公司 | 一种表单数据处理方法及装置 |
CN106681973A (zh) * | 2016-12-20 | 2017-05-17 | 北京奇虎科技有限公司 | 一种测试中实现自动填充浏览器表单的方法和装置 |
CN107102859A (zh) * | 2017-04-20 | 2017-08-29 | 千寻位置网络有限公司 | 自动填充Web表单的方法 |
CN107145481A (zh) * | 2017-05-05 | 2017-09-08 | 恒生电子股份有限公司 | 电子设备、存储介质、网页表单填充方法及装置 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110569341A (zh) * | 2019-07-25 | 2019-12-13 | 深圳壹账通智能科技有限公司 | 配置聊天机器人的方法、装置、计算机设备和存储介质 |
CN113449503A (zh) * | 2020-03-26 | 2021-09-28 | 腾讯科技(深圳)有限公司 | 会话式信息管理方法、装置、设备及其存储介质 |
Also Published As
Publication number | Publication date |
---|---|
US20190147029A1 (en) | 2019-05-16 |
TWI661349B (zh) | 2019-06-01 |
TW201923548A (zh) | 2019-06-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11443281B2 (en) | Collaboration tool | |
CN109783065A (zh) | 产生对话式用户接口的方法及系统 | |
Lübke et al. | Modeling test cases in BPMN for behavior-driven development | |
US11093242B2 (en) | Automatically mapping data while designing process flows | |
US10867273B2 (en) | Interface for expanding logical combinations based on relative placement | |
US9594802B2 (en) | Graphical modeling of database query statements | |
KR101588592B1 (ko) | 객체관계 매핑 기반 하이브리드 앱 개발 시스템 및 그 방법 | |
US11120200B1 (en) | Capturing unstructured information in application pages | |
US20130080338A1 (en) | Ideas promoted to projects and synchronization of status information | |
US10505873B2 (en) | Streamlining end-to-end flow of business-to-business integration processes | |
Ma et al. | Modularized and Flow-Based Approach to Chatbot Design and Deployment. | |
KR20100111084A (ko) | 웹 접근성 체크 기능을 가지는 웹 컨텐츠 관리 시스템 | |
US20140089207A1 (en) | System and method for providing high level view tracking of changes in sca artifacts | |
CN110544075A (zh) | 一种资产管理流程配置方法、装置及设备 | |
US20130031116A1 (en) | Modeled business object data import | |
Ameller | Non-functional requirements as drivers of software architecture design | |
US20240004846A1 (en) | Automation of master data processes with user-centric management of derivation rules | |
Gaba | KONNECT@ DSM | |
Bubanj | TeaCat System: Technical Report | |
Cáliz González | Design, development and testing of a full-stack web service for a trajectory computation algorithm | |
CN117035664A (zh) | 基于模板的授信审批标准化处理方法、装置、设备及介质 | |
Sarneabat | Development of an android based mobile application to collect gas meter reading with appropriate customers approval | |
Zeng | Redesign of a journal editorial workflow management system | |
Xu et al. | WORKFLOW WEB APP DESIGN | |
Kulvanit et al. | JPMorgan Web Service Registry |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20190521 |
|
WD01 | Invention patent application deemed withdrawn after publication |