Skip to content

Releases: ollaya-dev/ollaya

Ollaya v0.3.2: ollaya.dev

Choose a tag to compare

@github-actions github-actions released this 24 Sep 12:33

Ollaya has moved to ollaya.dev.

curl -fsSL https://ollaya.dev/install.sh | sh

ollaya.dev

  • New default registry. laya now means ollaya.dev/library/laya:latest. The site, the install script and the registry are all served from ollaya.dev.
  • Models you already have.
    • Models you pulled from ollaya.cobanov.dev are moved under ollaya.dev when the server starts.
    • They keep their short names (laya:en), and nothing is downloaded again.
    • A later ollaya pull fetches only the new manifest, which took 0.6 s in testing.
  • Older versions keep working. ollaya.cobanov.dev still serves the same registry, so Ollaya 0.3.1 and older can pull without an upgrade.

Starting and stopping the server

  • Stop the server with ollaya stop. Without a model, ollaya stop stops the server that you started, either with ollaya serve or in the background by another command. Stopping the server unloads every model.

    • ollaya stop MODEL still unloads just that model.
    • It never stops another user's server, such as the Linux systemd service. For that, it prints sudo systemctl stop ollaya.
  • A clear message when the address is taken. When a server is already running, ollaya serve now explains what to do instead of printing only Address already in use (os error 48):

    Error: Ollaya 0.3.2 is already running at http://127.0.0.1:11435, so you can use it right away, for example: ollaya run laya
    To run the server in this terminal instead, stop it first with `ollaya stop`.
    

    When another program holds the port, it says so and suggests another port.

  • Upgrades restart the background server. When you upgrade, the installer now stops the background server that the previous version started. Your next command starts the new version.

Ollaya v0.3.1: fast localhost from Windows

Choose a tag to compare

@github-actions github-actions released this 24 Sep 11:37

A fix for Windows programs that use Ollaya running in WSL, plus clearer install messages.

curl -fsSL https://ollaya.cobanov.dev/install.sh | sh

Fixes

  • localhost from Windows no longer waits 200 ms per connection. When the server binds 127.0.0.1 or localhost (the default), it now also listens on [::1] at the same port. Windows resolves localhost to ::1 first, and WSL forwards it only to a Linux process that listens there. Before this, every new connection from a Windows program (an SDK, a browser, Postman) to http://localhost:11435 fell back to IPv4 after about 200 ms. Measured from Windows to a server in WSL, the connect time went from 205 ms to 0.5 ms.
  • Install messages.
    • Without a systemd service, the installer now says ollaya run laya instead of asking you to start ollaya serve in another terminal: the CLI starts the server by itself.
    • When the install directory is not on your PATH, the hint names the file your shell reads: ~/.zshrc for zsh, which is the macOS default, and ~/.bashrc or ~/.bash_profile for bash. For fish, it gives fish_add_path.

Tested

scripts/smoke.sh is new. It covers install, pull, run, the HTTP API, Modelfiles, error paths and latency on one machine. All checks passed on a MacBook Air (M4), a Mac mini (M4 Pro) and Linux on WSL with an RTX 4090. The official TypeSafe Python SDK 0.7.1 also worked unchanged from Windows against the server in WSL.

Median five-question request, measured with the CLI's server on each machine:

Model Mac mini (M4 Pro, CPU) MacBook Air (M4, CPU)
laya:en 242 ms 377 ms
laya:multilingual 110 ms 153 ms
gliclass 216 ms 360 ms
nli 339 ms 554 ms
decider:0.8b 694 ms 1.17 s

On Macs, Ollaya runs on the CPU for now. On an NVIDIA GPU the same laya request takes 8–10 ms.

Ollaya v0.3.0: decider

Choose a tag to compare

@github-actions github-actions released this 24 Sep 03:28

decider, the most accurate open decision model Ollaya ships so far.

ollaya run decider --preset triage "My order never arrived and support ignores me. Refund me today or I'm switching to your competitor."

New models

decider:latest, decider:2b and decider:0.8b, by Mapika (Apache-2.0). They are decoder decision models on Qwen3.5 base models. Each question is answered with a single forward pass that reads the option-letter logits at an answer slot, with no text generation.

  • decider:2b scores 0.591 on typed decisions, the best of all the models in the library. The other models on the same decisions:

    Model Typed decisions
    nli 0.548
    decider:0.8b 0.506
    gliclass 0.477
    laya:en 0.361
  • Speed: on an RTX 4090, the median five-question request takes about 155 ms on 0.8b and 190 ms on 2b. That is slower than the encoders, but still faster than hosted Jev.

  • State length: on a 24 GB GPU, 2b handles states up to about 8k tokens.

Runtime

  • A new engine for the decider-slots-v1 layout. It is verified token for token and decision for decision against the reference, on CPU and CUDA.
  • CUDA sessions for this family run in ONNX Runtime's parallel execution mode. This avoids a buffer-reuse bug in ORT on these decoder graphs.

Ollaya v0.2.0: NLI and GLiClass

Choose a tag to compare

@github-actions github-actions released this 24 Sep 02:12

Two more open decision-model families, both with exact parity against their reference implementations on CPU and CUDA.

ollaya run nli --preset triage "Refund me today or I'm switching to your competitor."
ollaya run gliclass --preset triage ""

New models

  • nli (Moritz Laurer's zero-shot NLI classifiers). Each option becomes a hypothesis that is scored for entailment.
    • nli:latest / nli:deberta-v3-large (MIT): 0.548 on typed decisions.
    • nli:modernbert-large (Apache-2.0): 0.515.
  • gliclass (Knowledgator GLiClass instruct large, Apache-2.0). It scores all the options of a question in one pass and reaches 0.477.

For reference, laya:en scores 0.361 on the same decisions. Model pages: https://ollaya.cobanov.dev/search

Runtime

  • New engines for the nli-pairs-v1 and gliclass-uni-v1 layouts, selected by each model's decision layer.
  • Batching by token budget in every engine, so large requests have bounded peak memory.
  • Tokenizer files load with any baked-in truncation or padding turned off.
  • Measured end to end through the HTTP API on an RTX 4090, the median five-question request takes 8–10 ms on Laya, 15 ms on gliclass and 20 ms on nli.

Ollaya v0.1.0

Choose a tag to compare

@github-actions github-actions released this 23 Sep 22:40

The first release of Ollaya: run open decision models locally, the way Ollama runs LLMs.

curl -fsSL https://ollaya.cobanov.dev/install.sh | sh
ollaya run laya --preset triage "I was charged twice this month and want a refund."

Highlights

  • One binary. ollaya serve runs the daemon on 127.0.0.1:11435. The CLI covers run (one-shot and REPL, with built-in presets), pull, list, ps, show, rm, cp, stop and create. It starts the daemon itself if it isn't running.
  • TypeSafe-compatible API. POST /v1/systemone (also served at /v1/decisions) and GET /v1/models are wire-identical to TypeSafe's. The official Python SDK (typesafe-sdk 0.7.1) works unchanged when TYPESAFE_BASE_URL=http://localhost:11435 is set.
  • Native API. /api/decide adds routing information and timings. /api/pull streams NDJSON progress. /api/tags, /api/show, /api/ps, /api/create, /api/copy and /api/delete round it out. The contract is in docs/api.md.
  • Weights come from their authors. Ollaya publishes small ONNX graphs, about 3 MB each. They read the author's model.safetensors straight from Hugging Face, pinned to a commit and verified by sha256. Ollaya never re-hosts weights.
  • Routers. laya detects each request's script and language, then answers with laya:en or laya:multilingual.
  • Modelfiles. FROM, QUESTIONS, CALIBRATION, PARAMETER precision and LICENSE bake a question set into a model you can run by name.
  • Exact inference. ONNX Runtime runs on CPU, and on CUDA 13 for NVIDIA GPUs. The GPU runtime is installed automatically when a GPU is present. On 2,383 questions per checkpoint, the fp32 exports reach 100% the same decisions as the PyTorch reference.

Models

laya (router), laya:en, laya:multilingual and laya:typed-decisions, each also as a -fp16 or -fp32 tag. The models are by Convai Innovations, Apache-2.0. Browse them at https://ollaya.cobanov.dev/search.

Downloads

Platform Archive
Linux x86_64 ollaya-linux-amd64.tar.zst, plus ollaya-linux-amd64-cuda.tar.zst for NVIDIA GPUs (driver R580+)
Linux arm64 ollaya-linux-arm64.tar.zst
macOS (Apple silicon) ollaya-darwin-arm64.tar.zst / .tgz
Docker ghcr.io/ollaya-dev/ollaya:0.1.0, ghcr.io/ollaya-dev/ollaya:cuda

Linux needs glibc 2.38 or newer (Ubuntu 24.04+, Debian 13+). Checksums are in sha256sum.txt.

Known limitations

  • The base Laya checkpoints are weak on zero-shot typed decisions. Fine-tuning, or laya:typed-decisions for its workflows, does much better; see the model card.
  • macOS runs on the CPU. The Core ML provider is linked but not yet enabled.
  • Windows is supported through WSL 2 only.
  • Planned: an MCP server (#1), an Agent Skill (#2), and more open decision-model families.