Skip to content

Latest commit

 

History

History
28 lines (21 loc) · 2.03 KB

File metadata and controls

28 lines (21 loc) · 2.03 KB

What This Is Not

Read this before assuming capability this repo does not have — this boundary is the entire reason this repo is safe to publish.


1. This repo is NOT a speaker diarization tool

Determining who is speaking from raw audio is an inherently probabilistic, ML/signal-processing problem. This repo consumes transcripts that have ALREADY been diarized by an upstream ASR/diarization engine (in WebVTT, SRT, or generic JSON format) and performs purely deterministic, rule-based post-structuring on top. It does not touch audio files or waveform signals.

2. This repo does NOT use AI/LLMs anywhere

There are zero LLM API calls, zero semantic prompt structures, zero content-based role inferences, and zero AI summarization heuristics anywhere in this codebase. Role tags (e.g. clinician vs. patient) are assigned ONLY when the caller explicitly provides a speaker ID mapping (roleMap). If no mapping is supplied, the role property strictly remains null.

3. Why this boundary matters

Clinical conversation transcripts sit close to proprietary AI scribe differentiation. Keeping this repository strictly deterministic, mechanical, and rule-based ensures it serves as an open, reliable, and reusable data normalization library without leaking proprietary clinical logic or clinical inference.

Summary Comparison

Capability Supported in transcript-parser Handled Upstream / Downstream
Audio-to-text Transcription ❌ No Upstream ASR
Speaker Diarization from Audio ❌ No Upstream Diarization Engine
WebVTT / SRT / JSON Parsing ✅ Yes In-Library
Speaker Label Standardization ✅ Yes In-Library
Utterance Merging by Time Threshold ✅ Yes In-Library
Conversation Metadata Computation ✅ Yes In-Library
Caller-Supplied Explicit Role Hints ✅ Yes In-Library
Content-Based Semantic Role Inference ❌ Strictly No Downstream Proprietary Pipeline
Clinical Note / SOAP Summarization ❌ No Downstream (soap-schema, etc.)