Mulai sekarangMulai gratis

Mata rantai terakhir

Dengan rantai text-to-cypher dari Bab 1 dan vector retriever dari awal Bab ini, sekarang Anda memiliki komponen untuk membuat sebuah chain yang menyediakan beberapa cara—menggunakan vektor serta node dan relationship—untuk mengakses informasi dalam knowledge graph Anda.

Variabel text_to_cypher_chain dan line_retriever (Neo4j vector retriever) tersedia untuk Anda gunakan, bersama dengan prompt tanya jawab untuk hybrid retrieval, graphrag_qa_prompt.

Latihan ini merupakan bagian dari kursus

Graph RAG dengan LangChain dan Neo4j

Lihat Kursus

Instruksi latihan

  • Teruskan kunci "question" ke vector retriever (line_retriever) untuk mendapatkan hasil relevan menggunakan vector search.
  • Ekstrak kueri dari objek graph untuk mengeksekusi pernyataan Cypher yang dihasilkan oleh text_to_cypher_chain.
  • Jalankan graphrag_qa_chain pada input yang disediakan.

Latihan interaktif langsung praktik

Cobalah latihan ini dengan melengkapi kode contoh ini.

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)
Edit dan Jalankan Kode