Loading...
Loading...
Case study · Audient AIDelivered
A live medical transcription platform. One microphone, two speakers: the conversation becomes a structured clinical record in real time, then a branded PDF the clinician approves and locks.

The challenge
Clinicians lose a large share of their day to writing notes. Audient listens to the consultation and drafts the record as it happens, leaving the clinician to review instead of type.
What made it hard
A single microphone stream has to be attributed to doctor or patient, turn by turn, without asking anyone to label it.
Notes only help if they form during the visit, so transcription and extraction must run incrementally, not as a batch job afterwards.
Free text is not a record. Every field must be structured, validated and gated behind a clinician sign-off.
The approach
Audio is chunked in the browser and pushed over a WebSocket. Whisper transcribes each chunk, an LLM attributes speakers and maintains a structured extraction of seven clinical fields, and the client re-renders as state changes. Approval is a hard state transition: once signed, the record is immutable and rendered to templated PDFs.
System map
How it works
The browser sends short audio chunks over a socket while the conversation is still going.
Speech is transcribed every few seconds, so the transcript grows in front of the user.
A language model works out who is the doctor and who is the patient.
Seven clinical fields are pulled out and kept up to date as more is said.
Anything missing is surfaced while there is still time to ask.
The clinician approves and the record locks. Clinic templates turn it into a clinical PDF and a plain-language patient summary.
Analytics show sessions, outcomes and languages; admins manage clinicians and access.
Key decisions
Seeing the record form live builds trust and lets the clinician correct course mid-visit.
Each job gets the cheapest model that does it well, which keeps latency low.
The system drafts. It never files a record on its own.
What shipped
Chunked audio over Socket.IO, transcribed every few seconds with Whisper.
An LLM pass separates doctor and patient turns from a single stream.
Seven clinical fields extracted and incrementally updated as context grows.
Missing required fields surface live, while the clinician can still ask.
Approval locks the record and renders clinical and patient-facing PDFs.
Session, language and outcome analytics, with role-based clinician access.
Architecture
Every layer, from what people touch down to where it runs, and the one job each layer does.
L1Interface
React+TypeScript
Live transcript and record view, re-rendered on every server event.
L2Real-time
Socket.IO
Bidirectional channel for audio chunks in and extraction state out.
L3Services
Flask
Session orchestration, template rendering and the approval state machine.
L4Intelligence
Whisper+Llama
Speech-to-text, then speaker attribution and structured field extraction.
L5Data
PostgreSQL
Sessions, records, templates and audit of every approval.
L6Infrastructure
Docker+AWS
Containerised services deployed to managed cloud infrastructure.
Our scope
Product design/Speech AI pipeline/LLM extraction/Real-time backend/Web application/Cloud deployment
Where it is now
Audient runs in production. Clinicians review instead of type, and nothing reaches the record without an explicit, logged approval.
Keep exploring
Up next · Finance & Trading
What made it hard
system map · hover for the productTell us the problem. We will tell you honestly if we are the right team to solve it.