दस्तावेज़ स्टोर करना और क्वेरी करना

LangChain के साथ Retrieval Augmented Generation (RAG)

Meri Nova

Machine Learning Engineer

Neo4j डेटाबेस इंस्टैंशिएट करना

from langchain_community.graphs import Neo4jGraph

graph = Neo4jGraph(url="bolt://localhost:7687", username="neo4j", password="...")
import os

url = os.environ["NEO4J_URI"]
user = os.environ["NEO4J_USERNAME"]
password = os.environ["NEO4J_PASSWORD"]

graph = Neo4jGraph(url=url, username=user, password=password)
1 https://neo4j.com/download/
LangChain के साथ Retrieval Augmented Generation (RAG)

ग्राफ़ डॉक्यूमेंट्स स्टोर करना

from langchain_experimental.graph_transformers import LLMGraphTransformer

llm = ChatOpenAI(api_key="...", temperature=0, model="gpt-4o-mini")
llm_transformer = LLMGraphTransformer(llm=llm)

graph_documents = llm_transformer.convert_to_graph_documents(documents)
LangChain के साथ Retrieval Augmented Generation (RAG)

ग्राफ़ डॉक्यूमेंट्स स्टोर करना

graph.add_graph_documents(
  graph_documents,

include_source=True,
baseEntityLabel=True
)
  • include_source=True: MENTIONS edge से nodes को source documents से लिंक करें
  • baseEntityLabel=True: हर node पर __Entity__ label जोड़ें
LangChain के साथ Retrieval Augmented Generation (RAG)

ग्राफ़ डॉक्यूमेंट्स को nodes और edges के रूप में दिखाया गया है.

LangChain के साथ Retrieval Augmented Generation (RAG)

पिछली इमेज का ज़ूम-इन दृश्य, जिसमें OpenAI मॉडलों के nodes दिखते हैं.

LangChain के साथ Retrieval Augmented Generation (RAG)

डेटाबेस स्कीमा

print(graph.get_schema)
Node properties:
Concept {id: STRING}
Architecture {id: STRING}
Organization {id: STRING}
Event {id: STRING}
Paper {id: STRING}

The relationships:
(:Concept)-[:DEVELOPED_BY]->(:Person)
(:Architecture)-[:BASED_ON]->(:Concept)
(:Organization)-[:PROPOSED]->(:Concept)
(:Document)-[:MENTIONS]->(:Event)
(:Paper)-[:BASED_ON]->(:Concept)
LangChain के साथ Retrieval Augmented Generation (RAG)

Neo4j को क्वेरी करना - Cypher Query Language

James नाम का एक node, जिसमें friends संबंध एक mystery node person की ओर इशारा करता है.

LangChain के साथ Retrieval Augmented Generation (RAG)

Neo4j को क्वेरी करना - Cypher Query Language

cypher4.jpg

LangChain के साथ Retrieval Augmented Generation (RAG)

Neo4j को क्वेरी करना - Cypher Query Language

cypher4.jpg

LangChain के साथ Retrieval Augmented Generation (RAG)

Neo4j को क्वेरी करना - Cypher Query Language

cypher4.jpg

LangChain के साथ Retrieval Augmented Generation (RAG)

Neo4j को क्वेरी करना - Cypher Query Language

cypher4.jpg

LangChain के साथ Retrieval Augmented Generation (RAG)

LLM ग्राफ़ को क्वेरी करना

results = graph.query("""
MATCH (gpt4:Model {id: "Gpt-4"})-[:DEVELOPED_BY]->(org:Organization)
RETURN org
""")

print(results)
[{'org': {'id': 'Openai'}}]
LangChain के साथ Retrieval Augmented Generation (RAG)

अभ्यास करते हैं!

LangChain के साथ Retrieval Augmented Generation (RAG)

Preparing Video For Download...