Papers·3일 전
LLM 에이전트 예산 초과 사고 63건 분류 — Rust affine 타입으로 컴파일 타임 방어

LLM 에이전트 운영에서 발생한 63건의 예산 초과 사고를 8개 클러스터로 분류한 실증 연구입니다. 저자들은 Rust의 affine ownership을 활용해 예산 복제·이중 사용·위임 후 사용을 컴파일 에러로 막는 1,180줄 크레이트 token-budgets를 제안했으며, 다중 에이전트 위임 경쟁 조건에서 asyncio 구현은 30/30 초과한 반면 제안 방식은 0/30을 기록했습니다. 단일 에이전트에서는 4줄 Python 카운터와 동등하지만, 연산자 실수 시 비우회 가능성이 차별점입니다.
LLM 에이전트의 예산 초과는 실제 운영에서 수천 달러 손실을 유발하는 생산 장애 클래스입니다.
핵심 결론
- 사고 분류 — 21개 오케스트레이션 프레임워크(2023-2026)에서 63건의 확인된 생산 사고를 8개 클러스터로 분류, Cohen's kappa = 0.837 (N=113).
- 제안 도구 — Rust affine 타입 기반 token-budgets 크레이트(1,180줄, no unsafe)로 예산 복제·이중 사용·위임 후 사용을 컴파일 타임에 차단.
- 성능 — 다중 에이전트 위임 경쟁 조건에서 asyncio는 30/30 초과, 제안 방식은 0/30. 단일 에이전트에서는 4줄 Python 카운터와 동등.
방법
- affine ownership — 예산 값을 affine 타입으로 선언해 복사·이중 사용·위임 후 사용을 borrow checker가 컴파일 에러로 거절.
- 런타임 산술 — 달러 상한은 추정기 가정 하에 런타임 산술로 계산되지만, affine 레이어가 산술을 우회 불가능하게 만듦.
- 테스트 범위 — 5개 런타임, 3개 프로바이더, 온도 계층화 라이브 API 테스트(N=160)에서 위반 0건, 거짓 거절 0건.
한계·조건
- 정적 초과 예약 — 정적 오버-리저베이션이 4-6배(적응형 2.11배) 발생.
- 미해결 문제 — 실행 중인 바이너리 수준의 예산 건전성(cap-soundness)은 아직 해결되지 않음.
편집자 한 줄
실제 운영 사고를 체계적으로 분류하고 타입 시스템으로 방어한 점이 인상적이지만, 정적 오버헤드와 바이너리 수준 건전성은 추가 연구가 필요해 보입니다.
- #llm-agents
- #safety
- #rust
- #affine-types
- #budget-control
Sajjad Khan