← HomeРусская версия

Case study · Demo on synthetic data

MedRecall — patient conversation history with traceable answers

Before the next patient call, a clinician needs to know what changed and which follow-ups are still outstanding. MedRecall brings previous conversations together, answers questions across calls, and links cited information to the original transcript and recording.

My role
Product, architecture, backend/frontend, source traceability and delivery
Status
Live synthetic demo; separate closed pilot deployed and in clinician testing
Format
Web demo; separate pilot with a web interface, Telegram intake and an Android app for importing call recordings. Demo content is in Russian.

What gets lost between calls

MedRecall grew out of discovery with a practising physician. When following several patients over time, it is easy to lose track of promised materials, test results, follow-ups, the next contact and the clinician’s own actions. Phone conversations were the first priority: preserve the context and outstanding tasks for the next call.

The product is about professional memory across conversations, with a path back to the source. MedRecall does not diagnose, recommend treatment or give medical advice.

Public demo

A separate, completed prototype demonstrates the core idea with a fixed corpus of entirely synthetic conversations: a history across calls, questions about that history, and links to the original utterance and recording.

The visitor opens one of two synthetic patient histories, each with two consecutive calls. A timeline and opening summary provide context. Questions can cover the patient’s full history or a single call.

  1. FindSemantic retrieval selects passages within that history. The model produces an answer with source labels.
  2. VerifyA source link opens the exact transcript utterance in context and lets the visitor play the recording from its original timestamp.

Closed pilot

The concept is being developed as a separate product for the practitioner’s workflow, distinct from the public synthetic demo. The closed pilot is deployed, and the target clinician has started testing it independently on a Samsung phone.

In the current MVP, recordings enter through an Android app for importing call recordings from the phone or through Telegram, feeding a shared server processing pipeline. The Android app is focused on call-recording import, upload control, processing status and confirming which patient a recording belongs to, rather than duplicating the full workspace. Full work with speaker-labelled transcripts, proposed facts, follow-up tasks, patient history and source-linked Q&A stays in the web interface.

My role

My responsibility
Product framing, evaluating and choosing architectural decisions, building the public synthetic demo and the closed pilot (backend, web interface, Telegram intake and the Android app for importing call recordings), retrieval and source-verification UX, testing and releases.
External contributions
A practising physician supplied the problem and workflow context and is testing the pilot. AI coding agents propose implementation and technical options that I evaluate and review; AI models, speech recognition and libraries are third-party components.

Key product and engineering decisions

History across calls
Surface changes and outstanding follow-ups across conversations, rather than treating the latest call summary as the whole story.
Scope before retrieval
The selected patient and optional call boundary restrict admissible sources before ranking.
Server-resolved evidence
The model emits a local evidence marker. The backend resolves it to a specific utterance, source version and recording timestamp.
A synthetic public prototype
Demonstrate a sensitive professional workflow openly without publishing real patient conversations.

What is verified, and its limits

Tests cover scope isolation, source identity and version, and citation time bounds. Browser checks cover opening the original utterance and playing the recording from its timestamp. These checks establish source provenance; they do not prove that every cited utterance semantically supports every generated claim.

The demo corpus is small enough that the current retrieval limit effectively puts the whole selected history into model context. It demonstrates the source-verification experience, not retrieval quality at scale.

The pilot has passed automated and end-to-end checks across the web, Telegram and Android import flow, and the target clinician has begun independent testing on a Samsung device without admitting real medical data yet. Clinical effectiveness and time savings in practice have not yet been measured.

Current status

The public synthetic demo remains live at medrecall.inin.ceo. The separate closed pilot is deployed and in initial testing by the target clinician on a Samsung phone; the pilot contour includes the web interface, Telegram intake and an Android app for importing call recordings.

Technology

Public demo
Nuxt / Vue / TypeScript; Python / FastAPI / SSE; bge-m3 embeddings and a file-based index; LLM calls through OpenRouter; Docker Compose.
Separate pilot
Web interface, Telegram intake and an Android app for importing call recordings (Kotlin, Jetpack Compose); speech recognition; Python / FastAPI; PostgreSQL / pgvector for confirmed history, tasks and retrieval; LLM calls through OpenRouter.

Want to talk about work like this?

Email or Telegram — I am happy to walk through any of the decisions above.