面向混合意图对话的领域特定语言的形式语义与实现
编程语言
2025-03-03 v1
摘要
人机对话在 kiosk(例如 ATM 取款或加油)、智能手机(例如安装和配置应用)以及网页(例如订机票)等场景中发挥着重要作用。某些人机对话涉及系统发起和用户发起动作之间的交互,这类对话称为*混合意图对话*,有时还涉及多个交错子对话的 pursuit,这些子对话以类似协程的方式编织在一起。然而,现有的对话编写语言难以简洁地表达这些对话。本文通过增添额外抽象,提高了基于函数应用、偏函数应用、 currying 和部分求值的对话编写语言*(dsl)*的表达能力,以支持简洁地指定基于任务的、混合意图的对话,这类对话类似于并发执行的协程。我们还形式化化了 dsl的语义——即简化和分阶段此类在语言中指定的对话的过程。我们展示,使用 dsl中新的抽象后,对话规范的压缩程度更高。我们将 dsl的形式语义在 Haskell 函数式编程实现中实现。该 Haskell 实现提供了一个概念证明,表明形式语义足以实现由该语言指定的对话系统。我们从实际(即案例研究)、概念(即与 VoiceXML 和 State Chart XML 等类似系统的比较)以及理论视角评估了 dsl。通过在案例研究中使用它来建模可以在并发分阶段的在线食品订购系统的部分,展示了本工作引入的新语言抽象的实际适用性。我们的结果表明,dsl 能够代表由多个并发子对话组成的对话,提高了此前研究中报告的对话表达式压缩率。我们预计,语言的扩展和语义的形式化化可以促进基于任务的、混合意图的人机对话系统在诸如 ATM 和交互式语音响应系统等各种领域的简洁指定和顺畅实现。
引用
@article{arxiv.2502.20529,
title = {The Formal Semantics and Implementation of a Domain-Specific Language for Mixed-Initiative Dialogs},
author = {Zachary S. Rowland and Saverio Perugini},
journal= {arXiv preprint arXiv:2502.20529},
year = {2025}
}