This library is to search the best parameters across different steps of the RAG process.
Project description
Ragrid Library
Overview
Ragrid 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.
Why ragrid ?
Ragrid is a powerful and user-friendly library that empowers researchers and developers to achieve state-of-the-art performance in their RAG workflows. By automating parameter selection, offering a range of intelligent chunking methods, and ensuring seamless compatibility, Ragrid simplifies the RAG process and unlocks its full potential. If you're looking to streamline your RAG development and achieve optimal results, Ragrid is the perfect library to elevate your Gen AI projects.
Why we are best?
Ragrid revolutionizes the process of Retrieval-Augmented Generation (RAG) by offering unparalleled efficiency and optimization. With its adaptive chunking capability, Ragrid intelligently selects the most suitable chunking method for each document, ensuring superior performance across diverse datasets. Ragrid eliminates the need for tedious manual best configuration selection, allowing researchers and developers to focus on the core aspects of their Gen AI projects. Moreover, its commitment to continuous improvement ensures that Ragrid remains at the forefront of RAG technology, making it the ultimate choice for streamlining RAG workflows and achieving optimal results in Gen AI tasks.
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
Supported Python versions >= 3.9 and <= 3.11
Installation
To get started, install the ragrid library using the following command:
pip install ragrid
To verify the installation and view library details, execute:
pip show ragrid
Setting Up Your Environment
Before diving into the functionality of ragrid, 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"
Note :- API Key from Free tier OpenAI account is not supported.
Usage
The following steps guide you through the process of utilizing the ragrid library to optimize your RAG parameters:
import ragrid as rg
# Specify the path to your PDF document
file_path = "PATH_TO_YOUR_PDF_FILE"
# Initialize the RAG-X instance
model = rg.ChunkEvaluator(file_path)
# Generate the optimal RAG parameters for your document
score_card = model.evaluate_parameters()
# Output the results
print(score_card)
Set parameters for evaluation
If you wish to analyse the performance of your parameters, you can pass the parameters as below:
kwarg = {
'number_of_questions': 5, # Number of questions used to evaluate the process: type(int)
'chunk_size': 250, # Chunk size: type(int)
'chunk_overlap': 0, # Chunk overlap size: type(int)
'separator': '', # Separator to be used for chunking if any, type(str)
'strip_whitespace': False, # Strip white space, type(bool)
'sentence_buffer_window': 3, # Sentence Buffer window, type(int)
'sentence_cutoff_percentile': 80, # Sentence chunk split percentile for spliting context, type(int), range(1,100)
}
# Specify the path to your PDF document
file_path = "PATH_TO_YOUR_PDF_FILE"
# Initialize the ragrid instance
model = rg.ChunkEvaluator(file_path, **kwargs)
# Generate the optimal RAG parameters for your document
score_card = model.evaluate_parameters()
# Output the results, output will be a pandas dataframe
print(score_card)
Contribution
We are open for contributions and any feedback from the users. Feel free to contact us.
Contact Us:
If you wish to integarte GenAI into your company, please contact us.
Struggling to implement Gen AI in your company or product?
Book a call at https://topmate.io/deepakchawla1307
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file ragrid-0.1.3.tar.gz.
File metadata
- Download URL: ragrid-0.1.3.tar.gz
- Upload date:
- Size: 16.5 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.0.0 CPython/3.11.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
173f90567fbc6678488af51d87ec85480f1a8e496ce5bd265fbe80da26ad3f7e
|
|
| MD5 |
141691c7e6ed2de9732b6fad54c5385c
|
|
| BLAKE2b-256 |
5ca13567723b2c9aa052436a7c9fe2e815fdf04049db7e312f4d9bf7ae376a06
|
File details
Details for the file ragrid-0.1.3-py3-none-any.whl.
File metadata
- Download URL: ragrid-0.1.3-py3-none-any.whl
- Upload date:
- Size: 17.6 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.0.0 CPython/3.11.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
63031f45bcdc24c4bad33394f15f5eb36536d8f7494375697f69cfe532085dc2
|
|
| MD5 |
fc07449123360f8528c2e1bbbab77e93
|
|
| BLAKE2b-256 |
28155f0093f5a8b74c7ee52a0c0eded49bc6e5d8aa1690ff9c9875718d5b1176
|