Logo Lanfrica

aayanahmed20/zariya

Domain:

natural language processing

Record type:

software
Creator:
aay
Host:
Offline-first AI assistant for Urdu and other low-resource languages, focused on privacy, accessibility, and culturally aware design. # Zariya Zariya is an offline-first AI assistant for Urdu and other low-resource languages. Once a model is downloaded, it runs entirely on your own device, so it works without an internet connection and doesn't depend on any cloud API to hold a conversation. ## Why this exists A lot of AI tools quietly assume two things: that you have a solid internet connection, and that your language already has good support baked into the model. Neither of those is true everywhere, and they're especially not true for a lot of Urdu speakers. I started Zariya to see how far a genuinely local, privacy-first AI system could go, and to make sure Urdu wasn't treated as an afterthought. ## Two versions in this repo The project has gone through two iterations, and both still work: - **`webapp/`** - the version I'm actively developing. A Flask backend with a browser front end. It talks to a local model through Ollama, streams responses back token by token, and falls back to a small offline knowledge engine (no dependencies, no network calls) if a model isn't available yet. Claude API access, web search, and GitHub sign-in are all optional and configured server-side, so nobody using the app ever has to hold an API key. - **the original Streamlit app** (`app/`, `core/`, `models/`) - a single-process version that loads a GGUF model directly with `llama.cpp`. Simpler to reason about, no server involved. If you're only going to run one, use the web app - see `webapp/README.md` for its full setup. ## Features - Works fully offline once a model is downloaded - Bilingual Urdu/English support - Local inference - no data leaves your machine unless you turn on an optional cloud feature yourself - Streaming, token-by-token responses in the web app - A small offline knowledge engine as a safety net when no model is loaded yet - Semantic fallback search over the knowledge base: when the fast keyword matcher comes up empty, the web app can optionally use a local Ollama embedding model to f …