AlphaEvolve가 발견한 것은 ‘정답’이 아니라 ‘더 나은 정답을 만드는 방법’이었다. 그런데 그 방법을 정작 모델 자체가 학습하지 못했다면? UIUC 연구진은 바로 이 지점, **메타 스킬(meta-skills)**이라는 개념을 강화학습으로 명시적 훈련시키는 MetaEvolve를 제안한다.


Q. AlphaEvolve만 있으면 되는 거 아닌가요? 메타 스킬이 뭔데요?

AlphaEvolve(Novikov et al., 2025)는 구글 딥마인드가 발표한 코딩 에이전트로, 반복적인 진화 검색(evolutionary search)을 통해 기존 인간 지식을 넘어서는 알고리즘을 발견합니다. 테스트 타임 스케일링(test-time scaling)의 대표 성공 사례이죠.

하지만 MetaEvolve 연구진은 AlphaEvolve의 성공이 모델 자체의 능력이 아니라 외부 루프의 설계에 달려 있었다고 지적합니다. 모델은 “현재 코드를 보고 어디가 문제인지 진단하고, 이전 시도에서 무엇을 배웠는지 추출하고, 피드백을 어떻게 반영할 것인가” — 이른바 메타 스킬을 발휘해야 하는데, 기존 포스트트레이닝(post-training)은 이 능력을 명시적으로 가르치지 않습니다.

전통적 RL(RLHF, GRPO 등)은 주로 단일 턴의 작업 완료를 최적화합니다. “정답을 맞혀라”는 신호만 주죠. 하지만 자가진화에서 필요한 것은 “이전보다 나아지게 만들어라”라는 방향성 있는 개선 능력입니다.


Q. 그럼 메타 스킬을 어떻게 훈련시키죠? 데이터부터 만들어야 할 것 같은데

맞습니다. 기존 코드 데이터셋은 “문제 → 정답” 쌍으로만 구성되어 있습니다. “이전 시도 → 더 나은 시도”라는 진화 궤적(evolution trajectory) 데이터가 없습니다.

MetaEvolve는 2단계 데이터 합성 파이프라인으로 이 문제를 해결합니다.

MetaEvolve의 데이터 생성 파이프라인. 1단계: 다수 응답 샘플링 후 2단계 다양성 필터링으로 고품질 훈련 데이터를 선별. 2단계: 각 문제-응답 쌍을 현재 프로그램, 적합도 점수, 진화 이력을 포함한 컨텍스트 프롬프트로 변환.

1단계: 응답 샘플링 및 다양성 필터링

PRIME-RL/Eurus-2-RL-Data에서 25,000개 이상의 코딩 문제를 가져와 각각 10개의 응답을 샘플링합니다. 그다음 2단계 다양성 필터링을 적용합니다:

  • 문제 수준 필터링: 한 문제에 대한 모든 해답 쌍의 다양성을 계산합니다. 다양성 점수는 (1) 문자 길이 차이, (2) 라인 수 차이, (3) 문자 집합 차이를 가중합한 것입니다. 라인 수 차이에 가장 높은 가중치(10배)를 두는 이유는, 라인 수가 알고리즘 접근 방식의 근본적 차이를 가장 잘 구분하기 때문입니다.
  • 응답 수준 필터링: 그리디 알고리즘으로 정답 정확도(30%)와 다양성(70%)을 균형 있게 선택합니다. 다양성에 2배 이상 가중치를 두는 이유는, 정닷값은 시드 선택에서 이미 우선시되었기 때문에 여기서 다시 강조하면 비슷한 고득점 응답만 남게 됩니다.

결과: 25,000+ 쌍이 약 6,000개의 고품질 다양한 쌍으로 압축됩니다.

2단계: 컨텍스트 프롬프트 포맷팅

각 문제-응답 쌍을 진화 시나리오처럼 보이게 만듭니다. 프롬프트에는 4가지가 들어갑니다:

  1. 문제 설명
  2. 현재 프로그램 + 적합도 점수(fitness score)
  3. 합성된 진화 이력(과거 시도들을 성능 오름차순으로 정렬)
  4. “적합도 점수를 개선하라”는 지시

진화 이력은 같은 문제의 다른 응답 1~3개를 샘플링하여 만듭니다. 현재 응답이 정답이면 전체 풀에서, 오답이면 오답 풀에서만 샘플링합니다. 이렇게 하면 모델이 “실패에서 회복하는 방법”과 “성공을 더 개선하는 방법” 모두를 학습합니다.


Q. 적합도 점수는 어떻게 계산하나요?

코딩이 도메인인 이유가 여기에 있습니다. 수학은 정답이 이진(0 또는 1)이지만, 코드는 정확도 + 실행 속도라는 연속적 보상 신호를 제공합니다.

빠를수록 점수가 높고, 테스트 케이스를 전부 통과해야(correctness=1) 점수가 의미를 갖습니다. 작은 엡실론()은 0으로 나누는 것을 방지하면서도 극단적으로 빠른 프로그램이 점수를 독점하지 않게 합니다.


Q. RL 훈련의 핵심 설계가 궁금합니다. 보상 함수가 특이하다면서요?

네, **“개선하지 않으면 벌점”**이라는 설계가 핵심입니다.

현재 프로그램 과 새로 생성한 프로그램 를 비교합니다:

  • 보다 나아지면: 점수 차이 을 보상으로
  • 보다 나아지지 않으면: 벌점

벌점이 중요합니다. “그대로 유지하는 것”이 허용되면 모델은 안전하게 현재 코드를 반복하는 것을 배웁니다. 진화가 멈추죠. 벌점을 줌으로써 모델은 반드시 의미 있는 개선을 시도해야 합니다.

GRPO(Group Relative Policy Optimization, Shao et al. 2024)로 훈련합니다. 그룹 내 보상 정규화로 baseline을 추정하기 때문에 별도의 critic 네트워크가 필요 없고, 메모리 오버헤드가 줄어듭니다.


Q. 결과가 어느 정도인가요?

7개 코딩 벤치마크에서 테스트했습니다:

  • 인분(in-distribution): APPS, TACO, CodeContests, Codeforces (훈련에 사용한 4개 소스)
  • 아웃분(out-of-distribution): Atcoder, Leetcode, USACO (훈련에 전혀 사용하지 않은 도메인)

베이스라인은 Qwen3-14B로 동일하게 맞추고, Best-of-N, Self-Refine, Reflexion, AlphaEvolve와 비교했습니다.

MetaEvolve 메인 결과. 7개 코딩 벤치마크에서 AlphaEvolve와 여러 베이스라인을 능가하며, 특히 OOD(도메인 외) 벤치마크에서 압도적 우위를 보인다.

구분최강 베이스라인 대비 절대 향상률
인분 4개 평균+10.01%
아웃분 3개 평균+24.12%

훈련에 사용하지 않은 도메인에서 더 큰 향상을 보인 것이 이 논문의 핵심 증거입니다. 메타 스킬이 도메인에 국한되지 않고 일반화된다는 뜻입니다.


Q. 코딩이 아닌 영역에서도 되나요?

이 질문에 대한 답이 AlgoTune 벤치마크 실험입니다. AlgoTune은 선형대수, 신호 처리, 과학 컴퓨팅 등 코딩과는 전혀 다른 도메인의 알고리즘 최적화 문제 8개로 구성되어 있습니다.

AlgoTune 결과. 훈련 도메인(코딩) 밖의 알고리즘 최적화에서 MetaEvolve가 AlphaEvolve 대비 46.9% 상대 향상을 달성.

MetaEvolve는 AlphaEvolve 대비 46.9% 상대 향상을 기록했습니다. 코딩에서 배운 “이전 시도를 분석하고, 피드백을 해석하고, 점진적으로 개선하는” 능력이 수치 해석이나 신호 처리 알고리즘 최적화에도 전이된 것입니다.

이 결과가 시사하는 바는 분명합니다. **메타 스킬은 도메인 비의존적(domain-agnostic)**입니다. 풍부한 보상 신호(코드 실행)로 훈련한 능력이, 보상 신호가 희박한 도메인으로 이전됩니다.


Q. AlphaEvolve와 MetaEvolve의 추론(trace)을 비교하면 어떤 차이가 있나요?

이것이 이 논문에서 가장 인상적인 부분입니다. 같은 문제에 대해 두 모델의 추론 과정을 정성 분석했습니다:

AlphaEvolve와 MetaEvolve의 추론 비교. AlphaEvolve는 순환적이고 비생산적인 추론을 반복하는 반면, MetaEvolve는 구조적 자기반성과 진화 이력의 적극적 활용을 보여준다.

  • AlphaEvolve: 순환적(circular), 발산적(divergent) 추론. 실행 가능한 통찰 없이 같은 생각을 반복합니다. 진화 이력을 참조하지 않고 매 턴 독립적으로 추론합니다.
  • MetaEvolve: 구조적 자기반성. “이전 시도에서 무엇이 실패했고, 왜 실패했고, 어떻게 고칠 수 있는가”를 체계적으로 분석합니다. 진화 이력을 적극적으로 활용해 다음 시도의 방향을 정합니다.

이 차이는 어블레이션(ablation, 일부를 제거해 영향을 측정하는 실험)에서도 확인됩니다. 진화 라운드를 10라운드로, 라운드당 샘플링을 20개로, 상위 5개를 유지하는 설정이 최적이었습니다.

진화 하이퍼파라미터 어블레이션. 10라운드, 20개 샘플링, 상위 5개 유지가 최적 설정.


Q. 프로그램의 참신함(novelty)도 달라지나요?

네, 그리고 이것은 단순한 최적화가 아님을 보여줍니다.

프로그램 참신성 비교. MetaEvolve가 AlphaEvolve보다 구조적으로 더 다양한 해답을 생성.

Zhang-Shasha(1989) 트리 편집 거리(tree edit distance)와 CodeBLEU로 측정한 결과, MetaEvolve가 생성한 프로그램은 AlphaEvolve가 만든 것보다 구조적으로 더 다양했습니다. 이는 메타 스킬 훈련이 단순히 “같은 코드를 미세 조정”하는 것이 아니라, “근본적으로 다른 접근 방식을 탐색”하는 능력을 길렀다는 증거입니다.


Q. 이 연구의 한계는요?

논문이 명시적으로 언급하는 한계와 필자가 분석한 한계를 정리합니다:

  1. 코딩 중심 훈련: 메타 스킬이 일반화된다고 하지만, 훈련 데이터는 전부 코딩입니다. 수학 추론이나 자연어 추론에서 같은 메타 스킬이 전이될지는 미검증입니다.
  2. 평가 규모: 각 벤치마크에서 50개 문제만 평가했습니다. 코딩 벤치마크 특성상 각 문제가 멀티라운드 진화 + 전체 프로그램 실행을 요구하기 때문에 대규모 평가가 비용상 어렵다고 명시하고 있지만, 50개는 통계적 변동성이 존재할 수 있는 규모입니다.
  3. 베이스 모델 의존성: Qwen3-14B 단일 모델에서만 검증했습니다. 다른 모델 크기나 아키텍처에서 같은 메타 스킬이 학습되는지는 추가 연구가 필요합니다.
  4. 진화 라운드 비용: 추론 시에도 AlphaEvolve와 동일한 진화 검색 알고리즘을 사용하므로, 테스트 타임 연산 비용이 여전히 높습니다. 메타 스킬이 연산 효율성까지 개선했는지는 불분명합니다.

Q. 결론이 뭔가요? 왜 이 논문이 중요한가요?

이 논문의 핵심 통찰은 **“자가진화 능력은 부산물이 아니라 훈련 대상이다”**입니다.

기존 LLM 연구의 암묵적 가정은 “모델이 충분히 똑똑해지면 자가진화도 저절로 될 것이다”였습니다. MetaEvolve는 이 가정을 반박합니다. 자가진화에 필요한 메타 스킬 — 자기반성, 이전 시도에서의 학습, 피드백을 통한 점진적 개선 — 은 명시적으로 가르쳐야 하는 학습 목표입니다.

더 흥미로운 점은 이 메타 스킬이 도메인을 넘어 이전된다는 것입니다. 코딩에서 배운 “개선하는 법”이 선형대수 알고리즘 최적화에서도 통합니다. 이것이 사실이라면, AGI(범용 인공지능)로 가는 경로 중 하나가 “도메인 특화 보상 신호로 메타 스킬을 훈련하고, 보상이 희박한 도메인으로 전이시키는 것”일 수 있습니다.

에이전트 루프(agent loop) 관점에서 보면, MetaEvolve는 추론 시점(inference time)의 진화 루프에 들어갈 모델을 훈련 시점(training time)에서부터 준비시키는 접근입니다. 루프가 돌 때마다 더 나은 출력을 내놓도록 모델 자체를 튜닝하는 것이죠. 이것은 하네스(harness)나 외부 루프 설계만으로는 달성하기 어려운 근본적 개선입니다.


더 실습해보고 싶은 분들께

에이전트 루프, 자가진화, 도구 사용 최적화에 관심이 생겼다면 다음 두 가지를 추천합니다:


📄 논문 원문: Teaching LLMs to Self-Evolve: Cultivating Core Meta-Skills with Reinforcement Learning (MetaEvolve) — Shujin Wu, Cheng Qian, Xiusi Chen, Heng Ji (UIUC, 2026)