File size: 6,503 Bytes
b3a3397
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
---

license: other
license_name: l-ai-freeware
tags:
  - android
  - apk
  - gguf
  - llama.cpp
  - on-device
  - local-llm
  - offline
---


# L-AI β€” private AI chat that runs on your phone

**L-AI** is a free Android app by **UltraLabs** for chatting with AI models that run **fully on your device**.
No account and no cloud. Your chats never leave your phone unless you turn on a feature that needs the internet, such as web search.
It runs any **GGUF** model through a fresh build of llama.cpp. It also runs many older GGML `.bin` models that other apps no longer load.

πŸ“₯ **Download:** [`L-AI-1.20.apk`](./L-AI-1.20.apk) (65 MB) Β· Android 11+ Β· 64-bit ARM (arm64-v8a)

---

## Highlights

- 🧠 **Any GGUF model.** Qwen, Llama, Gemma, Phi, LFM, Mistral, MoE models and more. Each model is formatted with its **own chat template**, so it behaves the way its makers intended.
- πŸ—‚οΈ **Older models too.** Legacy GGML `.bin` files are detected and loaded automatically: LLaMA (GGJT/GGMF/ggml), GPT-2, and GPT-NeoX (StableCode, StableLM-alpha, Pythia, Dolly, RedPajama).
- πŸ‘οΈ **Vision.** Attach photos from the gallery or camera and let vision models (with an `mmproj` file) describe them. Downloading a model from Hugging Face grabs its projector automatically (Q8, else F16). Keep several projectors: each model is linked to the one that actually fits it (checked from the files), and nothing loads while Vision is off.
- πŸ’‘ **Thinking models.** A πŸ’‘ button turns reasoning on or off. It only appears for models that support it. A thinking budget cuts long thoughts short, and the reasoning is shown in a collapsible "Thought process". Qwen3.5 reasoning models are detected from their metadata and their <think> block is opened for them, the way they expect.
- ⚑ **Speed tools.**
  - Speculative decoding with a draft model.
  - MoE expert offloading and prefetching.
  - KV cache quantization (f32 / f16 / q8_0 / q4_0) and flash attention. f32 is exact, for models that break at lower precision.
  - **Precise kernels** per model (Auto / On / Off): if a model only answers with an instant end of text, L-AI reloads it without the fast ARM kernels, checks again, and remembers the fix only when it helps.
  - Memory-mapped or in-RAM loading.
  - A built-in benchmark (prompt processing and generation).
- πŸ”§ **Tools the model can call** (native tool calling):
  - Web search (DuckDuckGo / Wikipedia).
  - A calculator that gives exact results.
  - File creation.
- πŸ“š **Knowledge.** Add TXT / PDF / EPUB files. The most relevant passages are found and given to the model.
- 🧷 **Memory.** The model can remember facts you tell it across chats. You can add, view or delete them anytime.
- 🎭 **Personas and slash commands.** `/summarize`, `/translate`, `/eli5`, `/fix` and your own custom ones.
- πŸ’¬ **A chat experience you'd expect:**
  - Markdown, code blocks with copy and **Run** (live HTML/JS preview), charts, Mermaid diagrams and LaTeX.
  - Regenerate with versions, edit and resend, fork a chat from any message.
  - Read aloud, voice input with optional auto-send, and haptic ticks while it writes.
- ✨ **Instant follow-up suggestions** after each reply. They're worked out on the device without using the model, so they cost nothing.
- 🏷️ **Automatic chat names** from a tiny bundled titling model (about 20 ms, no setup).
- πŸ•ΆοΈ **Temporary chats** that are never saved or remembered.
- πŸ—ƒοΈ **History:**
  - Search, folders, pins, share and export (.md / .txt).
  - Backup and restore.
- πŸ”Œ **Integrations:**
  - An **OpenAI-compatible API server** on your local network, so you can use your phone's model from a PC.
  - A **remote server** option: chat with a bigger model running on your PC (llama.cpp, LM Studio, Ollama, Jan, Atomic Chat or any OpenAI-compatible server). With Tailscale it works from anywhere, and replies stream in live.
  - Share-to-L-AI, a Quick Settings tile and a home-screen widget you can resize from a tiny icon up to a big panel.
- 🎨 **Make it yours:**
  - Material You or custom colors, 9 presets and AMOLED black.
  - Bubble / card / minimal chat styles, fonts, text size and chat wallpapers.

## Getting started

1. Download **`L-AI-1.20.apk`** above, open it, and allow installing from your browser or file manager if Android asks.
2. Open L-AI, tap the model library, then either:
   - **Download from Hugging Face** inside the app (search any GGUF repo), or
   - **Add a model file** you already have (`.gguf` or `.bin`).
3. Load it and start chatting. That's it.

**Which model should I try?** On most phones, a 0.5B–4B model at Q4/Q8 is the sweet spot.

| Phone RAM | Good model sizes |
|---|---|
| 4 GB | up to ~1.5B (Q4) |
| 6–8 GB | up to ~4B (Q4) |
| 12 GB+ | 7–8B (Q4), or small MoE models |

Small models from the same creator work well:
- [GRAFT-1B](https://huggingface.co/SmallAICreator/GRAFT-1B)
- [GRAFT-1B-Vision-GGUF](https://huggingface.co/SmallAICreator/GRAFT-1B-Vision-GGUF) (with image support)
- [MiniGPT2-22M-GGUF](https://huggingface.co/SmallAICreator/MiniGPT2-22M-GGUF) (tiny, for fun)

## Permissions, explained

| Permission | Why |
|---|---|
| Internet / network state | Only for features you turn on: Hugging Face downloads, web search, the local API server |
| All files access (optional) | Load a huge model straight from storage without copying it, when your phone is low on space |
| Foreground service + notifications | Keep the local API server running while the app is in the background |
| Vibrate | Haptic ticks while the model writes (adjustable or off) |

There are no ads, no analytics and no accounts.

## Details

| | |
|---|---|
| Package | `com.ultralabs.lai` |
| Version | 1.20 (build 21) |
| Min Android | 11 (API 30) |
| ABI | arm64-v8a |
| Signing certificate | `CN=UltraLabs, O=UltraLabs` |
| Cert SHA-256 | `517602ea12fa156ab2713e6ca298fc856e95454ff2132c6a5267d6dec16af8c9` |
| APK SHA-256 | `cf92ca585acdc4d5a9740b5d2a9f036c852773ab26fcf311ebd6a3eb14169475` |

## Credits

- [llama.cpp](https://github.com/ggml-org/llama.cpp) (MIT): the inference engine.
- [Cyronius/titler](https://huggingface.co/Cyronius/titler) (Apache-2.0): the tiny bundled chat-naming model.
- Made by **SmallAICreator** Β· **UltraLabs**.

## License

L-AI is free to download, use and share in unmodified form. Models you load are covered by their own licenses.