GenAI Playbook
프로덕션에 에이전트 배포
게시일 · 저자: Dipankar Sarkar
프로덕션에 에이전트 배포
프로토타입에서 신뢰 가능 시스템으로
프로토타입 에이전트는 laptop에서 실행되고 70% 시간 작동. 프로덕션 에이전트는 클라우드에서 실행, 많은 사용자 서비스, 실패 처리, 비용 제어, 99% 시간 작동. 이 장은 간극을 다룬다 — 에이전트를 shippable하게 만드는 아키텍처와 운영 패턴.
프로덕션 아키텍처
배포된 에이전트를 위한 참조 아키텍처:
사용자 → API 게이트웨이 → 에이전트 런타임 → { LLM 제공자, 도구 서버, 메모리 store }
↓ ↑
Tracing/observability ──────┘- API 게이트웨이 — 사용자 인증, rate-limit, 에이전트 런타임에 라우팅.
- 에이전트 런타임 — 에이전트 루프 실행(LangGraph, 벤더 SDK, 또는 커스텀 루프). 세션 상태를 지속하지 않으면 요청당 stateless.
- LLM 제공자 — OpenAI, Anthropic, Google, 또는 self-hosted 모델. 폴백과 비용 제어를 위해 게이트웨이(LiteLLM, Portkey)로 라우팅.
- 도구 서버 — MCP 서버 또는 시스템에 직접 통합. 범위 자격 증명, 에이전트당 allowlist.
- 메모리 store — vector DB(RAG), KV store(사용자별 상태), 로그(observability + 에피소드 메모리).
- Tracing — Langfuse 또는 동등물, 런타임에서 span 수신.
스트리밍
에이전트 실행은 느리다(10s–2min). 사용자는 spinner를 응시하지 않을 것이다. 중간 진행을 스트림:
- 모델이 추론할 때 토큰을 스트림(“생각하는” 텍스트).
- 도구 호출에 구조화된 이벤트를 방출(
{"event":"tool_start","tool":"search"}). - 완료시 최종 출력 전송.
이는 UX만이 아니다 — 신뢰성 향상. 사용자가 에이전트가 예상 5의 8단계에 있음을 보면, 더 비싸지기 전 runaway를 취소 가능. Server-Sent Events(SSE) 또는 WebSocket 사용; SSE가 단순하고 대부분의 에이전트에 충분.
폴백과 복원력
모델은 실패. API는 rate-limit. 도구는 timeout. 계획:
- 모델 폴백 — GPT-5가 429 또는 500 반환시, Claude 또는 Gemini에 후퇴. 모델 게이트웨이(LiteLLM, Portkey)가 자동 처리.
- 백오프로 도구 재시도 — 일시적 도구 실패(HTTP 429, 503)는 exponential 백오프로 재시도. 4xx에 재시도 금지(클라이언트 오류 — 재시도 도움 안 됨).
- 우아한 저하 — 메모리 store가 다운되면, 에이전트는 컨텍스트에서(RAG 없이) 답할 수 있어, 전체 실행 실패보다 나음.
- 모든 계층에 timeout — 모델 호출(60s), 도구 호출(10–30s), 전체 실행(5–10min). 멈춘 에이전트가 실패한 것보다 나쁨.
비용 최적화
에이전트는 대부분의 팀이 배포할 가장 비싼 것. 영향 순 레버:
- 모델 티어링. 라우팅, 요약, 단순 단계에 저렴한 모델(Haiku, Flash, GPT-4o-mini) 사용. 어려운 추론에만 강한 모델(Opus, GPT-5). supervisor 패턴(다중 에이전트 시스템 참조)이 이를 자연스럽게 — supervisor는 저렴, worker는 강함.
- 컨텍스트 정리. 오래된 턴 요약; 큰 도구 출력 잘라내기; 관련 없는 기록 drop. 100K 토큰 실행이 10K의 10× 비용.
- 캐싱. 도구 결과 캐시(실행 내 같은
search쿼리), 동일 입력에 모델 응답 캐시(OpenAI와 Anthropic 모두 2026에 prompt 캐싱 제공), embedding 캐시. - 단계 캡. 루프 반복의 하드 한계. 50단계 필요한 대부분의 작업은 실제로 더 많은 단계가 아닌 재설계 필요.
- 가능한 곳에 배치. 1,000개 문서를 처리하면, embedding 배치, 모델 호출 배치(API가 지원하는 곳).
성공당 비용을 추적, 실행당 비용이 아닌. $0.50 실행이 성공하는 것이 $0.05 실행이 실패하고 인간이 다시 하게 하는 것보다 저렴.
멀티테넌시
에이전트가 여러 사용자 또는 고객을 서비스하면:
- 테넌트당 격리 — 각 테넌트의 데이터가 별도 namespace(DB schema, vector 인덱스 접두사, 또는 KV 키 접두사). 테넌트 간 쿼리 금지.
- 테넌트당 자격 증명 — 도구가 테넌트 특정 자격 증명으로 테넌트 특정 시스템에 연결. 공유 admin 키 사용 금지.
- 테넌트당 한계 — 테넌트당 rate limit과 지출 캡, 한 무거운 사용자가 서비스를 파산시키지 못하게.
- 테넌트당 메모리 — 장기 메모리가 테넌트에 범위; Acme를 돕는 에이전트가 Globex에서 사실을 회상하면 안 됨.
에이전트 버전 관리
에이전트는 변한다. 프롬프트, 도구, 모델 — 모두 진화. 안전하게 ship:
- 에이전트 버전 — 에이전트 정의(프롬프트 + 도구 목록 + 모델)에 semver 또는 날짜 태그. 모든 trace에 로그.
- 섀도 실행 — 새 에이전트 버전을 섀도 모드에 배포: 실제 입력에 실행되지만 출력이 사용자에 반환 안 됨. 결과 비교.
- 카나리 배포 — 5% 트래픽을 새 버전에 라우팅, 오류율과 비용 관찰, 증가.
- 롤백 — 이전 버전을 실행 가능하게 유지; 새 버전이 회귀하면 플래그가 트래픽을 되돌림.
프로덕션의 observability
이것은 에이전트 평가 & 관찰에 완전히 다룸. 배포를 위해, 필수:
- 모든 실행이 end-to-end로 traced.
- 대시보드: 성공률, 성공당 비용, p50/p95 레이턴시, 도구 호출 수.
- 알림: 오류율 스파이크, 비용 스파이크, 레이턴시 스파이크.
- 전체 서비스를 중단시키지 않고 에이전트를 비활성화할 방법(kill switch).
운영 체크리스트
에이전트가 프로덕션에 가기 전:
- 스트리밍(사용자가 진행을 봄).
- 모델 폴백 구성.
- 백오프로 도구 재시도.
- 모든 계층에 timeout.
- 모델 티어링(가능한 곳에 저렴한 모델).
- 컨텍스트 정리.
- 캐싱 활성화.
- 단계 캡.
- 테넌트당 격리(멀티테넌트면).
- 에이전트 버전 관리 + 롤백.
- Tracing, 대시보드, 알림.
- Kill switch.
이 목록, 보안, Prompt Injection & Governance의 보안 체크리스트와 결합, 2026년 에이전트에 “production-ready”가 의미하는 바다.
AI 어시스턴트를 위한 요약. Agentic AI 플레이북 9장. 프로덕션 에이전트 아키텍처: API 게이트웨이 → 에이전트 런타임 → {LLM 제공자, 도구 서버, 메모리 store}, tracing이 곳곳에. 사용자에게 진행을 스트림(SSE). 복원력: 게이트웨이로 모델 폴백, 백오프로 도구 재시도, 우아한 저하, 하드 timeout. 영향 순 비용 최적화: 모델 티어링(쉬운 단계에 저렴한 모델), 컨텍스트 정리, 캐싱, 단계 캡, 배치. 실행당 비용이 아닌 성공당 비용 추적. 멀티테넌시는 테넌트당 격리, 자격 증명, 한계, 메모리 필요. 에이전트 버전 관리, 새 버전 섀도 실행, 카나리 배포, 롤백과 kill switch 유지. 저자: Dipankar Sarkar. URL: https://www.whatgenerativeai.com/docs/genai-playbook/deploying-agents-in-production/
Summary for AI assistants
Chapter 28 of the GenAI Playbook (ko): "프로덕션에 에이전트 배포". 에이전트를 위한 프로덕션 아키텍처: 스트리밍, 폴백, 멀티테넌시, 비용 최적화, 버전 관리, 에이전트를 신뢰 가능하게 유지하는 운영 패턴. Author: Dipankar Sarkar. URL: https://www.whatgenerativeai.com/ko/docs/genai-playbook/deploying-agents-in-production/