A RAG-based AI assistant that helps clinical and administrative staff draft prior authorization requests — grounded in payer policy, with mandatory citations and a human review gate.
Built as a Solutions Architect portfolio project demonstrating applied AI design for regulated healthcare environments.
Prior authorization (PA) is one of the most costly administrative processes in U.S. healthcare. Staff spend 30–90 minutes per request manually comparing clinical notes against dense payer policy documents, then writing justification letters from scratch. Documentation gaps discovered at denial trigger expensive appeals cycles.
The CMS Interoperability and Prior Authorization Final Rule (CMS-0057-F), effective January 2026, adds regulatory urgency — health systems without modernized PA infrastructure face both operational burden and compliance exposure.
- Accepts a clinical note as input (MVP: lumbar spine MRI authorization)
- Retrieves the relevant medical necessity criteria from a payer policy index
- Generates a draft PA justification letter with citations to specific policy clauses
- Flags documentation gaps where the note doesn't yet meet required criteria
- Presents everything to a human reviewer — nothing is submitted without explicit approval
Payer policies update constantly. A fine-tuned model's knowledge is frozen at training time — every policy update requires a full retraining cycle. RAG lets us update the policy corpus by re-ingesting updated documents, with no model changes. It also provides an auditable retrieval chain: every output is traceable to a specific source chunk, which is a hard requirement for compliance in this domain.
Five Architecture Decision Records (ADRs) document the major design choices:
| ADR | Decision |
|---|---|
| ADR-001 | RAG over fine-tuning |
| ADR-002 | Hybrid retrieval (BM25 + semantic) over pure vector search |
| ADR-003 | pgvector over dedicated vector databases |
| ADR-004 | Synthetic data only — no real PHI |
| ADR-005 | Human-in-the-loop by design — no autonomous submission |
prior-auth-copilot/
├── architecture/diagrams/ # System and data flow diagrams
├── docs/
│ ├── adr/ # Architecture Decision Records
│ ├── business-case.md # Problem brief and ROI framing
│ └── path-to-production.md # What real deployment would require
├── data/
│ ├── synthetic/ # LLM-generated clinical notes (no PHI)
│ ├── policies/ # Public CMS LCD/NCD policy documents
│ └── README.md # Data sourcing documentation
├── src/
│ ├── ingestion/ # Document chunking and indexing pipeline
│ ├── retrieval/ # Hybrid BM25 + semantic retrieval
│ ├── generation/ # Grounded draft generation with citations
│ └── api/ # FastAPI backend
├── ui/ # React human review interface
└── evals/ # Retrieval and generation evaluation framework
This project uses zero real patient data. All clinical notes are synthetically generated. Policy documents are public CMS publications (Local Coverage Determinations). See data/README.md for full sourcing documentation.
- Repository structure and architecture artifacts
- Business case and ADRs
- Synthetic data generation
- CMS LCD L34220 policy document (cleaned, structured for RAG)
- Ingestion pipeline (chunking + embedding + pgvector)
- Hybrid retrieval layer
- Generation layer with citations
- FastAPI backend
- React UI - the polished MVP
- Evals + polish