Dhara

How Dhara works

What Dhara reads, how it finds what you need, and how every answer is checked before you see it.

What it reads

Four public sources, read once and joined into one library.

NCRB Sankalan portal

The new codes

0 sections

BNS, BNSS and BSA, with NCRB’s marking of what changed and the commencement dates from the Gazette.

Becomes each section split into sub-sections, provisos, explanations and illustrations.

India Code

The old codes

0 sections

IPC, CrPC and the Indian Evidence Act, as last amended before 1 July 2024.

Becomes split the same way, so old and new can be compared part by part.

NCRB

The correspondence tables

Which old section became which new one.

Becomes each link labelled by what happened to the section.

Dattam Labs dataset, CC-BY-4.0

Supreme Court judgments

From 1950 onwards, headnotes and full text.

Becomes split into passages, with every section reference linked to the statute.

Compared with what exists

Government portals hold the text and the tables. Court search holds the judgments. Chatbots answer but don’t check. Dhara joins all three and checks every citation.

  • Official text of the new codes, with the section each one replaced

    Government portals
    Yes

    NCRB Sankalan

    Court judgment search
    No
    General AI chatbots
    Partly

    From memory, unchecked

    Dhara
    Yes

    Both, linked part by part

  • Judgments on IPC 302 when you ask about BNS 103

    Government portals
    No

    Statutes only

    Court judgment search
    Partly

    Only if you type the old number

    General AI chatbots
    No

    No judgment corpus

    Dhara
    Yes

    Searches both numberings at once

  • Ask in plain words, get an answer

    Government portals
    No

    Look up by section or keyword

    Court judgment search
    No

    Party, date or keyword

    General AI chatbots
    Yes
    Dhara
    Yes
  • Every statement tied to a passage you can read

    Government portals
    No
    Court judgment search
    No
    General AI chatbots
    No

    Citations are not checked

    Dhara
    Yes

    Unsupported statements removed

  • The law as it stood on a given date

    Government portals
    Partly

    Commencement notes

    Court judgment search
    No
    General AI chatbots
    No
    Dhara
    Yes

    Old code before 1 July 2024, new after

  • Accuracy measured on held-out questions

    Government portals
    No
    Court judgment search
    No
    General AI chatbots
    No
    Dhara
    Yes

    Published on the Method page

How a question is answered

One question, followed through every step.

  1. 1

    Your question

    Can the High Court quash a case under BNS 316 once the parties settle?

  2. 2

    Both numberings

    Section numbers are read and joined to their counterparts in the other code, using the official tables.

    BNS 316replacesIPC 405 to 409

    Only 2 judgments in the library cite BNS 316. 592 cite the IPC sections it replaced. Searching the new number alone would miss nearly all of them.

  3. 3

    Four searches at once

    Each finds a hundred candidates its own way.

    Keyword search

    Exact words, case names and legal terms. Section numbers are set aside here, so they cannot drown out the words.

    BM25

    Citation graph

    Judgments that cite the sections you named, under either numbering.

    Section references

    Meaning search

    The same idea put in different words.

    bge-m3, dense

    Weighted terms

    Rare, telling words, weighted by a learned model.

    bge-m3, sparse

  4. 4

    Merge and re-rank

    The four lists are merged by rank. A cross-encoder fine-tuned on Indian criminal judgments then re-reads the top 50 judgment passages next to your question and puts them in order; on held-out questions it finds the right judgment in the top 10 more often than any search alone. The same model checks that the question is about criminal law at all. The best 8 sections and 12 judgments go forward.

    Reciprocal rank fusionFine-tuned cross-encoderOut-of-scope check
  5. 5

    A second look

    If something is missing, such as the procedural provision that goes with an offence, Dhara runs up to two more searches. Here it would look for the High Court’s inherent powers, BNSS 528, once CrPC 482. Each extra search is shown to you.

  6. 6

    The answer

    Written only from the passages retrieved. Every statement cites one, and judgments are named with their year and citation.

    Short answer firstSection and judgment cited per statement
  7. 7

    Every citation checked

    • The passage was really retrieved
    • The section exists
    • It was in force on the date

    A citation that fails is removed. When the sources are too weak to answer, Dhara says so instead of guessing.