AI 기반 애플리케이션을 구축할 때, 워크플로우와 에이전트라는 두 가지 서로 다른 아키텍처 접근 방식 중에서 선택해야 하는 경우가 많습니다. 각 방식은 서로 다른 시나리오에 적합하게 만드는 고유한 장점과 트레이드오프를 가지고 있습니다.

워크플로우란 무엇인가요?
워크플로우는 알려진 문제 또는 문제 집합을 해결하기 위해 설계된, Claude에 대한 사전 정의된 일련의 호출입니다. 단계의 흐름을 미리 그려볼 수 있는 경우, 즉 작업을 완료하는 데 필요한 정확한 순서를 알고 있는 경우에 워크플로우를 사용합니다.
워크플로우는 큰 작업을 훨씬 더 작고 구체적인 하위 작업으로 나누는 것이라고 생각하세요. 각 단계는 단일 영역에 집중하므로 Claude가 더 정밀하게 작업할 수 있습니다.
에이전트란 무엇인가요?
에이전트를 사용하면 Claude는 기본적인 도구 세트를 받고, 이 도구들을 사용하여 작업을 완료하기 위한 계획을 수립할 것으로 기대됩니다. 워크플로우와 달리, 어떤 작업이 제공될지 정확히 알 수 없으므로 시스템이 더 적응력을 갖춰야 합니다.
에이전트는 도구를 예상치 못한 방식으로 결합하여 다양한 과제를 처리하는 방법을 창의적으로 찾아낼 수 있습니다.
워크플로우의 장점
- Claude가 한 번에 하나의 하위 작업에 집중할 수 있어 일반적으로 더 높은 정확도로 이어집니다
- 각 단계를 정확히 알고 있으므로 평가하고 테스트하기가 훨씬 쉽습니다
- 더 예측 가능하고 신뢰할 수 있는 실행
- 구체적이고 명확하게 정의된 문제를 해결하는 데 더 적합합니다
에이전트의 장점
- 더 유연한 사용자 경험을 가능하게 합니다
- 훨씬 더 유연한 작업 완료 - Claude가 도구를 예상치 못한 방식으로 결합하여 다양한 작업을 완료할 수 있습니다
- 개발 중에 예상하지 못했던 새로운 상황을 처리할 수 있습니다
- 필요할 때 사용자에게 추가 입력을 요청할 수 있습니다
워크플로우의 단점
- 훨씬 덜 유연함 - 특정 유형의 작업을 해결하는 데 전념합니다
- 일반적으로 더 제한적인 사용자 경험 - 흐름에 대한 정확한 입력을 알아야 합니다
- 더 많은 사전 계획 및 설계 작업이 필요합니다
에이전트의 단점
- 워크플로우에 비해 작업 완료 성공률이 낮습니다
- 에이전트가 실행할 일련의 단계를 모르는 경우가 많기 때문에 계측, 테스트 및 평가가 더 어렵습니다
- 덜 예측 가능한 동작
각 접근 방식을 사용해야 할 때
엔지니어로서 여러분의 주요 목표는 문제를 신뢰성 있게 해결하는 것입니다. 사용자는 여러분이 멋진 에이전트를 만들었다는 사실에 관심이 없습니다 - 그들은 일관되게 작동하는 제품을 원합니다.
일반적인 권장 사항은 가능한 경우 항상 워크플로우 구현에 집중하고, 에이전트가 정말로 필요한 경우에만 사용하는 것입니다. 워크플로우는 대부분의 프로덕션 애플리케이션에 필요한 신뢰성과 예측 가능성을 제공하며, 에이전트는 정확한 요구 사항을 사전에 결정할 수 없는 시나리오에 유연성을 제공합니다.
명확하게 정의된 프로세스가 있을 때는 워크플로우를 고려하고, 창의적인 문제 해결이 필요한 예측할 수 없고 다양한 사용자 요청을 처리해야 할 때는 에이전트를 고려하세요.