Laya Decision Engine for Microsoft Azure
by Salient Engineering
Self-hosted Laya Decision Engine on a GPU VM in your Azure subscription. Unlimited usage.
This is a self-hosted deployment of the Laya Decision Engine. It runs as a single GPU-powered Azure virtual machine allowing you to keep your data private and evaluate typed decisions with no per-token charges. Access is via HTTP on port 8080. Once the virtual machine is powered on, the server requires up to 2 minutes to load the decision models before it is ready to serve requests. Highlights of the Laya model include:
- Non-autoregressive System 1 engine: answers typed
choice,score, andnoulquestions over text, email, tickets, or JSON in a single forward pass. It never generates text, so there is nothing to parse and nothing to hallucinate. - Built-in Router preloads the English, multilingual, and typed-decisions checkpoints and selects among them per request, covering 100+ languages. Measured latency on Tesla T4 is about 33 milliseconds for a single question.
- Apache 2.0 open weights. Three checkpoints: English ModernBERT-large (421M), multilingual mmBERT-base (322M), and typed-decisions (421M).
- Treat Laya as a fast foundation model to specialize. The published 0.766 typed-decisions score is from the fine-tuned checkpoint; base checkpoints score near 0.35 on that benchmark. Keep choice schemas under 20 options, or use a two-step hierarchy.
Data security, privacy, and confidentiality. Predictable cost. Unlimited usage of a dedicated model.
Example API calls
Replace PUBLIC_IP with the virtual machine address.
Health check
curl http://PUBLIC_IP:8080/health
Expected response
{"status":"ok"}
Predict (optional model field pins english, multilingual, or typed-decisions; omit it to let the Router choose)
curl -X POST http://PUBLIC_IP:8080/predict -H 'Content-Type: application/json' -d '{"state":{"body":"I was charged twice, please refund."},"questions":{"queue":{"type":"choice","instructions":"Which queue owns this ticket?","criteria":{"billing":"refunds, invoices","infrastructure":"outages","support":"general inquiries"}},"urgency":{"type":"score","instructions":"How urgent is this ticket?","criteria":["low","medium","high","critical"]},"churn_risk":{"type":"noul","instructions":"Does the customer threaten to cancel?"}}}'
Expected response shape
{"routing":{"model":"english","reason":"English Latin text"},"answers":{"queue":{"type":"choice","choice":"billing","confidence":0.94},"urgency":{"type":"score","score":1.8},"churn_risk":{"type":"noul","noul":0.16,"confidence":0.84}}}
Routing may select multilingual for non-English input. Pin a checkpoint with "model":"typed-decisions" in the JSON body.