LLamification is a lightweight local proxy that makes any online LLM provider look like a local Ollama server. You configure it once with your provider's API endpoint and key, then point any Ollama-compatible tool (CLI, library, UI) at http://localhost:4001 and it just works.
You can switch providers and models on the fly without restarting anything.
I wanted something simpler than litellm for my use case: connecting online LLMs and making them pretend to be local Ollama. LLamification does exactly that -- no more, no less. It also lets you switch providers and models without touching config files or restarting services.
#For Arch Linux users, app is available on AUR
# Clone the repository
git clone https://github.com/magillos/LLamification.git
cd LLamification
# Install dependencies (pick one)
# Option A: Use your distro's package manager
# Debian/Ubuntu: sudo apt install python3-pyqt6 python3-aiohttp python3-pyqt6.qtsvg
# Fedora: sudo dnf install python3-qt6 python3-aiohttp
# Arch: sudo pacman -S python-pyqt6 python-aiohttp
# Option B: Use pip inside a virtual environment (recommended for isolation)
python3 -m venv .venv
source .venv/bin/activate
pip install PyQt6 aiohttp
# Run the GUI to configure your provider, API key, and model
python3 -m llamification -g
# Start the proxy with your last settings (headless mode)
python3 -m llamificationAdd this to your ~/.bashrc or ~/.zshrc:
alias llamification="cd /path/to/LLamification && python3 -m llamification"Then you can start the proxy by just typing llamification in your terminal.
- Run
python3 -m llamification -gto open the GUI. - Add a provider (name, base URL, API key), then click "Refresh Models" to fetch the available models.
- Select a model and click "Start Proxy".
- The proxy now runs on
http://localhost:4001and speaks both the Ollama API and the OpenAI-compatible API.
The next time you run python3 -m llamification (without the -g flag), it starts headlessly with your last settings.
The default port is 4001 so you can run it alongside a real Ollama server without conflicts. Change the port in the GUI or in ~/.config/llamification/config.json.
Ollama-compatible:
| Method | Path | Description |
|---|---|---|
| GET | / |
Health check ("Ollama is running") |
| GET | /api/tags |
List available models |
| POST | /api/generate |
Generate text |
| POST | /api/chat |
Chat completion |
| POST | /api/embeddings |
Embeddings (proxied to upstream) |
OpenAI-compatible:
| Method | Path | Description |
|---|---|---|
| GET | /v1 |
Health check |
| GET | /v1/models |
List available models |
| POST | /v1/chat/completions |
Chat completion (with function-calling / tools support) |
| POST | /v1/embeddings |
Embeddings (proxied to upstream) |
/v1/chat/completions transparently passes the tools and tool_choice fields from the request to the upstream provider, and forwards any tool_calls in the response — both streaming and non-streaming. This means agentic clients like Cline, Continue, and Roo Code can use tools through the proxy without modification.
All configuration is stored in ~/.config/llamification/config.json. Use the GUI to add providers, set API keys, select models, and mark favourites. No manual editing required.
MIT
