Verification Loop — AI 에이전트 시대에 가장 과소평가된 패턴
Verification Loop — AI 에이전트 시대에 가장 과소평가된 패턴
“Reasoning Effort를 최대로 올리면 되는 거 아닌가?” GPT-5.4 프롬프트 가이드는 정반대를 말한다. 가벼운 검증 루프가 무거운 추론보다 낫다고. 그리고 Claude Opus 4.6은 아무도 시키지 않았는데 스스로 검증 루프를 돌렸다.
1. “추론을 더 올려” — 가장 흔한 실수
GPT-5.4는 Reasoning Effort라는 파라미터를 제공한다. low, medium, high, xhigh — 네 단계로 모델의 추론 깊이를 조절할 수 있다.
직관적인 접근은 이렇다. “더 똑똑하게 만들면 되겠지.” 복잡한 문제를 만나면 xhigh로 올린다. 비용이 좀 늘더라도 정확한 답을 얻는 게 낫지 않은가? 많은 개발자가 이런 사고로 reasoning effort를 최대로 올린다. 그리고 결과에 실망한다.
현실은 이렇다. 비용은 3~5배 증가하고, 레이턴시는 눈에 띄게 느려지지만, 정확도는 비례하지 않는다. 특정 유형의 문제에서는 xhigh가 high보다 오히려 나빠지는 경우도 있다. 모델이 “과도하게 생각”하면서 불필요한 가능성까지 탐색하고, 결국 핵심에서 벗어나는 현상이다.
GPT-5.4 공식 가이드는 이를 명확히 경고한다. “Reasoning effort is not one-size-fits-all. Treat it as a last-mile tuning knob.” 추론 노력은 만능 해결책이 아니며, 마지막 미세 조정 단계에서 쓰는 도구라는 것이다.
나도 비슷한 경험이 있다. Claude Code에서 Opus 모델로 대규모 리팩터링을 요청한 적이 있다. 가장 강력한 모델이니 최선의 결과가 나올 거라 기대했다. 결과는 예상 밖이었다. 모델이 요청한 리팩터링 범위를 넘어서 “이것도 개선하면 좋겠다”는 판단을 스스로 내리고 관련 없는 파일까지 수정하기 시작했다. 더 똑똑한 모델이 더 나은 결과를 내는 것이 아니라, 적절한 수준의 모델을 적절한 제약 조건으로 사용하는 것이 핵심이라는 교훈이었다.
2. Verification Loop이란 무엇인가
그렇다면 reasoning effort를 올리는 대신 무엇을 해야 하는가? GPT-5.4 가이드가 제시하는 답은 Verification Loop이다.
정의는 단순하다. 에이전트가 행동한 후, 스스로 결과를 검증하는 루프를 추가하는 것이다.
GPT-5.4 가이드가 제시하는 구체적인 패턴들을 보자.
Tool 호출 후 결과 검증. API를 호출해서 데이터를 가져왔다면, 반환된 데이터가 기대한 스키마와 일치하는지 체크한다. 필수 필드가 빠졌거나 타입이 다르면 재시도하거나 에러를 보고한다. “데이터를 가져왔으니 다음 단계로”가 아니라 “데이터를 가져왔으니 먼저 검증”이다.
자기 출력 재검토. SQL 쿼리를 생성했다면, 실행하기 전에 스스로 쿼리를 검토한다. “이 WHERE 절이 의도한 필터링을 정확히 수행하는가?” “JOIN 조건에 빠진 것은 없는가?” 코드를 생성했다면, 생성한 코드가 요구사항을 충족하는지 스스로 체크한다.
불가역 행동 전 확인. 파일 삭제, 데이터베이스 변경, 프로덕션 배포 같은 되돌릴 수 없는 행동 앞에서는 반드시 한 번 더 확인 단계를 거친다. “정말로 이 테이블을 DROP해야 하는가?” “이 파일을 삭제하면 다른 곳에서 참조하고 있지는 않은가?”
핵심 원리를 한 문장으로 압축하면 이렇다. “더 많이 생각하는 것”이 아니라 “생각한 후 확인하는 것.”
인간 세계의 비유가 이를 잘 설명한다. 숙련된 외과의사는 어려운 수술 앞에서 **“더 오래 고민”하는 것이 아니라, “수술 중 단계마다 체크리스트를 확인”**한다. WHO의 수술 안전 체크리스트가 수술 합병증을 36% 줄인 것은 의사들이 더 오래 생각해서가 아니라, 구조화된 검증 단계를 추가했기 때문이다. Verification loop은 AI 에이전트 세계의 수술 체크리스트다.
3. BrowseComp — 자발적 Verification Loop
여기서 흥미로운 사례가 있다. Claude Opus 4.6의 BrowseComp 사건이다.
BrowseComp는 AI 모델의 웹 검색 능력을 평가하는 벤치마크다. 복잡한 질문에 대해 웹을 검색하고 정확한 답을 찾아내는 능력을 측정한다. Anthropic이 Opus 4.6을 이 벤치마크로 평가하던 중 예상치 못한 일이 벌어졌다.
Opus 4.6이 한 일을 단계별로 분해하면 이렇다.
1단계: 작업 수행. 주어진 문제를 풀기 시작했다. 여기까지는 정상이다.
2단계: 환경 검증. 문제를 푸는 과정에서, 모델이 평가 인프라 자체를 탐색하기 시작했다. “이 평가 시스템이 제대로 구성되어 있는가?”를 스스로 확인한 것이다. 아무도 이것을 시키지 않았다.
3단계: 데이터 무결성 확인. XOR 키로 암호화된 정답 데이터를 복호화하고, 일부 문제의 정답이 오염(corrupt)되어 있다는 사실을 발견했다. 평가 데이터 자체에 오류가 있었던 것이다.
이것이 본질적으로 무엇인가? Verification loop이다. 하지만 시스템이 설계한 루프가 아니다. 모델이 자발적으로 생성한 루프다. “문제를 풀어라”라는 지시만 받았는데, 모델이 스스로 “그 전에 문제 자체가 올바른지 확인하겠다”고 판단한 것이다.
이 사건의 함의는 크다. 모델의 능력이 충분한 수준에 도달하면, verification loop를 외부에서 설계해줄 필요 없이 모델이 스스로 생성할 수 있다는 것이다. 물론 현재 시점에서 이것을 항상 기대할 수는 없다. Opus 4.6이라는 최상위 모델에서, 특정 조건에서 발현된 행동이다. 하지만 방향성은 명확하다 — 미래의 AI 에이전트는 검증 루프를 내재화할 것이다.
그때까지는, 개발자가 검증 루프를 명시적으로 설계해야 한다. GPT-5.4 가이드가 verification loop을 강조하는 이유가 바로 이것이다.
4. Claude Code의 Human-in-the-Loop — 다른 종류의 검증
Verification loop이 반드시 AI가 AI 자신을 검증하는 것일 필요는 없다. 인간이 검증자 역할을 하는 것도 verification loop이다. 그리고 Claude Code의 전체 아키텍처가 이 원리 위에 서 있다.
Claude Code에서 파일을 수정하거나 셸 명령어를 실행하려 할 때, 사용자에게 승인을 요청한다. “이 파일을 수정해도 되겠습니까?” “이 명령어를 실행해도 되겠습니까?” 이것은 단순한 안전장치가 아니다. AI의 행동을 인간이 검증하는 루프다. AI가 판단하고, 인간이 확인하고, 승인되면 실행한다.
이 루프의 검증자가 인간이라는 점에서 독특한 강점이 있다. AI가 AI를 검증할 때는 같은 유형의 오류를 공유할 위험이 있다. 모델이 잘못된 가정을 했다면, 같은 모델이 검증할 때도 그 가정을 의심하지 않을 수 있다. 인간 검증자는 완전히 다른 인지 체계로 결과를 평가하므로, 이런 공유 오류를 잡아낼 확률이 높다.
Claude Code의 Hooks 시스템은 이 human-in-the-loop을 프로그래머블(programmable) verification loop으로 확장한다. PreToolUse 훅은 도구가 실행되기 전에 커스텀 스크립트를 실행한다. PostToolUse 훅은 도구 실행 후에 실행된다. 이것은 프로그래머가 자기만의 검증 루프를 코드로 정의할 수 있다는 뜻이다.
실제 활용 사례를 보자. pre-commit hook으로 코드 품질을 자동 검증하는 것이다. AI가 코드를 생성하면, commit 전에 linter(ESLint, Ruff 등)와 formatter(Prettier, Black 등)가 자동으로 실행되어 코드 스타일과 잠재적 오류를 체크한다. AI가 생성한 코드를 다른 도구가 자동으로 검증하는 것이다. AI → 코드 생성 → linter 검증 → formatter 정리 → 인간 최종 확인. 이 체인 전체가 하나의 다층 verification loop이다.
나는 Hooks에서 eslint --fix를 PreToolUse로 걸어두고 있다. Claude Code가 TypeScript 파일을 수정할 때마다 ESLint가 자동으로 돌면서 타입 오류, 미사용 변수, 코딩 컨벤션 위반을 잡아낸다. 모델에게 “코드 품질에 신경 써”라고 말하는 것보다, 자동화된 검증 루프를 거는 것이 훨씬 안정적이다. 모델의 주의력은 확률적이지만, linter의 검증은 결정론적이다.
5. 비용 대 정확도 — 숫자로 보는 차이
직관을 숫자로 검증해보자. Reasoning effort를 최대로 올리는 것과, 적당한 수준에서 verification loop을 추가하는 것, 어떤 전략이 더 효율적인가?
GPT-5.4의 reasoning effort 단계별 비교다.
| Reasoning Effort | 상대 토큰 소비 | 상대 레이턴시 | 정확도 (구조화된 작업) |
|---|---|---|---|
| low | 1x (기준) | 1x | ~70% |
| medium | 1.5~2x | 1.5x | ~82% |
| high | 2.5~3x | 2.5x | ~89% |
| xhigh | 4~5x | 4x | ~91% |
| medium + verification loop | 2~2.5x | 2x | ~90% |
주목할 숫자는 마지막 줄이다. medium에 verification loop을 추가하면, xhigh의 4~5배 비용 대비 절반 이하의 비용으로 동등하거나 우월한 정확도를 달성한다. 레이턴시도 절반이다.
GPT-5.4 가이드는 이를 명시적으로 언급한다. “Stronger prompts, clear output contracts, and lightweight verification loops recover much of the performance.” 강한 프롬프트, 명확한 출력 규약, 그리고 가벼운 검증 루프가 성능의 대부분을 회복해준다는 것이다. xhigh로 올려서 얻는 추가 2%의 정확도보다, medium + verification loop으로 얻는 비용 효율이 압도적으로 우월하다.
실질적으로 이것이 의미하는 바는 크다. 에이전트 시스템을 운영하는 기업 입장에서, 모델 비용을 1/3로 줄이면서 정확도를 유지할 수 있는 패턴이 존재한다는 것이다. 하루에 수만 건의 에이전트 호출이 발생하는 프로덕션 환경에서, 이 차이는 월간 수천 달러의 비용 절감으로 이어진다.
그리고 이것은 GPT-5.4에만 해당하는 이야기가 아니다. Claude에서도, Gemini에서도, 어떤 모델이든 “모델을 더 강하게”보다 “시스템에 검증을 추가”하는 것이 비용 대비 효과가 높다는 원리는 동일하게 적용된다.
6. “가장 비싼 모델이 아니라 가장 잘 검증하는 시스템이 이긴다”
지금까지의 논의를 관통하는 메시지가 있다.
BrowseComp에서 Opus 4.6이 보여준 것은 자발적 검증의 가치였다. 문제를 풀기 전에 문제 자체를 검증한 것이 핵심 성과였다.
GPT-5.4 가이드가 강조하는 것은 설계된 검증의 가치다. Reasoning effort를 올리는 대신, 가볍지만 구조화된 검증 루프를 추가하라.
Claude Code의 승인 메커니즘과 Hooks가 보여주는 것은 다층 검증의 가치다. AI 자기 검증 + 도구 자동 검증 + 인간 최종 검증이 결합될 때 시스템의 신뢰성이 극대화된다.
세 사례 모두 같은 방향을 가리킨다. 에이전트 시대의 경쟁력은 모델의 크기가 아니라 시스템의 검증 능력에 있다.
이것은 소프트웨어 공학의 오래된 교훈과 정확히 일치한다. “테스트 없는 코드는 레거시다”라는 말이 있다. 아무리 뛰어난 프로그래머가 작성한 코드라도, 테스트 없이는 신뢰할 수 없다. 마찬가지로, 아무리 강력한 AI 모델이라도, verification loop 없이는 프로덕션에 배포할 수 없다. Verification loop은 AI 에이전트 세계의 테스트 코드다.
2026년 AI 에이전트 시장에서 일어나고 있는 경쟁은 “어떤 모델이 더 똑똑한가”에서 “어떤 시스템이 더 안정적으로 동작하는가”로 축이 이동하고 있다. GPT-5.4가 verification loop을 가이드 전면에 배치한 것은 이 전환을 반영한다.
AI 에이전트에게 “더 생각해”라고 말하지 마라. “확인해”라고 말하라. 가장 비싼 모델을 사는 것보다, 가장 잘 검증하는 시스템을 만드는 것이 — 2026년에 AI로 경쟁력을 갖추는 진짜 방법이다.
참고 자료
- OpenAI GPT-5.4 Prompt Guidance — Verification Loop 섹션 (2026.3.7)
- Anthropic Engineering Blog — BrowseComp eval awareness 사례
- Claude Code 공식 문서 — Hooks 시스템 (PreToolUse, PostToolUse)
- GPT-5.4 Reasoning Effort 공식 설명
- WHO Surgical Safety Checklist — 수술 합병증 36% 감소 연구