도약하다

[CrewAI] AI 에이전트의 중요 요소 본문

데이터 사이언스/AI

[CrewAI] AI 에이전트의 중요 요소

doyak1223 2024. 6. 26. 05:57

지난 시간에는 파이썬의 crewAI 라이브러리를 사용하여 에이전트를 만들고 일을 자동화 시키는 방법을 알아보았다. 하지만 다중 에이전트 시스템이 더 매력적이고 효율적이려면, AI 에이전트들을 보다 더 훌륭하게 만드는 요소들을 이해해야 한다. 

 

첫번째 시간에 잠깐 언급 했듯이 AI 에이전트에는 6가지 중요 요소가 있다 - Role Playing, Focus, Tools, Cooperation, Guardrails, Memory. 이 요소들은 훌륭한 인간 직원들에게도 필요한 요소이기도 하다. 일을 잘하는 이유는 집중할 수 있고, 올바른 도구를 사용할 수 있으며, 다른 사람과 협력할 수 있고, 가드레일이 있으며, 좋은 기억력을 가지고 있기 때문이다. 이번시간에는 그렇다면 다중 에이전트 시스템에 있어 각 요소들이 의미하는 무엇인지 알아보도록 하자.

1. Role Playing (역할극)

LLM 모델에서 모델에게 임무를 주기 전에 역할 부여하는 것이 모델의 성능을 높이는 방법이라는 연구가 있다. 역할 수행은 에이전트가 제공하는 응답에 큰 차이를 만들 수 있다는 뜻인데, 예를 들어, ChatGPT에게 테슬라 주식에 대한 분석을 요청할 때, "너는 FINRA 인증 금융 분석가야."라는 역할을 부여하면 더 구체적이고 전문적인 답변을 얻을 수 있다는 말이다. 역할 수행을 통해 에이전트가 특정 맥락에서 어떻게 반응할지를 설정할 수 있다.

2. Focus (집중)

집중은 매우 중요한 요소입니다. LLM(대규모 언어 모델)은 긴 컨텍스트 윈도우를 가지고 있으며, 이를 활용하여 훌륭한 콘텐츠를 생산할 수 있습니다. 하지만 너무 많은 도구나 정보를 혼합하면 중요한 정보를 잃어버리거나 잘못된 정보를 생성할 수 있습니다. 따라서 에이전트가 집중할 수 있도록 하는 것이 중요합니다. 때로는 멀티 테스킹이 중요하기도 하지만, 멀티 테스킹을 한다는 의미도 여러가지 일을 한번에 처리한다는 개념보다는 한번에 한가지씩 일씩 번갈아가면서 빠르게 처리 해 나간다는 의미로 보는 것이 더 맞을 것이다. AI 에이전트도 여러가지 일을 한번에 시켜 데이터의 혼란을 주기 보다는 불필요한 데이터를 제외하고 비교적 적은 양의 일에 집중할 수 있도록 설계하는 것이 효과적일 것이다.

3. Tools (도구)

도구는 에이전트에게 필요한 모든 도구를 제공하는 것이 중요하다. 하지만 너무 많은 도구를 제공하면 혼란스러울 수 있기에 적절한 도구를 선택하고 제공하는 것이 중요하다.

4. Cooperation (협력)

에이전트가 서로 협력하고 아이디어를 공유하는 것은 더 나은 결과를 도출하는 데 큰 도움이 된다. 때로는 일의 특성상 더 적합한 에이전트에게 일을 위임하기도 하고 서로 피드백을 주고 받기도 하는 등의 협력은 에이전트가 더 나은 결과를 만들어내는 데 중요한 역할을 한다.

5. Guardrails (가드레일)

가드레일은 에이전트가 잘못된 방향으로 가지 않도록 도와준다. 예를 들어, 같은 도구를 반복해서 사용하거나, 무한 루프에 빠지지 않도록 하는 것인데, AI 에이전트 특성상 불규칙한 input과 불규칙한 transformation 그리고 불규칙한 output을 가질 수 밖에 없기 때문에 가드레일을 통해 안정적이고 일관된 결과를 얻는 것은 매우 중요하다.

6. Memory (기억)

기억은 가장 중요한 요소라고 해도 과언이 아닐만큼 에이전트의 성능을 아주 많이 향상 시킨다. 기억을 통해 에이전트는 과거에 했던 일을 기억하고, 새로운 결정과 실행에 이를 활용할 수 있다. crewAI의 경우, 에이전트는 세 가지 종류의 기억(장기 기억, 단기 기억, 엔티티 기억)을 활용하는데, 단기 기억은 실행 중에만 유지되며, 장기 기억은 실행이 끝난 후에도 저장된다. 마지막으로 엔티티 기억은 특정 주제에 대한 정보를 저장한다. 아래 그림을 보면, 사람이라는 엔티티에 대한 정보, 기업이나 단체에 관한 정보, 그리고 지역이나 장소에 관한 정보를 각각 엔티티에 맞게 업데이트하고 저장하게 되는 것이다.

Entity Memory


다중 에이전트 시스템을 개발할 때 이 6가지 요소들을 잘 기억한다면 효율이나 질적인 측면에서 보다 더 나은 성능의 시스템을 개발할 수 있을 것이다. 다음시간에는 조금 더 확장된 사용사례로 다중 에이전트 시스템으로 customer support를 자동화 해 볼 것이다.

'데이터 사이언스 > AI' 카테고리의 다른 글

[CrewAI] 에이전트 만들기  (0) 2024.06.25
[CrewAI] 다중 에이전트 시스템이란?  (0) 2024.06.25