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 模型都绝对值得考虑。

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

相关推荐
火山引擎开发者社区2 小时前
火山 PostgreSQL Serverless × 飞书妙搭:把 AI 装进数据库,一句话唤醒数据智能
人工智能
必须会一定会5 小时前
Agent Plugins 1.0实战:plugin.json、skills、mcp.json目录结构与迁移
开发语言·人工智能·ai编程
CTA量化套保5 小时前
近期零基础量化学习:先分阶段,再用 AI 检查缺口
人工智能·python
Justin3go5 小时前
AI 引荐流量报告:哪些独立产品正在从 ChatGPT 获客?
人工智能·seo
风流 少年5 小时前
Spring AI 2.0:SSE
java·人工智能·spring
深小乐6 小时前
AI 项目上线:折腾 Cloudflare,真香也藏不少坑
人工智能
ACP广源盛139246256736 小时前
Qwen3.8‑2.4T 开源落地@ACP#国产 MoE 私有化部署下 GSV2221 视频转换芯片机遇分析
大数据·数据库·人工智能
冬奇Lab7 小时前
开源项目第190期:claude-video — 给 Claude 装上「眼睛」看视频,一条命令分析 YouTube/Loom/本地视频
人工智能·开源·claude
七牛开发者7 小时前
为什么 Go 很适合 AI 辅助开发?
数据库·人工智能·python·elasticsearch·log4j