logoYuvraj Gupta
HomeAboutProjectsSkillsContact
Resume
logoYuvraj Gupta
Back to Projects

KnowledgeForge – GraphRAG PDF Chat

Built with Pramod Thebe and Ryuto Kawabata. A PDF chat system that gets smarter as you upload more documents. Instead of retrieving the top-K similar chunks, it extracts people, organizations, locations, dates, and concepts, links them in a Neo4j knowledge graph, and answers questions by traversing that graph across multiple hops, which is what you need when the answer spans several PDFs or depends on how things relate. A MemMachine-style memory layer decides what stays short-term and what is promoted to episodic memory so the conversation stays coherent across sessions.

PythonNeo4jGraphRAG subgraph retrievalMemMachine memory layer
View CodeLive Demo
KnowledgeForge – GraphRAG PDF Chat Screenshot

Project Features

🧩

Entity and Relationship Extraction

Every uploaded PDF is mined for entities and the relationships between them, then merged into a graph that grows with the library.

🧭

Multi-Hop Retrieval

Questions like who or what is related to X across these documents are answered by walking edges, not by hoping the right chunk ranks first.

🧠

Layered Memory

Short-term, episodic, and semantic memory are kept apart. The agent can explain an answer by pointing at the memory path it used.

🐳

Reproducible Deployment

Neo4j, the ingestion service, and the chat API come up together in Docker, so the demo is the same on every laptop.

Project Info

Duration

12/2025

Role

Graph Retrieval & Memory Layer

Team Size

Team of 3

Status

Completed

Technologies Used

  • • Python
  • • Neo4j
  • • GraphRAG subgraph retrieval
  • • MemMachine memory layer
  • • Strands Agents SDK, OpenAI API
  • • Docker

Watch It Run

KnowledgeForge demo

Uploading PDFs, watching the entity graph grow in Neo4j, and asking questions that span documents.

Project Gallery

Asking Across a Resume
Asking Across a Resume
One PDF indexed into 12 entities and 8 relationships; the chat answers with the education timeline pulled from the graph.
The Graph in Neo4j
The Graph in Neo4j
Entities and their typed relationships as stored, browsable in Neo4j alongside the chat.
Second Document, Connected Answers
Second Document, Connected Answers
After a lecture deck is added the graph grows to 24 entities and questions about the professor are answered from the new source.
Memory Across Turns
Memory Across Turns
Asked what the last three questions were, it lists them: episodic memory, not just retrieval.
Empty State
Empty State
Drop files on the left, suggested questions on the right, live entity and relationship counts underneath.
Landing Page
Landing Page
Upload any document, ask anything, get answers grounded in the knowledge graph.

Interested in This Project?

I'm always excited to discuss my projects and share insights about the development process. Feel free to reach out if you'd like to know more!

Get In TouchView More Projects

Yuvraj Gupta

AI Engineer building multi-agent systems, production retrieval, and research that ships. San Francisco.

Quick Links

  • Home
  • About
  • Projects
  • Skills
  • Contact

Get In Touch

📍San Francisco, CA
📧yuvrajgupta1808@gmail.com

© 2026 Yuvraj Gupta. All rights reserved.