SolAgent: A Specialized Multi-Agent Framework for Solidity Code Generation
SolAgent는 Forge 컴파일러와 Slither 정적 분석기를 결합한 이중 루프 정제 메커니즘을 활용하여 기존의 LLM 및 AI 도구들을 크게 능가하며 보안성이 높고 기능적인 솔리디티 스마트 컨트랙트를 생성하는 동시에, 고품질 궤적을 더 작은 오픈 소스 모델로 증류할 수 있게 해주는 특화된 멀티 에이전트 프레임워크입니다.
원본 논문은 CC BY 4.0 (http://creativecommons.org/licenses/by/4.0/) 라이선스로 제공됩니다. 이것은 아래 논문에 대한 AI 생성 설명입니다. 저자가 작성하거나 승인한 것이 아닙니다. 기술적 정확성을 위해서는 원본 논문을 참조하세요. 전체 면책 조항 읽기
SolAgent 논문 설명: 창의적인 비유를 통한 쉬운 개념 정리
거대한 문제: "마법의 펜"으로 디지털 요새 구축하기
당신이 수백만 달러를 보관하는 디지털 요새(스마트 컨트랙트)를 짓고 있다고 상상해 보세요. 일단 요새를 짓고 문을 잠그면, 벽돌 하나조차 바꿀 수 없습니다. 만약 아주 작은 실수라도 한다면, 도둑들이 침입하여 모든 것을 훔쳐갈 수 있습니다.
최근 우리는 코드를 즉시 작성해 주는 "마법의 펜"(대규모 언어 모델 또는 LLM)을 갖게 되었습니다. 하지만 이 펜은 매우 자신만만하지만 경험이 부족한 견습생과 같습니다. 이 펜은 보기에는 그럴싸하고 올바른 것처럼 보이는 코드를 쓰지만, 종종 다음과 같은 문제를 일으킵니다:
- 작동하지 않음: 코드에 숨겨진 오류가 있어 즉시 충돌(컴파일 실패)을 일으킵니다.
- 보안에 취열함: 해커가 악용할 수 있는 비밀 뒷문을 열어둡니다.
- 막혀버림: 요새 전체를 한 번에 쓰려고 시도하다가 과부하가 걸려 포기해 버립니다.
이 논문은 단순히 마법의 펜에게 "안전한 계약을 써줘"라고 요청하는 것만으로는 충분하지 않다고 주장합니다. 우리는 더 나은 시스템이 필요합니다.
해결책: SolAgent (마스터 빌더 팀)
저자들은 단순한 하나의 AI가 아니라, 협력하여 작동하는 특화된 AI 에이전트 팀인 SolAgent를 만들었습니다. 코드를 한 번 쓰고 운에 맡기는 대신, SolAgent는 인간 전문가가 소프트웨어를 구축하는 방식인 작성, 확인, 수정, 반복을 모방합니다.
SolAgent를 두 명의 주요 작업자와 일련의 첨단 도구를 갖춘 건설 현장이라고 생각해보세요.
1. 두 명의 작업자
- 코딩 에이전트 (빌더/건축가): 이 AI는 당신의 요청(예: "열쇠가 있어야만 열리는 금고를 만들어줘")을 받아 초기 코드 초안을 작성합니다.
- 리파이닝 에이전트 (인스펙터/검사관): 이 AI는 단순히 코드를 읽는 것이 아니라, 적극적으로 테스트합니다. 빌더의 결과물을 살펴보고, 실수를 찾아내며, 빌더에게 어떻게 수정해야 하는지 정확히 알려줍니다.
2. 첨단 도구 ("이중 루프" 시스템)
SolAgent의 천재성은 품질 관리를 위한 "이중 루프"를 만들기 위해 두 가지 특정 도구를 사용하는 방식에 있습니다.
내부 루프 (The "Forge" Test - 단조 테스트):
- 비유: 금고의 문이 견딜 수 있는지 스트레스 테스트를 하는 기계를 상상해 보세요.
- 역할: 코드를 컴파일러(Forge)로 실행하여 실제로 작동하는지 확인합니다. 만약 코드가 충돌하거나 수학적 계산에 실패하면, 리파이닝 에이전트는 "이 줄이 고장 났습니다"라는 보고를 받고 이를 빌더에게 보내 수정을 요청합니다.
- 결과: 이를 통해 코드가 **기능적(Functional)**임을 보장합니다.
외부 루프 (The "Slither" Security Scan - 보안 스캔):
- *비유: 보안 전문가가 금속 탐지기를 들고 금고 주변을 돌며 숨겨진 함정이나 느슨한 벽돌을 찾는 모습을 상상해 보세요.
- 역할: 정적 분석 도구(Slither)를 사용하여 알려진 보안 구멍(예: 도둑이 금고에 두 번 결제하도록 속이는 "재진입(reentrancy)" 버그)을 스캔합니다. 구멍을 발견하면 리파이닝 에이전트에게 즉시 패치하도록 지시합니다.
- 결과: 이를 통해 코드가 **안전(Secure)**함을 보장합니다.
3. 파일 시스템 ("도서관 카드")
일반적인 AI는 프로젝트에 다른 어떤 파일들이 존재하는지 몰라 혼란을 겪곤 합니다. SolAgent는 파일 시스템 도구를 갖추고 있습니다.
- 비유: 창고에 어떤 도구가 있는지 추측하는 대신, AI는 실제로 창고로 걸어가서 문을 열고, 상자의 라벨을 읽고, 작업을 마치는 데 필요한 적절한 도구를 집어 들 수 있습니다. 이는 여러 부분으로 구성된 복잡한 프로젝트를 이해하는 데 도움을 줍니다.
작동 방식: "정지" 버튼
"계속해서 코드를 계속 수정하기만 하면 무한 루프에 빠지지 않을까?"라고 생각할 수 있습니다.
논문은 언제 멈춰야 할지 아는 스마트 타이머인 **동적 정지 메커니즘(Dynamic Stopping Mechanism)**을 소개합니다.
- 성공: 코드가 모든 테스트를 통과하고 보안 구멍이 없다면 정지합니다.
- 막힘: AI가 똑같은 실수를 계속 반복(루핑)하고 있다면, 시간을 절약하기 위해 정지합니다.
- 정체: 몇 번의 시도 후에도 코드가 전혀 나아지지 않는다면 정지합니다.
결과: 왜 중요한가?
연구진은 까다로운 벤치마크인 SolEval+(실제 세계의 스마트 컨트랙트 챌린지 모음)로 테스트를 진행했습니다.
훨씬 더 잘 작동합니다:
- 일반적인 AI(단독 "마법의 펜")는 첫 시도에서 약 **25%**의 계약만 제대로 완성했습니다.
- SolAgent는 첫 시도에서 **64.39%**를 성공했습니다. 이는 성공률이 두 배 이상 높다는 것을 의미합니다.
- 비유: 만약 100명의 사람에게 금고를 만들어보라고 했다면 25명 정도가 작동하는 금고를 만들 것입니다. SolAgent는 100개 중 64개의 작동하는 금고를 만드는 숙련된 건축가를 고용한 것과 같습니다.
더 안전합니다:
- 인간이 작성한 코드와 비교했을 때, SolAgent는 보안 취약성을 거의 40% 감소시켰습니다.
- 비유: SolAgent는 숙련된 인간 건축가조차 놓칠 수 있는 숨겨진 함정과 결함을 찾아내고 수정했습니다.
더 저렴합니다 ("증류" 기술):
- 여러 AI 에이전트 팀을 운영하는 것은 비용이 많이 듭니다. 그래서 저자들은 빌더와 인스펙터 사이의 "고품질 대화"(궤적)를 가져와 더 작고 저렴한 AI 모델(Qwen3-8B)을 가르치는 데 사용했습니다.
- 비유: 그들은 마스터 셰프의 주방에서 나온 기록들을 가져와서, 주니어 요리사가 똑같이 완벽한 요리를 만들 수 있도록 가르친 것입니다. 주니어 요리사(작은 모델)는 큰 팀만큼이나 잘 요리하는 법을 배웠으며, 훨씬 빠르고 저렴하게 수행할 수 있었습니다.
요약
SolAgent는 블록체인 코드를 작성하기 위한 새로운 방식입니다. 단일 AI가 한 번에 완벽하게 해내기를 기대하는 대신, 코드를 작성하고, 컴파일러로 테스트하고, 보안 구멍을 스캔하며, 완벽해질 때까지 실수를 수정하는 팀을 구성합니다. 그 결과, 현재의 일반적인 AI나 심지어 인간 전문가가 보통 만들어내는 것보다 훨씬 더 신뢰할 수 있고 안전한 코드를 생성합니다.
연구 분야의 논문에 파묻히고 계신가요?
연구 키워드에 맞는 최신 논문의 일일 다이제스트를 받아보세요 — 기술 요약 포함, 당신의 언어로.