OpenCoder: 顶级代码大型语言模型的开放式食谱

OpenCoder 是一个开放的、可重现的代码 LLM 系列,包括 1.5B 和 8B 基本模型和聊天模型,支持中英文两种语言。 从零开始,OpenCoder 在由 90% 的原始代码和 10% 的代码相关网络数据组成的 2.5 万亿个标记上进行预训练,并在超过 450 万个高质量 SFT 示例上进行监督微调,最终达到顶级代码 LLM 的性能。 我们不仅提供模型权重和推理代码,还提供可重现的训练数据、完整的数据处理管道、严格的实验消融结果和详细的训练协议。 OpenCoder 让研究人员能够进行构建和创新,是您推动人工智能代码发展的开放式基础。

  • 完全开源: OpenCoder 不仅发布了模型权重和即将发布的推理代码,还发布了用于训练的完整数据清理代码,从而确保完全透明。 该版本包括高质量的合成数据、广泛的检查点集和超过 450 万个监督微调(SFT)条目的数据集,使 OpenCoder 成为目前开源最全面的模型之一。
  • 全面的实验分析: OpenCoder 通过对各种数据清理策略和训练流程进行广泛的消融研究,包括文件级和存储库级重复数据删除实验,进行了严格的测试,确保对模型性能进行全面的探索和验证。
  • 高质量合成数据: OpenCoder 提供完善的合成数据生成流程和 450 多万条 SFT 数据项,为模型训练和评估奠定了坚实的数据基础。
  • 卓越性能: OpenCoder 在多个语言模型基准测试中都取得了很高的性能,跻身于领先的开源代码模型之列。

基准测试

model OpenCoder-1.5B-Base OpenCoder-8B-Base
HumanEval(+) 54.3 (49.4) 66.5 (63.4)
MBPP(+) 70.6 (58.7) 79.9 (70.4)
BigCodeBench 24.5 40.5
BigCodeBench-Hard 5.4 9.5

推理代码示例

为了演示 OpenCoder-8B-Instruct 模型的功能,这里有一个推理代码示例,展示了如何用 Python 生成快速排序算法:

python 复制代码
import torch
from transformers import AutoTokenizer, AutoModelForCausalLM

model_name = "infly/OpenCoder-8B-Instruct"
model = AutoModelForCausalLM.from_pretrained(model_name,
                                             torch_dtype=torch.bfloat16,
                                             device_map="auto",
                                             trust_remote_code=True)
tokenizer = AutoTokenizer.from_pretrained(model_name, trust_remote_code=True)

messages=[
    { 'role': 'user', 'content': "write a quick sort algorithm in python."}
]

inputs = tokenizer.apply_chat_template(messages, add_generation_prompt=True, return_tensors="pt")

outputs = model.generate(inputs, max_new_tokens=512, do_sample=False)

result = tokenizer.decode(outputs[0][len(inputs[0]):], skip_special_tokens=True)
print(result)

结论

OpenCoder-8B-Instruct 模型对于任何希望生成高质量代码的人来说都是一个强大的工具。凭借其卓越的性能、开源许可和易用性,该模型是各种应用的绝佳选择。无论您是开发人员、研究人员,还是只是在寻找一款可靠的代码生成工具,OpenCoder-8B-Instruct 模型都绝对值得考虑。

感谢大家花时间阅读我的文章,你们的支持是我不断前进的动力。点赞并关注,获取最新科技动态,不落伍!🤗🤗🤗

相关推荐
液态不合群5 分钟前
信通院认证实锤:信创低代码,撕开企业数字化转型的虚假繁荣
人工智能·低代码·数字化
71777710 分钟前
能源行业 DevOps 平台选型与 Gitee 企业版适配性梳理
人工智能·gitee
宁渡AI大模型2 小时前
河南宁渡科技有限公司|宁渡课堂 AI 全栈面试分享,RAG 项目面试深挖问题解析
人工智能·机器学习·rag
锋行天下8 小时前
LangGraph 1.2+ 新特性:set_node_defaults,批量统一节点策略
人工智能
找方案8 小时前
AI+人力资源:AI招聘面试的兴起与争议
人工智能·面试·职场和发展
日常通勤穿搭8 小时前
2026 电商 AI 作图工具推荐|淘宝抖音跨境商品主图 AI 生图测评
人工智能·aigc·ai工具·电商美工
ZhengEnCi8 小时前
L2A-一个域名如何访问多台云服务器-子域名、路径前缀与Nginx反向代理选型指南
linux·人工智能
2601_963749109 小时前
越华环保集团污水站曝气系统边缘闭环控制架构与能耗优化实现
人工智能·架构
工业涂料百问9 小时前
【生产施工】系列(六)工业涂料固化方式怎么选?自然干 / UV / 电子束原理与选型实战
人工智能
葡萄城技术团队9 小时前
活字格 12.1 新特性解密:禁用自动回复后,AI 对话单元格也能流式输出了
人工智能