Zincirin son halkası
- Bölümdeki text-to-cypher zinciri ve bu bölümün başlarında oluşturduğun vektör getirici ile artık birden çok yöntemi—hem vektörler hem de düğümler ve ilişkiler—kullanarak bilgi grafiğindeki bilgilere erişen bir zincir kurmak için gerekli bileşenlere sahipsin.
text_to_cypher_chain ve line_retriever (Neo4j vektör getirici) değişkenlerini, hibrit getirme için bir soru-cevap istemi olan graphrag_qa_prompt ile birlikte kullanman için hazır.
Bu egzersiz, kursun bir parçasıdır
LangChain ve Neo4j ile Graph RAG
Egzersiz talimatları
- Vektör aramasıyla ilgili sonuçları almak için
"question"anahtarını vektör getiriciye (line_retriever) ilet. text_to_cypher_chaintarafından üretilen Cypher ifadesini yürütmek için sorguyugraphnesnesinden çıkar.- Verilen girdi üzerinde
graphrag_qa_chainçalıştır.
Uygulamalı etkileşimli egzersiz
Bu egzersizi bu örnek kodu tamamlayarak deneyin.
graphrag_qa_chain = RunnablePassthrough.assign(
# Pass the "question" key to the retriever
vectors = RunnableLambda(lambda x: line_retriever.invoke(____)),
# Execute the generated Cypher statement
records = text_to_cypher_chain | graph.____
) | graphrag_qa_prompt | llm | StrOutputParser()
# Execute the hybrid chain
output = graphrag_qa_chain.____({"question": "Does Sampson bite his thumb at Gregory?"})
print(output)