도구(Tools) 라이브러리 개요

도구(Tools) 라이브러리 개요

에이전트가 밖의 세계와 상호작용하려면 무언가 손이 필요합니다. CrewAI는 그 손 역할을 하는 도구(tools)를 기본으로 방대하게 준비해 두었어요. 파일 처리부터 웹 스크래핑, 데이터베이스 조회, AI 서비스 연동까지 — 일일이 처음부터 만들 필요 없이 골라 쓰면 됩니다.

출처: 공식문서

본문

CrewAI는 에이전트의 능력을 확장해 주는 사전 구축 도구 라이브러리를 제공합니다. 파일 처리에서 웹 스크래핑, 데이터베이스 쿼리에서 AI 서비스까지 폭넓게 커버합니다.

도구 분류(Tool Categories)

  • 파일·문서(File & Document): PDF, DOCX, JSON, CSV 등 다양한 파일 형식을 읽고·쓰고·검색합니다. 문서 처리 워크플로에 적합합니다.
  • 웹 스크래핑·브라우징(Web Scraping & Browsing): Firecrawl, Selenium 등의 도구로 웹사이트에서 데이터를 추출하고 브라우저 상호작용을 자동화하며 대규모로 콘텐츠를 수집합니다.
  • 검색·조사(Search & Research): 웹 검색, 코드 저장소 탐색, YouTube 콘텐츠 조사 등 인터넷 곳곳의 정보를 찾습니다.
  • 데이터베이스·데이터(Database & Data): SQL 데이터베이스·벡터 저장소·데이터 웨어하우스에 연결합니다. MySQL, PostgreSQL, Snowflake, Qdrant, Weaviate를 조회할 수 있습니다.
  • AI·머신러닝(AI & Machine Learning): DALL-E로 이미지를 생성하고, 비전 작업을 처리하며, LangChain과 연동하고, RAG 시스템을 구축하고 코드 인터프리터를 활용합니다.
  • 클라우드·스토리지(Cloud & Storage): AWS S3, Amazon Bedrock 등 클라우드 스토리지와 AI 서비스와 상호작용합니다.
  • 자동화(Automation): Apify, Composio 등 플랫폼으로 워크플로를 자동화해 에이전트를 외부 서비스와 연결합니다.
  • 통합(Integrations): Amazon Bedrock, CrewAI Automation 툴킷 등 외부 시스템과 CrewAI를 통합합니다.

빠른 접근(Quick Access)

자주 쓰는 도구는 따로 모아 두었습니다. RAG 구현용 RagTool, Google 검색 API SerperDevTool, 파일 읽기 FileReadTool, 웹 콘텐츠 추출 ScrapeWebsiteTool, Python 실행 CodeInterpreterTool, AWS S3 파일 접근 S3ReaderTool 등이 대표적입니다.

시작하기(Getting Started)

CrewAI 프로젝트에서 어떤 도구든 이렇게 씁니다.

  1. 크루 설정에서 도구를 임포트합니다.
  2. 에이전트의 tools 목록에 추가합니다.
  3. 필요한 API 키나 설정을 구성합니다.
from crewai_tools import FileReadTool, SerperDevTool

# Add tools to your agent
agent = Agent(
    role="Research Analyst",
    tools=[FileReadTool(), SerperDevTool()],
    # ... other configuration
)

최대 사용 횟수(Max Usage Count)

도구가 특정 횟수 이상 사용되지 않도록 최대 사용 횟수를 설정할 수 있습니다. 기본값은 무제한입니다.

from crewai_tools import FileReadTool

tool = FileReadTool(max_usage_count=5, ...)

더 알아보기