플래닝: 크루에 계획 능력 추가

플래닝: 크루에 계획 능력 추가

복잡한 작업은 에이전트가 바로 뛰어들기보다, 먼저 태스크를 단계별로 계획한 뒤 실행하는 편이 결과가 훨씬 안정적이에요. CrewAI의 플래닝(Planning) 기능은 크루에 planning=True 한 줄만 추가하면, 크루가 반복될 때마다 AgentPlanner가 태스크를 단계별로 계획하고 그 계획을 각 태스크 설명에 붙여 넣습니다. 어떤 LLM으로 계획할지도 planning_llm으로 지정할 수 있어요.

출처: 공식문서

본문

개요

CrewAI의 플래닝 기능은 크루에 계획 능력을 추가하게 해줍니다. 활성화하면 크루 반복(iteration) 전마다 모든 크루 정보가 AgentPlanner로 전송되어 태스크를 단계별로 계획하며, 이 계획이 각 태스크 설명에 추가됩니다.

플래닝 기능 사용하기

플래닝 기능을 시작하는 것은 매우 쉽습니다. 크루에 planning=True를 추가하는 한 단계만 하면 됩니다:

from crewai import Crew, Agent, Task, Process

# Assemble your crew with planning capabilities
my_crew = Crew(
    agents=self.agents,
    tasks=self.tasks,
    process=Process.sequential,
    planning=True,
)

이 시점부터 크루는 계획이 활성화되며, 매 반복 전에 태스크가 계획됩니다.

플래닝을 활성화하면 crewAI는 계획에 기본 LLM으로 `gpt-4o-mini`를 사용하며, 이는 유효한 OpenAI API 키가 필요합니다. 에이전트가 다른 LLM을 사용할 수도 있으므로 OpenAI API 키가 없거나 LLM API 호출 관련 예기치 않은 동작이 있으면 혼란을 줄 수 있습니다.

플래닝 LLM

이제 태스크를 계획하는 데 사용할 LLM을 정의할 수 있습니다.

from crewai import Crew, Agent, Task, Process

# Assemble your crew with planning capabilities and custom LLM
my_crew = Crew(
    agents=self.agents,
    tasks=self.tasks,
    process=Process.sequential,
    planning=True,
    planning_llm="gpt-4o"
)

# Run the crew
my_crew.kickoff()

기본 예시를 실행하면 AgentPlanner가 에이전트 태스크에 추가할 단계별 로직을 만든 출력이 보입니다:

[2024-07-15 16:49:11][INFO]: Planning the crew execution
**Step-by-Step Plan for Task Execution**

**Task Number 1: Conduct a thorough research about AI LLMs**

**Agent:** AI LLMs Senior Data Researcher

**Agent Goal:** Uncover cutting-edge developments in AI LLMs

**Task Expected Output:** A list with 10 bullet points of the most relevant information about AI LLMs

**Task Tools:** None specified

**Agent Tools:** None specified

**Step-by-Step Plan:**

1. **Define Research Scope:**

   - Determine the specific areas of AI LLMs to focus on, such as advancements in architecture, use cases, ethical considerations, and performance metrics.

2. **Identify Reliable Sources:**

   - List reputable sources for AI research, including academic journals, industry reports, conferences (e.g., NeurIPS, ACL), AI research labs (e.g., OpenAI, Google AI), and online databases (e.g., IEEE Xplore, arXiv).

3. **Collect Data:**

   - Search for the latest papers, articles, and reports published in 2024 and early 2025.
   - Use keywords like "Large Language Models 2025", "AI LLM advancements", "AI ethics 2025", etc.

4. **Analyze Findings:**

   - Read and summarize the key points from each source.
   - Highlight new techniques, models, and applications introduced in the past year.

5. **Organize Information:**

   - Categorize the information into relevant topics (e.g., new architectures, ethical implications, real-world applications).
   - Ensure each bullet point is concise but informative.

6. **Create the List:**

   - Compile the 10 most relevant pieces of information into a bullet point list.
   - Review the list to ensure clarity and relevance.

**Expected Output:**

A list with 10 bullet points of the most relevant information about AI LLMs.

---

**Task Number 2: Review the context you got and expand each topic into a full section for a report**

**Agent:** AI LLMs Reporting Analyst

**Agent Goal:** Create detailed reports based on AI LLMs data analysis and research findings

**Task Expected Output:** A fully fledged report with the main topics, each with a full section of information. Formatted as markdown without '```'

**Task Tools:** None specified

**Agent Tools:** None specified

**Step-by-Step Plan:**

1. **Review the Bullet Points:**

   - Carefully read through the list of 10 bullet points provided by the AI LLMs Senior Data Researcher.

2. **Outline the Report:**

   - Create an outline with each bullet point as a main section heading.
   - Plan sub-sections under each main heading to cover different aspects of the topic.

3. **Research Further Details:**

   - For each bullet point, conduct additional research if necessary to gather more detailed information.
   - Look for case studies, examples, and statistical data to support each section.

4. **Write Detailed Sections:**

   - Expand each bullet point into a comprehensive section.
   - Ensure each section includes an introduction, detailed explanation, examples, and a conclusion.
   - Use markdown formatting for headings, subheadings, lists, and emphasis.

5. **Review and Edit:**

   - Proofread the report for clarity, coherence, and correctness.
   - Make sure the report flows logically from one section to the next.
   - Format the report according to markdown standards.

6. **Finalize the Report:**

   - Ensure the report is complete with all sections expanded and detailed.
   - Double-check formatting and make any necessary adjustments.

**Expected Output:**

A fully fledged report with the main topics, each with a full section of information. Formatted as markdown without '```'.

더 알아보기