madewithlaya

Catalog / Support & triage

0068GitHub

Laya Serve for macOS: a menu bar app with an OpenAI-compatible endpoint for n8n

Homebrew menu bar server that turns n8n Text Classifier requests into Laya typed questions in ~40 ms. Weights ship inside the app; no network, unloads when idle.

Open source ↗ github.comcostfree, localtime~40 ms / question
chrisns/laya-mac-serveREADME ↗
# Laya Serve for macOS

A macOS menu bar application that serves [Laya](https://github.com/NandhaKishorM/laya)
over HTTP with an OpenAI-compatible interface. Point the n8n **Text Classifier** node at
it and classify emails on your own Mac.

Laya is a non-autoregressive decision engine from Convai Innovations. It answers typed
questions in one forward pass of about 40 ms. It does not generate text, so it cannot
hallucinate an answer that is outside your category list.

The weights ship inside the application. It needs no network, no Hugging Face account
and no download at run time.

## What it does

- Runs a local HTTP server that speaks the OpenAI chat completions protocol.
- Translates each n8n classification request into Laya typed questions.
- Returns the exact JSON object that the n8n node expects.
- Holds the model weights inside the application, so it works with no network.
- Unloads the model after an idle period, and loads it again on the next request.
- Lives in the menu bar. It has no Dock icon and no window.

## Requirements

- Apple Silicon. PyTorch has no current macOS x86_64 wheel.
- macOS 13 or later.
- About 1.5 GB of disk. That holds CPython, PyTorch and the weights.
- About 1.3 GB of memory while the model is loaded, and about 60 MB when it is not.

## Install

With Homebrew:

```bash
brew install --cask chrisns/laya-mac-serve/laya-serve
```

The application is ad-hoc signed, not notarised, so macOS blocks the first launch.
Remove the quarantine flag:

```bash
xattr -dr com.apple.quarantine /Applications/LayaServe.app
```

By hand:

1. Download the disk image from the
   [latest release](https://github.com/chrisns/laya-mac-serve/releases/latest).
2. Drag `LayaServe.app` to Applications.
3. The application is signed ad-hoc, not notarised. Remove the qua

Also filed under Support & triage

  1. 0113

    Laya fine-tuned on Banking77 for customer-support intent classification

    A Laya checkpoint trained on PolyAI's Banking77, the 77-intent banking support dataset, tagged for customer-support intent classification.

    Cahol · Support & triage · free, Apache 2.0 base

  2. 0041

    Same Google ADK triage agent, engine swapped: Jev 53% at 422 ms, Laya 10% at 152 ms

    Laya shipped right after Jev claiming to be faster for AI agent decisions. curious if it was accurate too I built a POC same Google ADK triage agent, same 30 labeled tickets, only the engine swapped. Jev: 422ms, 53% accuracy. Laya: 152ms 10% accuracy Faster not more accurate

    @MadhavSz · Support & triage · free, local (Laya) · 152 ms (Laya) vs 422 ms (Jev)

  3. 0040

    A morning of real tasks on Laya-MLX: inbox triage, 100 SAP decks, blog categories

    Spent a morning testing a small open-weights local model (Laya-MLX, fully offline on a MacBook Air, $0 per call) on real tasks: inbox triage, tagging 100 SAP decks, categorizing blog posts, and a prefilter pattern. Honest numbers in this thread.

    @Raju_M_A · Support & triage · $0 / call, offline

  4. 0039

    1,000 synthetic emails into six folders with local Laya on a MacBook Air

    1,000 synthetic emails. Six folders. One local 322M Laya model running on a MacBook Air M3. ⚡ 28.6s without screen recording 🎬 97.3s while recording 🎯 65.1% accuracy against reference labels 💾 0 MB swap Everything runs locally. No cloud inference. And I’m showing the

    @NURM_Dima · Support & triage · $0, local · 28.6 s for 1,000 emails