Graph RAG com filtragem
Em grafos grandes e complexos, LLMs às vezes têm dificuldade para inferir com precisão quais nós e relacionamentos são mais relevantes para construir a consulta Cypher. Muitas vezes, você só precisa que o LLM conheça um subconjunto do grafo, e excluir tipos específicos de nós não só facilita a criação correta da consulta Cypher, como também melhora a latência da consulta.
O banco de dados de grafo com o qual você vem trabalhando está disponível como graph.
Este exercício faz parte do curso
Retrieval Augmented Generation (RAG) com LangChain
Instruções do exercício
- Crie uma chain de perguntas e respostas para grafos que consulte o banco
graphignorando nós do tipo"Concept"; umllmjá foi definido para você, e você deve definirverbose=True. - Invoque
graph_qa_chaincom a entrada fornecida.
Exercício interativo prático
Experimente este exercício completando este código de exemplo.
# Create the graph QA chain excluding Concept
graph_qa_chain = ____
# Invoke the chain with the input provided
result = ____({"query": "Who was Marie Curie married to?"})
print(f"Final answer: {result['result']}")