Large Language Model (LLM) or SLM models using OnnxRuntime directly on low-end devices like low power computers, mobile phones etc. It is cross-platform using Kivy & open-source.The name is derived from:Onfrom Onnx +LLM. Our approach is always local & offline first (you will need internet to download the model files for the first time). Arificial Intelligence (AI) to be accesible to everyone.

Windows, download the OnLLM_X.X.X.exe file & double click to run it. If you are on Linux, download OnLLM_Linux_XXX file and run it.1chmod +x OnLLM_Linux_XXX
2./OnLLM_Linux_XXXgit clone https://github.com/daslearning-org/OnLLM.git1cd OnLLM/app/
2pip install -r requirements.txt # virtual environment is recommended
3python main.pyWSL or any Virtual Machine. As of now the buildozer tool works on Python version 3.11 at maximum. I am going to use Python 3.111curl https://sh.rustup.rs -sSf | sh # then follow the prompt
2export PATH="$HOME/.cargo/bin:$PATH"
3# optional
4rustup default stable1# add the python repository
2sudo add-apt-repository ppa:deadsnakes/ppa
3sudo apt update
4
5# install all dependencies.
6sudo apt install -y ant autoconf automake ccache cmake g++ gcc libbz2-dev libffi-dev libltdl-dev libtool libssl-dev lbzip2 make ninja-build openjdk-17-jdk patch patchelf pkg-config protobuf-compiler python3.11 python3.11-venv python3.11-dev
7
8# optionally we can default to python 3.11
9sudo ln -sf /usr/bin/python3.11 /usr/bin/python3
10sudo ln -sf /usr/bin/python3.11 /usr/bin/python
11sudo ln -sf /usr/bin/python3.11-config /usr/bin/python3-config
12
13# optionally you may check the java installation with below commands
14java -version
15javac -version
16
17# install python modules
18git clone https://github.com/daslearning-org/OnLLM.git
19cd OnLLM/app/
20python3.11 -m venv .env # create python virtual environment
21source .env/bin/activate
22pip install -r req_android.txt
23
24# build the android apk
25buildozer android debug # this may take a good amount of time for the first time & will generate the apk in the bin directoryPython virtual environment is recommended and will use PyInstaller to package it.1# install pyinstaller
2git clone https://github.com/daslearning-org/OnLLM.git
3cd OnLLM/app/
4python3.11 -m venv .env # create python virtual environment
5source .env/bin/activate
6pip install -r requirements.txt
7pip install pyinstaller
8
9# then update the spec file as needed
10# then build your app which will be native to the OS i.e. Linux or Windows or MAC
11pyinstaller desktopApp.specAndroid or low power devices.| Model | Size | Android | Desktop |
|---|---|---|---|
| SmolLM2-135M | 95MB | ✅️ | ✅️ |
| SmolLM2-360M | 241MB | ✅️ | ✅️ |
| Gemma3-1B | 645MB | ⚠️ | ✅️ |
| Model | Size | Android | Desktop |
|---|---|---|---|
| all-MiniLM-L6-V2 | 85MB | ✅️ | ✅️ |