[개발] 멀티 에이전트 CrewAI 시작하기steemCreated with Sketch.

in #kr10 days ago (edited)

CrewAI는 AI 에이전트들이 역할을 맡고, 목표를 공유하며, 잘 조직된 팀처럼 일할 수 있도록 설계되었습니다. 스마트 어시스턴트 플랫폼을 구축하든, 자동화된 고객 서비스 팀을 만들든, 다중 에이전트 연구 팀을 운영하든, CrewAI는 정교한 다중 에이전트 상호작용을 위한 기반을 제공합니다.

1단계: CrewAI 설치하기

crewai와 crewai-tools 패키지를 설치합니다.

pip install crewai 'crewai[tools]'

2단계: API 키 준비하기

CrewAI는 외부 API를 활용합니다.
SERPER_API_KEYOPENAI_API_KEY 가 필요합니다.

3단계: CrewAI 코드 작성하기

import os
from crewai import Agent, Task, Crew, Process
from crewai_tools import SerperDevTool

os.environ["OPENAI_API_KEY"] = "YOUR_OPENAI_API_KEY"
os.environ["SERPER_API_KEY"] = "YOUR_SERPER_API_KEY" 

# 모델을 지정하지 않으면 기본값은 OpenAI gpt-4o입니다.
#
# import os
# os.environ['OPENAI_MODEL_NAME'] = 'gpt-3.5-turbo'
#
# 또는
#
# from langchain_openai import ChatOpenAI


# 인터넷 검색 기능을 위해 도구를 생성합니다.
search_tool = SerperDevTool()

# 역할(role)과 목표(goal)로 에이전트을 정의합니다.
researcher = Agent(
  role='선임 연구 분석가',
  goal='AI 및 데이터 과학의 최첨단 개발 동향 알아보기',
  backstory="""선도적인 기술 싱크탱크에서 근무하고 있습니다.
  새로운 트렌드를 파악하는 데 전문성이 있습니다.
  복잡한 데이터를 분석하고 실행 가능한 인사이트를 제시하는 데 능숙합니다.""",
  verbose=True,
  allow_delegation=False,
  # 사용하려는 모델을 지정하여 llm를 직접 전달할 수도 있습니다.
  # llm=ChatOpenAI(model_name="gpt-4o-mini", temperature=0.7),
  tools=[search_tool]
)
writer = Agent(
  role='기술 콘텐츠 전략가',
  goal='기술 발전에 대한 매력적인 콘텐츠 제작',
  backstory="""당신은 통찰력 있고 매력적인 기사로 유명한 콘텐츠 전략가입니다.
  복잡한 개념을 설득력 있는 내러티브로 전환합니다.""",
  verbose=True,
  allow_delegation=True
)

# 에이전트를 위한 작업(Task)을 작성합니다.
task1 = Task(
  description="""2024년 AI의 최신 발전에 대한 종합적인 분석을 수행하세요.
  주요 트렌드, 획기적인 기술, 잠재적인 업계 영향력을 파악하세요.""",
  expected_output="Full analysis report in bullet points",
  agent=researcher
)

task2 = Task(
  description="""제공된 인사이트를 활용하여 AI의 발전을 강조하는 매력적인 블로그
  가장 중요한 AI 발전을 강조하는 포스팅을 작성하세요.
  게시물은 유익하면서도 접근하기 쉬워야 하며, 기술에 정통한 잠재고객을 대상으로 해야 합니다.
  AI처럼 들리지 않도록 복잡한 단어는 피하고 멋지게 보이도록 작성하세요.""",
  expected_output="4단락 이상의 전체 블로그 게시물",
  agent=writer
)

# Crew 프로세스를 순차적으로 구성합니다.
crew = Crew(
  agents=[researcher, writer],
  tasks=[task1, task2],
  verbose=True,
  process = Process.sequential
)

# 이제 Crew가 일을 시작하게 kickoff 하세요!
result = crew.kickoff()

print("######################")
print(result)


CrewAI를 사용하여 단 몇 분만에 아래 글을 작성했습니다.

# 2024년 인공지능의 주요 발전

2024년이 깊어지면서 인공지능(AI)의 풍경은 전례 없는 속도로 진화하고 있습니다. 올해는 멀티모달 AI, 에이전틱 AI, 생성 AI, 소형 언어 모델의 등장 등 여러 획기적인 발전이 기술과의 상호작용 방식을 재정의할 예정입니다. 이러한 혁신은 단순한 기술적 성과에 그치지 않고, 의료 및 과학적 발견과 같은 분야에 상당한 영향을 미칠 것입니다.

## 멀티모달 AI: 새로운 개척지

2024년 기술 발전의 최전선에는 멀티모달 AI가 있습니다. 전통적인 모델이 단일 유형의 데이터에 집중하는 것과 달리, 멀티모달 시스템은 텍스트, 이미지, 오디오, 비디오 등 여러 입력 형태를 동시에 처리하는 데 뛰어납니다. 이 능력은 더 정교한 이해와 상호작용을 가능하게 하여 AI 애플리케이션을 더 스마트하고 다재다능하게 만듭니다. 예를 들어, 의료 분야에서는 멀티모달 AI가 의료 이미지를 환자 기록과 함께 분석하여 더 정확한 진단과 치료 계획을 제공할 수 있습니다.

## 에이전틱 AI: 자율적 의사결정의 강화

올해 또 다른 중요한 트렌드는 에이전틱 AI의 부상입니다. 이러한 AI 에이전트는 복잡한 작업을 자율적으로 수행하도록 설계되어, 정교한 언어 모델을 통해 문제를 관리 가능한 단계로 나눕니다. 이들은 단순히 반응적이지 않고, 공급망 관리, 재고 최적화, 수요 예측 등을 능동적으로 수행할 수 있어 복잡한 물류 계획이 필요한 산업에서 매우 유용합니다. 에이전틱 AI가 실시간 의사결정 과정을 처리할 수 있는 잠재력은 다양한 분야에서 운영 효율성을 크게 향상시킬 수 있습니다.

## 생성 AI: 창의성과 기능의 만남

생성 AI는 2024년에도 주목을 받고 있습니다. 올해는 생성 모델이 멀티모달 프레임워크로 통합되는 모습을 목격하고 있습니다. 이 통합은 텍스트, 이미지, 소리를 결합한 더 정교한 콘텐츠 생성을 가능하게 합니다. 제약 산업과 같은 분야에서는 생성 AI가 약물 개발 및 테스트 방식을 혁신하여 수십억 달러의 가치를 창출할 수 있습니다. 다양한 시나리오와 결과를 시뮬레이션함으로써 생성 모델은 연구 개발 과정을 간소화하여 더 빠르고 효과적인 솔루션을 제공합니다.

## 소형 언어 모델의 부상

2024년에는 소형 언어 모델의 등장도 눈에 띕니다. 이 모델들은 광범위한 컴퓨팅 자원이 필요 없이 다양한 작업에서 매우 효율적이고 효과적임을 입증하고 있습니다. 이 모델들은 성능과 효율성의 균형을 맞추어, 컴퓨팅 파워가 제한된 환경에서 이상적입니다. 이들의 적응력은 모바일 기기, IoT 및 기타 자원 제약 시나리오에서의 활용에 적합합니다.

## 의료 및 과학적 발견에 대한 영향

올해 AI의 발전은 의료 및 과학적 발견에 상당한 가능성을 제공합니다. 멀티모달 AI 에이전트는 다양한 데이터 유형을 결합하여 진단을 혁신하고 환자 치료를 향상시키고 있습니다. 마찬가지로, 연구에서 생성 AI의 통합은 획기적인 발견을 이끌어내어 다양한 분야에서 혁신을 가속화할 수 있습니다.

결론적으로, 2024년은 AI에 있어 획기적인 해가 될 것입니다. 멀티모달 시스템, 에이전틱 애플리케이션, 생성 모델, 소형 언어 모델의 발전은 단순한 기술적 진보를 넘어, 복잡한 문제를 해결하고 삶을 개선하는 데 AI를 활용하는 방식에 있어 패러다임의 전환을 의미합니다. 이러한 기술이 계속 진화함에 따라, 그 영향은 기술 산업을 넘어 다양한 분야에 걸쳐 우리의 일상 경험을 향상시킬 것입니다.

계속해서 진화하는 AI 세계를 탐구하며 더 많은 인사이트를 기대해 주세요!

마무리

CrewAI를 이용해 직접 AI 에이전트 팀을 구성하고, 복잡한 작업을 처리하는 과정을 지켜보니 정말 놀라웠습니다! 특히, 각 에이전트에게 역할과 목표를 부여하고 협업을 통해 결과물을 만들어내는 모습은 마치 작은 조직의 팀이 활동하는 듯한 느낌을 느끼게 했습니다. 예전에 AutoGPT를 처음 접했을 때의 놀라움과 감동이 다시 한번 떠올랐습니다.

CrewAI는 단순한 AI 도구를 넘어, 인간과 AI의 협업 가능성을 보여주는 중요한 발걸음이라고 생각합니다. 앞으로 CrewAI가 만들어낼 더욱 놀라운 가능성과 혁신이 기대됩니다!

참고

Posted using Obsidian Steemit plugin

Sort:  

[광고] STEEM 개발자 커뮤니티에 참여 하시면, 다양한 혜택을 받을 수 있습니다.

Upvoted! Thank you for supporting witness @jswit.

협업을 하는 AI 에이전트를 잘 설계하면 좋은 결과물을 만들어 낼수도 있겠네요!
그런데.... 잘 설계하는건 아직까지는 사람의 몫이겠죠? ^^; 이미 AI가 대체 했을라나요?
재미있네요! ^^

잘 설계하는 게 생각보다 쉽지 않네요. 그래도 오픈소스를 잘 찾아보면, 이미 훌륭하게 설계된 프레임워크들이 많아서 많은 도움이 되고 있어요. ㅎㅎ