【新智元导读】「Stable」家族又上新了!全新编码工具StableCode,最大支持16000上下文。
继文生图Stable Diffusion、SDXL1.0、语言模型StableLM之后,独角兽Stability AI又放大招了。
刚刚,Stability AI宣布推出,首个用于编码的生成式AI产品——StableCode。
StableCode提供了三种不同模型:通用基本模型、指令模型,已经支持多达16,000个token的长上下文窗口模型。
目前,它能够支持Python、Go、Java、JavaScript、C、markdown和C++编程语言的开发。
建在BigCode之上
具体来讲,StableCode通过使用3种不同的模型,来帮助程序员们编码,从而提高效率。
我们都知道,训练任何大模型都依赖于数据,对于StableCode,这些数据来自BigCode项目。
其实,使用BigCode作为LLM生成AI代码工具的基础并不是一个新想法。
5月,HuggingFace和ServiceNow早就推出了向公众开放的StarCoder LLM,它就是基于BigCode打造的。
基础模型首先在BigCode的堆栈数据集(v1.2)中的各种编程语言上进行训练。
Stability AI的首席研究科学家Nathan Cooper在采访中表示,StableCode的训练涉及对BigCode数据的重要过滤和清理。
然后,再使用Python、Go、Java、Javascript、C、markdown和C++等流行语言上进行进一步训练。
总的来说,Stability AI在HPC集群中560亿的token上训练了模型。
基础模型训练完成后,指令模型针对特定用例进行调整,以帮助解决复杂的编程任务。
大约120,000个以Alpaca格式的代码指令/响应对在基础模型上进行了训练。
使用StableCode Instruct生成对给定指令的响应代码
16000上下文,5个Python文件同编辑
StableCode 是那些希望学习更多编码知识的人的理想构件,而更长上下文窗口模型则是确保为开发者提供单行和多行自动完成建议的完美助手。
该模型可同时处理更多代码(比之前发布的上下文窗口为16,000个token的开放模型多2-4 倍)。
这样,开发者们可以同时查看或编辑相当于5个平均大小的Python文件。
Cooper解释说,更长的上下文可以使用更专业和复杂的代码生成提示。这也意味着开发者们可以让StableCode查看包含多个文件的中型代码库,以帮助理解和生成新代码。