三种模型协同
基础模型负责通用代码理解,指令模型负责按指令完成复杂编程任务,长上下文窗口模型负责单行与多行自动补全,三者覆盖从学习到实际编码的不同环节。
拖动滑块完成拼图,通过后发送验证码
独立第三方 AI 评测平台 · 只用实测数据
Stability AI 推出的首个编程用生成式 AI 模型,主打长上下文与代码补全。
官网地址 https://stability.ai/blog/stablecode-llm-generative-ai-coding
StableCode 是 Stability AI 发布的首款面向编程的生成式 AI 产品,首发版本为 Stable Code Alpha 3B。它用三种模型协同工作:基础模型在 BigCode 的 stack-dataset(v1.2)及 Python、Go、Java、Javascript、C、markdown、C++ 等语言上训练,累计在 HPC 集群上训练了 560B tokens 的代码;指令模型基于约 120,000 条 Alpaca 格式的代码指令/响应对微调;长上下文模型支持 16,000 tokens 的上下文窗口。最突出的优势是上下文容量达到此前开源模型的 2-4 倍,可同时审阅或编辑约五个普通规模的 Python 文件;短板是它定位为 Alpha 版本,具体定价与商用授权范围尚未公布。
StableCode 由 Stability AI 推出,是其首个面向编程的 LLM 生成式 AI 产品,定位是协助程序员完成日常工作,同时为准备提升技能的新开发者提供学习工具。
产品由三种模型组成:基础模型先在 BigCode 的 stack-dataset(v1.2)的多种编程语言上训练,再用 Python、Go、Java、Javascript、C、markdown、C++ 等流行语言进一步训练,全部训练在 HPC 集群上完成,共消耗 560B tokens 的代码;指令模型在基础模型之上用约 120,000 条 Alpaca 格式的代码指令/响应对微调,用于解决复杂编程任务;长上下文窗口模型面向单行与多行自动补全,支持 16,000 tokens 上下文,可处理比此前开源模型多 2-4 倍的代码。
对普通学习者来说,它是一块入门编程的构建基块,可用来理解代码与获得补全建议;对开发者来说,长上下文适合一次性审阅或编辑多个文件,相当于同时处理约五个普通规模的 Python 文件;团队若需要指令跟随能力,可直接调用 Instruct 模型生成对给定指令的响应。
基础模型负责通用代码理解,指令模型负责按指令完成复杂编程任务,长上下文窗口模型负责单行与多行自动补全,三者覆盖从学习到实际编码的不同环节。
长上下文模型提供 16,000 tokens 上下文,可一次处理比此前开源模型多 2-4 倍的代码,相当于同时审阅或编辑约五个平均规模的 Python 文件。
基础模型先用 stack-dataset(v1.2)中的多种编程语言训练,再用 Python、Go、Java、Javascript、C、markdown、C++ 等流行语言继续训练。
指令模型基于约 120,000 条 Alpaca 格式的代码指令/响应对在基础模型上微调,面向复杂编程任务,可按给定指令生成响应。
长上下文窗口模型面向用户提供单行与多行自动补全建议,适合边写边看,也能支撑初学者在写代码时获得实时提示。
借助长上下文,可一次性处理约五个平均规模 Python 文件的代码量,适合需要跨文件审阅或修改的开发者使用。
采用 pass@1 与 pass@10 指标在 HumanEval 基准上评测,并与参数规模同为 3B 量级、训练 token 数相近的其他模型进行对比。
当你想让模型一次性读完多个 Python 文件、做跨文件审阅或批量补全时,StableCode 的 16,000 tokens 上下文是同类 3B 模型中少见的优势,处理量可达此前开源模型的 2-4 倍;当你的任务是按自然语言指令完成复杂编程步骤时,用经过约 120,000 条指令微调的 Instruct 模型更合适。需要注意的是,这只是 Alpha 版本,价格与商用授权范围都未公布,落地前需确认费用与授权;如果只是偶尔补全几行代码,长上下文的优势体现不明显,完全可以先用更轻量的方案。
面向想学编程的新手,单行与多行补全可以在写代码时即时提示,长上下文也方便一次看懂多个文件的关系。
16,000 tokens 上下文约等于五个平均规模 Python 文件,跨文件审阅或批量修改时优势明显。
Instruct 模型基于约 120,000 条指令/响应对微调,适合把复杂编程任务交给它按指令执行。
产品仍为 Alpha 版本,价格与商用授权范围未公布,需要走采购或法务流程的团队要先确认这两项。
| 指标 | 数值 | 数据来源 |
|---|---|---|
| 训练代码 token 数 | 560B tokens | Stability AI 官方博客 |
| 指令微调数据量 | 约 120,000 条 Alpaca 格式代码指令/响应对 | Stability AI 官方博客 |
| 上下文窗口 | 16,000 tokens | Stability AI 官方博客 |
| 上下文处理量对比 | 2-4X more than previously released open models | Stability AI 官方博客 |
| 模型参数规模 | 3B | Stability AI 官方博客 |
包含三个模型。基础模型先在 BigCode 的 stack-dataset(v1.2)的多语言上训练,再用 Python、Go、Java、Javascript、C、markdown、C++ 等流行语言继续训练;指令模型在基础模型上微调,用于解决复杂编程任务;长上下文窗口模型负责单行与多行自动补全。
长上下文窗口模型的上下文为 16,000 tokens,可处理的代码量是此前发布的开源模型的 2-4 倍,换算下来相当于同时审阅或编辑约五个平均规模的 Python 文件,适合需要跨文件查看和修改的场景。
基础模型累计在 HPC 集群上训练了 560B tokens 的代码;指令模型则在基础模型之上,用约 120,000 条 Alpaca 格式的代码指令/响应对进行微调,用于提升对具体指令的响应能力。
采用 HumanEval 基准上的标准 pass@1 与 pass@10 指标进行评测,并与参数规模相近(3B 量级)、训练 token 数相近的其他模型作对比,用来判断在这一量级中的相对表现。
不是。首发版本名称为 Stable Code Alpha 3B,从命名即可看出处于 Alpha 阶段,属于 Stability AI 首个面向编程的生成式 AI 产品,也定位为后续能力的构建基块。
官方博客页面在 2024 年 1 月 16 日更新,作者署名为 Joshua Lopez。