PDFSearchTool

현재 도구를 개선 중이므로 예상치 못한 동작이나 변경 사항이 발생할 수 있다.

설명

PDFSearchTool은 PDF 문서 내에서 의미 기반 검색(semantic search)을 수행하는 RAG(Retrieval-Augmented Generation) 도구다. 사용자는 검색 쿼리와 PDF 문서를 입력하면, 이 도구는 고급 검색 기술을 활용해 관련 내용을 효율적으로 찾아준다. 이 기능은 특히 대용량 PDF 파일에서 특정 정보를 빠르게 추출할 때 유용하다.

설치

PDFSearchTool을 시작하려면 먼저 crewai_tools 패키지를 설치한다. 다음 커맨드를 실행한다:

pip install 'crewai[tools]'

예제

PDFSearchTool을 사용해 PDF 문서 내에서 검색하는 방법은 다음과 같다:

from crewai_tools import PDFSearchTool

# 실행 시 경로를 제공할 경우 모든 PDF 콘텐츠 검색이 가능하도록 도구 초기화
tool = PDFSearchTool()

# 또는

# 특정 PDF 경로를 지정해 해당 문서 내에서만 검색하도록 도구 초기화
tool = PDFSearchTool(pdf='path/to/your/document.pdf')

인자

  • pdf: 선택사항 검색할 PDF 파일 경로. 초기화 시점이나 run 메서드의 인자로 제공할 수 있다. 초기화 시점에 제공하면, 도구는 해당 문서 내에서만 검색을 수행한다.

커스텀 모델과 임베딩

기본적으로 이 도구는 임베딩과 요약 작업에 OpenAI를 사용한다. 모델을 커스터마이징하려면 다음과 같이 설정 딕셔너리를 활용할 수 있다:

tool = PDFSearchTool(
    config=dict(
        llm=dict(
            provider="ollama", # 또는 google, openai, anthropic, llama2, ...
            config=dict(
                model="llama2",
                # temperature=0.5,
                # top_p=1,
                # stream=true,
            ),
        ),
        embedder=dict(
            provider="google", # 또는 openai, ollama, ...
            config=dict(
                model="models/embedding-001",
                task_type="retrieval_document",
                # title="Embeddings",
            ),
        ),
    )
)