DataLearner 标志DataLearnerAI
最新AI资讯
大模型评测
大模型列表
大模型对比
资源中心
AI工具导航

加载中...

DataLearner 标志DataLearner AI

专注大模型评测、数据资源与实践教学的知识平台,持续更新可落地的 AI 能力图谱。

产品

  • 评测榜单
  • 模型对比
  • 数据资源

资源

  • 部署教程
  • 原创内容
  • 工具导航

关于

  • 关于我们
  • 隐私政策
  • 数据收集方法
  • 联系我们

© 2026 DataLearner AI. DataLearner 持续整合行业数据与案例,为科研、企业与开发者提供可靠的大模型情报与实践指南。

隐私政策服务条款
  1. 首页/
  2. 博客列表/
  3. 博客详情

MetaAI官宣开源编程大模型CodeLLaMA!基于LLaMA2微调!超越OpenAI的Codex,最高支持10万tokens输入!

2024/01/30 10:31:51
4,471 阅读
CodeLLaMALLaMA2编程大模型

-----------2024年1月30日更新----------------- CodeLlama系列最早是在2023年8月份发布的。但是不包含700亿参数规模的大模型。在2024年1月30日,MetaAI开源了700亿参数规模版本的CodeLlama-70B,包含三个版本:

CodeLlama-70B模型版本模型简介DataLearner模型信息卡地址
CodeLlama-70B-BaseCodeLlama-70B最基础的版本,支持不同的编程语言。https://www.datalearner.com/ai-models/pretrained-models/CodeLlama-70B-Base
CodeLlama-70B-Python针对Python编程语言优化的版本。https://www.datalearner.com/ai-models/pretrained-models/CodeLlama-70B-Python
CodeLlama-70B-Instruct指令优化的编程大模型,可以识别用户的文本指令生成代码。https://www.datalearner.com/ai-models/pretrained-models/CodeLlama-70B-Instruct

其中CodeLlama-70B-Instruct在HumanEval@ 1评分67.8,超过了GPT-4官方论文的成绩,详情可以参考上述模型信息卡地址内容。

据DataLearnerAI收集的大模型代码评测结果,我们可以看到CodeLlama-70B-Instruct成绩非常优秀。超过了了Gemini Pro:

数据来源: https://www.datalearner.com/ai-models/llm-coding-evaluation


MetaAI发布的LLaMA系列开源大语言模型已经是开源大模型领域最重要的力量了。相当多的所谓开源大模型都是基于这个模型微调得到。在上个月,LLaMA2发布,吸引了全球非常多的关注,也有相当多的后续模型基于LLaMA2进行优化。而今天MetaAI再次开源全新的编程大模型——CodeLLaMA系列,这是MetaAI第一次发布编程大模型,本次发布的CodeLLaMA共有9个版本,分别是CodeLLaMA系列、针对Python优化的CodeLLaMA-Python系列和针对指令优化的CodeLLaMA-Instruct系列,每一个版本都包含3个参数版本,分别是7B、13B和34B。

  • CodeLLaMA总体介绍
  • CodeLLaMA三个版本的比较
  • CodeLLaMA的训练细节
  • CodeLLaMA的评价结果
  • CodeLLaMA的相关资源和开源协议

CodeLLaMA总体介绍

Llama 2作为一个通用语言模型表现强劲,但直接应用到代码任务上还有进一步优化的空间。基于Llama 2进行代码专用的训练和调优,可以充分发挥其潜力。为此,MetaAI发布了CodeLLaMA系列。

CodeLLaMA是基于Llama 2基础模型继续训练和微调得到的代码专用语言模型。相比完全从头训练,继承Llama 2的预训练带来明显提升。

根据官网的论文介绍,CodeLLaMA的特点如下:

  • 通过长序列微调(long context fine-tuning),CodeLLaMA系列模型支持高达10万个tokens的输入文本,明显优于只支持4K的Llama 2。在非常长的代码文件中仍表现稳定。
  • 在Python代码生成基准测试数据集如HumanEval和MBPP上取得最先进的成绩,尤其是与开源模型相比,基本是最强的。同时也在多语言数据集MultiPL-E上表现强劲。
  • CodeLLaMA-Instruct通过自监督生成的代码数据进行指令细调,明显提高了模型的安全性、有用性和遵循指令的能力。
  • 采用开源和允许商业用途的许可,可以让更多研究人员和企业基于CodeLLaMA进行创新,推动整个技术领域的进步。

CodeLLaMA三个版本的比较

MetaAI发布的CodeLLaMA共包含3个版本9个模型,具体如下:

模型Parameters训练数据特点应用场景
CodeLLaMA7B, 13B, 34B通用代码数据基础版本,多语言通用代码生成任务
CodeLLaMA-Python7B, 13B, 34B以Python代码为主的数据集专门针对Python优化Python代码生成
CodeLLaMA-Instruct7B, 13B, 34B在CodeLLaMA基础上细调可遵循指令,更安全代码助手,更安全的代码生成

具体来说:

  • CodeLLaMA是通用的代码基础模型,适用于多种编程语言。
  • CodeLLaMA-Python使用了更多Python代码进行了专门针对Python的优化。
  • CodeLLaMA-Instruct在CodeLLaMA的基础上使用了人类指令和自监督代码数据进行了细调,可以更好地遵循指令,生成更安全、有用的代码,更适合部署到产品中。

三个版本都提供了7B、13B和34B参数量的选择。 所以用户可以根据实际使用场景和参数量预算选择不同的版本。CodeLLaMA系列覆盖了从通用到专业、从基础到细调的不同需求。

CodeLLaMA的训练细节

如前所述,CodeLLaMA是在LLaMA2基础上微调得到。具体来说,CodeLLaMA系列是在原有LLaMA2基础上增加了5000亿tokens的数据集微调得到,这5000亿tokens数据中85%是代码数据,与代码有关的自然语言处理部分8%,数据集大小895GB。

而CodeLLaMA-Python系列则是在CodeLLaMA系列基础上继续增加1000亿tokens数据集微调得到。其中Python代码占75%。这部分数据集磁盘空间79GB。

CodeLLaMA的评价结果

MetaAI在多个测试中做了评测,主要结果如下:

模型参数量HumanEval Pass@1HumanEval Pass@10HumanEval Pass@100MBPP Pass@1MBPP Pass@10MBPP Pass@100
code-cushman-00112B33.5%--45.9%--
GPT-3.5 (ChatGPT)-48.1%--52.2%--
GPT-4-67.0%-----
PaLM540B26.2%-88.4%47.0%--
PaLM-Coder540B35.9%-88.4%47.0%--
PaLM 2-S-37.6%-88.4%50.0%--
StarCoder Base15.5B30.4%--49.0%--
StarCoder Python15.5B33.6%--52.7%--
StarCoder Prompted15.5B40.8%--49.5%--
Llama 27B12.2%25.2%44.4%20.8%41.8%65.5%
Llama 213B20.1%34.8%61.2%27.6%48.1%69.5%
Llama 234B22.6%47.0%79.5%33.8%56.9%77.6%
Llama 270B30.5%59.4%87.0%45.4%66.2%83.1%
Code Llama7B33.5%59.6%85.9%41.4%66.7%82.5%
Code Llama13B36.0%69.4%89.8%47.0%71.7%87.1%
Code Llama34B48.8%76.8%93.0%55.0%76.2%86.6%
Code Llama - Python7B38.4%70.3%90.6%47.6%70.3%84.8%
Code Llama - Python13B43.3%77.4%94.1%49.0%74.0%87.6%
Code Llama - Python34B53.7%82.8%94.7%56.2%76.4%88.2%
Code Llama - Instruct7B34.8%64.3%88.1%44.4%65.4%76.8%
Code Llama - Instruct13B42.7%71.6%91.6%49.4%71.2%84.1%
Code Llama - Instruct34B41.5%77.2%93.5%57.0%74.6%85.4%
从表格可以看出:
  • 对比不同模型,CodeLLaMA系列模型的表现明显优于其他同规模模型,尤其是34B参数的CodeLLaMA直接超越除了GPT-4的所有模型。
  • 在CodeLLaMA系列内部,CodeLLaMA-Python由于使用了更多Python代码微调,其表现又略优于原始的CodeLLaMA。
  • 参数量的增加可以较明显地提升CodeLLaMA系列模型的效果。例如在HumanEval数据集上,CodeLLaMA从7B到34B参数时Pass@ 1提高了15.3%。
  • Pass@ 10和Pass@ 100的指标高于Pass@ 1,说明CodeLLaMA生成的代码质量较高,排名靠前的候选样本更可能是正确的。
  • CodeLLaMA-Instruct相比CodeLLaMA普遍效果略低,这可能是由于其训练目标更注重安全性和遵循指令。但整体表现仍强劲。

总体来说,CodeLLaMA系列模型在公开可用的代码生成语言模型中取得了领先的效果。而且可以看到它比Codex和PaLM-Coder的表现都要好!

CodeLLaMA的相关资源和开源协议

CodeLLaMA系列与LLaMA2的开源协议完全一样,可以免费商用授权。不过目前没有把预训练结果放到HuggingFace上,而是要去官网申请,申请速度也很快。

具体的代码地址和其它信息参考DataLearner模型信息卡:

模型名称DataLearner信息卡地址
CodeLLaMA-7Bhttps://www.datalearner.com/ai-models/pretrained-models/CodeLLaMA-7B
CodeLLaMA-13Bhttps://www.datalearner.com/ai-models/pretrained-models/CodeLLaMA-13B
CodeLLaMA-34Bhttps://www.datalearner.com/ai-models/pretrained-models/CodeLLaMA-34B
CodeLLaMA-Python-7Bhttps://www.datalearner.com/ai-models/pretrained-models/CodeLLaMA-Python-7B
CodeLLaMA-Python-13Bhttps://www.datalearner.com/ai-models/pretrained-models/CodeLLaMA-Python-13B
CodeLLaMA-Python-34Bhttps://www.datalearner.com/ai-models/pretrained-models/CodeLLaMA-Python-34B
CodeLLaMA-Instruct-7Bhttps://www.datalearner.com/ai-models/pretrained-models/CodeLLaMA-Instruct-7B
CodeLLaMA-Instruct-13Bhttps://www.datalearner.com/ai-models/pretrained-models/CodeLLaMA-Instruct-13B
CodeLLaMA-Instruct-34Bhttps://www.datalearner.com/ai-models/pretrained-models/CodeLLaMA-Instruct-34B

官方预训练结果申请地址:https://ai.meta.com/resources/models-and-libraries/llama-downloads/

DataLearner 官方微信

欢迎关注 DataLearner 官方微信,获得最新 AI 技术推送

DataLearner 官方微信二维码
返回博客列表

相关博客

  • Meta即将推出开源的CodeLLaMA:一种新的编程AI模型
  • UWMadison前统计学教授详解大模型训练最重要的方法RLHF,RLHF原理、LLaMA2的RLHF详解以及RLHF替代方法
  • 大模型领域最著名开源模型小羊驼Vicuna升级!Vicuna发布1.5版本,可以免费商用了!最高支持16K上下文!
  • Llama2模型量化结果地址
  • 重磅!Meta发布LLaMA2,最高700亿参数,在2万亿tokens上训练,各项得分远超第一代LLaMA~完全免费可商用!
  • 阿里开源Qwen3-Coder-Next:专为Agentic Coding而生的80B MoE的编程大模型,激活参数仅3B!
  • MiniMaxAI开源MiniMax M2模型:Artificial Analysis评测显示综合智能得分超过Claude Opus 4.1,开源第一,全球第五。
  • 阿里开源全新编程大模型Qwen3-Coder-480B-A35B,官方宣称其编程水平接近Claude Sonnet 4,免费开源可商用,同时开源Claude Code免费平替选择Qwen Code

热门博客

  • 1Dirichlet Distribution(狄利克雷分布)与Dirichlet Process(狄利克雷过程)
  • 2回归模型中的交互项简介(Interactions in Regression)
  • 3贝塔分布(Beta Distribution)简介及其应用
  • 4矩母函数简介(Moment-generating function)
  • 5普通最小二乘法(Ordinary Least Squares,OLS)的详细推导过程
  • 6使用R语言进行K-means聚类并分析结果
  • 7深度学习技巧之Early Stopping(早停法)
  • 8手把手教你本地部署清华大学的ChatGLM-6B模型——Windows+6GB显卡本地部署