Processes
CrewAI에서 프로세스를 통한 워크플로우 관리에 대한 상세 가이드. 최신 구현 세부사항 포함.
프로세스 이해하기
프로세스는 에이전트가 작업을 실행하도록 조율한다. 이는 인간 팀의 프로젝트 관리와 유사하다. 미리 정의된 전략에 따라 작업을 분배하고 효율적으로 실행하도록 보장한다.
프로세스 구현 방식
-
순차적(Sequential): 작업을 순서대로 실행하며, 각 작업이 차례대로 완료되도록 보장한다.
-
계층적(Hierarchical): 작업을 관리 구조에 따라 조직화한다. 작업은 구조화된 명령 체계에 따라 위임되고 실행된다. 계층적 프로세스를 활성화하려면 크루 내에 매니저 언어 모델(
manager_llm
) 또는 커스텀 매니저 에이전트(manager_agent
)를 반드시 지정해야 한다. 이를 통해 매니저가 작업을 생성하고 관리할 수 있다. -
합의 기반 프로세스(Consensual Process, 계획 중): 에이전트 간 협업을 통해 작업 실행에 대한 결정을 내리는 방식이다. CrewAI 내에서 작업 관리에 민주적 접근 방식을 도입한다. 현재 코드베이스에는 구현되지 않았으며, 향후 개발 예정이다.
팀워크에서 프로세스의 역할
프로세스는 개별 구성원이 하나의 유기적인 단위로 작동할 수 있게 한다. 이를 통해 공통 목표를 효율적이고 일관성 있게 달성하기 위한 노력을 간소화한다.
크루에 프로세스 할당하기
크루에 프로세스를 할당하려면, 크루 생성 시 프로세스 타입을 지정해 실행 전략을 설정한다. 계층적 프로세스의 경우, 매니저 에이전트를 위해 manager_llm
또는 manager_agent
를 반드시 정의해야 한다.
참고: Crew
객체를 생성하기 전에 my_agents
와 my_tasks
가 정의되어 있어야 하며, 계층적 프로세스의 경우 manager_llm
또는 manager_agent
도 필요하다.
순차적 처리 방식
이 방법은 동적 팀 워크플로우를 반영하며, 체계적이고 신중하게 작업을 진행한다. 작업 실행은 작업 목록에 미리 정의된 순서를 따르며, 한 작업의 출력 결과가 다음 작업의 컨텍스트로 활용된다.
작업 컨텍스트를 커스터마이징하려면 Task
클래스의 context
매개변수를 사용해 후속 작업에 활용할 출력 결과를 지정한다.
계층적 프로세스
CrewAI는 기업의 계층 구조를 모방한다. 커스텀 매니저 에이전트를 지정하거나 자동으로 생성할 수 있다. 이 경우 매니저 언어 모델(manager_llm
)을 명시해야 한다. 매니저 에이전트는 작업 실행을 총괄하며, 계획 수립, 위임, 검증 등의 역할을 담당한다. 작업은 미리 할당되지 않는다. 매니저가 각 에이전트의 역량에 따라 작업을 배분하고, 결과를 검토하며, 작업 완료 여부를 평가한다.
Process 클래스: 상세 개요
Process
클래스는 열거형(Enum
)으로 구현된다. 이는 타입 안전성을 보장하고, 프로세스 값을 정의된 타입(sequential
, hierarchical
)으로 제한한다. 합의 프로세스(consensual process)는 향후 추가될 예정이며, 지속적인 개발과 혁신에 대한 의지를 강조한다.
결론
CrewAI 내부 프로세스가 제공하는 구조화된 협업은 에이전트 간 체계적인 팀워크를 가능하게 하는 데 중요한 역할을 한다. 이 문서는 최신 기능, 개선 사항, 그리고 Consensual Process의 통합 계획을 반영하도록 업데이트되었다. 이를 통해 사용자가 가장 최신이고 포괄적인 정보에 접근할 수 있도록 보장한다.