SarvajñaGPT — Private, Agentic AI for Everyday Learning
SarvajñaGPT is an offline‑first, agentic AI that runs on your PC. It orchestrates specialized assistants (Research Assistant, Beginner‑Friendly Teacher, Homework Helper, Daily Life Companion) with a Memory Manager and local multi‑model control via Ollama—so you get focused help while your data stays on your machine.
Why this matters for education
- Personalized learning
- Students get step‑by‑step explanations, breakdowns, and examples tailored to their level, without exposing their data to the cloud.
- Retrieval‑augmented answers from your own notes
- Tag and organize your class notes, PDFs, and images. The app fetches just‑in‑time context from your tagged knowledge so responses are grounded.
- Better study workflows on Windows
- Side‑by‑side layouts for Word/VS Code/Browser, selection‑aware enhancements (e.g., “explain this paragraph more clearly”), and a clean chat UI that renders math and code nicely.
- Inclusive learning
- Built‑in translation and TTS help language learners and younger students, and create multiple representations of the same idea.
Privacy and security: local first by design
- Fully local by default
- Models run via Ollama on your machine; no text is sent to a cloud LLM unless you explicitly choose to.
- Data never leaves your device
- Your notes, chats, tags, and documents are stored locally. Clipboard‑first flows for Word changes keep control with you—no intrusive automation.
- Transparent operations
- Clear logs and deterministic behaviors; you can inspect prompts, responses, and file operations in your own environment.
- Minimal permissions
- No background services that phone home, no analytics by default; opt‑in only.
What inspired this project
I wanted the power of agentic AI—planning, tools, memory—without the privacy trade‑offs of typical web UIs. Students and professionals deserve:
- Reliable local workflows (code, documents, research)
- Fast iteration without vendor lock‑in
- Trust that sensitive notes and drafts stay private
How I built it
- Frontend: Vue 3 + Vite
- Responsive chat + agent views, tag chips, attachment previews, mobile‑friendly input.
- Power Mode panel for selection monitoring and clipboard‑first enhancements.
- Backend: FastAPI
- Local inference bridge to Ollama (HTTP); model selection persisted to disk.
- Endpoints for translation, document processing, and selection‑aware enhancement.
- Automation UX (Windows‑first)
- A pragmatic approach to desktop assistance: reliable split layouts, clipboard‑first Word enhancements (user performs final paste to preserve formatting), optional CUA integration.
- Memory Manager + retrieval
- Tag‑aware context assembly from local SQLite/embeddings. Folder‑level tags take precedence, promoting a tidy mental model.
Educational impact (examples)
- Homework Helper breaks down multi‑step problems with hints before solutions.
- Beginner‑Friendly Teacher rewrites dense passages into simpler language and adds scaffolding.
- Translator enforces native scripts and translation‑only outputs for clarity.
- Research Assistant composes answers that cite your notes and files, keeping study sessions grounded.
Challenges I faced
- Window focus and split heuristics on Windows
- Maintaining stable tri‑split layouts (chat + editor + preview) and preventing focus flicker.
- Translation hallucinations
- Models sometimes return explanations; we hardened prompts and added careful cleanup to ensure translation‑only outputs.
- Document editing without breaking formatting
- Full‑document paste can trash styles; we shifted to snippet‑only clipboard replacements.
How it benefits teachers, students, and institutions
- Teachers
- Generate differentiated materials, glossaries, and examples quickly—entirely offline on school hardware.
- Students
- Keep notes private, study with targeted retrieval, and translate concepts without surveillance.
- Institutions
- Deploy a local, privacy‑respecting assistant without data egress risks or ongoing per‑seat cloud costs.
Built With
- comtypes
- coqui-tts
- cua
- eslint
- fastapi
- gtts
- javascript
- lingua-language-detector
- node.js
- npm
- ollama
- ollama-(local-llm
- openpyxl
- pdf2image
- pdfminer.six
- pdfplumber
- pillow
- pydantic
- pymupdf
- pypdf2
- pypdfium2
- python-3.11
- python-docx
- python-pptx
- pytorch
- pywin32
- requests
- rest-api)
- sentence-transformers
- soundfile
- sqlite
- tailwind-css
- tesseract-ocr-(pytesseract)
- uvicorn
- vite-(esbuild/rollup)
- vue-3
Log in or sign up for Devpost to join the conversation.