실행 중 계획이 통째로 무너지면, Agent는 어떻게 스스로 경로를 바꾸는가

← 전체 목차 · 이전: 복잡한 작업일수록, 계획을 왜 모델에게 통째로 맡기면 안 되는가 · 다음: Agent가 같은 자리를 맴돌 때, 언제 멈춰야 하는지 어떻게 아는가

한 번에 다 쪼개 놓은 계획은 미래를 예측할 수 있다는 가정 위에 서 있다. 실행 도중 도구를 못 쓰게 되거나, 중간 결과가 기대와 어긋나거나, 사용자가 요구를 바꾸는 순간 그 가정은 깨진다. 작업 전 계획을 세워야 하는 이유가 계획의 "정적 골격"을 다뤘다면, 이 문서는 그 골격이 실행 중 깨졌을 때 어떻게 동적으로 재구성하는가를 다룬다.

정적 사전 계획이 실패하는 다섯 지점

실패 시나리오결과
정적 사전 계획이 모든 경계·예외를 못 덮음경계를 벗어나는 순간 통제 불능
고정 분해 입도가 난이도에 적응하지 못함지나치게 굵거나 지나치게 잘게 쪼개짐
실행 결과 검증 메커니즘 부재잘못된 길을 가도 제때 멈추지 못하고 끝까지 감
요구 변경 시 증분 계획 능력 부재전부 처음부터 다시 함
다중 목표 충돌 시 동적 우선순위 조정 부재실행이 뒤엉키고 핵심 목표를 이탈함

원인을 "모델이 부족해서"로 돌리면 해법은 영원히 "더 강한 모델로 바꾸는 것"에 머문다. 실제로는 작업 복잡도, 환경 불확실성, 피드백 메커니즘 부재, 목표 동적성이라는 네 가지가 겹친 결과다.

1층: 전역 굵은 계획 + 국소 세밀 계획, 2단계 혼합

상위층 (전역 굵은 계획)
  이정표급 단계 목표만 골라낸다 — 큰 방향만 정하고 세부는 정하지 않는다

하위층 (단계별 세밀 계획)
  한 스텝을 끝낼 때마다 → 현재 상태를 기반으로 다음 스텝의 구체 동작을 정한다
  전체 흐름을 미리 확정하지 않는다

간단한 작업은 완전한 실행 계획을 바로 생성하고, 복잡한 작업은 단계적으로 점진 분해한다. 이 구조는 입도 문제(다음 스텝 계획이 이전 스텝 실행 이후에 일어나므로 과다 분해가 없다)와 동적 의존 문제(전후 스텝의 강의존이 자연히 소화된다)를 동시에 해소한다.

2층: 편차도로 분류하는 피드백 검증

매 라운드 실행 후 → 결과 검증 + 진도 평가 → 편차도 계산
├─ 소편차 → 파라미터 자동 보정, 도구 호출 방식 조정 → 계속 실행
└─ 대편차 → 국소 재계획 트리거
             실패한 구간만 다시 함
             완료된 유효 성과는 완전히 보존
             절대 처음부터 다시 하지 않음

편차를 이진(성공/실패)으로 다루지 않고 정도로 다뤄야 한다. 이상 전부를 "처음부터 다시"로 승격시키면 이미 완료된 성과를 낭비하고 실행 비용을 감당 불가능한 수준으로 밀어올린다.

3층: 경로 상시 비교 후 평탄 전환

실행 중 현재 경로의 효율·비용을 지속적으로 평가하다가, 더 나은 대체 경로가 발견되면 수익을 먼저 비교한 다음 평탄하게 전환한다. 새 경로가 보인다고 바로 갈아타는 것이 아니라 — 갈아타기 전에 계산부터 한다는 뜻이다.

진행 상황 앵커 — 단절·재시도가 진행률을 삼키지 않도록

완료된 서브태스크마다 세 가지를 자동으로 수행한다.

  1. 진행 상황 기록
  2. 결과 아카이브
  3. 상태 표시(완료 / 대기 실행 / 실패 원인)

컨텍스트 리프레시나 인터페이스 재시도로 중단되어도, Agent는 최신 진행 앵커를 읽어 끊긴 지점부터 이어 실행한다. 진행 앵커가 없으면 재시도와 리프레시 자체가 진행률을 삼켜버리는 가장 큰 원흉이 된다.

후치 전역 검증 복기

작업이 끝난 뒤 초기 요구에 대조해 세 가지를 검증한다.

검증 항목내용
단계 완전성빠진 단계가 없는가
결과 정확성산출물이 맞는가
목표 일치도최초 요구와 부합하는가

편차가 발견되면 자동으로 보완 실행·자동 교정한다. 후치 복기가 없으면 Agent는 결과를 인도하는 것이 아니라 스텝을 실행하고 있을 뿐이다.

극단 상황 안전망

수단내용
상한 제약최대 계획 라운드 / 최대 실행 스텝 / 최장 실행 시간
보장 경로핵심 작업에는 고정 흐름의 보장 실행 경로를 미리 준비해, 동적 계획이 실패하면 전환
모니터링계획 성공률, 평균 재계획 횟수, 작업 완료 시간, 경로 유효율
강등동적 계획 모듈 장애 시 "정적 사전 계획 + 사람 수동 재실행"으로 강등

핵심 통찰

  1. "정적 사전 분해"가 계획 실패의 근본 원인이지 모델 능력 부족이 아니다 — 한 번에 다 쪼개는 것은 미래가 예측 가능하다는 가정이다. 도구 불가용·결과 편차·요구 변경 중 하나만 벌어져도 이 가정은 깨진다. 원인을 모델로 돌리면 "더 강한 모델로 바꾸기"에서 영원히 못 벗어난다.
  2. 계획 입도는 상수가 아니라 적응해야 하는 변수다 — 지나치게 굵으면 중간 스텝이 빠져 실행 중 막히고, 지나치게 잘게 쪼개면 무의미한 도구 호출이 쌓여 연산과 응답을 함께 갉아먹는다. 어떤 고정 입도의 분해기도 특정 유형의 작업에서 반드시 무너진다.
  3. 재계획은 켜고 끄는 스위치가 아니라 편차도에 따른 등급 처리다 — 소편차는 파라미터·호출 방식만 조정하면 충분하고, 대편차만 국소 재계획을 트리거한다. 모든 이상을 "처음부터 다시"로 승격시키면 완료 성과를 낭비하고 비용을 감당 불가능한 수준으로 밀어올린다.
  4. 완료된 유효 성과를 보존하는 것이 프로덕션급과 Demo급을 가르는 분수령이다 — 국소 경로가 막혔다고 전량 재실행하면 Demo에서는 안 보이지만 장시간 작업에서는 재앙이다. "실패한 구간만 다시 한다"는 제약은 거꾸로 "실패 구간을 특정할 수 있어야 한다"는 요구로 이어진다.
  5. 경로 전환은 계산부터 하고 나서 움직인다 — 더 나은 대체 경로를 발견했다고 바로 전환하는 것이 아니라, 수익을 먼저 비교하고 나서 평탄하게 전환한다. 수익 비교 없는 자동 전환은 그 자체로 새로운 무효 탐색이 된다.
  6. 안전망은 선택지가 아니다: 라운드·스텝·시간 세 상한 + 보장 경로가 있어야 작업이 끊기지 않는다 — 동적 계획의 자유도가 높을수록 계획 순환에 빠질 가능성도 커진다. 그래서 자유도에는 반드시 하드 제약이 짝을 이뤄야 한다.
  7. 부정당한 방안도 강등 예비안이 될 수 있다 — "정적 사전 계획 + 사람 수동 재실행"은 주 방안으로는 불합격이지만, 동적 계획 모듈이 장애일 때는 기본 실행 능력을 보장하는 옳은 선택이다. 주 방안과 강등 방안의 평가 기준은 원래부터 다르다.

엔지니어링 실전 Tips

  • "전체 흐름을 미리 확정하지 않는다"를 하드 제약으로 못 박을 것: 하위층 세밀 계획은 반드시 상위 스텝 실행 완료 이후에 일어나야 한다. 이 한 줄이 입도 문제와 전후 강의존 문제를 동시에 해결한다.
  • 편차도를 계산 가능한 값으로 만들 것: 피드백 검증층의 분류는 "현재 산출물과 단계 목표 간 편차도"에 의존한다. 단계 목표를 비교 가능한 형태로 써 놓지 않으면 검증층은 장식품이 된다.
  • 국소 재계획으로 전량 재실행을 대체해 연산을 절약할 것: 추론 기반 모델을 업그레이드하지 않고도, 무효 탐색과 중복 실행을 줄이는 것만으로 "보통 모델로도 높은 계획 효율"을 낼 수 있다.
  • 업무 시나리오별로 계획 템플릿을 미리 만들어 둘 것: 데이터 처리·콘텐츠 생성·문제 트러블슈팅 등은 각각의 분해 전략과 제약 규칙을 갖게 하면, 매번 모델이 처음부터 생각하는 것보다 계획 정확도가 훨씬 높다.
  • 가관측성 지표는 계획 행위 자체에 붙일 것: 계획 성공률, 평균 재계획 횟수, 작업 완료 시간, 경로 유효율 — 이 네 지표는 결과의 성패가 아니라 계획 체계 자체의 건강도를 직접 반영한다.
  • 강등 경로를 미리 설계해 둘 것: 모듈이 장애 난 다음 "사람이 어떻게 개입할지" 그 자리에서 정하면 이미 늦다. "정적 사전 계획 + 사람 수동 재실행"을 명시적 강등 전략으로 문서에 박아 둘 것.