Začněte nyníZačněte zdarma

Sestavení řetězce text-to-Cypher

Vlastní Cypher dotazy už máš za sebou – teď zkusíme jejich generování pomocí LLM! Generování Cypher dotazu z uživatelského dotazu v přirozeném jazyce je klíčovou součástí text-to-Cypher Graph RAG workflow.

Pracuješ se stejnou databází jako v předchozím cvičení, která obsahuje uzly reprezentující osoby, společnosti a vztahy WORKS_FOR – dostupné jako graph.

Toto cvičení je součástí kurzu

Graph RAG s LangChain a Neo4j

Zobrazit kurz

Pokyny k cvičení

  • Aktualizuj slovník partial_variables tak, aby vložil schéma grafu do promptu.
  • Vytvoř text-to-Cypher řetězec pomocí prompt, llm a parsování na řetězec.

Interaktivní cvičení na vyzkoušení si v praxi

Vyzkoušejte si toto cvičení dokončením tohoto ukázkového kódu.

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)
Upravit a spustit kód