An open API service indexing awesome lists of open source software.

https://github.com/bharath-tars/hemamind

HemaMind - AI Agent to analyze blood reports and provide detailed health insights
https://github.com/bharath-tars/hemamind

ai-agents analytics generativeai groq healthcare

Last synced: 9 months ago
JSON representation

HemaMind - AI Agent to analyze blood reports and provide detailed health insights

Awesome Lists containing this project

README

          

# 🩺 HemaMind ("Hema" = Blood, + "Mind" = Intelligence)

AI Agent to analyze blood reports and provide detailed health insights.









Features |
Tech Stack |
Installation |

## Example Result
![result](https://raw.githubusercontent.com/Bharath-tars/HemaMind/main/public/db/example_report.jpeg)

## 🌟 Features

- Intelligent agent-based architecture with multi-model cascade system
- In-context learning from previous analyses and knowledge base building
- Medical report analysis with personalized health insights
- PDF upload, validation and text extraction (up to 20MB)
- Supports both text-parsable documents and scanned documents (scanned files may take longer to process since GPU acceleration isn’t available)
- Secure user authentication and session management
- Session history with report analysis tracking
- Modern, responsive UI with real-time feedback

## πŸ› οΈ Tech Stack

- **Frontend Framework**: Streamlit
- **AI Integration**: Multi-model architecture via Groq
- Primary: meta-llama/llama-4-maverick-17b-128e-instruct
- Secondary: llama-3.3-70b-versatile
- Tertiary: llama-3.1-8b-instant
- Fallback: llama3-70b-8192
- **Database**: Supabase
- **PDF Processing**: PDFPlumber
- **Authentication**: Supabase Auth

## πŸš€ Installation

#### Requirements πŸ“‹

- Python 3.8+
- Streamlit 1.30.0+
- Supabase account
- Groq API key
- PDFPlumber
- Python-magic-bin (Windows) or Python-magic (Linux/Mac)
- streamlit>=1.42.0
- Pillow
- Easyocr
- Numpy

#### Getting Started πŸ“

1. Clone the repository:

```bash
git clone https://github.com/Bharath-tars/HemaMind.git
cd HemaMind
```

2. Install dependencies:

```bash
pip install -r requirements.txt
```

3. Required environment variables (in `.streamlit/secrets.toml`):

```toml
SUPABASE_URL = "your-supabase-url"
SUPABASE_KEY = "your-supabase-key"
GROQ_API_KEY = "your-groq-api-key"
```

4. Set up Supabase database schema:

The application requires the following tables in your Supabase database:

![database schema](https://raw.githubusercontent.com/Bharath-tars/HemaMind/main/public/db/schema.png)

You can use the SQL script provided at `public/db/script.sql` [link] to set up the required database schema.

(PS: You can turn off the email confimation on signup in Supabase settings -> signup -> email)

5. Run the application:

```bash
streamlit run src\main.py
```

## πŸ“ Project Structure

```
hia/
β”œβ”€β”€ requirements.txt
β”œβ”€β”€ README.md
β”œβ”€β”€ src/
β”‚ β”œβ”€β”€ main.py # Application entry point
β”‚ β”œβ”€β”€ auth/ # Authentication related modules
β”‚ β”‚ β”œβ”€β”€ auth_service.py # Supabase auth integration
β”‚ β”‚ └── session_manager.py # Session management
β”‚ β”œβ”€β”€ components/ # UI Components
β”‚ β”‚ β”œβ”€β”€ analysis_form.py # Report analysis form
β”‚ β”‚ β”œβ”€β”€ auth_pages.py # Login/Signup pages
β”‚ β”‚ β”œβ”€β”€ footer.py # Footer component
β”‚ β”‚ └── sidebar.py # Sidebar navigation
β”‚ β”œβ”€β”€ config/ # Configuration files
β”‚ β”‚ β”œβ”€β”€ app_config.py # App settings
β”‚ β”‚ └── prompts.py # AI prompts
β”‚ β”œβ”€β”€ services/ # Service integrations
β”‚ β”‚ └── ai_service.py # AI service integration
β”‚ β”œβ”€β”€ agents/ # Agent-based architecture components
β”‚ β”‚ β”œβ”€β”€ agent_manager.py # Agent management
β”‚ β”‚ └── model_fallback.py # Model fallback logic
β”‚ └── utils/ # Utility functions
β”‚ β”œβ”€β”€ validators.py # Input validation
β”‚ └── pdf_extractor.py # PDF processing
```

## πŸ‘₯ Contributing

Contributions are welcome! Please read our [Contributing Guidelines](CONTRIBUTING.md) for details on how to submit pull requests, the development workflow, coding standards, and more.

We appreciate all contributions, from reporting bugs and improving documentation to implementing new features.

## πŸ“„ License

This project is licensed under the MIT License - see the [LICENSE](https://github.com/Bharath-tars/HemaMind/blob/main/LICENSE) file for details.

## πŸ™‹β€β™‚οΈ Author

Created by [Sudarsanam Bharath](https://b4rpro.netlify.app)