한 번도 발동되지 않는 비상 계획
(dev.to)
AI 에이전트의 모델 폴백(fallback) 시스템에서 치명적인 라이브락(livelock) 버그가 발견되었습니다. 주 모델이 한도 초과(429) 오류를 반환하면 백업 모델을 선택하지만, 세션 조정 시스템이 즉시 원래 모델로 되돌려 무한 루프에 빠지는 문제입니다. 이는 서로 소통하지 않는 두 가지 상태 관리 시스템의 충돌로 인해 발생하며, 복잡한 시스템 설계와 엔드투엔드 테스트의 중요성을 강조합니다.
이 글의 핵심 포인트
- 1AI 에이전트의 모델 폴백(fallback) 시스템에서 발생한 라이브락(livelock) 버그 (이슈 #59213).
- 2근본 원인은 요청 레벨의 폴백 로직과 세션 레벨의 모델 조정 시스템 간에 소통 없는 '상태 조정 간섭' 때문.
- 3이는 '설정이 진실(config-as-truth)'과 '런타임이 진실(runtime-as-truth)' 원칙의 충돌로 설명됨.