Skip to main content
이 문서는 GenAI 개념 섹션의 일부입니다.
← AI Agent 아키텍처 개요
Tool Use는 LLM이 외부 도구(함수)를 호출할 수 있는 기능입니다. LLM이 직접 코드를 실행하는 것이 아니라, “어떤 함수를 어떤 인자로 호출할지”를 JSON으로 결정 하고, 시스템이 실제 실행합니다.

동작 흐름 (JSON 수준)

1단계: 사용자 질문
2단계: LLM이 도구 호출을 결정(LLM이 생성하는 JSON)
3단계: 시스템이 함수 실행 후 결과 반환
4단계: LLM이 결과를 해석하여 최종 응답

도구 정의 예시 (Databricks Agent Framework)

참고 핵심 포인트: LLM은 함수를 직접 실행하지 않습니다. “어떤 함수를 호출할지”를 결정할 뿐이고, 실제 실행은 Agent Framework가 담당합니다. 이 분리가 보안과 제어의 핵심입니다.

Tool Description이 Agent 성능의 80%

Agent의 도구 선택 정확도는 도구 설명(description)의 품질에 가장 크게 좌우됩니다. 아래 3쌍의 비교를 보면 그 차이가 명확합니다.

비교 1: 검색 도구

비교 2: SQL 도구

비교 3: 알림 도구


도구 수와 성능의 관계

Agent에 등록된 도구 수가 늘어날수록 정확도가 떨어집니다. 이는 LLM의 Context Window에 모든 도구 설명이 포함되면서 주의력(attention)이 분산되기 때문입니다.
주의 도구가 15개를 넘어가면, 단일 Agent로는 안정적인 서비스가 어렵습니다. 이때의 대응 전략:
  1. 카테고리 라우팅: 먼저 “어떤 카테고리의 도구가 필요한지” 판단하는 가벼운 LLM 호출을 추가하고, 해당 카테고리의 도구만 Agent에 전달합니다.
  2. Multi-Agent 전환: 도메인별로 Agent를 분리하고, Supervisor가 적절한 Agent에게 라우팅합니다.

도구 설계 원칙 7가지

프로덕션 Agent의 도구를 설계할 때 지켜야 할 7가지 원칙입니다. 이 원칙을 따르면 Agent의 안정성과 디버깅 용이성이 크게 향상됩니다.
성공 원칙 2 (유용한 에러)가 가장 중요합니다. Agent가 에러를 받았을 때 “무엇이 잘못되었고 어떻게 고칠 수 있는지”를 알 수 있어야 자율적으로 복구할 수 있습니다. "error": "500" 같은 에러는 Agent를 무한 루프에 빠뜨리는 주범입니다.

다음: Agent Memory 시스템 →