---
title: "Building Effective Agents"
source_type: web
source_url: https://www.anthropic.com/engineering/building-effective-agents
date: 2026-02-10
tags: [ai-agents, llm, workflow-patterns, anthropic, system-design]
---

Anthropic 엔지니어링 팀이 수십 개 조직과의 협업 경험을 바탕으로 LLM 기반 에이전트를 효과적으로 구축하는 방법을 정리한 글이다. 핵심 메시지는 의외로 단순하다. 가장 성공적인 구현들은 복잡한 프레임워크가 아니라 단순하고 조합 가능한 패턴(composable patterns)으로 만들어졌다는 것이다.

글은 먼저 워크플로(Workflow)와 에이전트(Agent)를 명확히 구분한다. 워크플로는 LLM과 도구가 미리 정해진 코드 경로를 따라 동작하는 구조이고, 에이전트는 LLM이 스스로 프로세스와 도구 사용을 동적으로 결정하는 구조다. 대부분의 실무 상황에서는 에이전트보다 워크플로가 더 적합하며, 에이전트는 유연성이 필수적인 개방형 문제에서만 필요하다고 강조한다.

워크플로 패턴은 다섯 가지로 제시된다. 프롬프트 체이닝(Prompt Chaining)은 작업을 순차적 단계로 분해하여 각 LLM 호출이 이전 출력을 처리하는 방식이다. 라우팅(Routing)은 입력을 분류하여 전문화된 처리 경로로 보내는 패턴으로, 고객 서비스에서 환불 요청과 기술 지원을 다르게 처리하거나 복잡도에 따라 모델을 달리 배정하는 데 활용된다. 병렬화(Parallelization)는 독립적 하위 작업을 동시에 실행하는 섹셔닝(Sectioning)과 같은 작업을 여러 번 수행하여 견고한 결과를 얻는 보팅(Voting) 두 가지 접근법을 포함한다. 오케스트레이터-워커(Orchestrator-Workers) 패턴은 중앙 LLM이 작업을 동적으로 분해하고 워커 LLM들을 조율하는 방식으로, 코딩처럼 필요한 파일 수정을 사전에 예측할 수 없는 경우에 적합하다. 마지막으로 평가자-최적화기(Evaluator-Optimizer)는 평가 프롬프트가 피드백을 제공하는 반복 개선 루프로, 번역이나 다단계 리서치처럼 점진적 개선이 필요한 작업에 효과적이다.

자율 에이전트는 LLM의 추론(reasoning), 도구 사용(tool use), 오류 복구(error recovery) 능력이 성숙해지면서 가능해졌다. 구현 자체는 "환경 피드백에 기반해 루프 안에서 도구를 사용하는 LLM"이라는 단순한 구조지만, 실제 운영에서는 각 단계마다 검증 가능한 근거(ground truth), 체크포인트 피드백, 명확한 중단 조건 등 인간의 감독이 중요하다.

도구 설계에 대한 조언도 주목할 만하다. LLM이 사용하는 도구의 인터페이스를 에이전트-컴퓨터 인터페이스(ACI, Agent-Computer Interface)로 개념화하며, 이를 인간-컴퓨터 인터페이스(HCI) 설계만큼 신중하게 다뤄야 한다고 말한다. diff에서 정확한 줄 수를 요구하거나 코드를 JSON 문자열로 이스케이프하게 하는 것처럼 LLM에게 부자연스러운 형식은 피하고, 인터넷 텍스트에서 자연스럽게 등장하는 형식을 우선시해야 한다.

실용적 적용 분야로는 고객 지원(대화와 액션의 결합, 측정 가능한 해결, 피드백 루프)과 코딩 에이전트(자동화된 테스트로 검증 가능, 테스트 결과로 반복 가능)를 꼽는다.

글의 결론은 명쾌하다. LLM 분야에서의 성공은 가장 정교한 시스템을 만드는 것이 아니라, 필요에 맞는 올바른 시스템을 만드는 것이다. 단순한 솔루션이 명백히 실패할 때에만 복잡성을 추가하라는 것이 핵심 원칙이다.
