https://www.perplexity.ai/search/crewaie-daehaeseo-seolmyeongha-vJuDa0STTbWS2zjVTjnXdQ#2
## 기본 설정
먼저 필요한 라이브러리를 임포트하고 기본 설정을 합니다.
```python
from crewai import Agent, Task, Crew
from langchain.tools import DuckDuckGoSearchRun
# 검색 도구 설정
search_tool = DuckDuckGoSearchRun()
```
## 에이전트 정의
블로그 포스트 작성에 필요한 세 가지 역할의 에이전트를 정의합니다.
```python
# 연구원 에이전트
researcher = Agent(
role='연구원',
goal='주제에 대한 최신 정보와 통계를 수집',
backstory='당신은 꼼꼼하고 정확한 정보를 찾아내는 전문 연구원입니다.',
tools=[search_tool],
verbose=True
)
# 작가 에이전트
writer = Agent(
role='작가',
goal='흥미롭고 정보가 풍부한 블로그 포스트 작성',
backstory='당신은 복잡한 주제를 쉽게 설명할 수 있는 재능 있는 작가입니다.',
tools=[search_tool],
verbose=True
)
# 편집자 에이전트
editor = Agent(
role='편집자',
goal='글의 품질을 높이고 일관성 있는 톤을 유지',
backstory='당신은 꼼꼼한 교정과 건설적인 피드백을 제공하는 경험 많은 편집자입니다.',
tools=[search_tool],
verbose=True
)
```
## 작업 정의
각 에이전트에게 할당할 작업을 정의합니다.
```python
task1 = Task(
description='AI와 기후 변화에 대한 최신 연구와 통계를 수집하세요.',
agent=researcher
)
task2 = Task(
description='수집된 정보를 바탕으로 "AI가 기후 변화 대응에 미치는 영향"에 대한 1500자 블로그 포스트를 작성하세요.',
agent=writer
)
task3 = Task(
description='작성된 블로그 포스트를 검토하고 필요한 수정사항을 제안하세요.',
agent=editor
)
```
## 크루 생성 및 실행
정의된 에이전트와 작업으로 크루를 구성하고 실행합니다.
```python
crew = Crew(
agents=[researcher, writer, editor],
tasks=[task1, task2, task3],
verbose=2
)
result = crew.kickoff()
print(result)
```
## 실행 과정
이 코드를 실행하면 다음과 같은 과정이 진행됩니다:
1. 연구원 에이전트가 AI와 기후 변화에 관한 최신 정보를 수집합니다.
2. 작가 에이전트가 수집된 정보를 바탕으로 블로그 포스트를 작성합니다.
3. 편집자 에이전트가 작성된 포스트를 검토하고 피드백을 제공합니다.
4. 최종 결과물이 출력됩니다.
이 예제는 CrewAI의 기본적인 사용 방법을 보여줍니다. 실제 사용 시에는 더 복잡한 작업 흐름과 추가적인 도구를 통합할 수 있습니다. 예를 들어, 특정 API를 사용하여 실시간 데이터를 가져오거나, 자연어 처리 도구를 통합하여 텍스트 분석을 수행할 수 있습니다.
CrewAI의 강점은 이러한 복잡한 작업 흐름을 여러 전문화된 에이전트가 협력하여 수행할 수 있다는 점입니다. 각 에이전트는 자신의 역할에 집중하면서도 다른 에이전트와 정보를 교환하고 협력하여 전체 작업의 품질을 높일 수 있습니다.
crewai 사용법
2024. 10. 15. 07:33