--- title: Pesquisa RAG em DOCX description: A `DOCXSearchTool` é uma ferramenta RAG projetada para busca semântica em documentos DOCX. icon: file-word mode: "wide" --- # `DOCXSearchTool` Ainda estamos trabalhando na melhoria das ferramentas, portanto pode haver comportamentos inesperados ou alterações no futuro. ## Descrição A `DOCXSearchTool` é uma ferramenta RAG desenvolvida para buscas semânticas dentro de documentos DOCX. Ela permite que os usuários pesquisem e extraiam informações relevantes de arquivos DOCX de forma eficiente, utilizando buscas baseadas em consultas. Esta ferramenta é inestimável para análise de dados, gestão da informação e tarefas de pesquisa, otimizando o processo de encontrar informações específicas em grandes coleções de documentos. ## Instalação Instale o pacote crewai_tools executando o seguinte comando no seu terminal: ```shell uv pip install docx2txt 'crewai[tools]' ``` ## Exemplo O exemplo a seguir demonstra a inicialização da DOCXSearchTool para buscar dentro do conteúdo de qualquer arquivo DOCX ou com o caminho de um arquivo DOCX específico. ```python Code from crewai_tools import DOCXSearchTool # Inicialize a ferramenta para buscar dentro do conteúdo de qualquer arquivo DOCX tool = DOCXSearchTool() # OU # Inicialize a ferramenta com um arquivo DOCX específico, # assim o agente só poderá buscar dentro do conteúdo do arquivo DOCX especificado tool = DOCXSearchTool(docx='path/to/your/document.docx') ``` ## Argumentos Os seguintes parâmetros podem ser usados para customizar o comportamento da `DOCXSearchTool`: | Argumento | Tipo | Descrição | |:---------------|:----------|:------------------------------------------------------------------------------------------------------------------------------------| | **docx** | `string` | _Opcional_. Um argumento que especifica o caminho para o arquivo DOCX que você deseja pesquisar. Se não for fornecido durante a inicialização, a ferramenta permite a especificação posterior do caminho de qualquer arquivo DOCX para busca. | ## Modelo e embeddings personalizados Por padrão, a ferramenta utiliza o OpenAI tanto para embeddings quanto para sumarização. Para customizar o modelo, você pode usar um dicionário de configuração como no exemplo: ```python Code from chromadb.config import Settings tool = DOCXSearchTool( config={ "embedding_model": { "provider": "openai", "config": { "model": "text-embedding-3-small", # "api_key": "sk-...", }, }, "vectordb": { "provider": "chromadb", # ou "qdrant" "config": { # "settings": Settings(persist_directory="/content/chroma", allow_reset=True, is_persistent=True), # from qdrant_client.models import VectorParams, Distance # "vectors_config": VectorParams(size=384, distance=Distance.COSINE), } }, } ) ```