MACGen: Toward Functionally Correct and Secure Code Generation via Multi-Agent Collaboration

📄 arXiv: 2608.25457v1 📥 PDF

作者: Miseon Yu, Jaehoon Choi, Younghan Lee, Yunheung Paek

分类: cs.CR, cs.AI, cs.MA

发布日期: 2026-08-26

备注: 8 pages


💡 一句话要点

提出MACGen以解决安全与功能正确性代码生成问题

🎯 匹配领域: 支柱九:具身大模型 (Embodied Foundation Models)

关键词: 代码生成 安全性 多代理协作 功能正确性 机器学习 软件开发 安全漏洞

📋 核心要点

  1. 现有代码生成方法在安全性方面存在不足,常常导致生成的代码存在安全漏洞。
  2. MACGen通过多代理协作,整合规划、安全分析和代码合成,优化功能性与安全性。
  3. 在CWEval和BaxBench数据集上,MACGen显著提升了功能与安全性指标,效果显著。

📝 摘要(中文)

尽管大型语言模型在代码生成方面表现出色,但它们常常无法生成安全的代码,输出中频繁存在安全漏洞。安全代码生成本质上是一个多目标问题,涉及功能正确性和安全性。现有方法通过注入外部安全知识或使用代理反馈和迭代优化来应对这一挑战。然而,指导检索往往使生成器需要将通用建议转化为特定任务的安全实现,而共享对话的多代理反馈可能模糊角色边界并导致上下文膨胀。本文提出了MACGen,一个多代理框架,整合了规划、安全分析、代码合成和优化,以共同优化安全性和功能性。在CWEval和BaxBench上,MACGen在功能与安全性指标上分别比直接提示提高了19.61和10.57个百分点。

🔬 方法详解

问题定义:论文旨在解决大型语言模型在代码生成中无法同时满足功能正确性和安全性的问题。现有方法在安全知识的应用和反馈机制上存在局限,导致生成的代码易受攻击。

核心思路:MACGen通过多代理协作,分别负责规划、安全分析、代码生成和反馈,确保每个代理专注于其特定任务,从而提高代码的安全性和功能性。

技术框架:MACGen的整体架构包括四个主要模块:规划者负责制定满足功能需求的步骤计划;安全顾问识别潜在的安全漏洞并提供具体指导;编码器基于这些指导生成代码;审查者提供分离视角的反馈。各代理仅接收上游阶段的结构化信息,避免了上下文的无序增长。

关键创新:MACGen的核心创新在于通过角色专门化和结构化信息传递,减少了上下文膨胀的问题,并提高了生成代码的安全性与功能性。这与现有方法的全对话历史共享形成了鲜明对比。

关键设计:在设计中,MACGen采用了明确的角色分配和信息传递机制,确保每个代理的反馈和指导都是针对特定任务的。此外,采用了任务特定的安全指导和反馈机制,以提高生成代码的质量。

🖼️ 关键图片

fig_0
fig_1
fig_2

📊 实验亮点

在CWEval和BaxBench数据集上的实验结果显示,MACGen在功能与安全性指标上分别比直接提示提高了19.61和10.57个百分点,显著提升了代码生成的安全性和功能性。这一成果表明MACGen在多代理协作下的有效性和实用性。

🎯 应用场景

MACGen的研究成果在软件开发、自动化编程和安全审计等领域具有广泛的应用潜力。通过提高代码生成的安全性和功能性,MACGen能够帮助开发者更高效地创建安全可靠的软件系统,降低安全漏洞的风险,提升软件的整体质量。未来,该框架还可以扩展到其他编程语言和应用场景中,进一步推动智能编程技术的发展。

📄 摘要(原文)

Despite their strong ability to generate code, large language models often fail to produce secure code, as their outputs frequently contain security vulnerabilities. Secure code generation is inherently challenging because it requires solving a multi-objective problem: functional correctness and security. Existing approaches address this challenge by injecting external security knowledge or by using agentic feedback and iterative refinement. However, guideline retrieval often leaves the generator to translate generic advice into task-specific secure implementations, while shared-dialogue multi-agent feedback can blur role boundaries and suffer from context bloat. We present MACGen, a multi-agent framework that integrates planning, security analysis, code synthesis and refinement to jointly optimize security and functionality. A planner constructs a step-by-step plan to satisfy functional requirements. A security advisor identifies likely CWEs and synthesizes task-specific guidelines, a coder then generates code grounded in these artifacts, and a reviewer issues perspective-separated feedback. Rather than sharing full dialogue histories, each agent receives only structured artifacts from upstream stages, enforcing role specialization and reducing uncontrolled context growth. On CWEval and BaxBench, MACGen improves F&S@1 over direct prompting by 19.61 and 10.57 percentage points (pp) on average, respectively.