[Paper] PELLI:框架用于有效集成LLMs以实现高质量软件生成
发布: (2026年2月11日 GMT+8 20:51)
7 分钟阅读
原文: arXiv
Source: arXiv - 2602.10808v1
Overview
本文介绍了 PELLI(通过 LLM 迭代实现程序卓越),这是一个系统化框架,用于评估和将大语言模型(LLM)集成到软件生成流水线中。通过超越单一的“可靠性”指标,PELLI 量化了 LLM 生成代码在 可维护性、性能和可靠性 标准上的表现,覆盖多个领域,为开发者提供了一种在不牺牲代码质量的前提下利用 LLM 的具体方法。
关键贡献
- 综合质量框架 – PELI 定义了一个可重复、基于度量的流程,用于评估三个非功能性需求(NFR):可维护性、性能和可靠性。
- 多模型基准 – 本研究评估了五种广泛使用的 LLM(包括 GPT‑4‑Turbo、Gemini、Codex 和 ChatGPT 变体),而不是通常的一两个模型比较。
- 特定领域评估 – 实验覆盖三个真实世界的 Python 应用领域,展示了 PELI 对不同代码库的适应性。
- 提示设计影响分析 – 作者系统性地改变提示结构,以展示细微措辞变化如何影响下游代码质量。
- 可操作的指南 – 该框架为希望将 LLM 与人工审查周期结合的开发者提供了具体的集成建议。
方法论
- 定义质量指标 – 对于每个非功能需求(NFR),作者选择可衡量的代理(例如,用圈复杂度衡量可维护性,用运行时基准测试衡量性能,用静态分析警告衡量可靠性)。
- 迭代生成与分析 – LLM 生成代码片段,然后使用选定的指标自动检查。如果片段未达标,系统会优化提示并重新生成,循环直到满足质量阈值或达到停止条件。
- 提示变体 – 研究设计了多个提示模板(例如,“编写一个函数…”,“优化此代码…”),以隔离提示措辞的影响。
- 跨模型评估 – 每个提示变体在五个 LLM 上运行,生成结果矩阵,并汇总为每个 NFR 的总体得分。
- 领域选择 – 使用三个以 Python 为中心的领域(数据处理、Web API 和科学计算),以验证 PELI 在不同编码风格和库中的适用性。
结果与发现
| LLM (best prompt) | 可维护性 | 性能 | 可靠性 |
|---|---|---|---|
| GPT‑4‑Turbo | ★★★★☆ | ★★★★☆ | ★★★★☆ |
| Gemini | ★★★★☆ | ★★★★☆ | ★★★★☆ |
| Codex | ★★★☆☆ | ★★★☆☆ | ★★★☆☆ |
| ChatGPT‑3.5 | ★★☆☆☆ | ★★☆☆☆ | ★★☆☆☆ |
| LLaMA‑2‑13B | ★★☆☆☆ | ★★☆☆☆ | ★★☆☆☆ |
- GPT‑4‑Turbo 和 Gemini 在所有三个非功能需求(NFR)上始终优于其他模型,尽管差距并不大。
- 提示设计很关键:明确要求“可读、带测试覆盖的代码”的提示可将可维护性得分提升最高达 15 %。
- 领域差异:科学计算领域因使用数值库而获得最高的性能得分,而 Web‑API 领域因安全相关模式出现了最多的可靠性警告。
- 迭代细化 将平均环形复杂度降低了 12 %,静态分析警告降低了 18 %,相较于一次性生成。
实际影响
- 开发者工具 – IDE 插件可以嵌入 PELI 的度量套件,自动标记违反可维护性或可靠性阈值的 LLM 生成代码片段,在合并前进行提示。
- CI/CD 流水线 – 团队可以添加一个 PELI 阶段,运行迭代提示优化循环,确保只有满足预定义非功能需求(NFR)分数的代码才能进入测试。
- 提示工程最佳实践 – 论文的提示设计洞见提供了具体模板(“包含类型提示和文档字符串”),开发者可以直接复制粘贴,减少试错。
- 模型选择指南 – 组织可以在高风险代码生成任务中优先使用 GPT‑4‑Turbo 或 Gemini,而将更便宜的模型用于低风险的脚手架代码。
- 跨领域推广 – 因为 PELI 适用于各种 Python 项目,可在数据科学团队、后端服务和研究代码库中采用,实现组织内部 LLM 使用的标准化。
限制与未来工作
- 语言范围 – 本研究仅聚焦于 Python;将 PELI 扩展到静态类型语言(如 Java、Rust)可能会揭示不同的质量动态。
- 度量粒度 – 虽然所选代理指标已被广泛认可,但它们可能无法捕捉特定领域的质量方面,例如嵌入式系统中的内存安全。
- 人工在环成本 – 迭代细化循环可能会增加生成延迟;未来工作可以探索自适应停止准则或人类与 LLM 的混合审查。
- 更广泛的模型集合 – 仅评估了五种 LLM;加入新兴的开源模型可能会进一步细化比较格局。
- 长期维护 – 该框架目前仅评估单次生成周期;跟踪生成代码在后续提交中的演变仍是一个未解的研究方向。
作者
- Rasmus Krebs
- Somnath Mazumdar
论文信息
- arXiv ID: 2602.10808v1
- 类别: cs.SE, cs.AI
- 出版日期: 2026年2月11日
- PDF: 下载 PDF