BaşlayınÜcretsiz başlayın

Metinden Cypher'a bir zincir oluşturma

Kendi Cypher sorgularını yazdın; şimdi onları üretmek için LLM'leri kullanalım! Doğal dildeki bir kullanıcı sorgusundan bir Cypher sorgusu üretmek, metinden Cypher'a Graph RAG iş akışının temel bir parçasıdır.

Önceki egzersizdekiyle aynı veritabanı üzerinde çalışıyorsun; bu veritabanında insanları, şirketleri temsil eden düğümler ve graph olarak kullanılabilen WORKS_FOR ilişkileri bulunuyor.

Bu egzersiz, kursun bir parçasıdır

LangChain ve Neo4j ile Graph RAG

Kursa Göz Atın

Egzersiz talimatları

  • Graf şemasını isteme eklemek için partial_variables sözlüğünü güncelle.
  • prompt, llm ve çıktıyı düz bir metne ayrıştırmayı kullanarak metinden Cypher'a zinciri oluştur.

Uygulamalı etkileşimli egzersiz

Bu egzersizi bu örnek kodu tamamlayarak deneyin.

prompt = ChatPromptTemplate.from_messages([
    SystemMessagePromptTemplate.from_template(""" 
		You are an expert Neo4j developer. Use the following database schema to write a Cypher statement to answer the user's question. Only generate the Cypher statement, no pre-amble. Do not return any Markdown.
	Schema: 
    {schema}
    
	Question: {question}""", 
	# Update the partial_variables dictionary
    partial_variables={"schema": graph.____})
])

# Create the text-to-Cypher chain
text_to_cypher_chain = ____ | ____ | StrOutputParser()
cypher = text_to_cypher_chain.invoke({"question": "Where does Jo Cornelissen work?"})
print(cypher)
Kodu Düzenle ve Çalıştır