OpenAI just confused everyone again
- OpenAI의 'Agent Kit' 발표는 '에이전트'와 '워크플로우'에 대한 기존 AI 엔지니어링 커뮤니티의 정의와 달라 혼란을 야기했습니다. 🤯
- 앤트로픽(Anthropic)의 'Building Effective Agents' 아티클은 에이전트와 워크플로우의 정의를 명확히 제시한 기준점으로 언급됩니다. 📜
- 에이전트는 LLM이 언제 멈출지 결정하는 '반복(loop)' 구조로, LLM이 도구(tool)를 호출하여 새로운 정보를 얻으며 작업을 수행합니다. 🔄
- 워크플로우는 미리 정해진 순차적 단계(predetermined steps)로 구성되며, LLM이 멈출 시점을 결정하지 않고 정해진 경로를 따릅니다. 🗺️
- 핵심적인 차이점은 '누가 프로그램 중단을 결정하는가'입니다. 에이전트는 LLM이, 워크플로우는 미리 정해진 코드 경로가 결정합니다. 🛑
- 에이전트는 해결 경로가 불분명하거나 다양한 작업에 일반화해야 할 때(즉흥성, 재즈) 유용하며, 워크플로우는 해결 경로가 명확하고 반복적인 작업을 최적화할 때(최적화, 클래식 음악) 효과적입니다. 🎶
- 에이전트와 워크플로우는 명확히 구분되는 개념이 아닌 '스펙트럼' 상에 존재하며, 대부분의 시스템은 이 둘의 조합으로 구성됩니다. 🌈
- 순수 에이전트도 무한 실행을 막기 위해 최대 단계(max steps)와 같은 결정론적 중단 장치를 포함하며, 에이전트가 워크플로우를 호출하거나 워크플로우 내에 루프가 포함될 수도 있습니다. 🛠️
- 이러한 정의의 구분은 문제 해결을 위한 패턴을 이해하고, 시스템 설계 시 트레이드오프를 고려하는 데 중요합니다. 💡