피드로 돌아가기
Dev.toAI/ML
원문 읽기
Logpush-DuckDB 스택을 통한 LLM Silent Loop 탐지 및 비용 60% 절감
60% of My $312 Anthropic Bill Came From One Silent Loop — Here's How I Found It
AI 요약
Context
LLM 에이전트의 Tool Call 실패로 인한 무한 Retry Loop 발생 및 이로 인한 입력 토큰의 기하급수적 증가 상황. 기존 Worker 로그의 200 OK 응답과 빌링 대시보드의 단순 합산 수치만으로는 개별 호출 체인별 토큰 소모량을 식별하기 어려운 구조적 한계 존재.
Technical Solution
- Logpush와 R2를 연동하여 분산된 Worker 로그를 Parquet 형태로 중앙 집중화
- DuckDB 기반의 SQL 쿼리를 통한 Worker별 토큰 사용량 집계 및 비용 유발 지점 정밀 분석
- Claude Code의 --verbose 플래그를 활용하여 Tool Input/Output JSON 전체를 덤프하고 jq로 시퀀스 재구성
- KV Counter를 도입하여 대화 스레드별 호출 횟수를 추적하고 호출 한계치 도달 시 즉시 차단하는 가드레일 설계
- last_actor 필드를 통해 멀티 에이전트 간의 상호 호출 루프를 유발하는 특정 봇을 식별하는 추적 메커니즘 구현
실천 포인트
1. LLM API 호출 시 단순 응답 코드 외에 입력/출력 토큰 사용량을 Worker/Call-ID 단위로 로깅할 것
2. 멀티 에이전트 설계 시 KV 스토어 등을 활용한 호출 횟수 제한(Rate Limit) 및 순환 호출 방지 로직을 구현할 것
3. 대규모 로그 분석 시 비용 효율적인 분석을 위해 Parquet 포맷 저장 및 DuckDB 같은 OLAP 툴 검토할 것