Hugging Face 和 ServiceNow 合作的 BigCode 项目推出了一个代码大模型 StarCoder. 据说表现超过一些闭源模型, 例如: 早期的 Copilot.
BigCode 简介
BigCode 是一个开放的科学合作项目, 致力于负责任地开发用于代码的大型语言模型, 通过开放治理来赋能机器学习和开源社区.
代码语言模型(Code LLMs)可以完成和合成代码, 无论是来自其他代码片段还是自然语言描述, 并适用于各种领域, 任务和编程语言. 例如, 这些模型可以帮助专业开发人员和公民开发人员构建新的应用程序.
BigCode 的研究主题包含:
- 构建代码语言模型的代表性评估套件, 涵盖多种任务和编程语言.
- 开发更快的训练和推理代码语言模型的方法.
- 代码语言模型的法律, 伦理和治理方面的问题.
由于代码语言模型是使用开源社区的数据开发的, BigCode 认为开放治理可以帮助确保这些模型对更大的开发者社区有益. 例如, 让代码创作者能够决定自己的源代码是否包含在训练数据中, 并在模型输出接近训练数据的副本时给予开发者归属权.
StarCoder 简介
StarCoder 是一个拥有 155 亿参数的代码语言模型, 使用 80 多种编程语言的 1 万亿标记进行训练. 它使用 MQA (多任务自监督学习) 进行高效的生成, 具有 8192 个标记的上下文窗口, 并能够进行中间填充.
模型
- StarCoder: 基于 Python 数据集进一步微调 StarCoderBase 所得的模型 huggingface.co/bigcode/sta…
- StarCoderBase: 基于来自 The Stack 数据集的 80 多种编程语言训练而得的模型 huggingface.co/bigcode/sta…
- StarEncoder: 在 The Stack 上训练的编码器模型 huggingface.co/bigcode/sta…
- StarPii: 基于 StarEncoder 的 PII 检测器 huggingface.co/bigcode/sta…
工具和应用
- StarCoder Chat: 和 StarCoder 聊天 huggingface.co/chat/?model…
- VSCode Extension: 使用 StarCoder 补全代码的 VSCode 插件 marketplace.visualstudio.com/items?itemN…
- StarCoder Playground: 用 StarCoder 写代码 huggingface.co/spaces/bigc…
- StarCoder Editor: 用 StarCoder 编辑代码 huggingface.co/spaces/bigc…
SantaCoder 简介
SantaCoder, 又称为 smol StarCoder, 与 StarCoder 相同的架构, 但仅在 Python, Java 和 JavaScript 上进行了训练.
- SantaCoder: SantaCoder 模型 huggingface.co/bigcode/san…
- SantaCoder Demo: 用 SantaCoder 写代码 huggingface.co/spaces/bigc…
- SantaCoder Search: 在预训练数据集中搜索代码 huggingface.co/spaces/bigc…
- SantaCoder License: SantaCoder 的 OpenRAIL 许可证 huggingface.co/spaces/bigc…