Skip to content

sabinsh/healthcare-nlp-analyzer

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 

History

3 Commits
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

Repository files navigation

Version Status

๐Ÿฅ Clinical NLP Analyzer

Python Docker Azure FastAPI Streamlit

๐Ÿš€ AI-Powered Healthcare Text Intelligence Platform

๐Ÿ‘ค Author: Sabin Shrestha
๐Ÿ› ๏ธ Built with: Azure AI โ€ข FastAPI โ€ข Streamlit โ€ข Docker
๐Ÿ“… Date: March 26, 2026 ๐Ÿท๏ธ Version: v1.0.0


๐Ÿ”ฅ Overview

Healthcare systems generate massive amounts of unstructured clinical data.

๐Ÿ‘‰ This application transforms that into:

  • Structured clinical data
  • Standardized medical coding
  • Actionable insights

๐Ÿ–ฅ๏ธ Application Preview

๐Ÿง  Dashboard Overview

Dashboard


๐Ÿ“Š Extraction Results

Tables


โœจ Key Features

  • ๐Ÿฉบ Extract Diagnoses, Medications, Symptoms
  • ๐Ÿ”— Map to ICD-10, SNOMED CT, UMLS, DrugBank
  • ๐Ÿง  AI-powered clinical understanding
  • ๐Ÿ“Š Clean dashboard UI
  • ๐Ÿ“ฅ Downloadable reports
  • ๐Ÿณ Fully Dockerized (production-ready)

๐Ÿง  Architecture

[ Streamlit UI ]  โ†’  [ FastAPI Backend ]  โ†’  [ Azure Healthcare NLP ]
         (8501)              (8000)                  (5000)

๐Ÿ› ๏ธ Tech Stack

Layer Technology
Frontend Streamlit
Backend FastAPI
AI/NLP Azure Text Analytics for Health
Deployment Docker Compose

โš™๏ธ Prerequisites

  • Docker Desktop (running)
  • VS Code
  • Azure Text Analytics (Language) resource

โ˜๏ธ Azure Setup

Create:

  • Resource Type: Text Analytics / Language
  • Endpoint:
https://<your-resource>.cognitiveservices.azure.com/
  • API Key

โœ… Free or Standard tier both work


โš™๏ธ Setup Instructions

1. Clone or Open Project

File โ†’ Open Folder โ†’ healthcare-nlp-app

2. Update docker-compose.yml

- eula=accept
- billing=https://YOUR-ENDPOINT.cognitiveservices.azure.com/
- apikey=YOUR_KEY
- rai_terms=accept

โ–ถ๏ธ Run Application

Open terminal in VS Code:

docker compose down --volumes
docker compose up --build

๐ŸŒ Access

Service URL
UI http://localhost:8501
API http://localhost:8000

๐Ÿงช Example Input

The patient was diagnosed with type 2 diabetes and prescribed metformin and insulin. He reports fatigue and thirst.

๐Ÿ“Š Output

  • Dashboard summary
  • Diagnoses table
  • Medications table
  • Symptoms table
  • Medical codes mapping
  • JSON + downloadable report

๐Ÿงฌ Medical Coding Systems

System Purpose
ICD-10 Billing
SNOMED CT Clinical
UMLS Mapping
DrugBank Drugs

๐ŸŒ Access from Another Computer

  1. Get IP:
ipconfig
  1. Allow firewall:
netsh advfirewall firewall add rule name="Streamlit 8501" dir=in action=allow protocol=TCP localport=8501
  1. Open:
http://YOUR-IP:8501

๐Ÿ› ๏ธ Useful Commands

docker compose up --build
docker compose down
docker compose logs -f
docker ps

๐Ÿ“ฆ Version

Current Version: v1.0.0

Initial release featuring:

  • Clinical NLP extraction (Azure Text Analytics for Health)
  • FastAPI backend
  • Streamlit dashboard UI
  • Dockerized deployment
  • Structured clinical output with coding systems (ICD-10, SNOMED, UMLS, DrugBank)

๐Ÿ“ Changelog

v1.0.0 โ€” Initial Release (March 26, 2026)

๐Ÿš€ Features

  • Extract diagnoses, medications, and symptoms from clinical text
  • Map entities to ICD-10, SNOMED CT, UMLS, and DrugBank
  • Interactive Streamlit dashboard with summary metrics
  • FastAPI backend for processing requests
  • Azure Text Analytics for Health integration
  • Docker Compose multi-service architecture

๐ŸŽจ UI Improvements

  • Dashboard cards with icons
  • Narrative summary generation
  • Structured tables for extracted entities

๐Ÿ“Š Output

  • Clean JSON response
  • Downloadable text report

๐Ÿ”ฎ Upcoming (Planned)

  • PDF report generation
  • Azure OpenAI clinical summary
  • File upload (clinical notes / PDFs)
  • Chat interface (RAG-based)
  • Azure deployment (Container Apps)
  • Authentication & multi-user support

๐Ÿš€ Future Enhancements

  • ๐Ÿ“„ PDF Reports
  • ๐Ÿค– AI Summary (LLM)
  • ๐Ÿ“ File Upload
  • โ˜๏ธ Azure Deployment
  • ๐Ÿ’ฌ Chat with Clinical Data

๐Ÿ‘ค Author

Sabin Shrestha
AI โ€ข Data Engineering โ€ข Healthcare Analytics


โญ Why This Project Matters

๐Ÿ‘‰ Converts messy clinical text โ†’ structured, billable, analyzable data

๐Ÿ‘‰ Real-world use cases:

  • EHR systems
  • Insurance coding
  • Clinical analytics
  • AI pipelines

๐Ÿ“Œ Final Note

This is not just an NLP demo โ€”
it is a production-ready healthcare AI system.

About

AI-powered clinical NLP analyzer that transforms unstructured healthcare text into structured, code-mapped data using Azure Text Analytics, FastAPI, Streamlit, and Docker.

Topics

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Contributors