How it works

Saathi would rather ask than guess

Every answer someone speaks gets up to four tries, cheapest first. A model only gets called on the third try. When nothing is sure enough even then, Saathi asks the question again instead of filling in something that merely sounds right.

One answer, four tries

Each try is more expensive than the one above it, so a field only reaches a model once nothing free could read it. Once a field is read confidently it is locked, and nobody is asked for it twice.

  1. 1

    Match it against a known list

    Districts, taluks, Bengaluru areas, whether to leave a parcel at the gate, before or after food. Saathi puts the words into Roman script first, so a Kannada or Hindi answer can be matched against the list.

    Freehow sure 0.95–0.99

  2. 2

    Read it with a rule

    Aadhaar numbers, mobile numbers, rupee amounts, dates, times, doses, flat numbers, cross and main. These are patterns, so a pattern reads them. No model is asked.

    Freehow sure 0.82–0.97

  3. 3

    Ask the model

    Whatever free text nothing else can read: a person's name, a village, a building, an occupation. One call handles every remaining field in the turn at once.

    Paidhow sure 0.80

  4. 4

    Ask the person again

    If the answer is still weak, Saathi says the field back in their language and asks once more. The correction is remembered, so the next time that word is heard it matches straight away.

    Freehow sure 1.00

Those four numbers are constants someone picked, not measurements from an experiment. What they encode is an order: a remembered correction outranks a list match, a list match outranks a model guess. Nothing more is claimed for them.

A real turn, field by field

A customer in Bengaluru says her address in one breath, in Kannada, to a delivery workflow. This is the transcript that comes back — numbers left as digits, which is what makes the rules in try 2 work at all.

ಇಂದಿರಾನಗರ, 12ನೇ ಮೈನ್ 5ನೇ ಕ್ರಾಸ್, ಶಾಂತಿ ನಿವಾಸ ಅಪಾರ್ಟ್ಮೆಂಟ್, ಫ್ಲಾಟ್ 302, 9845012345, ಗೇಟ್ ಹತ್ತಿರ ಇಡಿ

FieldWhat Saathi tookWhich try
AreaIndiranagar1 · known list
Cross and main12th Main, 5th Cross2 · rule
BuildingShanti Nivasa Apartment3 · model
Flat number3022 · rule
Their number98450123452 · rule
Hand over howLeave it at the gate1 · known list

Five of the six fields cost nothing. One call went to the model, for the one thing no rule could read: the name of the building. Which try handles which field is written into the workflow file, so each workflow decides for itself what is worth paying for.

When it is not sure, it leaves a blank

The sentence the delivery partner hears is a fixed template filled with checked values. It is never written by a model. If the flat number did not come through clearly, this is what goes out:

Everything came through

इंदिरानगर में Shanti Nivasa Apartment जाना है। 12th Main 5th Cross पर है। फ़्लैट नंबर 302। गेट पर छोड़ दीजिए।

The flat number was not clear

इंदिरानगर में Shanti Nivasa Apartment जाना है। 12th Main 5th Cross पर है। फ़्लैट नंबर —। गेट पर छोड़ दीजिए।

The blank gets counted and shown on screen, never smoothed over. A fluent sentence about the wrong flat is worse than an obvious hole in it: the delivery partner knows to ask about a hole, but has no way to doubt a confident wrong number.

The same reason an Aadhaar number is never a model call

An Aadhaar number carries its own check digit. Saathi does the arithmetic and gets a yes or a no. A model would give you a confident sentence instead, and a confident sentence is exactly the wrong output for a number that gets an application rejected three weeks later.

Corrections this device has learned

When Saathi hears a name wrong and the person corrects it, the pair is kept. Every later turn checks these first, before anything else.

heard as → written as0

The Sarvam models doing the work

Four of them, each doing one job. Remove any one and a specific part of the cascade stops working. The API key stays on the server; no credential reaches the browser.

What we did not build

Stated before anyone has to find it.

See every workflow →