Skip to content

Latest commit

 

History

History
45 lines (33 loc) · 1.15 KB

File metadata and controls

45 lines (33 loc) · 1.15 KB

Chatbot using Neo4j , LangChain & Streamlit

This project implements a chatbot utilizing Neo4j as the underlying database and LangChain classes for prompt engineering. The aim is to create a natural language interface over the graph data stored in Neo4j.

Components:

1. Chatbot Logic:

The main logic of the chatbot is implemented using LangChain classes, which facilitate prompt engineering to interact with the Neo4j graph database.

2. Neo4jService Class:

This class contains methods for interacting with the Neo4j database. Additionally, it includes functionalities for logging metadata generated by the Streamlit app into the graph.

Usage:

To run the chatbot:

  1. Create .env file with the following keys
NEO4J_URI=
NEO4J_DATABASE_NAME=
NEO4J_PASSWORD=
NEO4J_USERNAME=
LANGCHAIN_API_KEY=
LANGCHAIN_TRACING_V2=true
LANGCHAIN_ENDPOINT=https://api.smith.langchain.com
LANGCHAIN_PROJECT=
OPENAI_ENDPOINT=
OPENAI_API_KEY=
GPT4_8K_NAME=neoconverse-gpt4
OPENAI_API_VERSION=2023-03-15-preview
OPENAI_API_BASE=
  1. run the deploy.sh script

Dependencies:

(see requirements.txt)

  • Python
  • Neo4j
  • LangChain

Contributors:

  • Alexander Fournier