Sonar重磅发布大语言模型编码行为研究报告:五大模型“个性”与风险全景解析

Sonar 于2025年8月13日发布一项关于主流大语言模型(LLM)所生成代码质量与安全性的全面研究。研究发现,当前主流模型在功能实现方面展现出显著优势,但同时也普遍存在不可忽视的安全与质量缺陷。更重要的是,每种模型均展现出独特且可量化的”编码个性”。这些发现超越了传统的性能基准测试,为开发者和技术决策者提供了更深层次的洞察,助力其在软件开发生命周期(SDLC)中更安全、更有效地集成 AI 解决方案。
研究同时揭示 Anthropic 的 Claude Sonnet 4 与 3.7、OpenAI 的 GPT-4o、Meta 的 Llama-3.2-vision:90b 以及开源模型 OpenCoder-8B 独特的编码“个性”
“LLM 在编写代码方面的迅速普及证明了它们的强大和有效性。为了真正最大限度地利用它们,除了关注原始性能,更重要的是要全面理解一个模型能力的完整图景。了解每个模型的独特个性,以及它们的优势和可能出现的错误,可以确保每个模型都得到安全、可靠的使用。”
Sonar 首席执行官 Tariq Shaukat
为开展此项研究,Sonar 采用专有的分析框架,向多个主流 LLM 分配了超过 4,400 个 Java 编程任务。被测模型包括:Anthropic 的 Claude Sonnet 4 与 3.7、OpenAI 的 GPT-4o、Meta 的 Llama-3.2-vision:90b,以及开源模型 OpenCoder-8B。
研究团队总结出四项关键发现
01、模型具备共性优势
生成语法正确代码的能力强
所有模型均能高效生成语法正确的代码,以及常见框架和函数的样板代码,显著加快开发初期阶段的效率。例如,Claude Sonnet 4 在 HumanEval 基准测试中达到 95.57% 的通过率,表明其具备极强的生成有效、可执行代码的能力。
具备扎实的算法与数据结构基础
模型对常见算法和数据结构有良好的理解,能够为定义明确的问题提供可行解,为复杂功能的开发提供良好起点。“加权测试 Pass@1 平均值”是衡量该能力的综合指标,其中 Claude 3.7 Sonnet 得分为 72.46%,GPT-4o 为 69.67%,均显示出较高的可靠性。
跨语言代码转换能力出色
所有模型在将代码概念或片段从一种编程语言转换为另一种语言方面表现优异,使其成为跨技术栈开发者的有力工具。
02、模型存在共性缺陷
安全性存在显著短板
所有被测模型在安全性方面均暴露出严重问题。硬编码凭证、路径遍历注入等关键漏洞在各模型输出中普遍存在。尽管漏洞频率因模型而异,但所有 LLM 生成的漏洞中,高严重性漏洞占比极高:
Llama-3.2-vision:90b:超过 70% 的漏洞为“阻断级”(Blocker)严重性;
GPT-4o:62.5%;
Claude Sonnet 4:接近 60%。
倾向于生成“混乱代码”
所有模型均表现出存在“代码异味”(Code Smells)的明显倾向。研究发现,超过 90% 的问题属于此类,表现为代码结构混乱、可维护性差,而这些将导致长期的技术债务积累。
03、每种模型均有独特的“编码个性”
研究进一步发现,基于对以下三个可量化维度的分析,每种大语言模型均展现出独特的“编码个性”:
冗余度(Verbosity):模型为完成任务所生成代码的总体量;
复杂度(Complexity):生成代码的结构与逻辑复杂性,通过圈复杂度(cyclomatic complexity)和认知复杂度(cognitive complexity)等指标衡量;
沟通与文档化能力(Communication and Documentation):代码中注释的密度,反映模型解释其逻辑的倾向。
04、性能提升常伴随风险上升
研究中一项关键且令人意外的发现是:功能性能的提升往往伴随着安全风险的显著增加。
以 Claude Sonnet 4 为例,其在功能基准测试中的通过率较 Claude 3.7 Sonnet 提升了 6.3%,表明其解决问题的准确性更高。但这一性能提升的代价是:高严重性漏洞的比例上升了 93%。
随着行业对 AI 代码生成的依赖不断加深—— Gartner 预测,到 2028 年,90% 的企业级软件工程师将使用 AI 编程助手——本报告凸显了一个紧迫需求:必须在性能基准之外,补充对代码安全性、可靠性与可维护性的直接评估。研究结果表明,采取“信任但需验证”(trust and verify)的策略至关重要,包括建立健全的治理机制,并对所有 AI 生成代码进行系统性分析。唯有如此,组织才能在充分利用 LLM 强大能力的同时,有效管控其带来的固有风险。
Sonar 如何帮助您应对AI生成代码的缺陷
Sonar 的集成式代码质量与安全解决方案 SonarQube,可对包括 AI 生成代码在内的所有代码进行全面分析,作为“信任但需验证”策略中的核心验证与治理工具。
当客户将 SonarQube 集成至其开发流程后,即可在加速 AI 驱动开发的同时,确保每一行代码都具备可信赖的质量。该方案在代码进入生产环境前,提供针对安全性、可靠性与可维护性的一致性审查机制。
对于正在采用生成式 AI 技术的组织,SonarQube 可在以下方面提供针对性支持:
检测安全漏洞
SonarQube 的分析引擎在漏洞检测方面经验丰富,能够识别包括非局部数据流问题(如污点追踪)在内的各类安全缺陷——这正是当前 LLM 在代码生成中面临的典型挑战。
强化工程规范
研究发现,所有 LLM 均难以遵循核心软件工程原则,持续生成资源泄漏、API 接口契约违规等严重缺陷。例如,SonarQube 中的规则 java:S2095 可有效识别模型生成的资源泄漏问题,帮助团队及时修复。
管理技术债务与代码异味
本报告指出,最普遍的问题是模型对“混乱代码”的固有倾向,其中代码异味占比超过 90%。此类问题(如冗余代码、无效代码)将累积为长期技术债务。SonarQube 专为识别此类异味而设计,提供必要的分析能力,帮助清理代码、提升可维护性。
关于Sonar
谨慎声明:前瞻性陈述
本新闻稿可能包含关于未来预期、计划和前景的前瞻性陈述。这些陈述基于当前的信念与假设,受风险与不确定性影响。AI 及大语言模型领域发展迅速,实际结果可能与预期存在差异。本新闻稿内容截至发布之日有效,我们不承担更新任何陈述的义务。
了解更多 SonarQube 功能或免费试用:
请咨询SonarQube中国授权合作伙伴-创实信息,我们提供SonarQube的免费试用、咨询、销售、安装部署、技术支持等一站式服务。
了解SonarQube:https://www.shcsinfo.com/sonarqube
联系方式:021-61210910、customer@shcsinfo.com