LIPI by Bibha AI — Linguistic Intelligence for Precise Inscription — is Bibha’s self-hosted speech-to-text (STT) model family. LIPI transcribes captures and dictation in Voice Studio and hears every turn of a live voice agent call, running entirely on your organization’s own GPU infrastructure: no audio ever leaves for an external transcription provider.

The LIPI family

Four models are served. One of them — LIPI-Fast — decodes incrementally while the caller is still speaking; the other three decode a finished recording in one pass.
LIPI-Live is a batch model today. Its checkpoint is a streaming ASR and the name reflects that lineage, but PeachDesk drives it one recording at a time, so a request waits for the whole utterance to be decoded. lipi-fast is the only model in this family that returns partial transcripts as audio arrives. If a future release wires LIPI-Live to a streaming route, its streaming flag in GET /models/status is what will say so.

Choosing one

  • Recordings, uploads, dictation, the API — pass lipi, lipi-bharat or lipi-live on any transcription request. lipi is the default when you omit the field.
  • Live agent calls — nothing to choose. The engine transcribes live turns with LIPI-Fast when its weights are present and falls back to LIPI otherwise; lipi-fast is what readiness and model-status responses call that runtime, not a value you send.
  • Indian languages — prefer lipi-bharat when the audio is in one of the languages on its list; it is the only model here that covers Maithili, Bhojpuri, Magahi, Chhattisgarhi, Angika, Bajjika, Bundeli, Kumaoni, Shekhawati, Garo and Mizo.
The LIPI-Bharat language list is measured, not administrative. It used to be “India’s 22 scheduled languages plus English”, which promised languages the model transcribes badly or not at all and withheld regional languages it transcribes better than most of what it offered. A language is now listed only where its measured streaming word-error rate is under 45% and it has a standard ISO language code. That removed Urdu, Kashmiri, Santali, Konkani, Sanskrit, Manipuri, Bodo, Dogri and Sindhi, and added ten regional languages — Bhojpuri, Magahi, Chhattisgarhi, Angika, Bajjika, Bundeli, Kumaoni, Shekhawati, Garo and Mizo. The model auto-detects the spoken language, so a shorter list narrows what the pickers offer and what a saved configuration may name — it does not change how any audio is decoded.
Every served model is listed by GET /models/status, with its languages, streaming flag and latency_band — that response, not this page, is the machine-readable source of truth.
The capture and settings routes still accept the legacy size keys (base, small, medium, large) so configurations saved before the catalog was consolidated keep loading. Those weights are no longer served; a request naming one is transcribed with LIPI.

Capabilities

  • Multilingual transcription — automatic language detection, or pin a language so short utterances are never mis-detected. LIPI and LIPI-Fast accept 100 language codes; LIPI-Bharat and LIPI-Live claim narrower, verified sets.
  • Live-call turns — LIPI-Fast delivers the low-latency transcription that makes real-time voice agents responsive, with automatic fallback to LIPI.
  • Quality/speed control — Fast / Balanced / Accurate presets map to decoder beam sizes on the capture routes.
  • Bias vocabulary — nudge the decoder toward domain terms, product names, and acronyms.
  • Translation — a task=translate mode is plumbed end to end, but the currently served checkpoint was distilled without translation data, so X→English output is unreliable and often just transcribes in the source language. Transcribe first and translate downstream if you need it.
  • Self-hosted — served from your organization’s own GPU plane, metered per organization, with no external transcription provider in the path.

Using LIPI

Transcription runs through the Captures & Transcription API and the OpenAI-compatible POST /v1/audio/transcriptions route; live calls use it automatically. Omit the model field to get lipi, or name the model you want.
Model identifiers used before the catalog was consolidated are still accepted and resolve to LIPI, so existing saved agent configurations and capture settings keep working unchanged. Use lipi for new integrations — it is the value the API returns.