CGCL-codes/naturalcc
NaturalCC: An Open-Source Toolkit for Code Intelligence
解决的问题
NaturalCC 是一个序列建模工具包,弥合了编程语言与自然语言之间的差距。它为研究人员和开发者提供了一个统一的框架,用于构建和评估代码生成、补全、摘要、检索、克隆检测和类型推断等软件工程任务的模型。
工作原理
基于 Fairseq 的注册机制构建,该工具包具有模块化和可扩展性。它与 Hugging Face Transformers 集成,支持 Code Llama、CodeT5、CodeGen 和 StarCoder 等大型代码模型。在训练方面,使用 NCCL 和 torch.distributed 实现多 GPU 高效计算,支持 FP32 和 FP16 精度。还包含用于使用 LLVM 等编译器工具进行特征提取的预处理工具和脚本。
适用对象
专为关注代码智能以及机器学习与软件工程交叉领域的 AI 研究人员和软件开发人员设计。
主要亮点
- 大模型支持:与 Code Llama 和 StarCoder 等前沿模型集成。
- 全面的数据集支持:内置对 Human-Eval、CodeSearchNet 和 Py150 等基准测试的支持。
- 高效训练:针对多 GPU 环境优化,支持半精度计算。
- 模块化架构:可轻松适配自定义模型、损失函数和训练流程。
相关
- 项目
- Dispatch
- Dispatch
- 项目
- 项目