LLM Hub is an open-source Android application that brings the power of Large Language Models and AI image generation directly to your mobile device. Experience AI conversations, create images, translate languages, and more - all running locally on your phone for maximum privacy and offline accessibility.
| Tool | Description |
|---|---|
| π¬ Chat | Multi-turn conversations with RAG memory, web search, TTS auto-readout, and multimodal input (text, images, audio) |
| βοΈ Writing Aid | Summarize, expand, rewrite, improve grammar, or generate code from descriptions |
| π¨ Image Generator | Create images from text prompts using Stable Diffusion 1.5 with swipeable gallery for variations |
| π Translator | Translate text, images (OCR), and audio across 50+ languages - works offline |
| ποΈ Transcriber | Convert speech to text with on-device processing |
| π‘οΈ Scam Detector | Analyze messages and images for phishing with risk assessment |
- 100% on-device processing - no internet required for inference
- Zero data collection - conversations never leave your device
- No accounts, no tracking - completely private
- Open-source - fully transparent
- GPU/NPU acceleration for fast performance
- Text-to-Speech with auto-readout
- RAG with global memory for enhanced responses
- Import custom models (.task, .litertlm, .mnn)
- Direct downloads from HuggingFace
- 18 language interfaces
| Model | Type | Context |
|---|---|---|
| Gemma-3 1B (Google) | Text | 2k-4k |
| Gemma-3n E2B/E4B (Google) | Text + Vision + Audio | 4k |
| Llama-3.2 1B/3B (Meta) | Text | 1.2k |
| Phi-4 Mini (Microsoft) | Text | 4k |
| Model | Backend |
|---|---|
| Absolute Reality SD1.5 | MNN (CPU) / QNN (NPU) |
- Gecko-110M - Compact embeddings (64D-1024D)
- EmbeddingGemma-300M - High-quality text embeddings
- On-device RAG & Embeddings: Retrieval-augmented generation runs locally using embedding models
- Global Memory: Upload documents to a shared memory store for RAG lookups across conversations
- Chunking & Persistence: Documents are split into chunks with embeddings stored in Room database
- Privacy: All embeddings and searches happen locally - no external endpoints
- DuckDuckGo integration for optional web augmentation
- URL content extraction for fetching page content
- Privacy-focused: Uses public DuckDuckGo endpoints, no API keys required
| Component | Technology |
|---|---|
| Language | Kotlin |
| UI | Jetpack Compose + Material 3 |
| LLM Runtime | MediaPipe & LiteRT |
| Image Gen | MNN / QNN (Stable Diffusion) |
| Quantization | INT4/INT8 |
| GPU | LiteRT XNNPACK delegate |
- Android 8.0+ (API 26)
- RAM: 2GB minimum, 6GB+ recommended
- Storage: 1-5GB depending on models
- Internet: Only for model downloads
- Download from Google Play or Releases
- Open the app and go to Settings β Download Models
- Download your preferred models
- Start using AI tools offline!
git clone https://github.com/timmyy123/LLM-Hub.git
cd LLM-Hub
./gradlew assembleDebug
./gradlew installDebug- Supported formats:
.task,.litertlm,.mnn - Go to Settings β Download Models β Import Model
- Select your model file from device storage
| RAM | Recommended Models |
|---|---|
| 2GB | Gemma-3 1B INT4 |
| 4GB | Gemma-3 1B INT8, Llama-3.2 1B |
| 6GB+ | Gemma-3n, Llama-3.2 3B, SD Image Gen |
| 8GB+ | Phi-4 Mini with GPU |
We welcome contributions! Here's how you can help:
- Fork the repository
- Create a feature branch (
git checkout -b feature/amazing-feature) - Commit your changes (
git commit -m 'Add amazing feature') - Push to the branch (
git push origin feature/amazing-feature) - Open a Pull Request
# Install Android Studio
# Open project in Android Studio
# Sync Gradle files
# Run on device/emulatorThis project is licensed under the MIT License - see the LICENSE file for details.
- Google for Gemma models and MediaPipe framework
- Meta for Llama models
- Microsoft for Phi models
- Alibaba for MNN framework (Stable Diffusion)
- HuggingFace for model hosting and community
- Email: [email protected]
- Issues: GitHub Issues
- Discussions: GitHub Discussions
Made with β€οΈ by Timmy
Bringing AI to your pocket, privately and securely.
To use private or gated models, you need to provide your Hugging Face (HF) access token. This project is set up to securely load your token from your local machine using local.properties (never commit your token to source control).
-
Open or create
local.propertiesin your project root.- This file is usually already present and is ignored by git by default.
-
Add your Hugging Face token:
HF_TOKEN=hf_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxReplace
hf_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxwith your actual token from https://huggingface.co/settings/tokens -
Sync Gradle:
- In Android Studio, click "Sync Project with Gradle Files" after saving
local.properties.
- In Android Studio, click "Sync Project with Gradle Files" after saving
-
How it works:
- The build system injects your token into the app at build time as
BuildConfig.HF_TOKEN. - The app uses this token for authenticated model downloads.
- The build system injects your token into the app at build time as
Note:
- Never commit your
local.propertiesfile or your token to version control. - If you change your token, update
local.propertiesand re-sync Gradle.