실무 고려 사항 및 보안

에이전트를 실제 서비스(Production)에 도입할 때 반드시 고려해야 할 실무적인 과제들입니다.

1. Human-in-the-Loop (HITL)

에이전트가 모든 것을 자율적으로 하게 두는 것은 위험할 수 있습니다.

  • Approval Flow: 이메일 전송, 결제, 데이터 삭제 등 크리티컬한 액션 전에는 반드시 사람의 승인을 받도록 설계합니다.
  • Interruption: 진행 중인 에이전트의 작업을 중단시키거나 수동으로 상태를 수정할 수 있어야 합니다.

2. 보안 (Security)

  • Prompt Injection: 에이전트에게 주어진 도구를 악용하여 시스템을 공격하라는 지시를 내릴 수 있습니다.
  • Tool Sandbox: 도구(특히 코드 실행기)는 반드시 격리된 샌드박스 환경에서 실행되어야 합니다.
  • Privilege Management: 에이전트가 접근할 수 있는 데이터와 API의 범위를 최소화(Least Privilege)해야 합니다.

3. 비용 및 성능 최적화

  • Small Language Models (SLM) 활용:
    • 간단한 도구 선택이나 결과 요약은 Llama-3-8B, Phi-4와 같은 작은 모델에게 맡깁니다.
    • 복잡한 계획 수립이나 최종 검토는 대형 모델(GPT-4o 등)에게 맡기는 하이브리드 구조를 사용합니다.
  • Caching: 반복되는 도구 호출 결과나 추론 과정을 캐싱하여 비용과 응답 시간을 줄입니다.

4. 신뢰성 (Reliability)

  • Retry Logic: 일시적인 API 오류나 타임아웃 발생 시 재시도 전략을 세워야 합니다.
  • Fallbacks: 특정 도구가 실패하거나 모델이 정답을 내지 못할 때의 대응 시나리오가 필요합니다.
  • Output Parsing: 모델의 응답이 기대한 형식(JSON 등)이 아닐 경우를 대비한 견고한 파싱 로직이 중요합니다.

This site uses Just the Docs, a documentation theme for Jekyll.