<p>Generative artificial intelligence (AI) is boosting the use of LLM-based conversational assistants in many domains. In software engineering, numerous integrated development environments (IDEs) offer conversational assistants to improve productivity, leading to AI-IDEs. However, the integration of assistants into IDEs is often ad-hoc, rigid and opaque. Moreover, the assistant-generated code is frequently untraceable, and developers struggle to trust it. Given the diversity of software construction processes, AI-IDE architectures should be: (i) <i>open</i>, permitting the on-demand configuration of assistive tasks, and enabling the coordination of assistants potentially built atop diverse LLMs; (ii) <i>accountable</i>, tracing the assistant contributions and exploiting this information to obtain project insights; (iii) <i>trustworthy</i>, allowing the customisation of safeguard protocols for the assistive tasks. To fill this gap, we propose an open, extensible, accountable architecture for AI-IDEs, which incorporates validation loops for trustworthy assistance. We have implemented this architecture as an extensible plugin for Java development within Eclipse, called <span>Caret</span>. We have conducted offline evaluations and a user study, which demonstrate that <span>Caret</span> can be easily extended with new tasks, and its handling of context and validation loops results in effectiveness improvements up to 147.34% compared to the baseline. Overall, our architecture facilitates the seamless integration of LLM-based conversational assistants into IDEs, coping with new assistive demands for specific needs, offering detailed accountability of development contributions, and incorporating configurable validation loops for trustworthy development.</p>

错误:搜索内容不能为空,请输入英文关键词
错误:关键词超出字数限制,请精简
高级检索

Architecting open, accountable, and trustworthy AI-IDEs

  • Albert Contreras,
  • Esther Guerra,
  • Juan de Lara

摘要

Generative artificial intelligence (AI) is boosting the use of LLM-based conversational assistants in many domains. In software engineering, numerous integrated development environments (IDEs) offer conversational assistants to improve productivity, leading to AI-IDEs. However, the integration of assistants into IDEs is often ad-hoc, rigid and opaque. Moreover, the assistant-generated code is frequently untraceable, and developers struggle to trust it. Given the diversity of software construction processes, AI-IDE architectures should be: (i) open, permitting the on-demand configuration of assistive tasks, and enabling the coordination of assistants potentially built atop diverse LLMs; (ii) accountable, tracing the assistant contributions and exploiting this information to obtain project insights; (iii) trustworthy, allowing the customisation of safeguard protocols for the assistive tasks. To fill this gap, we propose an open, extensible, accountable architecture for AI-IDEs, which incorporates validation loops for trustworthy assistance. We have implemented this architecture as an extensible plugin for Java development within Eclipse, called Caret. We have conducted offline evaluations and a user study, which demonstrate that Caret can be easily extended with new tasks, and its handling of context and validation loops results in effectiveness improvements up to 147.34% compared to the baseline. Overall, our architecture facilitates the seamless integration of LLM-based conversational assistants into IDEs, coping with new assistive demands for specific needs, offering detailed accountability of development contributions, and incorporating configurable validation loops for trustworthy development.