Inspiration
Every health plan writes its own medical policy for every drug. Different formats, different terminology, different criteria. An analyst trying to answer "does this plan require step therapy for this drug?" has to open multiple PDFs, search through each one, and mentally compare the requirements. That process takes hours for a single question. We wanted to make it take seconds.
What it does
Type a question like "Which plans cover rituximab?" and five AI agents pull the answer from real policy documents, compare coverage across payers, flag conflicts, and present it in a side-by-side comparison table. Drop a new policy PDF into the system and start querying it immediately. Export the results as CSV or PDF for client reports.
How we built it
Taljinder built the backend: a FastAPI pipeline that parses policy PDFs, extracts 27 structured fields using Groq, and stores embeddings in Pinecone with two-stage retrieval (bi-encoder plus cross-encoder reranking). Sankritya built the orchestration layer: a streaming pipeline that classifies questions, routes them to the right specialist agent, and synthesizes answers with ElevenLabs voices. Mohan built the frontend: a pixel art office where each agent is a character that walks to the meeting table and speaks their analysis.
Challenges we ran into
Getting accurate per-payer answers was harder than expected. Early on the system would blend data from multiple payers into one answer, saying UHC requires something when it was actually Cigna's policy. We had to enforce strict payer filtering at every layer: Pinecone metadata filters, Groq prompts that refuse to cross-contaminate, and normalization maps that turn "UnitedHealthcare" and "UHC" and "United" into the same canonical key.
Accomplishments that we're proud of
The system correctly handles both single-drug PDFs (like UHC's botulinum policy) and mega-documents (like Priority Health's full drug list) through the same pipeline. Change detection actually works. Drop two versions of the same policy and it tells you exactly which fields changed and whether the policy got stricter or more permissive. And the pixel art office with talking agents is just fun.
What we learned
Medical policy documents are way messier than we expected. Same drug goes by four different names. Same payer organizes their policies completely differently. "Step therapy" means different things depending on who wrote the policy. Building a system that normalizes all of this taught us more about healthcare data than any textbook could.
What's next for RxRadar
Automated policy monitoring. Instead of waiting for someone to upload a new PDF, the system would periodically check payer websites and flag when something changes. We would also add more payers and therapeutic areas beyond oncology and immunology, and build an alert system that notifies analysts when a policy change affects their clients.
Built With
- elevenlabs
- fastapi
- groq
- next.js
- phaser-3
- pinecone
- python
- react
- sentence-transformers
- tailwind-css
- typescript
Log in or sign up for Devpost to join the conversation.