AI/AI 서비스 개발

[AI 서비스 개발] CrewAI Tools

brave_sol 2025. 1. 23. 23:09

1. 제공 툴

Tool 설명
BrowserbaseLoadTool 웹브라우저와 상호작용하고 데이터를 추출하는 도구
CodeDocsSearchTool 코드 문서와 관련 기술 문서를 검색하는데 최적화된 도구
CodeInterpreterTool 파이썬 코드 해석
ComposioTool  
CSVSearchTool csv 파일 내에서 검색하도록 설계된 RAG 도구
DALL-E Tool DALL-E API를 사용해 이미지를 생성하는 도구
DirectorySearchTool 디렉토리 내에서 검색하기 위한 RAG 도구, 파일 시스템 탐색 시 사용
DOCXSearchTool DOCX 문서 내에서 검색을 목적으로 하는 RAG 도구, Word 파일 처리
DirectoryReadTool 디렉토리 구조와 그 내용을 읽고 처리하는 것 용이
EXASearchTool 다양한 데이터 소스에서 검색을 수행
FileReadTool 다양한 파일 형식을 지원하여 파일에서 데이터를 읽고 추출 가능
FirecrawlSearchTool 웹페이지 검색
FirecrawlCrawlWebsiteTool 웹페이지 크롤링
FirecrawlScrapeWebsiteTool 웹페이지 URL을 스크래핑하고 내용을 반환
GithubSearchTool GitHub 저장소 내에서 검색하기 위한 RAG 도구,  코드와 문서 검색에 유용
SerperDevTool 특정 기능을 개발하기 위한 개발목적을 위한 전문 도구
TXTSearchTool 구조화되지 않은 데이터에 적합한 텍스트(.txt) 파일 내에서 검색에 중점을 둔 RAG 
JSONSearchTool JSON 파일 내에서 검색하도록 설계된 RAG 도구, 구조화된 데이터 처리 지원
LlamaIndexTool LlamalIndex 도구 사용
MDXSearchTool 마크다운(MDX) 파일 내에서 검색하는데 특화된 RAG 도구, 문서화에 유용
PDFSearchTool PDF 문서 내에서 검색을 목적으로 하는 RAG 도구, 스캔한 문서 처리
PGSearchTool PostgreSQL 데이터베이스 내에서 검색에 최적화된 RAG 도구, 데이터베이스 쿼리에 적합
Vision Tool DALL-E API를 사용하여 이미지를 생성
RagTool 다양한 데이터 소스 및 유형을 처리할 수 있는 범용 RAG
ScrapeElementFromWebsiteTool 웹사이트에서 특정 요소를 스크래핑하여 타겟 데이터 추출에 유용
ScrapeWebsiteTool 전체 웹사이트 스크래핑을 용이하게 하며, 포괄적인 데이터 수집에 이상적
WebsiteSearchTool 웹 데이터 추출에 최적화된 웺잍 콘텐츠 검색을 위한 RAG 도구
XMLSearchTool 구조화된 데이터 형시에 적합한 XML 파일 내에서 검색하도록 설계된 RAG 도구
YoutubeChannelSearchTool YouTube 채널 내에서 검색하는 RAG 도구, 비디오 콘텐츠 분석에 유용
YoutubeVideoSearchTool YouTube 동영상 내에서 검색을 목적으로 하는 RAG 도구, 비디오 추출에 이상적

 

2. 커스텀 툴 만들기

from crewai.tools import BaseTool
from pydantic import BaseModel, Field

class MyToolInput(BaseModel):
    """Input schema for MyCustomTool."""
    argument: str = Field(..., description="Description of the argument.")

class MyCustomTool(BaseTool):
    name: str = "Name of my tool"
    description: str = "What this tool does. It's vital for effective utilization."
    args_schema: Type[BaseModel] = MyToolInput

    def _run(self, argument: str) -> str:
        # Your tool's logic here
        return "Tool's result"

 

반응형