Sentinia is an adversarially-audited privacy delegation layer for cloud LLM inference. It runs entirely on the user's machine, sits between any chat client and any cloud LLM API, and controls what crosses the wire.
EDI semester project · 4-person team · VIT Pune · 2026
This documentation is continuously updated. The project is under active research and development; architecture decisions, thresholds, model choices and schedules change as we learn. Treat every page here as current best knowledge, not as frozen truth.
Rules for everyone (humans and AI coding assistants):
- If you change behaviour, update the doc in the same Pull Request.
- If a doc contradicts the code, the doc is a bug — fix it or raise an Issue.
- Significant design changes require an ADR in
docs/architecture/adr/. - Each page carries a Last updated and Status marker. Keep them honest.
New to the project? Read in this order:
project/00-overview.md— what we're building, in 5 minutesproject/01-problem-statement.md— why this problem is hardproject/02-solution.md— how Sentinia solves itproject/03-glossary.md— every term you'll see in the codearchitecture/00-high-level.md— the planes and lanesteam/00-onboarding.md— your first week
About to write code? Read engineering/00-project-structure.md,
engineering/01-modular-architecture.md, and
engineering/03-safety-invariants.md — in that order. The last one is
non-negotiable.
| Folder | Contains |
|---|---|
project/ |
Problem, solution, scope, glossary, status, roadmap |
architecture/ |
High-level design, low-level per-plane design, request lifecycle, ADRs |
engineering/ |
Project structure, modular architecture rules, git workflow, safety invariants, testing, config |
fastapi/ |
The proxy layer: OpenAI-compatible API, streaming, sessions |
ml/ |
Local model host, router training, probes, sweep, red-team |
storage/ |
Vault, ledger, encrypted SQLite schema |
research/ |
Threat model, related work, evaluation plan, publication strategy |
team/ |
Onboarding, ownership map, learning path |
| Language / runtime | Python 3.11 |
| Proxy | FastAPI (OpenAI-compatible, POST /v1/chat/completions) |
| Orchestration | LangGraph StateGraph[TurnContext] |
| Local LLM | Qwen2.5-3B-Instruct Q4_K_M on llama.cpp server |
| Router | DeBERTa-v3-small (ONNX int8, CPU) + GLiNER-medium (GPU) + regex |
| Storage | SQLite + SQLCipher, keys in OS keyring |
| Hardware target | RTX 3050 6GB (~3.6 GB resident) |
| Novel core | MCQ logprob probes (verification-asymmetry auditing) |
Last updated: 2026-07 · Status: living document