Skip to content

Retrieval Augmented Generation (RAG) based Chatbot developed for the RAG 'n' ROLL Amp up Search with Snowflake & Mistral Hackathon

License

Notifications You must be signed in to change notification settings

Ashish-Soni08/Pill-Pal

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

12 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Pill-Pal💊

PillPal_Logo

Problem Statement

Have you ever come across the thin piece of folded paper that is part of every drug prescription box**?** Usually the text is in very small print and typically provides information about dosages, side effects, storage instructions and much more. They are hard to read and understand and it requires some effort to get answers to common questions that you as a patient might have.

Solution

Create a product that answers these questions and actually makes the medical information more accessible and easier to understand - enter PillPal💊

A Retrieval Augmented Generation (RAG) based chatbot that answers questions based on the PDF document.

Environement Setup

# Install Pyenv
curl -fsSL https://pyenv.run | bash
# Add command to ~/.bashrc
echo 'export PYENV_ROOT="$HOME/.pyenv"' >> ~/.bashrc
# Add command to ~/.bashrc
echo '[[ -d $PYENV_ROOT/bin ]] && export PATH="$PYENV_ROOT/bin:$PATH"' >> ~/.bashrc
# Add command to ~/.bashrc
echo 'eval "$(pyenv init - bash)"' >> ~/.bashrc
# Install Python 3.11 
# Because, the supported versions of Python for Snowflake are: 3.9, 3.10, 3.11

pyenv install 3.11
# Switch to 3.11
pyenv global 3.11
python -V
# Output: Python 3.11.11
# create a environment named -> samba-ai
python -m venv rag-ai
# activate the environment
source rag-ai/bin/activate
# deactivate the virtual environment
deactivate
# create a Jupyter Notebook kernel
pip install jupyter ipykernel
# add the virtual environment as a kernel for the jupyter notebook
python -m ipykernel install --user --name=rag-ai --display-name="Py3.11.11-rag-ai"
# verify kernel installation
jupyter kernelspec list
# If needed
jupyter kernelspec uninstall rag-ai

Jupyter_Kernel

ARCHITECTURE OF THE APPLICATION

DATA SOURCES

MODEL PROVIDERS

Snowflake

EMBEDDING MODEL

  • Model ID: jina-embeddings-v3
  • Developed by: JINA AI
  • Max Input Tokens: 8192
  • Max Output Dimensions: 1024
  • Model Card
  • LlamaIndex Docs

RERANK MODEL

GROQ

  • Model ID: llama-guard-3-8b
  • Developed by: META
  • Context Window: 8,192 tokens
  • Model Card
  • Groq Docs

Built for

RAG 'n' ROLL Amp up Search with Snowflake & Mistral Hackathon

Hackathon_Banner

Resources

Ideal Chunk Size of a RAG System

Metadata Customization

About

Retrieval Augmented Generation (RAG) based Chatbot developed for the RAG 'n' ROLL Amp up Search with Snowflake & Mistral Hackathon

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published