CN112405623B - 机器人的开发方法、开发装置和可读存储介质 - Google Patents

机器人的开发方法、开发装置和可读存储介质 Download PDF

Info

Publication number
CN112405623B
CN112405623B CN202011390525.2A CN202011390525A CN112405623B CN 112405623 B CN112405623 B CN 112405623B CN 202011390525 A CN202011390525 A CN 202011390525A CN 112405623 B CN112405623 B CN 112405623B
Authority
CN
China
Prior art keywords
robot
canvas
node
design
nodes
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.)
Active
Application number
CN202011390525.2A
Other languages
English (en)
Other versions
CN112405623A (zh
Inventor
赵天麒
司方豪
陈世杰
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Yonyou Network Technology Co Ltd
Original Assignee
Yonyou Network Technology Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Yonyou Network Technology Co Ltd filed Critical Yonyou Network Technology Co Ltd
Priority to CN202011390525.2A priority Critical patent/CN112405623B/zh
Publication of CN112405623A publication Critical patent/CN112405623A/zh
Application granted granted Critical
Publication of CN112405623B publication Critical patent/CN112405623B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J19/00Accessories fitted to manipulators, e.g. for monitoring, for viewing; Safety devices combined with or specially adapted for use in connection with manipulators
    • B25J19/007Means or methods for designing or fabricating manipulators
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J19/00Accessories fitted to manipulators, e.g. for monitoring, for viewing; Safety devices combined with or specially adapted for use in connection with manipulators
    • B25J19/0095Means or methods for testing manipulators

Landscapes

  • Engineering & Computer Science (AREA)
  • Robotics (AREA)
  • Mechanical Engineering (AREA)
  • Manipulator (AREA)

Abstract

本发明提供了一种机器人的开发方法、开发装置和可读存储介质。其中,机器人的开发方法包括创建机器人的设计画布,在设计画布上修改画布节点。保存画布节点,并根据画布节点生成机器人。测试机器人,基于机器人通过测试,发布机器人。本发明通过在机器人设计画布上修改画布节点的方式生成机器人,实现了机器人开发过程的可视化,并且降低了机器人开发难度,缩短机器人开发时间,提高了机器人开发效率,进而节约人工成本。对生成的机器人经过测试后发布,提高机器人使用性能,降低机器人故障率,进而提高机器人开发方法的可靠性。

Description

机器人的开发方法、开发装置和可读存储介质
技术领域
本发明涉及机器人技术领域,具体而言,涉及一种机器人的开发方法、一种机器人的开发装置和一种可读存储介质。
背景技术
相关技术中机器人开发存在技术门槛高、开发难度大、耗费时间较长等不足,增加了机器人开发成本。
发明内容
本发明旨在解决上述技术问题的至少之一。
为此,本发明的第一目的在于提供一种机器人的开发方法。
本发明的第二目的在于提供一种机器人的开发装置。
本发明的第三目的在于提供一种可读存储介质。
为实现本发明的第一目的,本发明的技术方案提供了一种机器人的开发方法,包括创建机器人的设计画布;在设计画布上修改画布节点;保存画布节点,并根据画布节点生成机器人;测试机器人;基于机器人通过测试,发布机器人。
本技术方案中,用户创建机器人的设计画布之后,在设计画布上修改画布节点,完成对于机器人的开发,实现了机器人开发过程的可视化。画布节点与机器人的行为相互对应,进而在设计画布上添加、删除或者调整画布节点,可以使得机器人的行为发生相应的改变,以达到使机器人实现不同功能的目的。在生成机器人之后,对机器人进行测试,将通过测试的机器人进行发布,可以提高机器人的使用性能,进而提高机器人开发方法的可靠性。
本技术方案通过在设计画布上修改画布节点的方式,完成机器人的开发,实现了机器人开发过程的可视化,并且通过修改画布节点的方式生成机器人,屏蔽底层句法分析、命名实体识别、会话执行引擎等技术细节,降低机器人开发难度,缩短机器人开发时间,提高机器人开发效率,进而节约人工成本。对生成的机器人进行测试后发布,进一步确保了机器人的使用性能,降低机器人故障率,提高机器人开发方法的可靠性。
另外,本发明上述技术方案提供的技术方案还可以具有如下附加技术特征:
上述技术方案中,在设计画布上修改画布节点,具体包括修改画布节点的内容;和/或修改画布节点在设计画布上的位置;和/或修改画布节点在设计画布上的连接关系。
本技术方案通过在设计画布上修改画布节点位置,使得设计画布能够更加清晰地反映机器人的开发过程,降低机器人的开发难度。在设计画布上修改画布节点的内容,或者画布节点之间的连接关系,使得机器人实现不同的行为,实现了机器人开发过程的可视化,降低机器人的开发难度,提高机器人开发效率。
上述任一技术方案中,保存画布节点,并根据画布节点生成机器人,具体包括:根据画布节点的内容和画布节点在设计画布上的连接关系,生成机器人。
本技术方案根据设计画布上的画布节点内容以及画布节点之间的连接关系生成机器人,进而通过修改画布节点的方式,既可实现对修改机器人的相应行为,操作简单,实现机器人开发的可视化,降低机器人的开发难度,提高机器人开发效率。
上述任一技术方案中,测试机器人,具体包括:控制机器人的执行行为与画布节点联动;根据执行行为与画布节点之间的联动关系,得到机器人的测试结果。
本技术方案中,控制机器人的执行行为与画布节点连动,进而能够直观地得到机器人的执行行为与画布节点之间的对应关系,并且根据二者之间的对应关系判断机器人是否通过测试,提高机器人的测试准确度,并且缩短机器人的测试时间,提高机器人测试的效率。
上述任一技术方案中,控制机器人的执行行为与画布节点联动,具体包括:将与执行行为对应的画布节点突出显示在中心位置。
本技术方案中,在机器人执行行为的同时,将对应的画布节点显示在中心位置,使得用户可以直观地得到机器人的执行行为与画布节点之间的对应关系,从而进一步提高机器人的测试效率。
上述任一技术方案中,将与机器人执行行为对应的画布节点突出显示在中心位置,具体包括:计算画布节点的X轴坐标和Y轴坐标;根据X轴坐标与Y轴坐标调整画布节点的显示位置;X轴坐标的计算公式为X=-X1×scale+(canvaswidth-width×scale)/2;Y轴坐标的计算公式为Y=-(Y1×scale-(canvasheight-height×scale)/2);其中,X1为画布节点当前位置的横坐标,Y1为画布节点当前位置的纵坐标,canvaswidth为设计画布的宽度,canvasheight为设计画布的高度,scale为设计画布的缩放量,width为画布节点的宽度,height为画布节点的高度。
本技术方案中,可以根据公式X=-X1×scale+(canvaswidth-width×scale)/2计算得到当前机器人行为对应的画布节点的X轴坐标,根据公式Y=-(Y1×scale-(canvasheight-height×scale)/2)计算得到当前机器人行为对应的画布节点的Y轴坐标,并且根据计算得到的X轴坐标与Y轴坐标调整画布节点的位置,以达到将当前机器人行为对应的画布节点显示在中心的目的。其中,X1为画布节点当前位置的横坐标,Y1为画布节点当前位置的纵坐标,canvaswidth为设计画布的宽度,canvasheight为设计画布的高度,scale为设计画布的缩放量,width为画布节点的宽度,height为画布节点的高度。
上述任一技术方案中,基于机器人通过测试,发布机器人之后,还包括修改已经发布的机器人;将修改后的机器人重新发布。
本技术方案将通过测试的机器人发布之后,可以根据使用需求修改已经发布的机器人,并且将修改后的机器人重新发布,进一步确保了机器人的性能,进而提高机器人开发方法的灵活性以及可靠性。
上述任一技术方案中,在设计画布上修改画布节点,具体包括在设计画布上修改画布节点的开始节点、模板展示节点、收集问题节点、条件判断节点、网络请求节点、机器人流转节点、结束节点和反馈节点中的至少之一或其组合。
本技术方案中,在设计画布上修改画布节点,具体包括修改画布节点的开始节点、模板展示节点、收集问题节点、条件判断节点、网络请求节点、机器人流转节点、结束节点和反馈节点中的至少之一或其组合,通过修改上述节点实现对机器人相应行为的修改,进而实现机器人的不同功能,降低机器人的开发难度,缩短机器人的开发时间,提高机器人的开发效率。
为实现本发明的第二目的,本发明的技术方案提供了一种机器人的开发装置,包括存储器,存储有程序或指令;处理器,执行程序或指令;其中,处理器在执行程序或指令时,实现如上述任一技术方案的机器人开发方法的步骤,因此具有上述任一技术方案的全部有益效果,在此不再赘述。
为实现本发明的第三目的,本发明的技术方案提供了一种可读存储介质,可读存储介质存储并执行程序或指令,实现上述任一技术方案的机器人开发方法的步骤,因此具有上述任一技术方案的全部有益效果,在此不再赘述。
本发明的附加方面和优点将在下面的描述部分中变得明显,或通过本发明的实践了解到。
附图说明
本发明的上述和/或附加的方面和优点从结合下面附图对实施例的描述中将变得明显和容易理解,其中:
图1为本发明一些实施例的机器人的开发方法步骤流程图之一;
图2为本发明一些实施例的机器人的开发方法步骤流程图之二;
图3为本发明一些实施例的机器人的开发方法步骤流程图之三;
图4为本发明一些实施例的机器人的开发方法步骤流程图之四;
图5为本发明一些实施例的机器人的开发方法步骤流程图之五;
图6为本发明一些实施例的机器人的开发方法步骤流程图之六;
图7为本发明一些实施例的机器人的开发方法步骤流程图之七;
图8为本发明一些实施例的机器人的开发方法步骤流程图之八;
图9为本发明一些实施例的机器人的开发方法步骤流程图之九;
图10为本发明一些实施例的机器人的开发方法步骤流程图之十;
图11为本发明一些实施例的机器人的开发装置结构示意框图;
图12为本发明一些实施例的机器人开发方法原理图之一;
图13为本发明一些实施例的机器人开发方法原理图之二;
图14为本发明一些实施例的机器人开发方法原理图之三;
图15为本发明一些实施例的机器人开发方法原理图之四;
图16为本发明一些实施例的机器人的测试过程情景示意图之一;
图17为本发明一些实施例的机器人的测试过程情景示意图之二;
图18为本发明一些实施例的图17中A区域放大图;
图19为本发明一些实施例的图17中B区域放大图;
图20为本发明一些实施例的图17中C区域放大图;
图21为本发明一些实施例的图17中D区域放大图;
图22为本发明一些实施例的图17中E区域放大图;
图23为本发明一些实施例的图17中F区域放大图;
图24为本发明一些实施例的机器人的测试过程情景示意图之三;
图25为本发明一些实施例的机器人的测试过程情景示意图之四;
图26为本发明一些实施例的机器人的测试过程情景示意图之五;
图27为本发明一些实施例的图26中G区域放大图;
图28为本发明一些实施例的图26中H区域放大图;
图29为本发明一些实施例的图26中I区域放大图;
图30为本发明一些实施例的图26中J区域放大图;
其中,图11、图17、图24和图26中附图标记与部件名称之间的对应关系为:
110:实线区域,120:虚线区域,200:开发装置,210:存储器,220:处理器,310:A区域,320:B区域,330:C区域,340:D区域,350:E区域,360:F区域,410:G区域,420:H区域,430:I区域,440:J区域。
具体实施方式
为了能够更清楚地理解本发明的上述目的、特征和优点,下面结合附图和具体实施方式对本发明进行进一步的详细描述。需要说明的是,在不冲突的情况下,本申请的实施例及实施例中的特征可以相互组合。
在下面的描述中阐述了很多具体细节以便于充分理解本发明,但是,本发明还可以采用其他不同于在此描述的其他方式来实施,因此,本发明的保护范围并不受下面公开的具体实施例的限制。
下面参照图1至图30描述本发明一些实施例的机器人的开发方法、机器人的开发装置200和可读存储介质。
实施例1:
如图1所示,本实施例提供了一种机器人的开发方法,包括:
步骤S102,创建机器人的设计画布;
步骤S104,在设计画布上修改画布节点;
步骤S106,保存画布节点,并根据画布节点生成机器人;
步骤S108,测试机器人;
步骤S110,基于机器人通过测试,发布机器人。
本实施例中机器人可以为智能会话机器人或者智能查询机器人等。可以理解地,用户可以通过手机或者电脑等终端实现机器人的开发。
具体地,用户创建机器人的设计画布之后,在设计画布上修改画布节点,完成对于机器人的开发,实现了机器人开发过程的可视化。在本实施例的一些实施方式用,用户也可以对设计画布进行拖拽或者缩放等操作,提高了机器人开发方法的灵活性。
画布节点与机器人的行为相互对应,进而在设计画布上进行添加、删除或者调整画布节点等操作时,可以使得机器人的行为发生相应的改变,以实现机器人的不同功能。可以理解地,用户在设计画布上修改画布节点时,可以对进行撤销、恢复或者重做等操作,进一步提高机器人的开发效率。
本实施例在生成机器人之后,对机器人进行测试,具体地,可以通过机器人的执行行为是否准确或者机器人的执行行为是否及时,来判断及机器人是否通过测试。将通过测试的机器人进行发布,可以提高机器人的使用性能,进而提高机器人开发方法的可靠性。
在本实施例的另外一些实施方式中,机器人在通过测试并发布之后,用户可以通过特定的语句来触发机器人,也可以通过硬件来触发机器人,提高了机器人的使用性能。
本实施例通过在设计画布上修改画布节点的方式,完成机器人的开发,实现了机器人开发过程的可视化,并且通过修改画布节点的方式生成机器人,屏蔽底层句法分析、命名实体识别、会话执行引擎等技术细节,降低机器人开发难度,缩短机器人开发时间,提高机器人开发效率,进而节约人工成本。对生成的机器人进行测试后发布,进一步确保了机器人的使用性能,降低机器人故障率,提高机器人开发方法的可靠性。
实施例2:
如图2所示,本实施例提供了一种机器人的开发方法,除上述实施例1的技术特征以外,本实施例进一步地包括了以下技术特征。
在本实施例的一些实施方式中,在设计画布上修改画布节点,具体包括:
步骤S202,修改画布节点的内容。
可以理解地,本实施例中画布节点可以为长方形、正方形或者其他形状,画布节点的不同内容对应机器人的不同行为。通过在设计画布上修改画布节点的内容,使得机器人实现不同的行为,进而实现机器人的不同功能,使得机器人的开发过程可视化,降低机器人的开发难度,提高机器人开发效率。
如图3所示,本实施例提供了一种机器人的开发方法,在本实施例的另外一些实施方式中,在设计画布上修改画布节点,具体包括:
步骤S302,修改画布节点在设计画布上的位置。
具体地,用户可以根据需要调整画布节点在设计画布上的位置,使得设计画布能够更加清晰地反映机器人的开发过程,降低机器人的开发难度,提高机器人的开发效率。
如图4所示,在本实施例的其他一些实施方式中,在设计画布上修改画布节点,具体包括:
步骤S402,修改画布节点在设计画布上的连接关系。
具体地,画布节点在设计画布上的连接关系对应机器人的不同行为。用过在设计画布上修改画布节点之间的连接关系,使得机器人实现不同的行为,进而达到机器人的不同功能,使得机器人的开发过程可视化,降低机器人的开发难度,提高机器人开发效率。
可以理解地,用户可以同时在设计画布上修改画布节点的内容、位置以及连接关系,以完成机器人的开发。
本实施例通过在设计画布上修改画布节点位置,使得设计画布能够更加清晰地反映机器人的开发过程,降低机器人的开发难度。在设计画布上修改画布节点的内容,画布节点之间的连接关系,使得机器人实现不同的行为,实现了机器人开发过程的可视化,降低机器人的开发难度,提高机器人开发效率。
实施例3:
如图5所示,本实施例提供了一种机器人的开发方法,除上述任一实施例的技术特征以外,本实施例进一步地包括了以下技术特征。
保存画布节点,并根据画布节点生成机器人,具体包括:
步骤S502,根据画布节点的内容和画布节点在设计画布上的连接关系,生成机器人。
本实施例中,根据设计画布上的画布节点内容以及画布节点之间的连接关系生成机器人,进而通过修改画布节点的方式,既可实现对机器人的相应行为进行修改,操作简单,实现机器人开发的可视化,降低机器人的开发难度,提高机器人开发效率。
实施例4:
如图6所示,本实施例提供了一种机器人的开发方法,除上述任一实施例的技术特征以外,本实施例进一步地包括了以下技术特征。
测试机器人,具体包括:
步骤S602,控制机器人的执行行为与画布节点联动;
步骤S604,根据执行行为与画布节点之间的联动关系,得到机器人的测试结果。
本实施例中,控制机器人的执行行为与画布节点连动,进而能够直观地得到机器人的执行行为与画布节点之间的对应关系,并且根据二者之间的对应关系判断机器人是否通过测试,提高机器人的测试准确度,并且缩短机器人的测试时间,提高机器人测试的效率。
在本实施例的一些实施方式中,通过机器人的执行行为与画布节点之间的联动关系,可以对机器人的行为流程进行验证,从而降低机器人的故障率,提高机器人的使用性能。
实施例5:
如图7所示,本实施例提供了一种机器人的开发方法,除上述任一实施例的技术特征以外,本实施例进一步地包括了以下技术特征。
控制机器人的执行行为与画布节点联动,具体包括:
步骤S702,将与执行行为对应的画布节点突出显示在中心位置。
本实施例中,在机器人执行行为的同时,将对应的画布节点显示在中心位置,使得用户可以直观地得到机器人的执行行为与画布节点之间的对应关系,从而进一步提高机器人的测试效率。
在本实施例的一些实施方式中,可以将机器人的执行行为与画布节点显示在同一个终端显示页面上,使得用户可以直观地获得机器人的行为流程,便于用户判断机器人的执行行为与画布节点之间的对应关系是否准确,提高机器人的检测效率。
实施例6:
如图8所示,本实施例提供了一种机器人的开发方法,除上述任一实施例的技术特征以外,本实施例进一步地包括了以下技术特征。
将与机器人执行行为对应的画布节点突出显示在中心位置,具体包括:
步骤S802,计算画布节点的X轴坐标和Y轴坐标;
步骤S804,根据X轴坐标与Y轴坐标调整画布节点的显示位置。
X轴坐标的计算公式为X=-X1×scale+(canvaswidth-width×scale)/2。
Y轴坐标的计算公式为Y=-(Y1×scale-(canvasheight-height×scale)/2)。
其中,X1为画布节点当前位置的横坐标,Y1为画布节点当前位置的纵坐标,canvaswidth为设计画布的宽度,canvasheight为设计画布的高度,scale为设计画布的缩放量,width为画布节点的宽度,height为画布节点的高度。
本实施例中,可以根据公式X=-X1×scale+(canvaswidth-width×scale)/2计算得到当前机器人行为对应的画布节点的X轴坐标,根据公式Y=-(Y1×scale-(canvasheight-height×scale)/2)计算得到当前机器人行为对应的画布节点的Y轴坐标,并且根据计算得到的X轴坐标与Y轴坐标调整画布节点的位置,以达到将当前机器人行为对应的画布节点显示在中心的目的。
其中,X1为画布节点当前位置的横坐标,Y1为画布节点当前位置的纵坐标,canvaswidth为设计画布的宽度,canvasheight为设计画布的高度,scale为设计画布的缩放量,默认值是1。width为画布节点的宽度,height为画布节点的高度。
在本实施例的一些实施方式中,可以先计算画布节点的X轴坐标,再计算画布节点的Y轴坐标,也可以先计算画布节点的Y轴坐标,再计算画布节点的X周坐标。
可以理解地,设计画布宽度可以通过终端显示页面的宽度与除设计画布以外的其他宽度相减得到,设计画布高度可以通过终端显示页面的高度与除设计画布以外的其他高度相减得到。
如图24所示,在本实施例的一些实施方式中,虚线区域120对应设计画布区域,实线区域110对应终端的显示区域。将通过公式计算获得的坐标(X,Y)作为当前机器人执行行为对应的画布节点的坐标,实现将画布节点调整至终端显示区域的中心位置。
实施例7:
如图9所示,本实施例提供了一种机器人的开发方法,除上述任一实施例的技术特征以外,本实施例进一步地包括了以下技术特征。
基于机器人通过测试,发布机器人之后,还包括:修改已经发布的机器人;将修改后的机器人重新发布。
机器人的开发方法具体包括:
步骤S902,创建机器人的设计画布;
步骤S904,在设计画布上修改画布节点;
步骤S906,保存画布节点,并根据画布节点生成机器人;
步骤S908,测试机器人;
步骤S910,基于机器人通过测试,发布机器人;
步骤S912,修改已经发布的机器人;
步骤S914,将修改后的机器人重新发布。
本实施例中,将通过测试的机器人发布之后,可以根据使用需求修改已经发布的机器人,并且将修改后的机器人重新发布,进一步确保了机器人的性能,进而提高机器人开发方法的灵活性以及可靠性。
实施例8:
如图10所示,本实施例提供了一种机器人的开发方法,除上述任一实施例的技术特征以外,本实施例进一步地包括了以下技术特征。
在设计画布上修改画布节点,具体包括:
步骤S1002,在设计画布上修改画布节点的开始节点、模板展示节点、收集问题节点、条件判断节点、网络请求节点、机器人流转节点、结束节点和反馈节点中的至少之一或其组合。
本实施例中,在设计画布上修改画布节点,具体包括修改画布节点的开始节点、模板展示节点、收集问题节点、条件判断节点、网络请求节点、机器人流转节点、结束节点和反馈节点中的至少之一或其组合,通过修改上述节点实现对机器人相应行为的修改,进而实现机器人的不同功能,降低机器人的开发难度,提升器人开发的灵活性,缩短机器人的开发时间,提高机器人的开发效率。
实施例9:
如图11所示,本实施例提供了一种机器人的开发装置200,包括存储器210和处理器220。存储器210存储有程序或指令。处理器220执行程序或指令。其中,处理器220在执行程序或指令时,实现上述任一实施例的机器人开发方法的步骤,因此具有上述任一实施例的全部有益效果,在此不再赘述。
实施例10:
本实施例提供了一种可读存储介质,可读存储介质存储并执行程序或指令,实现上述任一实施例的机器人开发方法的步骤,因此具有上述任一实施例的全部有益效果,在此不再赘述。
实施例11:
随着AI普惠化和用户需求的多样化,智能机器人被越来越多的采用,比如智能客服、智能填单等场景。但是由于相关技术中开发智能应用有一定的技术门槛,所以目前只有很少一部分专业人员去支持智能机器人的开发,导致智能机器人服务接入门槛高,从接到用户需求到得到反馈需要经历运营、产品、开发多个环节,造成需求不能得到快速反馈。因此,如何降低开发设计机器人的门槛,如何对开发的机器人进行验证和快速发布是必须要面临的问题。
为了解决相关技术中的上述问题,本实施例提供了一种机器人的开发方法,包括机器人设计画布和机器人测试发布两部分。机器人设计画布用来在线可视化的设计机器人,画布节点由开始节点、模板展示节点、收集问题节点、条件判断节点、网络请求节点、机器人流转节点、结束节点和反馈节点组成。机器人开发过程中支持撤销、恢复和重做,简化了开发机器人的难度。在保存设计画布后即可进行测试,机器人测试发布用来对机器人的流程进行验证。机器人的输出行为支持和画布节点联动,从而提高验证效率,验证通过后就可以发布。本实施例实现了机器人的在线编辑、在线测试、动态发布,简化了机器人的设计难度,提高了设计、开发和验证机器人的灵活性。
在本实施例的一些实施方式中,以智能会话机器人为例,智能会话机器人的会话引擎由设计器和执行引擎组成。具体地,如图12所示,机器人设计器实现了简单、便捷、可视化的机器人流程设计。机器人设计器的技术方案如下:在状态管理的容器(store:状态管理的容器)中创建了管理画布(canvas:画布)的状态,将其与设计器画布绑定,当在设计器画布执行中拖动画布节点,连线,拖拽设计画布,修改画布节点等操作时,会执行对应操作来更新状态管理容器中对应的画布的状态,达到更新设计器中的效果。
设计器中的画布节点由开始节点、模板展示节点、收集问题节点、条件判断节点、网络请求节点、机器人流转节点、结束节点和反馈节点组成。如图13所示,在节点内部的组件中,定义了类型和节点组件的映射,在向画布中渲染节点时,会根据节点的类型来渲染对应的节点。
如图15所示,为store容器的数据结构。画布(画布:canvas)中有画布信息(chart:画布信息),撤销操作的堆栈(ctrlZStack:即ctrl+Z操作的堆栈),恢复操作的堆栈(ctrlYStack:即ctrl+Y操作的堆栈),是否展示画布中的下拉框的控制条件(conditionShow:是否展示画布下拉框的控制条件)四部分。其中chart是画布信息,chart中的数据内容决定了画布页面上要显示的内容,nodes中是画布中节点的相关信息信息,记录了节点的身份信息(id:节点标识),位置,类型,端口等其他属性,links是连线的相关信息,记录了id,起点,终点等信息,画布中的节点位置,连线等都是由这些信息来决定的。ctrlZStack,ctrlYStack分别记录了撤销和恢复操作的堆栈。
如图16所示,在进行机器人测试时,设计器左侧提供了测试会话机器人的能力。如图17在机器人设计信息保存之后,就能通过左侧的会话窗口对机器人的流程进行测试。如图18所示,用户在A区域310中输入机器人触发词,如图19和图20所示,B区域320和C区域330收集用户问题,如图21和图22所示,在D区域340和E区域350进行条件判断,如图23所示,在F区域260可以选择不同的画布节点进行操作。在测试机器人时,提供了机器人行为与设计画布中画布节点联动的能力,当流程每执行到一步后,对应设计画布中的画布节点会有高亮的效果。
如图24所示,为画布节点与机器人行为联动的情景示意图。虚线区域120对应设计画布区域,实线区域110对应终端的显示区域。将通过公式计算获得的坐标(X,Y)作为当前机器人执行行为对应的画布节点的坐标,实现将画布节点调整至终端显示区域的中心位置。
具体地,如果当前机器人行为对应的画布节点不在可视范围内,终端的显示器会偏移到以当前画布节点为中心的位置。初始时,偏移坐标是(0,0),X轴和Y轴的正方向如图17所示。按照顺时针方向,画布节点的四个点的坐标分别为(X,Y),(X-width,Y),(X-width,Y-height),(X,Y-height)。那么,只需要计算偏移到的位置即可。公式如下:
X=-X1×scale+(canvaswidth-width×scale)/2;
Y=-(Y1×scale-(canvasheight-height×scale)/2);
其中,X1为画布节点当前位置的横坐标,Y1为画布节点当前位置的纵坐标,canvaswidth为设计画布的宽度,canvasheight为设计画布的高度,scale为设计画布的缩放量,默认值是1。width为画布节点的宽度,height为画布节点的高度。
具体地,canvaswidth可以通过公式canvaswidth=window.innerwidth-W计算获得;其中,canvaswidth为设计画布的宽度,window.innerwidth为显示终端浏览器的宽度,W为除了画布外其他部分的宽度。
canvasheight可以通过公式canvasheight=window.innerheight-H计算获得;其中,canvasheight为设计画布的高度,window.innerheight为浏览器的高度,H为除了画布外其他部分的高度。
会话执行引擎用于解析并执行设计画布中的画布节点,并返回执行结果,在需要用户回复的场景引擎会把本次会话的上下文信息保存下来,从而实现多轮对话交互。
设计器中的机器人会话卡片模板,现在支持纯文本展示和列表展示两种。后续可以根据业务拓展不同的卡片,比如日程卡片,天气卡片,找人卡片,新闻卡片等。
如图14所示,当设计器中出现模板展示后,首先获取模板信息,获取到的模板信息的数据结构。根据模板数组(List:数组)将卡片模板以下拉框的形式供用户选择。当用户选择了不同的卡片模板后,会根据当前模板的参数对象(params:参数对象)来渲染模板的映射关系。映射关系可以选择参数映射,也可以输入一个固定的值。参数映射的数据来源于收集问题和网络请求,通过自定义一个钩子函数(hooks:钩子函数)来将当前画布中的类型为收集问题收集到的问题和类型为网络请求的输出参数映射作为可供选择的参数映射返回。
在测试机器人的会话中,当流程运行到模板展示时,会根据定义好的标志位的值分别渲染普通文本和列表这两种模板。以查询火车车次的机器人为例,如图25和图26所示,是选择车次后对该车次的信息进行展示的效果图。具体地,如图27所示,在G区域410输入机器人的触发词,如图28和图29所示,在H区域420和I区域430收集用户问题,如图30所示,J区域440可以选择不同的画布节点进行操作。
在本实施例的一些实施方式中,机器人触发条件描述了机器人的意图,触发方式包括短语触发和表达式触发。
短语触发是借助于句法分析结果,支持设置动词,名词,动词+名词来触发会话。比如用户的意图是查询火车票,那么可以使用动名词的方式来触发会话,意图是开会,可以使用动词规则触发。
表达式触发是将用户输入的例句经过自然语言处理之后得到一个表达式,包括固定部分和词槽填充部分,比如后天天气怎样会被处理成{datetime}{weather}{RY}(其中datatime标识日期实体,weather标识天气实体,RY为疑问代词),后两个部分是相对固定部分,时间属于词槽填充部分。此外为了与外部系统集成方便,还提供了服务端使用的接口触发方式,通过过接口精准触发机器人。
本实施例通过在设计画布上修改画布节点,进而完成机器人的设计,屏蔽句法分析、意图识别、执行引擎等技术细节,改为在线配置方式,降低了开发智能机器人应用的技术门槛。屏蔽技术细节,所有设计都通过在线配置的方式实现,屏蔽底层句法分析、命名实体识别、会话执行引擎等技术细节,降低机器人的开发难度,提高机器人的开发效率。
并且,本实施例通过在线设计,提供轻量级网页浏览器(web:网页浏览器)web设计器,支持编辑,撤销,恢复,重做等操作。所见即所得,以可视化方式直观展示机器人的执行流程。在线测试,支持对设计的会话机器人进行实时在线测试。动态发布,测试通过之后,一键发布机器人,用户可以直接使用。提供在线画布,实现了机器人执行流程的可视化在线设计和所见即所得,降低了开发难度,提高了开发效率。支持智能会话机器人在线测试,以及测试数据和画布节点的联动,有效提高了开发效率,减少流程错误。支持动态发布,机器人即改即生效,实现了需求的快速反馈。
本实施例涉及的机器人开发方法支持在线设计测试发布的会话机器人开发,有效的降低了会话机器人的设计开发难度,能够让运营、产品等非技术人员便捷高效的开发机器人。
综上,本发明实施例的有益效果为:
1.降低机器人的开发难度,提高机器人开发效率,缩短机器人开发时间。
2.生成的机器人经过测试后发布,提高机器人的使用性能,降低机器人故障率。
在本发明中,术语“第一”、“第二”、“第三”仅用于描述的目的,而不能理解为指示或暗示相对重要性;术语“多个”则指两个或两个以上,除非另有明确的限定。术语“安装”、“相连”、“连接”、“固定”等术语均应做广义理解,例如,“连接”可以是固定连接,也可以是可拆卸连接,或一体地连接;“相连”可以是直接相连,也可以通过中间媒介间接相连。对于本领域的普通技术人员而言,可以根据具体情况理解上述术语在本发明中的具体含义。
本发明的描述中,需要理解的是,术语“上”、“下”、“左”、“右”、“前”、“后”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本发明和简化描述,而不是指示或暗示所指的装置或单元必须具有特定的方向、以特定的方位构造和操作,因此,不能理解为对本发明的限制。
在本说明书的描述中,术语“一个实施例”、“一些实施例”、“具体实施例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或特点包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不一定指的是相同的实施例或实例。而且,描述的具体特征、结构、材料或特点可以在任何的一个或多个实施例或示例中以合适的方式结合。
以上仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (7)

1.一种机器人的开发方法,其特征在于,包括:
创建所述机器人的设计画布;
在所述设计画布上修改画布节点;
保存所述画布节点,并根据所述画布节点生成所述机器人;
测试所述机器人;
基于所述机器人通过测试,发布所述机器人;
所述在所述设计画布上修改画布节点,具体包括:
在所述设计画布上修改所述画布节点的开始节点、模板展示节点、收集问题节点、条件判断节点、网络请求节点、机器人流转节点、结束节点和反馈节点中的至少之一或其组合;
所述测试所述机器人,具体包括:
控制所述机器人的执行行为与所述画布节点联动;
根据所述执行行为与所述画布节点之间的联动关系,得到所述机器人的测试结果;
所述控制所述机器人的执行行为与所述画布节点联动,具体包括:
将与所述执行行为对应的所述画布节点突出显示在中心位置。
2.根据权利要求1所述的机器人的开发方法,其特征在于,所述在所述设计画布上修改画布节点,具体包括:
修改所述画布节点的内容;和/或
修改所述画布节点在所述设计画布上的位置;和/或
修改所述画布节点在所述设计画布上的连接关系。
3.根据权利要求1所述的机器人的开发方法,其特征在于,所述保存所述画布节点,并根据所述画布节点生成所述机器人,具体包括:
根据所述画布节点的内容和所述画布节点在所述设计画布上的连接关系,生成所述机器人。
4.根据权利要求1所述的机器人的开发方法,其特征在于,所述将与所述执行行为对应的所述画布节点突出显示在中心位置,具体包括:
计算所述画布节点的X轴坐标和Y轴坐标;
根据所述X轴坐标与所述Y轴坐标调整所述画布节点的显示位置;
所述X轴坐标的计算公式为:
X=-X1×scale+(canvaswidth-width×scale)/2;
所述Y轴坐标的计算公式为:
Y=-(Y1×scale-(canvasheight-height×scale)/2);
其中,X1为所述画布节点当前位置的横坐标,Y1为所述画布节点当前位置的纵坐标,canvaswidth为所述设计画布的宽度,canvasheight为所述设计画布的高度,scale为所述设计画布的缩放量,width为所述画布节点的宽度,height为所述画布节点的高度。
5.根据权利要求1所述的机器人的开发方法,其特征在于,所述基于所述机器人通过测试,发布所述机器人之后,还包括:
修改已经发布的所述机器人;
将修改后的所述机器人重新发布。
6.一种机器人的开发装置,其特征在于,包括:
存储器,存储有程序或指令;
处理器,执行所述程序或指令;
其中,所述处理器在执行所述程序或指令时,实现如权利要求1至5中任一项所述的机器人开发方法的步骤。
7.一种可读存储介质,其特征在于,包括:
所述可读存储介质存储有程序或指令,当所述程序或指令被执行时,实现如权利要求1至5中任一项所述的机器人开发方法的步骤。
CN202011390525.2A 2020-12-02 2020-12-02 机器人的开发方法、开发装置和可读存储介质 Active CN112405623B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202011390525.2A CN112405623B (zh) 2020-12-02 2020-12-02 机器人的开发方法、开发装置和可读存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011390525.2A CN112405623B (zh) 2020-12-02 2020-12-02 机器人的开发方法、开发装置和可读存储介质

Publications (2)

Publication Number Publication Date
CN112405623A CN112405623A (zh) 2021-02-26
CN112405623B true CN112405623B (zh) 2022-07-12

Family

ID=74829624

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011390525.2A Active CN112405623B (zh) 2020-12-02 2020-12-02 机器人的开发方法、开发装置和可读存储介质

Country Status (1)

Country Link
CN (1) CN112405623B (zh)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001353678A (ja) * 2000-06-12 2001-12-25 Sony Corp オーサリング・システム及びオーサリング方法、並びに記憶媒体
KR20120133270A (ko) * 2011-05-31 2012-12-10 (주) 알코 그래픽 기반의 로봇 제어 프로그램 개발 도구
CN108268255A (zh) * 2018-02-11 2018-07-10 遨博(北京)智能科技有限公司 用于编程机器人的方法和装置
CN109605366A (zh) * 2018-11-09 2019-04-12 中科新松有限公司 机器人图形化编程交互系统及机器人
CN109848985A (zh) * 2018-12-31 2019-06-07 深圳市越疆科技有限公司 一种机器人的图形编程方法、装置及智能终端

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9910761B1 (en) * 2015-06-28 2018-03-06 X Development Llc Visually debugging robotic processes
CN111488436B (zh) * 2019-01-29 2023-05-05 阿里巴巴集团控股有限公司 多轮对话模型的生成方法、测试方法、装置及电子设备
CN111597312A (zh) * 2020-04-07 2020-08-28 北京捷通华声科技股份有限公司 一种多轮对话脚本的生成方法和装置
CN111930912A (zh) * 2020-08-13 2020-11-13 携程计算机技术(上海)有限公司 对话管理方法及系统、设备和存储介质

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001353678A (ja) * 2000-06-12 2001-12-25 Sony Corp オーサリング・システム及びオーサリング方法、並びに記憶媒体
KR20120133270A (ko) * 2011-05-31 2012-12-10 (주) 알코 그래픽 기반의 로봇 제어 프로그램 개발 도구
CN108268255A (zh) * 2018-02-11 2018-07-10 遨博(北京)智能科技有限公司 用于编程机器人的方法和装置
CN109605366A (zh) * 2018-11-09 2019-04-12 中科新松有限公司 机器人图形化编程交互系统及机器人
CN109848985A (zh) * 2018-12-31 2019-06-07 深圳市越疆科技有限公司 一种机器人的图形编程方法、装置及智能终端

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
Microsoft Power Virtual Agents文档;Iaan D"Souza-Wiltshire等;《微软文档Microsoft Power Virtual Agents文档https://docs.microsoft.com/zh-cn/power-virtual-agents/》;20200922;概述部分:快速入门,在线创建和部署Power Virtual以及创作和编辑部分,管理主题 *

Also Published As

Publication number Publication date
CN112405623A (zh) 2021-02-26

Similar Documents

Publication Publication Date Title
CN108519967B (zh) 图表可视化方法、装置、终端和存储介质
CN103608779B (zh) 粘贴数据的或涉及粘贴数据的改进
CN104077137B (zh) 复合应用系统、方法和装置
CN109190209A (zh) 一种基于bim模型的弱关联方法及系统
JP7209306B2 (ja) テンプレートに基づくエクセル文書のオンライン作業システム
JP2009104229A (ja) 入力チェック装置および入力チェック方法
CN115576974B (zh) 数据处理方法、装置、设备和介质
US8230319B2 (en) Web-based visualization, refresh, and consumption of data-linked diagrams
CN112700348A (zh) 工艺数据处理方法、装置、存储介质与电子设备
CN114201615B (zh) 基于数据快照的科研数据变动回顾方法及服务器
CN111427577A (zh) 代码处理方法、装置及服务器
JP2003316808A (ja) 地図情報検索・集計・配信システム
KR102490941B1 (ko) 엑셀 도구를 이용한 온라인 보고서 작성 시스템
CN111459460B (zh) 一种业务数据处理方法及系统
CN112405623B (zh) 机器人的开发方法、开发装置和可读存储介质
CN113419711A (zh) 页面引导方法、装置、电子设备及存储介质
CN116245052A (zh) 一种图纸迁移方法、装置、设备和存储介质
JP2004046657A (ja) 計算支援方法とその装置、及び計算支援ソフト
CN111914002B (zh) 机房资源信息处理方法、装置和电子设备
CN114327709A (zh) 一种控制页面生成方法、装置、智能设备及存储介质
US9514554B2 (en) Computer readable recording medium recorded with graphics editing program, and graphics editing apparatus
US20040169684A1 (en) Linking images for navigation
CN110660463A (zh) 基于超声系统的报告编辑方法、装置、设备及存储介质
CN111783371B (zh) 基于网络的连接器设计方法及电子设备
CN117406985A (zh) 页面批量生成方法和装置

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
GR01 Patent grant
GR01 Patent grant