4 个月前

优化大型语言模型以实现OpenAPI代码补全

优化大型语言模型以实现OpenAPI代码补全

摘要

近期在大型语言模型(LLMs)及其在代码生成任务中的应用方面取得了显著进展,这极大地重塑了软件开发领域。尽管主流编程语言中的代码补全解决方案表现出色,但在应用于不太常见的格式(如 OpenAPI 定义)时,其性能仍显不足。本研究评估了流行的商业代码补全工具 GitHub Copilot 在 OpenAPI 补全任务中的表现,并提出了一套基于 Meta 开源模型 Code Llama 的任务特定优化方法。研究中提出的一个语义感知的 OpenAPI 补全基准用于进行一系列实验,通过这些实验分析了各种提示工程和微调技术对 Code Llama 模型性能的影响。尽管使用的参数比 GitHub Copilot 所依赖的 Codex 模型少 25 倍,经过微调的 Code Llama 模型在正确性方面仍实现了高达 55.2% 的提升。此外,本研究还提出了一种广泛使用的代码填充训练技术的改进方法,解决了当模型接收到的上下文大小小于训练时使用的上下文大小时性能下降的问题。该数据集、基准测试和模型微调代码均已公开发布。

代码仓库

基准测试

基准方法指标
openapi-code-completion-on-openapi-codeCode Llama 7B
Correctness, avg., %: 31.1
Correctness, max., %: 36
Validness, avg., %: 60.7
Validness, max., %: 64
openapi-code-completion-on-openapi-codeCode Llama 7B, fine-tuned with document splitting
Correctness, avg., %: 34
Correctness, max., %: 42
Validness, avg., %: 69.1
Validness, max., %: 76
openapi-code-completion-on-openapi-codeGitHub Copilot
Correctness, avg., %: 29
Correctness, max., %: 29
Validness, avg., %: 68
Validness, max., %: 68
openapi-code-completion-on-openapi-codeCode Llama 7B, fine-tuned at 4096 tokens
Correctness, avg., %: 32
Correctness, max., %: 45
Validness, avg., %: 63.1
Validness, max., %: 84

用 AI 构建 AI

从想法到上线——通过免费 AI 协同编程、开箱即用的环境和市场最优价格的 GPU 加速您的 AI 开发

AI 协同编程
即用型 GPU
最优价格
立即开始

Hyper Newsletters

订阅我们的最新资讯
我们会在北京时间 每周一的上午九点 向您的邮箱投递本周内的最新更新
邮件发送服务由 MailChimp 提供
优化大型语言模型以实现OpenAPI代码补全 | 论文 | HyperAI超神经