Smarter Smart Formatting: Improved Streaming Finalization and Entity Recognition
We've made some improvements to Smart Formatting, enhancing both streaming finalization behavior and entity recognition performance.
Streaming Finalization Improvements
Previously, when formatting entities like dates or credit card numbers, our models would sometimes wait for additional words before finalizing the transcript—particularly if the entity seemed incomplete. For example, when someone said "nineteen seventy…" Deepgram might pause, expecting a possible follow-up like "nine" or other additional speech before finalizing the complete year.
Now, instead of potentially waiting indefinitely for additional words, our system will finalize the transcript after 3 seconds of silence, and attempt to format the entity based on the available audio. This helps ensure transcripts are returned faster and more reliably—without sacrificing too much formatting precision.
Want more control over the finalization behavior? You have two options:
Implement logic to send a Finalize message earlier than the 3-second threshold. Reference our Finalize documentation here.
Set no_delay=true to override formatting and force immediate finalization. NOTE: This will result in skipping formatting altogether in many cases.
Enhanced Entity Formatting
In addition to the timeout improvements, we've refined our Named Entity Recognition model for Smart Formatting to better identify and format:
Date variations
Alphanumerics (order numbers, membership IDs, prescription numbers, etc.)
Currencies
Payment and card information
SSNs
Time zones
This update is automatically applied to all streaming transcription using Smart Formatting, and is included in our Self-Hosted March 2025 Release (250331). For more details, check out our Smart Formatting documentation.