Harness가 스스로를 개선하게 하기
LLM이 Agent를 실행하는 코드를 최적화할 수 있다면 손으로 쓴 Prompt보다 훨씬 큰 설계 공간에 접근할 수 있습니다.
시드 개선기 I₀은 세 가지 입력을 받습니다: 초기 해답 s, 효용 함수 u, 블랙박스 언어 모델 M, 그리고 개선된 해답 s'를 반환합니다.
핵심 통찰: 개선기 자체가 텍스트(prompt 또는 코드)이므로 동일한 개선 논리를 개선기 자체에도 적용할 수 있습니다.
I_t = I_{t-1}(û, I_{t-1}; M)
// 여기서:
// I_{t-1} — 현재 개선기(텍스트 형태의 prompt/코드)
// û — meta-utility: 개선기 품질을 측정하는 함수
// M — 블랙박스 언어 모델
// 출력 I_t — 더 나은 개선기
개선된 개선기는 유전 알고리즘, 분해 기반 개선, 다중 팔 Prompt Bandit, 시뮬레이션 어닐링, Beam Search 등 고전적 최적화 전략을 자동으로 발견했으며 인간이 미리 설정할 필요가 없었습니다.
GPT-4는 지속적으로 개선할 수 있지만 GPT-3.5와 Mixtral은 오히려 퇴화합니다. 재귀 구조 자체만으로는 충분하지 않습니다: 기반 모델이 충분히 강해야 메타 수준 최적화를 지원할 수 있습니다.
경고: 재귀 ≠ 반드시 개선
재귀 구조는 개선의 가능성을 제공하지만 수렴을 보장하지 않습니다. 약한 모델은 메타 수준 작업에서 충분한 프로그래밍 직관이 부족하여 오히려 노이즈를 증폭시킵니다: 결과가 진전되지 않고 퇴보합니다. 이는 자기 개선 시스템의 안전성이 기반 능력에 대한 정확한 평가 위에 구축되어야 함을 시사합니다.
Weakness Mining
실패 궤적을 verifier-grounded 실패 패턴으로 클러스터링합니다. 각 실패 기록에는 다음이 포함되어야 합니다: 터미널 검증기 수준의 원인 + 관련 Agent 행동의 인과 상태 + 궤적에서 노출된 추상 Agent 메커니즘.
Harness Proposal
발굴된 실패 패턴을 기반으로 유한한 Harness 편집을 제안합니다. 모델은 편집 가능한 표면, 실패 패턴 요약, 통과 행동 기록, 이미 시도된 편집 이력을 받습니다. 해결 가능한 반복 오류 패턴을 우선시합니다.
Proposal Validation
held-in 및 held-out 데이터셋으로 후보 편집을 검증합니다. 회귀가 없는 편집만 수용하여 개선이 기존 능력을 희생하지 않도록 합니다.
Harness 설계 = 실행 가능한 탐색 공간
Harness 설계가 실행 가능한 탐색 공간(편집 가능한 prompt, 정책 구성, 도구 오케스트레이션 코드)으로 형식화되면 강력한 코딩 Agent는 인간 엔지니어가 사용하는 동일한 설계 공간을 활용할 수 있습니다: 자동으로 탐색하고, 제안하고, 검증하며 수동 디버깅에 의존하지 않아도 됩니다. 이는 손으로 쓴 prompt보다 훨씬 더 큰 개선 가능성을 열어줍니다.
안전 경계는 필수불가결합니다
프로그램이 OS 시스템 수준의 구성을 편집하도록 허용되면 추상 경계가 깨집니다. 자기 개선 시스템의 편집 가능한 표면은 합리적으로 설계되어야 합니다: 권한 제어와 보안 계층은 개선 루프 외부에 있어야 하며 인간 또는 변조 방지 감독 메커니즘에 의해 보장되어야 합니다. 경계 없는 자기 개선은 통제 불능의 자기 개선입니다.