Inspiration

I live in a co-operative housing society in Thane and help with our society's letters and notices. The same situations keep coming up in societies like ours: a bathroom leaks into the flat below and both families argue about who pays, a tenant moves in and nobody is sure what the society may charge, a member falls months behind on maintenance and someone calculates interest in Excel. Committee members are volunteers with day jobs, not lawyers. They answer from memory, and when they get it wrong it turns into WhatsApp fights, complaints to the Registrar, sometimes court.

Maharashtra alone has over a lakh housing societies run like this. I wanted to give every one of those committees a co-secretary who actually knows the rules.

What it does

SocietyMitra ("mitra" means friend) is an AI co-secretary for housing societies:

  • Ask any rule question — "Water is leaking from B-301's bathroom into B-201. Who pays?" — and get a verdict, the reasons, and what the committee should do next, with every claim cited to the rulebook [K1] or to a live web source [W1].
  • Grounding check — a second model independently checks the answer against the sources and flags anything unsupported, right in the UI.
  • Complaint desk — complaints are classified (leakage, parking, noise, pets…), given an urgency, a responsibility ruling and a draft written reply, and logged on a board.
  • Exact dues — arrears and simple interest (capped at the 21% bye-law limit) are calculated in code. The model explains the numbers but never makes them up.
  • Notices in 3 languages — formal circulars plus a short WhatsApp version, in English, मराठी or हिन्दी.
  • Society memory — "Remember: AGM approved lift replacement, ₹6.5 lakh" is used in every later answer.
  • Your own bye-laws — upload your society's bye-laws and answers become specific to your society.
  • "How Mitra thought" panel — shows every step, which Nemotron model ran it, the time taken and tokens used.

How we built it

Everything runs on Nebius Token Factory, using three NVIDIA Nemotron models through the OpenAI-compatible API, each for the job it's best at:

Step Model Why
Intent triage (JSON) Nemotron 3 Nano runs on every message, must be fast and cheap
Rulings & dispute resolution Nemotron 3 Ultra legal-style reasoning across several sources
Notices, WhatsApp, dues explanations Nemotron 3 Super good writing at low latency
Complaint classification, grounding check Nemotron 3 Nano short structured outputs

The flow: Nano reads the message and decides the intent → a BM25 retriever pulls the matching rulebook sections → if the rulebook isn't enough, Tavily searches for current laws, government resolutions and court rulings → Ultra (or Super for drafting) writes the answer with citations → Nano checks it against the sources. Money is handled by plain Python over a SQLite ledger, so totals are always exact.

The backend is FastAPI, the frontend is a single HTML page with no build step, and model IDs are discovered from /v1/models at startup so the app keeps working if a model is renamed. It ships as a Docker image.

Challenges we ran into

  • Not sounding confident when it shouldn't. Housing-law answers have real consequences, so every claim must carry a citation, and a separate Nano pass checks the answer against the sources and flags anything unsupported.
  • Numbers. LLMs are unreliable at arithmetic, so all money maths (arrears, day-count interest, the 21% cap) lives in Python; the model is told the ledger is exact and only explains it.
  • Right model per step without slowing the app. Triage, classification and checks go to Nano, so there is only one Ultra call per question.
  • Writing a rulebook in plain language without inventing section numbers — and falling back to live Tavily search when the rulebook doesn't cover a question.

Accomplishments that we're proud of

  • Answers a committee can forward to members, with sources attached.
  • Notices and replies in Marathi and Hindi, not just English.
  • A transparent trace that shows exactly how three Nemotron models work together on one question.

What we learned

  • Small models make good judges: a Nano grounding check is cheap enough to run on every answer.
  • For real users, "show your sources" matters more than "sound smart".
  • Token Factory makes multi-model routing simple — same API, same key, a different model name per step.

What's next for SocietyMitra

  • WhatsApp bot so members can ask directly from the society group
  • OCR for scanned bye-laws and maintenance bills
  • Rulebooks for other states (Karnataka, Gujarat, Delhi)
  • Deploying on Nebius Serverless Endpoints with a background job for monthly dues reminders

Built With

Share this project:

Updates

Submission history