Skip to content

extrawest/hybrid-search-and-graphdb-rag

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

9 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Langchain Neo4j Graph RAG movie search

Maintenance Maintaner Ask Me Anything ! GitHub license GitHub release

PROJECT INFO

A cutting-edge movie database application powered by AI, developed using Node.js, and Neo4j. The application leverages LangChain4j to support natural language queries, enabling users to receive personalized recommendations, explore interactive graph visualizations, and dynamically navigate data. With an intuitive interface, users can easily discover movies, actors, genres, and directors. Designed with scalable architecture and strong security, the platform offers a seamless, engaging, and highly personalized movie discovery experience.

Features

  • Neo4j database
  • OpenAI gpt-3.5-turbo
  • LangChain

Preview

  1. Query example:
MATCH p=()-[:IN_GENRE]->() RETURN p LIMIT 25;

visualisation

  1. Demo
script_demo.mp4

Installing:

1. Clone this repo to your folder:

git clone https://gitlab.extrawest.com/i-training/flutter/hybrid-search-and-graphdb-rag

2. Change current directory to the cloned folder:

cd hybrid-search-and-graphdb-rag

3. Install dependencies:

npm install

4. add .env file:

In the root of the project file create .env file and add the following variables:**

NEO4J_URI = "YOUR_NEO4J_DATABASE_URI"
NEO4J_USER = 'YOUR_NEO4J_DATABASE_NAME' //usaualy neo4j
NEO4J_PASSWORD = "YOUR_NEO4J_DATABASE_PASSWORD" 
OPENAI_API_KEY = "YOUR_OPENAI_API_KEY" 

3. Upload Dataset to Neo4j: run upload_graphs.js file in the root of the project. The data will be uploaded to Neo4j

4. Search movies: To start server, just run node index.js.

Now you can use the app

Created by Oleksandr Samoilenko

Extrawest.com, 2024