
Vaani now spans 105 languages. Most models ignore it.
Vaani now spans 105 languages. Most models ignore it.
When Hugging Face and the Indian Institute of Science announced their Vaani partnership in February 2025, the headline number was modest: a transcribed subset of roughly 790 hours covering about 54 languages. Less than two years later, the dataset card tells a very different story. Vaani now lists roughly 31,278 hours of spontaneous, image-prompted speech from 156,000 speakers across 165 districts, covering 105 languages, with 2,122 hours already transcribed.
That growth is the interesting part. It is also the part that most speech-model teams have not caught up with. For anyone building multilingual ASR, TTS, or voice agents, Vaani is now one of the largest openly licensed speech corpora in the world, and it is sitting in a repository that many developers never open.
What Vaani actually is
Project Vaani was launched in 2022 by IISc and ARTPARK together with Google, with an unusually explicit goal: capture the languages and dialects that mainstream datasets skip. Rather than recording a few well-resourced languages in a studio, the project sends collectors into districts and records spontaneous speech prompted by images. The ambition is to reach 150,000 hours of speech and 15,000 hours of transcribed text from about one million people across all 773 districts of India.
The dataset is released in phases. Phase 1 covered 80 districts and is open-sourced. Phase 2 added another 85, bringing the current total to 165 districts. The data is funded by Google and is also distributed through Bhashini, the Indian government's National Language Translation Mission platform run under MeitY.
The numbers grew fast
The gap between the 2025 announcement and the current card is worth staring at. In February 2025, the open-sourced portion covered about 54 languages with a 790-hour transcribed subset. Today the card reports 105 languages, 288,000 images, and 2,122 transcribed hours spread almost evenly across the 165 districts.
That near-even spread is deliberate. Most speech datasets are long-tailed: a handful of languages get hundreds of hours and the rest get minutes. Vaani's district-level distribution shows the opposite shape. Bengali districts carry 180 to 200 hours while Chakma, Garo, or Wancho recordings sit in the same table with comparable audio durations. The transcribed hours are smaller, but they are distributed across the same long list of district languages, which is what makes the set useful for genuinely multilingual models rather than a Hindi-plus-extras benchmark.
Why 105 languages is harder than 105 uploads
Reading the district table is a lesson in why multilingual speech is hard. A single district entry often lists five to fifteen language labels for the same collected audio: Hindi alongside Bhojpuri, Magahi, Maithili, Angika, and Urdu in one Bihar district; Telugu, English, and Hindi layered on top of each other in a Telugu-majority district. These are not separate datasets. They are code-switching communities, and the dataset tags them as such.
That matters because a model trained naively on label-per-file data will learn the wrong thing. If a file is tagged "Hindi" but contains 30 seconds of Bhojpuri with Hindi scaffolding, a monolingual model picks up noise, and a language-identification model learns a boundary that does not exist in speech. Vaani's transcription tagging is explicitly designed to support code-switching ASR for Indic-plus-English, which is the actual usage pattern on the ground.
Loading it in code
The practical catch is that Vaani is gated. The repository is publicly visible, but you must accept the dataset's terms and share contact information before you can pull files. That is not a blocker, but it does mean a script that just calls the loader will fail on a fresh machine until the account has accepted the conditions.
The honest way to load it is to ask the Hub what configurations exist instead of guessing:
from datasets import get_dataset_config_names, get_dataset_split_names, load_dataset
repo = "ARTPARK-IISc/Vaani"
# Inspect what the maintainers actually published instead of assuming names.
configs = get_dataset_config_names(repo)
print("configs:", configs)
for cfg in configs[:3]:
print(cfg, get_dataset_split_names(repo, cfg))
# Requires the account to have accepted the dataset terms first.
ds = load_dataset(repo, configs[0], split="train", streaming=True)
for row in ds.take(2):
print({k: (type(v).__name__) for k, v in row.items()})
Streaming matters here. A 31,000-hour corpus will not fit comfortably on a laptop, and you rarely need the whole thing to fine-tune a tokenizer or run an initial ASR experiment. Pull a shard, look at the columns, and only then decide whether to download.
What builders should take from this
Three things are worth carrying into any multilingual speech project.
First, verify the version. The dataset changed substantially between the 2025 announcement and the current card, so a benchmark result from early 2025 is not comparable to one measured today. Cite the card, not the blog post.
Second, treat code-switching as the default, not an edge case. If your pipeline assumes one language per audio file, it is already wrong for most of the world's speakers.
Third, close the gap between availability and usage. Vaani is one of the largest open speech corpora anywhere, and it is under-linked because it is gated and its language mix is unfamiliar to teams used to LibriSpeech-style data. Reproducing a baseline on it, even a small one, is a more useful contribution to Indic speech tooling than another English fine-tune.
For teams working on tokenizers and model plumbing, the same friction shows up in other open releases, which is why the details of how a corpus is packaged matter as much as its size. If you want a sense of how Conformer-style fine-tuning builds on this kind of data, our earlier write-up on ggml and llama.cpp joining Hugging Face is a useful companion, and the tokenizer trade-offs are covered in the GigaToken deep dive.
Sources
- Hugging Face: HuggingFace, IISc partner to supercharge model building on India's diverse languages
- Hugging Face: ARTPARK-IISc/Vaani dataset card
- IISc / ARTPARK: Project Vaani
// author
Editor & Operator
Mohd Firdaus Abu Bakar (MrDodgerX) is an enterprise geospatial systems engineer in Malaysia and the editor behind hejes.my. He runs the briefing pipeline, curates and edits every draft, verifies each factual claim against primary sources, and presses the publish button — nothing ships without his review. He writes about AI, security and Malaysia's tech scene from a builder's perspective. Professional profile and code: the links below.
// sources //
fact-check verified · 15 OCT 2026 · hejes-content-fact-check
- HuggingFace, IISc partner to supercharge model building on India's diverse languagesHugging Face · accessed 15 OCT 2026
- ARTPARK-IISc/Vaani dataset cardHugging Face · accessed 15 OCT 2026
- Project VaaniIISc / ARTPARK · accessed 15 OCT 2026
related //

research.google is a toolbox, not a blog
Google Research publishes 400+ papers a year, yet the same page hands out free models, datasets and APIs most developers never open. Here is what you can build.

EnvHarness: Turning Static Benchmarks Into Adaptive Worlds
Google's EnvHarness wraps a frozen agent benchmark in plug-in components so it adapts to the policy training on it, mining up to 9 points on held-out tasks.

Wherobots is turning spatial data into a cloud primitive
Built by the creators of Apache Sedona, Wherobots sells planetary-scale spatial compute in the cloud. Here is what spatial SQL is and what you can build.
// join the feed
one fresh insight per week. no spam, ever.
weekly digest. unsubscribe anytime.