AI VIDEO BRIEFING

CrewAI 병렬 실행: 다중 AI 에이전트 여행 플래너로 배우는 순차 패턴과 병렬 패턴의 차이

CrewAI로 여행 계획 다중 에이전트를 만들며 순차 실행과 병렬 실행의 차이를 설명한 튜토리얼을 정리했다. 조사 작업을 세 에이전트로 쪼개 동시에 돌리는 방법과 플래그 하나로 병렬화하는 요령, 결과를 다음 단계로 넘기는 방식을 다룬다.

AI 에이전트를 동시에 돌리기: CrewAI로 만드는 병렬 여행 계획 시스템 영상 대표 이미지

핵심 메시지

  • 관광지·호텔·음식 조사를 혼자 떠맡던 에이전트를 세 개의 전용 에이전트로 쪼개 동시에 실행하는 것이 병렬 패턴의 출발점이다.
  • CrewAI에는 병렬을 위한 별도 프로세스 설정이 없고, 태스크에 async_execution 플래그를 켜는 것만으로 동시 실행이 된다.
  • 크루의 process 설정은 병렬 패턴에서도 sequential 그대로 두며, 에이전트와 태스크를 정의하는 방식도 순차 패턴과 같다.
  • 병렬 태스크들의 결과는 context로 뒤 태스크에 넘겨져, 일정 수립과 예산 산정은 다시 순서대로 이어진다.
  • 실무 시스템에서는 순차보다 병렬이나 계층형 패턴을 주로 쓴다는 것이 강사의 설명이다.

쉽게 이해하기

여러 AI 에이전트를 엮어 하나의 일을 처리할 때 가장 먼저 부딪히는 선택은 순서다. 이 튜토리얼은 앞선 회차에서 만든 순차 방식 여행 계획 시스템을 병렬 방식으로 바꾸며 두 패턴의 차이를 설명한다. 순차 구조에서는 사용자의 입력이 들어오면 여행지 조사 에이전트, 일정 수립 에이전트, 예산 분석 에이전트가 차례로 실행된다.

문제는 첫 단계에 일이 몰린다는 점이다. 여행지 조사 에이전트 하나가 볼 만한 장소, 숙소, 먹거리를 모두 찾아야 한다. 세 가지 조사는 서로를 참조하지 않기 때문에 굳이 순서를 지킬 이유가 없다. 그래서 병렬 구조에서는 이를 관광지 에이전트, 호텔 에이전트, 음식 에이전트로 쪼개 사용자의 입력이 들어오는 즉시 셋을 동시에 출발시킨다.

코드 변경은 생각보다 작다. CrewAI에는 '이 에이전트는 병렬로 돌려라'라고 지정하는 별도의 패턴이 없고, 태스크를 만들 때 async_execution 값을 참으로 주면 그 태스크가 동시에 실행된다. 크루를 구성할 때 process 값은 병렬 패턴에서도 순차 그대로 둔다. 나머지, 즉 에이전트에 역할과 목표와 배경 설명을 붙이고 태스크에 설명과 기대 출력을 적는 방식은 순차 패턴과 동일하다.

동시에 끝난 세 결과를 어떻게 합치느냐가 다음 관건이다. 일정 수립 태스크에는 앞선 세 태스크를 context로 지정해, 병렬 조사 결과가 모두 모인 뒤에야 하루 단위 일정을 짜게 한다. 그 결과는 다시 예산 산정 태스크의 context가 되어 항공·숙소·식비·현지 교통·액티비티를 포함한 비용 추정으로 이어진다. 결국 앞의 세 태스크만 병렬이고 뒤의 두 태스크는 순차인 혼합 구조다.

실행 화면에서는 세 조사 태스크가 동시에 시작되고 호텔, 관광지, 음식 순으로 각자 결과를 내놓은 뒤 완료된다. 이어서 일정 에이전트가 7일치 일정을 하루씩 아침·오후·저녁으로 정리하고, 마지막으로 예산 에이전트가 항목별 표와 결론을 만든다. 예제에서는 파리 7일 일정에 20만 루피 예산을 주었고, 총 추정 비용 17만 6천 루피에 2만 4천 루피가 남는다는 결과가 나왔다.

주요 인사이트

  • 병렬화 여부를 가르는 기준은 성능이 아니라 의존성이다. 서로의 결과를 참조하지 않는 조사 작업만 동시에 돌릴 수 있다.
  • CrewAI는 병렬을 '크루의 실행 방식'이 아니라 '태스크의 속성'으로 다룬다. 그래서 전체 구조를 갈아엎지 않고 태스크 단위로 점진적 병렬화가 가능하다.
  • 병렬 결과를 모아 넘기는 context 지점이 사실상 배리어 역할을 하며, 이 지점을 어디에 두느냐가 전체 지연 시간을 결정한다.
  • 역할을 쪼개면 각 에이전트의 목표와 배경 설명이 좁아져, 조사 품질을 개별적으로 손보기도 쉬워진다.
  • 순차 회차를 먼저 만들고 병렬로 옮겨 가는 구성 덕분에, 바뀐 것이 플래그 하나뿐이라는 사실이 분명하게 드러난다.

자주 묻는 질문

순차 패턴과 병렬 패턴의 실질적 차이는 무엇인가요?

순차에서는 조사 담당 에이전트 하나가 관광지, 호텔, 음식을 차례로 처리합니다. 병렬에서는 세 에이전트가 각자 하나씩 맡아 동시에 조사한 뒤 결과를 합칩니다. 서로 의존하지 않는 작업이라 동시에 돌려 전체 실행 시간을 줄일 수 있습니다.

코드에서 무엇을 바꿔야 하나요?

병렬로 돌릴 태스크에 async_execution 값을 참으로 지정하면 됩니다. 크루의 process 값은 순차 그대로 두고, 에이전트와 태스크를 정의하는 나머지 방식은 순차 패턴과 같습니다.

병렬로 나온 결과는 어떻게 다음 단계로 이어지나요?

뒤따르는 태스크에 앞 태스크들을 context로 넘겨줍니다. 예제에서는 세 조사 결과가 일정 수립 태스크의 컨텍스트가 되고, 그 일정 결과가 다시 예산 산정 태스크의 컨텍스트가 됩니다.

예제는 어떤 결과를 만들어냈나요?

파리 7일 일정에 예산 20만 루피, 선호 항목으로 역사·문화·음식·사진을 입력했습니다. 하루 단위 일정이 만들어진 뒤 항목별 비용 표가 나왔고, 총 추정 비용 17만 6천 루피에 2만 4천 루피가 남는다는 결론이 제시됐습니다.

원문과 출처

이 글은 원본 영상의 자막을 바탕으로 한국어 독자를 위해 요약했습니다. 전체 맥락과 최신 정보는 원문에서 확인하세요.

YouTube 원본 영상 보기 ↗

관련 AI 소식