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"
반응형