大语言模型在领域特定建模语言与定理证明中的应用探索
1. 领域特定建模语言(DSMLs)的自然语言扩展
在软件开发中,将自然语言与领域特定建模语言(DSMLs)相结合是一种创新的尝试。以一个点按式冒险游戏的开发为例,通过这种结合实现了无代码开发。
在游戏开发过程中,ChatGPT不仅生成了按钮,还实现了 checkWin() 和 checkLoss() 函数,用于在每一步操作后检查游戏是否获胜或失败。若满足相应条件,将显示对应的胜利或失败界面。
1.1 模型学习与验证
部署生成的Web应用后,可以使用Malwa工具对实例进行学习。具体操作步骤如下:
1. 提供应用部署所在服务器的URL给Malwa工具。
2. 由于应用经过了插桩处理,无需为学习算法指定输入字母表,系统会通过分析和观察网站的文档对象模型(DOM)来逐步构建。
学习过程会生成一个十一状态的自动机,它代表了用户与Webstory产品用户界面交互的图形。为了简化模型检查和可视化分析,使用Moore自动机来表示模型,因为每个状态都与一个屏幕截图相关联,能准确反映用户与网站的交互。
通过可视化检查可以发现,生成的应用符合自然语言提示中制定的约束条件,游戏可以按预期进行。对于较大的模型,可以使用CTL模型检查来验证相关属性。目前,这需要手动指定预期公式,可能还需要识别动态生成的原子命题,未来计划实现这一过程的自动化。
1.2 相关工作与讨论
目前,大语言模型(LLMs)在软件工程中的应用尚处于早期阶段。大多数工作集中在传统软件工程背景下的支持
超级会员免费看
订阅专栏 解锁全文

被折叠的 条评论
为什么被折叠?



