利用大型语言模型自动更新Android已弃用API的使用
软件工程
2024-11-08 v1
摘要
Android应用依赖应用程序编程接口(APIs)来访问Android设备的各种功能。然而这些API会定期更新以纳入新功能,而旧API则被弃用。尽管使用推荐的替换API更新已弃用API的使用已被广泛认可,但这并非易事。因此,已弃用API的使用在Android应用中持续存在并在实践中导致兼容性问题。本文介绍了GUPPY,一种利用大型语言模型(LLMs)自动更新Android已弃用API使用的方法。通过精心设计的提示,GUPPY利用最强大的LLM之一GPT-4来更新已弃用API的使用,确保在旧版和新版API级别之间的兼容性。此外,GUPPY使用GPT-4生成测试、识别不正确的更新,并通过迭代过程优化API使用,直到测试通过或达到指定限制。我们在360个基准API使用(来自20个已弃用API)以及来自最新API级别33和34的额外156个已弃用API使用上的评估表明,GUPPY优于最先进的技术。
引用
@article{arxiv.2411.04387,
title = {Automated Update of Android Deprecated API Usages with Large Language Models},
author = {Tarek Mahmud and Bin Duan and Meiru Che and Awatif Yasmin and Anne H. H. Ngu and Guowei Yang},
journal= {arXiv preprint arXiv:2411.04387},
year = {2024}
}