포스트

Fable 5 vs GPT-5.6 Sol: NP-난해 최적화 문제에서 /goal 지속성 기능 벤치마크

목차

  1. 개요
  2. 방법론
  3. 주요 결과
  4. 한계와 주의사항
  5. 결론
  6. Reference

개요

에이전트형 코딩 도구에는 모델이 스스로 완료를 선언할 때까지 작업을 계속하게 만드는 지속성 기능이 있다. Claude Code와 Codex는 모두 이를 /goal 명령으로 제공한다. 이 기능이 실제로 결과를 개선하는지를 확인하기 위해, 공개된 코딩 리더보드가 아닌 미발표 NP-난해 최적화 문제를 사용한 벤치마크가 수행되었다.

대상 문제는 KIRO 광섬유 네트워크 설계 문제이며, 2018년 엔지니어링 경진대회에서 출제된 과제다. 이 문제는 점수가 낮을수록 좋은 최소화 문제이며, 총 케이블 길이를 목적 함수로 삼는다. 결과적으로 /goal 모드는 6회 시행 중 4회에서 개별 승리를 거두었음에도 두 모델 모두 평균 성능이 악화되는 현상이 관측되었다.

방법론

KIRO 광섬유 네트워크 최적화 문제

KIRO 문제는 분배점(distribution point)과 단말(terminal)을 광케이블로 연결하는 네트워크 설계 과제다. 연결 구조는 분배점 허브에서 출발해 다시 허브로 돌아오는 중복 루프(redundant loop)와, 루프 상의 타워에서 뻗어 나가는 짧은 분기(branch)로 구성된다. 각 타워는 정확히 한 번만 등장해야 하며, 케이블 구간의 방향이 뒤집히면 비용이 달라진다.

목적 함수는 거리 제약을 만족하면서 총 케이블 길이를 최소화하는 것이다. 따라서 벤치마크에 등장하는 모든 점수는 낮을수록 우수한 해를 의미한다.

탐색 공간 규모

이 문제의 난이도는 파리(Paris) 인스턴스 하나만으로도 드러난다. 순서와 분기를 전혀 고려하지 않고 532개 단말을 11개 분배 허브에 할당하는 기본 할당만 세어도 경우의 수는 11^532, 약 10^557에 달한다.

더 엄밀한 하한선은 제한된 해 집합에서 계산된다. 분기 없이 정확히 19개 루프에 각 28개 단말이 배치되는 형태만 고려하면, 루프 순열과 허브 선택을 반영한 후보 수는 (532! / 19!) x 11^19, 약 10^1223이다. 이 규모는 완전 탐색이 불가능함을 보여주며, 해법의 품질은 전적으로 모델이 선택한 휴리스틱 전략에 좌우된다.

실험 설정

실험은 Claude 계열 3종과 OpenAI 계열 3종을 대상으로 진행되었다. 각 모델은 일반 모드와 네이티브 /goal 모드 두 가지 조건에서 실행되었다.

항목설정
테스트 모델Fable 5, Opus 4.8, Sonnet 5, GPT-5.6 Sol, Terra, Luna
실행 모드일반 모드, 네이티브 goal 모드
시간 제한실행당 30분
타임아웃1,900초
추론 설정각 모델에서 사용 가능한 최대 수준
실행 환경Harbor 0.1.43, Docker, 구독 인증

래퍼가 체크포인트와 검증을 강제했기 때문에 채점된 산출물은 모두 유효한 해였다.

goal 메커니즘의 구현 차이

같은 이름의 명령이지만 두 도구의 내부 제어 구조는 근본적으로 다르다.

Claude Code는 /goal을 세션 범위의 Stop 훅으로 구현한다. 작은 평가자 모델이 목표 조건과 대화 기록을 읽고 완료 여부를 yes/no로 반환한다. 이 평가자는 도구를 사용하거나 파일을 열어볼 수 없으며, 오직 대화 기록만 검사해 판단한다.

Codex는 목표를 SQLite에 저장되는 스레드 상태로 관리한다. 작업 모델 자신이 create_goal, get_goal, update_goal 같은 도구에 직접 접근한다. 세션이 유휴 상태가 되면 목표 리마인더와 완료 감사를 담은 연속 턴이 주입되며, 모델이 스스로 완료를 선언한 뒤 작업이 재개된다.

즉 Claude는 완료 판정을 대화 기록만 볼 수 있는 별도 모델에 위임하고, Codex는 작업 모델이 영속 상태를 유지하면서 스스로 판정한다. 이 차이가 두 시스템의 지속성 동작 양상을 다르게 만든다.

주요 결과

6개 모델 단일 실행 비교

6개 모델을 각각 한 번씩 실행한 비교에서 Fable 5가 약 32,197로 가장 좋은 점수를 기록했다. GPT-5.6 Sol은 약 33,581로 그 뒤를 이었다. 최소화 문제이므로 Fable 5가 약 1,384점만큼 더 짧은 총 케이블 길이를 달성한 것이다.

Fable 5와 GPT-5.6 Sol의 3회 반복 비교

상위 두 모델에 대해서만 일반 모드와 goal 모드를 짝지어 3회씩 반복 실행했다.

모델시행일반 모드goal 모드차이
Fable 5132,19731,934-263
Fable 5232,51632,324-192
Fable 5332,44635,178+2,732
GPT-5.6 Sol133,58139,371+5,790
GPT-5.6 Sol235,53932,703-2,836
GPT-5.6 Sol333,66333,313-350

차이 열의 음수는 goal 모드가 더 짧은 케이블 길이를 얻었다는 뜻이므로 개선을 의미한다. 평균으로 집계하면 결과가 뒤집힌다.

지표Fable 5 일반Fable 5 goalSol 일반Sol goal
평균32,38633,14534,26135,129
중앙값 효과기준192점 개선기준350점 개선
점수 폭319점해당 없음1,958점해당 없음

Fable 5는 goal 모드에서 평균이 759점 악화되었고, GPT-5.6 Sol은 868점 악화되었다. 일반 모드 평균끼리 비교하면 Fable 5가 Sol보다 1,875점 앞선다. 점수 폭에서도 Fable 5는 319점, Sol은 1,958점으로 Fable 5의 실행 간 편차가 훨씬 작다.

승률과 평균의 역설

goal 모드는 6회 시행 중 4회, 즉 67%에서 짝지어진 일반 모드 실행을 이겼다. 중앙값 기준으로도 두 모델 모두 소폭 개선되었다. 그럼에도 두 모델의 평균은 모두 악화되었다.

원인은 소수의 대형 실패 사례가 평균을 끌어내렸기 때문이다. Fable 5의 3번째 시행은 2,732점, Sol의 1번째 시행은 5,790점 악화되었다. 최적화 문제에서 추가 시간은 좋은 결정도 나쁜 결정도 똑같이 증폭한다. 모델이 효과적인 탐색 전략을 잡았을 때 goal 모드는 그 전략을 계속 밀어붙여 이득을 냈지만, 비효율적인 솔버나 결함 있는 탐색 방식을 선택했을 때는 잘못된 방향을 오래 지속시켜 하위 꼬리를 크게 벌렸다.

종합하면 가장 안전한 설정은 Fable 5 일반 모드였고, 단일 최고 기록은 Fable 5 goal 모드의 31,934였다.

한계와 주의사항

이 벤치마크의 결론을 일반화할 때는 다음 제약을 고려해야 한다.

항목내용
과제 범위미발표 NP-난해 문제 한 건만 대상이며 범용 코딩 리더보드가 아님
표본 크기Fable 5와 Sol만 3회 짝지어 시행했고 나머지 모델은 프롬프트와 버전이 혼재
환경 불일치과제 메타데이터는 1CPU를 선언했으나 실제 컨테이너는 8CPU를 노출해 병렬 접근에 유리
서비스 변동구독 기반 인증을 사용해 기간에 따른 서비스 드리프트 가능성 존재

특히 8CPU 노출은 병렬 탐색을 시도한 실행에 구조적 이점을 주었을 수 있으므로, 모델 간 절대 점수 비교는 신중하게 해석해야 한다.

결론

이 벤치마크의 핵심은 지속성 기능이 개별 시행 대부분에서 이기면서도 평균 성능을 악화시킬 수 있다는 점이다. 승률 67%라는 수치만 보면 /goal은 명백한 개선처럼 보이지만, 실제 평균은 Fable 5에서 759점, GPT-5.6 Sol에서 868점 나빠졌다. 개별 승률과 기대 성능이 서로 다른 방향을 가리킬 수 있으므로, 에이전트 기능을 평가할 때 단일 지표에만 의존해서는 안 된다.

어려운 최적화 문제에서 중요한 것은 반복 횟수가 아니라 반복하는 전략의 품질이다. 잘못된 전략을 오래 지속하면 추가 시간은 손실로 이어진다. 모델 선택 관점에서는 Fable 5가 평균과 안정성 양쪽에서 GPT-5.6 Sol을 앞섰으며, 실행 간 편차가 작다는 점이 실무에서 예측 가능성을 높이는 요소로 작용한다.

Reference