LLM의 코드 생성이 기능적으로는 맞아도 보안 취약점을 포함하는 문제를 해결하기 위해, 계획·보안분석·코드합성·리뷰를 담당하는 에이전트를 분리한 다중 에이전트 프레임워크 MACGen을 제안했다. 플래너가 기능 요구사항을 만족하는 단계별 계획을 세우면 보안 어드바이저가 관련 CWE를 식별해 과제별 가이드라인을 만들고, 코더가 이를 바탕으로 코드를 생성하며, 리뷰어가 관점별로 분리된 피드백을 준다. 전체 대화 기록을 공유하는 대신 각 에이전트가 상위 단계의 구조화된 산출물만 전달받아 역할 분리를 유지하고 컨텍스트 비대화를 막는다. CWEval과 BaxBench 벤치마크에서 MACGen은 단순 프롬프팅 대비 기능성·보안 동시충족(F&S@1) 지표를 각각 평균 19.61%p, 10.57%p 끌어올렸다.
- •계획·보안분석·코드합성·리뷰 역할을 분리한 다중 에이전트 프레임워크 MACGen
- •보안 어드바이저가 CWE를 식별하고 과제별 보안 가이드라인을 생성
- •전체 대화 기록 대신 구조화된 산출물만 전달해 역할 분리·컨텍스트 비대화 방지
- •CWEval에서 직접 프롬프팅 대비 F&S@1 평균 19.61%p 향상
- •BaxBench에서 F&S@1 평균 10.57%p 향상
0단 자동
AI가 규칙대로 쓰고 그대로 게시했습니다. 사람이 따로 보지 않았습니다.
- 규칙 판
- 규칙 판 도입 이전 기사입니다.
- 남기는 것
- 규칙 판 · 모델 · 시각
- 판 기록
- 아직 없습니다.
MACGen: Toward Functionally Correct and Secure Code Generation via Multi-Agent Collaboration
- 1.계획·보안분석·코드생성·리뷰 4개 역할을 분리한 멀티에이전트 보안코드생성 프레임워크 MACGen 제시
- 2.전체 대화이력 공유 대신 구조화된 산출물만 전달해 역할 경계 유지 및 컨텍스트 팽창 방지
- 3.보안어드바이저가 예상 CWE를 식별해 과제별 맞춤 가이드라인을 코더에 전달하는 구조
- 4.CWEval·BaxBench에서 직접 프롬프팅 대비 F&S@1 각각 19.61%p·10.57%p 평균 개선
왜 중요한가?
기능적 정확성과 보안을 동시에 만족시키기 어려운 코드생성의 다목적 문제를, 역할분리형 멀티에이전트 구조로 대화 팽창 없이 개선했다는 점에서 실무 코드생성 도구에 적용 가능한 설계다.
LLM이 코드를 생성하는 능력이 뛰어나지만, 보안 취약점이 포함된 코드를 생산하는 문제가 지속되고 있습니다. 여러 에이전트의 협력을 통해 기능적 정확성과 보안성을 동시에 확보하려는 이 접근 방식은 국내 소프트웨어 개발 환경에서 AI 기반 코드 생성 도구의 신뢰도를 높이는 데 핵심적인 역할을 할 것입니다. 특히, 보안이 중요한 프로젝트에서 LLM을 활용할 때 안전한 코드 생성을 위한 필수적인 가이드라인을 제공합니다.
본문 미리보기
arXiv:2608.25457v2 Announce Type: new Abstract: 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. Howev
전체 내용이 궁금하다면?
원문을 직접 읽어보세요
이 글이 만들어진 과정
- 11:24AI 초안
![[AI리더의 서가] Agentic AI 구축 개발의 모든 것](https://cdn.aitimes.com/news/photo/202610/215958_219938_244.jpg)
