수업 #19 — “모든 모델이 실패했습니다”

Source: bbojjak-viewer.vercel.app/lessons/lesson-19 Type: article By: 뽀짝이 / 뽀짝이의 서재 (지피터스 AI스터디) Valid as of: 2026-04-28

Key Insight

에이전트는 “장애가 없는 환경”이 아니라 “장애에서 살아남는 구조”로 만들어야 한다. Auth Profile 순환 → Model Fallback 체인 → Agent Loop의 3중 안전망. 세션 스티킨스(Session Stickiness)는 Prompt Caching 90% 할인을 보존하는 핵심 설계다.

핵심 Takeaway

  • Model Failover 2단계: ①Auth Profile 순환(LRU 우선·지수 백오프 쿨다운·결제 오류는 비활성화) → ②Fallback 체인(Opus→Sonnet→GPT-4o→Gemini). 모든 계정+모델이 다 막혀야 비로소 실패 (출처: “Model Failover” 섹션)
  • 세션 스티킨스(Session Stickiness): 선택된 계정은 세션 끝까지 유지 → Prompt Caching 보존(90% 할인). 매 요청마다 계정 바꾸면 캐시 깨짐 → 전액 과금. 비용 최적화와 장애 대응의 교차점 (출처: “Auth Profile 순환” 섹션)
  • Agent Loop = 안전 컨테이너: 6단계 처리 흐름에서 Model Inference 단계를 Failover가 감싸는 구조. 히스토리 꼬임 없는 재시도 가능. Timeout 10분으로 무한 루프 방지 (출처: “Agent Loop” 섹션)
  • 14일 Usage 분석: 총 928→$612 예상) (출처: “Usage Tracking” 섹션)
  • 작업별 모델 분리 원칙: 단순 체크(하트비트·크론잡)→Sonnet(1/5 비용), 분석·추론 필요→Opus. “비싼 모델이 항상 정답은 아니다” (출처: “절약 작전” 섹션)

상세 요약

Model Failover 메커니즘

Auth Profile 순환 우선순위:

  1. OAuth 계정이 API 키보다 우선 (동일 프로바이더)
  2. 오래 안 쓴 계정(LRU) 먼저 시도
  3. 막힌 계정 → 쿨다운(지수 백오프): 1분→5분→25분→1시간(상한)
  4. 결제 오류 → 비활성화(5h→10h→24h): 기다려도 해결 안 됨

세션 스티킨스 + Prompt Caching 관계:

세션 내 계정 고정 → 같은 계정으로 연속 요청
→ 프로바이더가 시스템 프롬프트·이전 대화 캐시
→ 90% 할인 적용
↕
매 요청 계정 변경 → 캐시 무효화 → 전액 과금

Fallback 체인: Opus → Sonnet → GPT-4o → Gemini Flash

Agent Loop 6단계

단계내용Failover 역할
1. Intake메시지 받기-
2. Context Assembly컨텍스트 준비-
3. Model Inference모델 호출여기서 Profile 순환·Fallback 작동
4. Tool Execution도구 실행-
5. Streaming Replies답변 스트리밍-
6. Persistence세션 저장-

Agent Loop이 Failover를 포함한 3번 단계를 안전하게 감싸므로, 재시도 후 성공해도 세션 히스토리가 꼬이지 않는다.

작업별 모델 최적화

작업이전변경이유
하트비트 (27%)OpusSonnet대부분 HEARTBEAT_OK만 반환
단순 크론잡 (일부)OpusSonnet복잡한 추론 불필요
분석 크론잡OpusOpus 유지Zoom 설문 파이프라인, 주간 리포트
Slack 대화 (18%)OpusOpus 유지집사와의 직접 대화

Opus 가격: 입력 75/M Sonnet 가격: 입력 15/M → 1/5

연결되는 위키 페이지