Créer un index vectoriel
Les propriétés 'text' de nos nœuds Line sont idéales pour générer des embeddings permettant de répondre à des questions ouvertes sur la pièce.
Utilisez le vector store fourni par langchain-neo4j pour créer un index vectoriel en générant des embeddings à partir de la propriété 'text' des nœuds Line.
Cet exercice fait partie du cours
<cours>Graph RAG avec LangChain et Neo4j</cours>Instructions de l’exercice
- Utilisez la classe appropriée pour créer un index vectoriel à partir d’un graphe existant de nœuds et de relations.
- Indiquez à la classe de stocker les embeddings dans la propriété de nœud
'embedding'. - Indiquez à la classe de créer des embeddings à partir de la propriété de nœud
'text'.
Exercice interactif pratique
Essayez cet exercice en complétant ce code d’exemple.
from langchain_neo4j import Neo4jVector
# Create a vector store from the existing graph
line_retriever = ____.from_existing_graph(
embedding=embeddings,
url=NEO4J_URL, username=NEO4J_USERNAME, password=NEO4J_PASSWORD,
index_name="lines_index",
node_label="Line",
# Set the embedding and text node properties
____="embedding",
____=["text"],
)
results = line_retriever.similarity_search_with_score("Biting a finger", k=3)
for result in results:
print(result[0].page_content)