AI 에이전트의 협업과 오케스트레이션

Mon, 14 Oct 2024 10:17:20 GMT

요즘 AI 얘기만 나오면 여러분은 어떤 생각이 드시나요? ChatGPT? 이미지 생성? 아니면 자율주행? 저는 최근에 OpenAI Swarm 프로젝트를 보면서 "아, 이제 진짜 시작이구나"라는 생각이 들었습니다. 이게 바로 **'멀티 에이전트 오케스트레이션(Multi-Agent Orchestration)'**입니다. 오늘은 이 흥미로운 주제에 대해 이야기해보려고 합니다.

[GitHub - openai/swarm: Educational framework exploring ergonomic, lightweight multi-agent orchestration. Managed by OpenAI Solution team.](https://github.com/openai/swarm)

멀티 에이전트 오케스트레이션 시스템은 크게 세 부분으로 구성됩니다. 먼저 전체 프로세스를 관리하고 감독하는 '케이스 워커(Case Worker)'가 있습니다. 이는 인간일 수도 있고, 고도로 발달한 AI일 수도 있죠. 다음으로 실제 작업을 수행하는 'AI 에이전트(Agents)'들이 있습니다. 각 에이전트는 특정 업무를 담당하며, 서로 협력하여 복잡한 문제를 해결합니다. 마지막으로 에이전트들이 사용할 수 있는 다양한 '기술(Skills)'들이 있습니다. 이는 데이터 분석, 언어 처리, 이미지 인식 등 다양한 능력을 포함할 수 있습니다. 이 모든 요소들은 '오케스트레이션 계층(Orchestration layer)'을 통해 조화롭게 작동합니다. 이 계층은 마치 오케스트라의 지휘자처럼 전체 시스템의 흐름을 조율합니다.

![Rizk, Yara & Bhandwalder, Abhishek & Boag, Scott & Chakraborti, Tathagata & Isahagian, Vatche & Khazaeni, Yasaman & Pollock, Falk & Unuvar, Merve. (2020). A Unified Conversational Assistant Framework for Business Process Automation. 10.48550/arXiv.2001.03543. ](https://upload.cafenono.com/image/slashpagePost/20241014/185702_bqOWSx3w9sSoGjGxur?q=80&s=1280x180&t=outside&f=webp)

이런 구조가 왜 중요할까요? 멀티 에이전트 오케스트레이션은 하나의 AI로는 해결하기 어려운 복잡한 문제도 여러 AI가 협력하면 효과적으로 해결할 수 있게 해줍니다. 또한, 새로운 기술이 개발되면 쉽게 시스템에 추가할 수 있어 시스템의 능력을 지속적으로 향상시킬 수 있습니다. 각 에이전트가 특화된 작업을 수행하므로 전체적인 시스템의 효율성도 높아지죠. 필요에 따라 새로운 에이전트를 추가하거나 제거할 수 있어 시스템을 쉽게 확장할 수 있다는 점도 큰 장점입니다.

[AI 에이전트의 시대가 온다 - 해봄의 아카이브 - haebom](https://haebom.dev/nqrx6zk25d4gjmv314y5)

오늘 멀티 에이전트 오케스트레이션에 대해 이야기를 하다가 보니 오늘로 부터 딱 1년전에 이런 포스팅을 했더라구요. 그리고 이번 주말에 공개된 OpenAI의 Swarm 프로젝트는 이런 멀티 에이전트 시스템을 쉽게 만들고 실험할 수 있는 플랫폼입니다. **여기서 재미있는 점은 각 에이전트가 '핸드오프(Handoff)'라는 기능을 통해 서로 작업을 주고받을 수 있다는 거예요.** 마치 릴레이 경주처럼 바통을 넘기듯이 말이죠. 이게 왜 중요할까요? 복잡한 문제를 해결할 때 한 명의 전문가보다 여러 분야의 전문가들이 협력하면 더 좋은 결과를 낼 수 있잖아요. AI도 마찬가지입니다. 각자 특화된 능력을 가진 AI들이 협력하면 훨씬 더 복잡하고 어려운 문제를 해결할 수 있게 되는 거죠.

AI 에이전트는 실시간으로 상황을 분석하고, 스스로 판단해서 결정을 내립니다. 더 나아가 다른 AI와 소통하면서 더 나은 해결책을 찾아냅니다. 이런 자율성과 협업 능력이 멀티 에이전트 오케스트레이션의 핵심입니다. 예를 들어, 복잡한 의료 진단 과정을 생각해봅시다. 한 에이전트는 환자의 증상을 분석하고, 다른 에이전트는 의료 기록을 검토하며, 또 다른 에이전트는 최신 의학 연구 결과를 참고할 수 있습니다. 이들이 서로 정보를 교환하고 협력하여 최종 진단을 내리는 거죠. 이런 방식으로 인간 의사보다 더 정확하고 빠른 진단이 가능해질 수 있습니다.

![멀티 에이전트의 기본적 순서](https://upload.cafenono.com/image/slashpagePost/20241014/185918_xhy9vpqYiuy24UtMO4?q=80&s=1280x180&t=outside&f=webp)

멀티 에이전트 오케스트레이션 기술은 AI의 미래를 보여주는 중요한 이정표입니다. chatUI는 점점 CanvasUI로 넘어가고 있고 모델의 경쟁은 거대 인프라를 가진 기업 위주로 돌아갈 수 밖에 없는 상황입니다. **특정 언어나 문화권을 중심으로하는 모델 혹은 특정 작업과 도메인에 집중한 모델 정도가 아니면 이제 규모나 전반적 성능으로 무언가를 뛰어 넘는 다는 것은 과학적, 수학적으로 불가능의 영역이라는 것도 증명되고 있습니다. 그렇기에 이런 다양한 역할을 수행(Multi-Agent)하는 것을 관리하고 이끌어 나아가는 기술(orchestration)이 다음 주류가 되고 있습니다.**

우리는 이런 변화에 어떻게 대비해야 할까요? AI와 효과적으로 협업하는 방법을 배우고, AI 시스템을 설계하고 관리하는 능력을 키우는 것이 중요할 것 같아요. 또한, AI가 대체하기 어려운 창의성, 전략적 사고, 복잡한 의사결정 능력 같은 '인간만의 강점'을 더욱 발전시켜 나가는 것도 필요합니다. 이걸 orchestration이라고 표현하고 판을짜는 형태라고 생각하시면 됩니다.

AI 에이전트의 시대는 이미 시작되었습니다. 개인적으로 주변에 영업하고 있는 서비스들을 몇개 소개시켜드리면 아래와 같은데 **개발경험이 있으신 분들이라면 huggingface나 Langchain, llamaindex를 관심있게 보시고, 개발경험이 적으신 분들은 Dify나 n8n을 보시면 좋을 것 같습니다. 조만간 여기서 먹거리는 다 나올 겁니다. RAG니 Finetunning도 해보신 분들은 아시겠지만 이걸 하기에는 현재 내부적으로 VectorDB나 데이터 전처리 조차 안된 곳이 너무 많습니다. 그렇다고 데이터 준비하는 동안 놀고 있거나 이걸로 Lock-in을 걸기 보다는 다가올 파도를 준비하는 것이 몇 배는 낫다고 생각합니다.**

[License to Call: Introducing Transformers Agents 2.0](https://huggingface.co/blog/agents)

[LangGraph](https://www.langchain.com/langgraph)

[n8n.io - a powerful workflow automation tool](https://n8n.io/)

[Dify.AI · The Innovation Engine for Generative AI Applications](https://dify.ai/)

[Agents - LlamaIndex](https://docs.llamaindex.ai/en/stable/use_cases/agents/)

AI 에이전트의 협업과 오케스트레이션