Skip to main content

RAGxplorer 🦙🦺

RAGxplorer is an interactive streamlit tool to support the building of Retrieval Augmented Generation (RAG) applications by visualizing document chunks and the queries in the embedding space.

[!NOTE] This is an experimental re-factored version.

Demo 🔎

Streamlit App

⚠️ Due to infra limitations, this freely hosted demo may occasionally go down. The best experience is to clone this repo, and run it locally.

Features ✨

  • Document Upload: Users can upload PDF documents.
  • Chunk Configuration: Options to configure the chunk size and overlap
  • Choice of embedding model: all-MiniLM-L6-v2 or text-embedding-ada-002
  • Vector Database Creation: Builds a vector database using Chroma
  • Query Expansion: Generates sub-questions and hypothetical answers to enhance the retrieval process.
  • Interactive Visualization: Utilizes Plotly to visualise the chunks.

Local Installation ⚙️

To run RAGxplorer, ensure you have Python installed, and then install the necessary dependencies:

pip install -r requirements-local-deployment.txt

[!TIP] ⚠️ Do not use requirements.txt. That is so the free streamlit deployment can run. That file includes an additional pysqlite3-binary dependency.

⚠️ If it helps with troubleshooting, this application was built using Python 3.11

Usage 🏎️

  1. Setup OPENAI_API_KEY (required) and ANYSCALE_API_KEY (if you need anyscale). Copy the .streamlit/secrets.example.toml file to .streamlit/secrets.toml and fill in the values.
  2. To start the application, run:
    streamlit run app.py
    
  3. You may need to comment out/remove line 5-7 in app.py.
    __import__('pysqlite3')
    import sys
    sys.modules['sqlite3'] = sys.modules.pop('pysqlite3')
    

[!NOTE] This repo is currently linked to the streamlit demo, and these lines were added due to the runtime in the free streamlit deployment env. See here.

Contributing 👋

Contributions to RAGxplorer are welcome. Please read our contributing guidelines (WIP) for details.

License 👀

This project is licensed under the MIT license - see the LICENSE file for details.

Acknowledgments 💙

  • DeepLearning.AI and Chroma for the inspiration and code labs in their Advanced Retrival course.
  • The Streamlit community for the support and resources.

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

ragxplorer-0.1.0.tar.gz (11.1 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

ragxplorer-0.1.0-py3-none-any.whl (11.3 kB view details)

Uploaded Python 3

File details

Details for the file ragxplorer-0.1.0.tar.gz.

File metadata

  • Download URL: ragxplorer-0.1.0.tar.gz
  • Upload date:
  • Size: 11.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.11.5

File hashes

Hashes for ragxplorer-0.1.0.tar.gz
Algorithm Hash digest
SHA256 6315b31252195fe180c9fc6790ac690de2ce9579e51ac9af20e3c8d4f66527ad
MD5 3fc23f5f3ded01979889db7d3a57ba75
BLAKE2b-256 3bbab643d3fdf0d9b7518d68d85bfb2b4ebe3617b5b194983a7b34f0280dfd9c

See more details on using hashes here.

File details

Details for the file ragxplorer-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: ragxplorer-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 11.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.11.5

File hashes

Hashes for ragxplorer-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 5b0cbc4aa144994854bc06d398519edbeb03f9ce5946860ee37330dbd78776db
MD5 2583971fa02bacc6e0e136c71ec99002
BLAKE2b-256 d47fe4f66803518cfb3d1abf9a7181f574923e279da348d718ef626fe105d43a

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page