Spaces:
Build error
Build error
File size: 5,314 Bytes
9e7ce10 64772a4 9e7ce10 64772a4 9e7ce10 64772a4 9e7ce10 64772a4 |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 |
---
title: Medical_RAG
app_file: combinedmultimodal.py
sdk: gradio
sdk_version: 4.41.0
---
# Advancing Text Searching with Advanced Indexing Techniques in Healthcare Applications(In Progress)
Welcome to the project repository for advancing text searching with advanced indexing techniques in healthcare applications. This project implements a powerful Retrieval-Augmented Generation (RAG) system using cutting-edge AI technologies, specifically designed to enhance text searching capabilities within the healthcare domain.I have also implemented Multimodal Text Searching for Medical Documents.
## π Features For Text Based Medical Query Based System
- **BioLLM 8B**: Advanced language model for generating and processing medical text.
- **ClinicalBert**: State-of-the-art embedding model for accurate representation of medical texts.
- **Qdrant**: Self-hosted Vector Database (Vector DB) for efficient storage and retrieval of embeddings.
- **Langchain & Llama CPP**: Orchestration frameworks for seamless integration and workflow management.
# Medical Knowledge Base Query System
A multimodal medical information retrieval system combining text and image-based querying for comprehensive medical knowledge access.
## Features For Multimodality Medical Query Based System:
[Watch the video on YouTube](https://youtu.be/pNy7RqfRUrc?si=1HQgq54oHT6YoR0B)
### π§ Multimodal Medical Information Retrieval
- Combines text and image-based querying for comprehensive medical knowledge access
- Uses Qdrant vector database to store and retrieve both text and image embeddings
### π€ Advanced Natural Language Processing
- Utilizes ClinicalBERT for domain-specific text embeddings
- Implements NVIDIA's Palmyra-med-70b model for medical language understanding fast Inference time.
### πΌοΈ Image Analysis Capabilities
- Incorporates CLIP (Contrastive Language-Image Pre-training) for image feature extraction
- Generates image summaries using Google's Gemini 1.5 Flash model
### π PDF Processing
- Extracts text and images from medical PDF documents
- Implements intelligent chunking strategies for text processing
### π Vector Search
- Uses Qdrant for efficient similarity search on both text and image vectors
- Implements hybrid search combining CLIP-based image similarity and text-based summary similarity
### π₯οΈ Interactive User Interface
- Gradio-based web interface for easy querying and result visualization
- Displays relevant text responses alongside related medical images
### π§© Extensible Architecture
- Modular design allowing for easy integration of new models or data sources
- Supports both local and cloud-based model deployment
The high level architectural framework for this application is given as follows:

### β‘ Performance Optimization
- Implements batching and multi-threading for efficient processing of large document sets
- Utilizes GPU acceleration where available
### ποΈ Customizable Retrieval
- Adjustable similarity thresholds for image retrieval
- Configurable number of top-k results for both text and image queries
### π Comprehensive Visualization
- Displays query results with both textual information and related images
- Provides a gallery view of all extracted images from the knowledge base
### π Environment Management
- Uses .env file for secure API key management
- Supports both CPU and GPU environments
### DEMO SCREENSHOT

## π₯ Video Demonstration
Explore the capabilities of our project with our detailed [YouTube video](https://youtu.be/nKCKUcnQ390).
## Installation
To get started with this project, follow these steps:
1. **Install Dependencies**:
```bash
pip install -r requirements.txt
```
2. **Set up Qdrant**:
- Follow the [Qdrant Installation Guide](https://qdrant.tech/documentation/quick_start/) to install and configure Qdrant.
3. **Configure the Application**:
- Ensure configuration files for BioLLM, ClinicalBert, Langchain, and Llama CPP are correctly set up.
4. **Run the Application**:
if you want to run the text reterival application in Flask mode
```bash
uvicorn app:app
```
if you want to run the text reterival application through Streamlit
``bash
streamlit run Streaming.py
```
if you want to run the multimodal application run it through Gradio Interface
```bash
python combinedmultimodal.py
```
## π‘ Usage
- **Querying the System**: Input medical queries via the application's interface for detailed information retrieval.
- **Text Generation**: Utilize BioLLM 8B to generate comprehensive medical responses.
## π₯ Contributing
We welcome contributions to enhance this project! Here's how you can contribute:
1. Fork the repository.
2. Create a new branch (`git checkout -b feature-name`).
3. Commit your changes (`git commit -am 'Add feature'`).
4. Push to the branch (`git push origin feature-name`).
5. Open a Pull Request with detailed information about your changes.
## π License
This project is licensed under the MIT License. See the [LICENSE](LICENSE) file for details.
## π Contact
For questions or suggestions, please open an issue or contact the repository owner at [[email protected]](mailto:[email protected]).
|