小模型,大成效
与需要数十亿参数和强大计算能力的大型语言模型(LLM)不同,White-Basilisk模型非常紧凑,仅有2亿个参数,然而,在多个用于漏洞检测的公共基准测试中,它的表现优于规模超过其30倍的模型,这至少在专门的安全任务方面,对“模型越大越好”的观点提出了质疑。
White-Basilisk的设计注重长距离代码分析。现实世界中的漏洞往往涉及多个文件或函数,许多现有模型在处理这一问题时存在困难,因为它们处理上下文的能力有限,相比之下,White-Basilisk能够分析长达128000个标记的序列,足以一次性评估整个代码库。
首席研究员Ioannis Lamprou表示:“我们克服的核心挑战源于AI模型处理代码的基本局限性。大多数漏洞并非孤立存在,它们常常跨越多个函数甚至整个文件,然而,传统的基于Transformer的AI模型存在我们所说的‘二次复杂性’问题,即随着代码长度的增加,其计算需求呈指数级增长,这使得它们在分析大型现实世界代码库时很不实用。”
专为高效和上下文处理而打造
为了克服这些局限性,研究团队创建了一种由三个组件组成的混合架构。Mamba层负责处理局部代码模式,定制的线性注意力机制保持全局上下文,专家混合(Mixture of Experts)系统根据任务将输入路由到模型的不同部分。
Lamprou说:“虽然之前的研究已经探索了解决这一复杂性问题的方法,但尚未成功将这些技术应用于漏洞检测等复杂的下游任务,我们的突破在于开发出一种实现线性复杂性的混合架构,计算需求随代码长度的增加而按比例增长,而非指数级增长。”
该模型的线性注意力机制使其即使在硬件配置一般的情况下,也能处理长序列而不受内存限制。“最终得到的是一个拥有2亿个参数的模型,它可以处理长达128000个标记的序列(论文已证明,理论上可达100多万个标记),同时表现优于使用传统二次注意力机制的更大模型。”他补充道。
更环保的AI安全工具
White-Basilisk还具有节能的特点。由于其体积小、设计精简,与大型模型相比,训练和运行所需的能源要少得多。研究团队估计,训练过程仅产生了85.5千克的二氧化碳,大致相当于驾驶一辆汽油车行驶几百英里,而一些大型模型在训练过程中会排放数吨二氧化碳。
这种效率在运行时同样适用。White-Basilisk无需分布式基础设施,只需单个高端GPU即可分析完整长度的代码库,这对于没有庞大云预算的小型安全团队、研究人员和公司来说可能更为实用。
实际应用场景已在考虑之中
研究人员表示,White-Basilisk可以轻松融入当前的开发和安全工作流程。
Lamprou说:“我们设想White-Basilisk的高效性使其能够部署于多种场景,包括开发人员电脑上本地运行的VSCode扩展,在编码时实时提供漏洞建议,无需云连接或强大硬件,它还可以集成到CI/CD管道中,在每次提交时检查问题,此外,它还可以在物联网或气隙系统等封闭环境中运行,这些环境资源有限,但安全性至关重要。”
他认为,该模型并非要取代现有工具,而是作为一个补充层,提供更深入、更广泛的分析。他说:“White-Basilisk能够处理现代代码库的复杂性和规模,同时融入既定的实践。”
仍在不断完善中
该模型存在局限性,它仅在C和C++代码上进行了训练,因此在其他语言上的表现尚未得到验证,检测全新或极其罕见的漏洞仍然是一个挑战,此外,该模型的决策过程尚不易解释,这在生产或受监管环境中可能是一个问题。
研究团队正在努力扩大语言支持、提高透明度,并探索长距离分析有应用价值的新领域。Lamprou说:“这项研究目前正在一个顶级AI会议上进行评审,它代表着在使先进的AI安全工具更易于获取和更实用,以便在现实世界中部署方面迈出了重要一步。”
企业网D1net(www.d1net.com):
国内头部to B IT门户,旗下运营国内最大的甲方CIO专家库和智力输出及社交平台-信众智(www.cioall.com)。旗下运营19个IT行业公众号(微信搜索D1net即可关注)。
版权声明:本文为企业网D1Net编译,转载需在文章开头注明出处为:企业网D1Net,如果不注明出处,企业网D1Net将保留追究其法律责任的权利。