Skip to main content
QUICK REVIEW

[论文解读] Agents in Software Engineering: Survey, Landscape, and Vision

Yanlin Wang, Wanjun Zhong|arXiv (Cornell University)|Sep 13, 2024
Multi-Agent Systems and Negotiation被引用 4
一句话总结

本文首次全面综述了软件工程领域基于大语言模型(LLM)的智能体,提出一个包含感知、记忆和行动三个模块的框架,以系统化智能体设计。研究识别出关键挑战,如多模态感知的差距、幻觉问题、多智能体协作效率低下以及缺乏领域特定知识库,同时提出未来研究方向,以通过相互促进推动LLM智能体与软件工程的融合。

ABSTRACT

In recent years, Large Language Models (LLMs) have achieved remarkable success and have been widely used in various downstream tasks, especially in the tasks of the software engineering (SE) field. We find that many studies combining LLMs with SE have employed the concept of agents either explicitly or implicitly. However, there is a lack of an in-depth survey to sort out the development context of existing works, analyze how existing works combine the LLM-based agent technologies to optimize various tasks, and clarify the framework of LLM-based agents in SE. In this paper, we conduct the first survey of the studies on combining LLM-based agents with SE and present a framework of LLM-based agents in SE which includes three key modules: perception, memory, and action. We also summarize the current challenges in combining the two fields and propose future opportunities in response to existing challenges. We maintain a GitHub repository of the related papers at: https://github.com/DeepSoftwareAnalytics/Awesome-Agent4SE.

研究动机与目标

  • 系统性地综述并分类现有关于软件工程领域基于大语言模型的智能体的研究。
  • 建立一个统一的概念框架,用于软件工程中的基于大语言模型的智能体,包括感知、记忆和行动三个模块。
  • 识别将基于大语言模型的智能体整合到软件工程任务中所面临的重大挑战,包括幻觉、缺乏代码特定知识库以及多智能体协作效率低下。
  • 提出未来研究方向,利用软件工程技术提升智能体能力,同时反向促进智能体研究的发展。
  • 整理并维护一个公开的GitHub代码库,收录相关论文,以服务研究社区。

提出的方法

  • 通过系统化数据收集与质量评估,筛选出115篇关于软件工程领域基于大语言模型的智能体的论文。
  • 提出一个面向软件工程中基于大语言模型的智能体的三模块框架:感知(处理多模态输入)、记忆(语义记忆、情景记忆、程序性记忆)和行动(内部与外部动作)。
  • 基于所提出的框架分析现有研究,识别智能体设计与应用中的差距与趋势。
  • 通过分析感知能力在文本之外的局限性、复杂软件工程任务中的推理能力不足,以及外部知识库的缺失,识别出主要挑战。
  • 探索软件工程与智能体研究之间的双向协同效应,包括利用软件工程技术(如测试、版本控制)提升智能体的可靠性与性能。
  • 基于识别出的挑战,提出未来研究方向,如构建代码特定知识库以及优化多智能体通信机制。

实验结果

研究问题

  • RQ1当前基于大语言模型的智能体在软件工程任务中如何应用?其设计模式的主导趋势是什么?
  • RQ2软件工程中基于大语言模型的智能体的核心组件是什么?它们如何与感知-记忆-行动框架相契合?
  • RQ3哪些主要挑战阻碍了基于大语言模型的智能体在软件工程工作流中的有效集成?
  • RQ4软件工程特定技术如何提升基于大语言模型的智能体的鲁棒性、效率与可靠性?
  • RQ5LLM智能体与软件工程领域之间存在哪些相互促进的发展机遇?

主要发现

  • 当前用于软件工程的基于大语言模型的智能体的感知模块主要局限于文本输入,对视觉或听觉等其他模态的探索极少。
  • 当前智能体的记忆模块包含语义记忆、情景记忆和程序性记忆,但缺乏在系统间标准化的实现与集成方式。
  • 行动模块涉及内部推理与外部交互,但外部动作通常依赖基础函数调用和HTTP交互,缺乏高级工具集成。
  • 在软件工程中,缺乏权威且针对代码的知识库作为智能体的外部检索源,存在显著空白。
  • LLM智能体中的幻觉问题(如虚构不存在的API)是严重问题,会损害可靠性,可通过LLM层面与智能体层面的优化手段缓解。
  • 在软件工程任务中,多智能体协作面临高计算与通信开销,表明亟需更高效的协调与资源管理技术。

更好的研究,从现在开始

从阅读论文到最终审阅,大幅缩短您的研究时间。

无需绑定信用卡

本解读由 AI 生成,并经人工编辑审核。