Skip to content
Back to work

AI & Automation · Healthcare

Drug Competitor Identification

A brand-intelligence tool that asks a language model who a drug competes with, then checks the answer against regulatory reference data before anyone is asked to trust it.

Role
Product Owner & Solution Architect
Built on
LangGraph, Gemini with search grounding, BigQuery
Industry
Healthcare
Project type
AI & Automation
Primary service
AI & Automation
Scope
Product ownership, solution architecture, retrieval and verification design, analyst experience, delivery.

Repository not shown as per company policy

  • 0k

    regulatory reference records every candidate is scored against

  • 0

    curated competitor relationships in the internal ground-truth list

  • 0

    workflow nodes, strictly linear: any error stops the run

  • ≥0

    points required before a candidate counts as verified

01Challenge

Knowing who really competes is a judgment call, not a lookup.

Telling two products genuinely compete, rather than that their names sound alike, takes knowing active ingredient, therapeutic class, route, dosage form and regulatory pathway well enough to say so with confidence. Doing that by hand, per product, across a portfolio, does not scale.

  • Manual, inconsistent research

    Without a standard process, two analysts researching the same drug can land on two different competitor lists, based on general web research and personal judgment.

  • Disconnected sources of truth

    Authoritative pharmacological facts live in regulatory data. Hard-won competitive knowledge lives in a separate internal list. Nothing reconciled the two automatically.

  • No fast, repeatable entry point

    There was no single place to type a drug name and immediately see what the web thinks the competitors are, and whether that matches what is already on file.

02Approach

Separate recall from trust.

  • Let the model do what it is good at

    Search-grounded generation is excellent at proposing candidates from the open web. That is where it is used, and only there.

  • Let a rubric decide

    Verification is a scoring function against regulatory facts, so the same drug returns the same result whoever runs it and whenever they run it.

  • Never drop the uncertain ones

    Candidates that fail verification stay on screen, flagged. Hiding them would quietly destroy information the analyst may need.

03Outcome

Type a drug name, get a competitor list you can defend.

Sourced from live web search, checked against regulatory data, and reconciled with the organization’s own competitive-intelligence database, with every unverified candidate still visible rather than quietly dropped.

  • Recall from the model

    A search-grounded model proposes plausible competitors from everything on the web. It names candidates; it never decides.

  • Trust from a rubric

    An explainable point system scores each candidate against the seed drug’s regulatory facts. Same rules, same answer, every time.

  • Final say from a person

    The analyst adds or removes competitors with one click, and that edit updates the ground-truth list live.

What changed

  • A competitor list is produced from a single drug name, with the evidence behind each verification visible on screen.
  • The same drug scored twice returns the same result, because the decision rubric is fixed rather than left to the model.
  • Analyst corrections update the organization’s ground-truth list directly, so curation and research happen in one place.

How it works

Five parts, one pipeline.

A single-page application, a proxy that handles authentication, a backend running the analysis workflow, a search-grounded model for research, and a warehouse holding both regulatory facts and the organization’s own ground truth.

workflow startstypes a drug nameverified results returnReact SPASearch box, results table,verification statsNode / Express proxyMints an IAP identitytoken, forwards the callFastAPI backendBehind Google IAP,orchestrates the workflowBigQuery · OpenFDA133,699 reference records,the ground truthGemini APIGoogle Search grounding,proposes, never decidesAnalyst / reviewerReads the dashboard, addsor removes with one clickBigQuery · internal list912 curated products,editable live from the UILangGraph analysis workflowThree nodes, strictly linear — any error stops the run1 Seed lookupFind the drug in OpenFDA, or stop2 Web searchGemini proposes candidate names3 Verify & aggregateScore every candidate against the seedVerification rubricPass at a score of 2 or more

From a drug name to a defensible list.

01 / 06

Illustrative recreation of the results view.

Inside the system

What it is made of, and what keeps it safe.

What it does.

  • Search-grounded model proposes candidates but never decides which ones count
  • Explainable point-based rubric scored against regulatory reference data
  • Unverified candidates stay visible and flagged rather than being dropped
  • Analyst edits write straight back to the organization’s ground-truth list
  • Strictly linear workflow where any error stops the run rather than degrading silently
  • Reconciliation between public regulatory facts and internal competitive intelligence

Built with

What it runs on.

Frontend
ReactViteReact RouterMUITailwind CSSreact-hook-form
Proxy and backend
Node.jsExpressPythonFastAPIPydanticUvicorn
AI and data
LangGraphGeminiSearch groundingBigQuerySecret Manager
Operations
DockerIdentity-Aware Proxypandas

Roadmap

Grouped the way a product owner would prioritize it.

Trust and data quality first, then efficiency, then experience, then operations.

Trust and data quality

  • Audit log for analyst actions
  • On-demand refresh alongside the scheduled refresh of the reference table
  • Revisit the scoring rubric with real analyst feedback

Efficiency and cost

  • Cache analyze results per drug name for a sensible time to live
  • Rate alerting, given each call triggers a paid model request

Product and operations

  • Show why each candidate counts, highlighting the matching attributes beside the result
  • Clearer empty and error states
  • Tighten network policy if the backend is ever exposed outside the proxy path

The model gets to suggest. The rubric gets to verify. The analyst gets to decide.

More work

Related projects.

AI & AutomationHealthcare

Autonomous AI Log Monitoring & Observability Platform

For a healthcare media and clinician engagement platform, a five-agent system that reads a production error, writes the fix and opens a reviewed pull request, with an engineer still deciding what ships.

AI & AutomationHealthcare

AI Agents Platform

Seven agents that turn one upload into a recorded, print-ready batch of personalized posters, with a reviewer approving anything that carries commercial risk.

AI & AutomationTechnology & SaaS

Customer Churn Prediction Model

For a subscription software business, a churn model that flags drifting accounts early enough for the customer success team to act, with the reasons behind every score.

Discuss a similar project.

If something here is close to what you need, tell us about your situation and we will walk you through how we would approach it.

Intelligence → Innovation → Automation → Growth