Pular para o conteúdo principal

Visão Geral

O WeaviateVectorSearchTool foi especificamente desenvolvido para realizar buscas semânticas em documentos armazenados em um banco de dados vetorial Weaviate. Essa ferramenta permite encontrar documentos semanticamente similares a uma determinada consulta, aproveitando o poder das embeddings vetoriais para resultados de busca mais precisos e contextualmente relevantes. Weaviate é um banco de dados vetorial que armazena e consulta embeddings vetoriais, possibilitando recursos de busca semântica.

Instalação

Para incorporar esta ferramenta ao seu projeto, é necessário instalar o cliente Weaviate:

Etapas para Começar

Para utilizar efetivamente o WeaviateVectorSearchTool, siga as etapas abaixo:
  1. Instalação dos Pacotes: Confirme que os pacotes crewai[tools] e weaviate-client estão instalados em seu ambiente Python.
  2. Configuração do Weaviate: Configure um cluster Weaviate. Você pode seguir as instruções na documentação do Weaviate.
  3. Chaves de API: Obtenha a URL do seu cluster Weaviate e a chave de API correspondente.
  4. Chave de API da OpenAI: Certifique-se de que você tenha uma chave de API da OpenAI definida nas variáveis de ambiente como OPENAI_API_KEY.

Exemplo

O exemplo a seguir demonstra como inicializar a ferramenta e executar uma busca:
Code

Parâmetros

O WeaviateVectorSearchTool aceita os seguintes parâmetros:
  • collection_name: Obrigatório. O nome da coleção a ser pesquisada.
  • weaviate_cluster_url: Obrigatório. A URL do cluster Weaviate.
  • weaviate_api_key: Obrigatório. A chave de API para o cluster Weaviate.
  • limit: Opcional. O número de resultados a serem retornados. O padrão é 3.
  • vectorizer: Opcional. O vetorizador a ser utilizado. Se não for informado, será utilizado o text2vec_openai com o modelo nomic-embed-text.
  • generative_model: Opcional. O modelo generativo a ser utilizado. Se não for informado, será utilizado o gpt-4o da OpenAI.

Configuração Avançada

Você pode personalizar o vetorizador e o modelo generativo utilizados pela ferramenta:
Code

Pré-carregando Documentos

Você pode pré-carregar seu banco de dados Weaviate com documentos antes de utilizar a ferramenta:
Code

Exemplo de Integração com Agente

Veja como integrar o WeaviateVectorSearchTool com um agente CrewAI:
Code

Conclusão

O WeaviateVectorSearchTool fornece uma maneira poderosa de buscar documentos semanticamente similares em um banco de dados vetorial Weaviate. Ao utilizar embeddings vetoriais, ele permite resultados de busca mais precisos e relevantes em termos de contexto, quando comparado a buscas tradicionais baseadas em palavras-chave. Essa ferramenta é especialmente útil para aplicações que precisam encontrar informações a partir do significado e não apenas de correspondências exatas.