Skill Discovery for Software Scripting Automation via Offline Simulations with LLMs

📄 arXiv: 2504.20406v1 📥 PDF

作者: Paiheng Xu, Gang Wu, Xiang Chen, Tong Yu, Chang Xiao, Franck Dernoncourt, Tianyi Zhou, Wei Ai, Viswanathan Swaminathan

分类: cs.AI, cs.SE

发布日期: 2025-04-29


💡 一句话要点

提出基于离线模拟和LLM的软件脚本自动化技能发现框架

🎯 匹配领域: 支柱九:具身大模型 (Embodied Foundation Models)

关键词: 软件脚本自动化 大型语言模型 离线模拟 技能发现 图神经网络

📋 核心要点

  1. 现有脚本创建依赖编程知识和API熟悉度,对非专业用户构成障碍,LLM运行时代码生成存在安全、耗时和成本高等问题。
  2. 提出离线模拟框架,利用LLM和公开脚本指南,生成并验证软件特定技能集,降低用户脚本编写门槛。
  3. 实验表明,该框架显著提高了Adobe Illustrator自动化成功率,缩短响应时间,并节省了运行时token成本。

📝 摘要(中文)

本文提出了一种离线模拟框架,利用大型语言模型(LLM)和公开的脚本指南,为软件定制特定技能集,即一组经过验证的脚本。该框架包含两个部分:(1) 任务创建,通过自顶向下的功能指导和自底向上的API协同探索来生成有用的任务;(2) 技能生成与试验,基于执行反馈来改进和验证脚本。为了有效地探索广泛的API,引入了基于图神经网络(GNN)的链接预测模型来捕获API协同作用,从而生成涉及未充分利用的API的技能,并扩展技能集的多样性。在Adobe Illustrator上的实验表明,与传统的运行时代码生成相比,该框架显著提高了自动化成功率,缩短了响应时间,并节省了运行时token成本。这是首次尝试使用软件脚本接口作为基于LLM的系统的试验平台,突出了在受控环境中利用执行反馈的优势,并为在专用软件领域中使AI能力与用户需求保持一致提供了宝贵的见解。

🔬 方法详解

问题定义:现有软件脚本自动化方法需要用户具备专业的编程知识和对特定API的深入了解,这对于非专业用户来说是一个巨大的障碍。虽然大型语言模型(LLM)可以根据自然语言查询生成代码,但运行时代码生成存在诸多问题,包括代码未经验证带来的安全风险、较长的响应时间以及较高的计算成本。因此,如何利用LLM的能力,在保证安全性和效率的前提下,降低软件脚本自动化的门槛,是本文要解决的核心问题。

核心思路:本文的核心思路是利用离线模拟环境,预先生成并验证一系列软件脚本,构建一个软件特定的技能集。用户可以通过简单的自然语言查询,直接调用技能集中的脚本,而无需自行编写代码。这种方法避免了运行时代码生成带来的问题,同时降低了用户对编程知识的要求。

技术框架:该框架主要包含两个阶段:任务创建和技能生成与试验。在任务创建阶段,首先利用自顶向下的功能指导和自底向上的API协同探索来生成有用的任务。自顶向下方法基于软件的功能文档,生成与常见功能相关的任务。自底向上方法则探索API之间的协同作用,发现潜在的有用任务。在技能生成与试验阶段,利用LLM生成与任务相关的脚本,并在模拟环境中执行这些脚本。根据执行反馈,对脚本进行迭代改进和验证,最终得到一组经过验证的技能。

关键创新:该论文的关键创新在于利用图神经网络(GNN)来捕获API之间的协同作用。传统的API探索方法往往只关注单个API的功能,而忽略了API之间的潜在联系。通过构建API之间的关系图,并利用GNN进行链接预测,可以发现未被充分利用的API组合,从而生成更具多样性和实用性的技能。

关键设计:GNN模型用于预测API之间的链接概率,从而指导API协同探索。损失函数采用二元交叉熵损失,优化目标是最大化真实链接的预测概率,同时最小化不存在链接的预测概率。GNN模型的输入是API的嵌入向量,这些向量可以通过预训练或随机初始化得到。GNN模型的输出是API之间存在链接的概率,该概率用于指导API组合的生成。

🖼️ 关键图片

fig_0
fig_1

📊 实验亮点

实验结果表明,与传统的运行时代码生成方法相比,该框架在Adobe Illustrator上的自动化成功率显著提高,响应时间大幅缩短,并且节省了大量的运行时token成本。具体而言,自动化成功率提升了XX%,响应时间缩短了YY%,token成本降低了ZZ%(具体数据未知)。

🎯 应用场景

该研究成果可应用于各种软件自动化场景,例如办公软件、图像处理软件和音视频编辑软件等。通过构建特定软件的技能集,可以显著降低用户使用软件的门槛,提高工作效率。未来,该技术还可以扩展到其他领域,例如机器人控制和智能家居等,实现更广泛的自动化应用。

📄 摘要(原文)

Scripting interfaces enable users to automate tasks and customize software workflows, but creating scripts traditionally requires programming expertise and familiarity with specific APIs, posing barriers for many users. While Large Language Models (LLMs) can generate code from natural language queries, runtime code generation is severely limited due to unverified code, security risks, longer response times, and higher computational costs. To bridge the gap, we propose an offline simulation framework to curate a software-specific skillset, a collection of verified scripts, by exploiting LLMs and publicly available scripting guides. Our framework comprises two components: (1) task creation, using top-down functionality guidance and bottom-up API synergy exploration to generate helpful tasks; and (2) skill generation with trials, refining and validating scripts based on execution feedback. To efficiently navigate the extensive API landscape, we introduce a Graph Neural Network (GNN)-based link prediction model to capture API synergy, enabling the generation of skills involving underutilized APIs and expanding the skillset's diversity. Experiments with Adobe Illustrator demonstrate that our framework significantly improves automation success rates, reduces response time, and saves runtime token costs compared to traditional runtime code generation. This is the first attempt to use software scripting interfaces as a testbed for LLM-based systems, highlighting the advantages of leveraging execution feedback in a controlled environment and offering valuable insights into aligning AI capabilities with user needs in specialized software domains.