RAG-X Library
Overview
RAG-X is a comprehensive library designed to optimize Retrieval-Augmented Generation (RAG) processes. It provides a suite of tools to automatically determine the best parameters for processing specific documents. This includes selecting appropriate chunking techniques, embedding models, vector databases, and Language Model (LLM) configurations.
Key Features:
- Adaptive Chunking: Incorporates four advanced text chunking methodologies to enhance the handling of diverse document structures.
- Specific Text Splitting
- Recursive Text Splitting
- Sentence Window Splitting
- Semantic Window Splitting
- Expandability: Future versions will introduce additional chunking strategies and enhancements based on user feedback and ongoing research.
- Compatibility: Designed to seamlessly integrate with a wide range of embedding models and vector databases.
Getting Started
Prerequisites
Due to existing dependency conflicts, it is crucial to install the required dependencies before using the RAG-X library. We are actively working on a resolution and appreciate your understanding.
pip install tiktoken chromadb trulens-eval 'unstructured[pdf]' openai -q
Installation
After resolving the dependencies, install the RAG-X library using the following command:
pip install -i https://test.pypi.org/simple/ RAG-X -q
To verify the installation and view library details, execute:
pip show RAG-X
Setting Up Your Environment
Before diving into the functionality of RAG-X, ensure that your environment variables are properly configured with your OpenAI API key and your Hugging Face token:
import os
os.environ['OPENAI_API_KEY'] = "YOUR_OPENAI_API_KEY"
os.environ['HF_TOKEN'] = "YOUR_HUGGINGFACE_TOKEN"
Usage
The following steps guide you through the process of utilizing the RAG-X library to optimize your RAG parameters:
from RAG_X.prag import parent_class
# Specify the path to your PDF document
file_path = "PATH_TO_YOUR_PDF_FILE"
# Initialize the RAG-X instance
my_instance = parent_class(file_path)
# Generate the optimal RAG parameters for your document
score_card = my_instance.get_best_param()
# Output the results
print(score_card)
Metadata
Release files for Evaltest 0.0.1.31
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| Evaltest-0.0.1.31.tar.gz | 11.9 kB | Details |
Release files / Evaltest-0.0.1.31.tar.gz
| Download URL | Evaltest-0.0.1.31.tar.gz |
|---|---|
| Size | 11.9 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
87faae078fa46ae9d048f019f357d06f90c0fc1e5c05a6449a5526991d6dd6e4
|
|
BLAKE2b-256 checksum How to use checksums |
22d98109e189fcce450d3e0bf5d5b4231f2e8202309bed40c6d3215d5abc3f75
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/5.0.0 CPython/3.11.5
|