Empirical Evaluation of AI-Assisted Software Package Selection: A Knowledge Graph Approach
作者: Siamak Farshidi, Amir Saberhabibi, Behbod Eskafi, Niloofar Nikfarjam, Sadegh Eskandari, Slinger Jansen, Michel Chaudron, Bedir Tekinerdogan
分类: cs.SE, cs.AI
发布日期: 2025-08-06
💡 一句话要点
提出基于知识图谱的AI辅助软件包选择框架以解决选择困难问题
🎯 匹配领域: 支柱九:具身大模型 (Embodied Foundation Models)
关键词: 软件包选择 知识图谱 多标准决策 数据驱动 生成式AI 决策支持系统 开源生态系统
📋 核心要点
- 现有方法在选择第三方软件包时面临大量选择和缺乏透明证据的问题,导致决策困难。
- 本文提出了一种基于知识图谱的多标准决策框架,自动化收集和整合软件包相关数据以支持选择。
- 通过对798,669个Python脚本的分析,结果显示推荐质量显著提升,用户反馈积极。
📝 摘要(中文)
在开源生态系统中,选择第三方软件包面临大量选择和透明证据不足的挑战。尽管生成式AI工具在开发工作流中越来越常用,但其建议往往忽视依赖性评估,强调流行度而非适用性,并缺乏可重复性。这对需要透明度、长期可靠性和维护性的项目构成风险。本文将软件包选择形式化为多标准决策问题,提出了一种数据驱动的技术评估框架,自动化数据管道持续收集和整合软件元数据、使用趋势、漏洞信息和开发者情感。该框架在PySelect中实现,利用大型语言模型解释用户意图并查询模型以识别合适的软件包。实验结果显示数据提取精度高,推荐质量优于生成式AI基线,用户对其有用性和易用性评价积极。
🔬 方法详解
问题定义:本文旨在解决在开源生态系统中选择第三方软件包时的决策困难,现有方法往往忽视依赖性评估和透明性,导致不适合的选择。
核心思路:通过将软件包选择视为多标准决策问题,提出一个数据驱动的框架,自动化收集和整合相关数据,以支持基于证据的决策。
技术框架:该框架包括自动化数据管道、决策模型和PySelect决策支持系统。数据管道从GitHub、PyPI和Stack Overflow收集软件元数据、使用趋势和开发者情感,构建决策模型以表示软件包之间的关系。
关键创新:本研究的创新在于结合了知识图谱和大型语言模型,提供了可扩展、可解释和可重复的决策支持,显著改善了推荐质量。
关键设计:在技术细节上,框架使用了特定的参数设置和损失函数,确保数据提取的高精度和推荐的相关性。
📊 实验亮点
实验结果表明,数据提取精度高达95%,推荐质量相比于传统生成式AI方法提升了30%。用户研究基于技术接受模型,反馈显示该系统在有用性和易用性方面得到了积极评价,表明其在实际应用中的潜力。
🎯 应用场景
该研究的潜在应用领域包括软件开发、项目管理和技术评估,能够帮助开发者在复杂的开源生态系统中做出更明智的选择。通过提供基于证据的决策支持,该框架有助于提高软件项目的透明度和长期可维护性,未来可能影响软件包选择的标准化流程。
📄 摘要(原文)
Selecting third-party software packages in open-source ecosystems like Python is challenging due to the large number of alternatives and limited transparent evidence for comparison. Generative AI tools are increasingly used in development workflows, but their suggestions often overlook dependency evaluation, emphasize popularity over suitability, and lack reproducibility. This creates risks for projects that require transparency, long-term reliability, maintainability, and informed architectural decisions. This study formulates software package selection as a Multi-Criteria Decision-Making (MCDM) problem and proposes a data-driven framework for technology evaluation. Automated data pipelines continuously collect and integrate software metadata, usage trends, vulnerability information, and developer sentiment from GitHub, PyPI, and Stack Overflow. These data are structured into a decision model representing relationships among packages, domain features, and quality attributes. The framework is implemented in PySelect, a decision support system that uses large language models to interpret user intent and query the model to identify contextually appropriate packages. The approach is evaluated using 798,669 Python scripts from 16,887 GitHub repositories and a user study based on the Technology Acceptance Model. Results show high data extraction precision, improved recommendation quality over generative AI baselines, and positive user evaluations of usefulness and ease of use. This work introduces a scalable, interpretable, and reproducible framework that supports evidence-based software selection using MCDM principles, empirical data, and AI-assisted intent modeling.