Skip to content

Add different kinds of data: Youtube videos, PDFs, Internet links and ask questions based on the content provided using an intuitive UI.

Notifications You must be signed in to change notification settings

sebi75/multitype-llm-chat

Repository files navigation

What is Multitype-LLM-Chat?

  • A basic POC for a RAG-based chatbot that can be used for a variety of purposes.

  • This is an AI-powered tool made for researching, by augmenting GPT models with your own data.

  • We recommend using a 'chat' instance within the app for a singular purpose. For example, you can use it to research a specific large legal document, but adding other documents will likely confuse the model and you are likely to get mixed results.

  • The app is currently in development and is not ready for production use. One can use it locally by following the instructions below.

Structure:

You can check the app architecture in the diagram located into /assets

Untitled
demo-video.mp4

app-architecture drawio

How to start

Initialize the database

  • Create a new database in your local mysql server or use a remote one like PlanetScale
  • Add DATABASE_URL in your .env file
  • Initialize your new database with the schema:
pnpm run db:push

Start the weaviate vector database via docker-compose

cd ./indexing-service
docker-compose up

Initialize the indexing service

bash cd ../indexing-service

Create a new virtual environment and install the dependencies

python -m venv .venv

Activate the new virtual environment

source .venv/bin/activate

Install the dependencies from the requirements.txt file

pip install -r requirements.txt

Start the Flask API.

python main.py

Initialize the web app

 cd web
 pnpm install
pnpm dev

About

Add different kinds of data: Youtube videos, PDFs, Internet links and ask questions based on the content provided using an intuitive UI.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published