Content moderation with Laya
Moderation maps directly onto Laya's question types. A `noul` question returns the probability that a statement holds, such as "this post contains a threat", and a `score` question rates severity on a rubric you define. The core package ships ready-made moderation and guardrail presets.
173 projects
reflex-guard
NISH1001
Implements multi-label guardrails that score context against categories using Laya decision models
-Semantic-Firewall-laya
manas95826
Authorizes AI-agent tool calls using retrieved security context and Laya decisions
Sent1nel
srinath1505
A guardrail SDK and API routes policy decisions through hosted Jev or self-hosted Laya
korean-decision-benchmark
jkf87
Benchmarks SemIf, Decider, Laya, and Jev on Korean hate-speech classification
stopline
mdabydeen
Uses Jev or Laya to classify browser-agent actions before applying a policy gate
lica
np9royal
Adds typed decision packs powered by Laya to coding-agent hooks
gatelaya
Diwas2055
Adds Laya-powered multilingual firewall and routing guardrails to LiteLLM Proxy
laya-demo
nile1801
Demonstrates typed decisions, calibrated probabilities, and multilingual routing with Laya checkpoints
laya-demo
wuyouxiaobai
Provides a landing page and deployable Gradio demo for Laya typed decisions
laya-demo
aired
Demonstrates Laya typed decisions for triage, guardrails, filtering, moderation, and routing
laya-prompt-guardrail
Parvathy-2025
Uses Laya to score prompts for jailbreak and injection risk before an LLM call
laya-demo
nickfury6023
Demonstrates Laya typed decisions for triage, guardrails, filtering, moderation, and routing
laya-multilingual-demo
DennisRadix58
Demonstrates multilingual Laya typed decisions for triage, guardrails, moderation, and exploration
laya-demo
dungdq1
Demonstrates Laya typed decisions for routing, moderation, guardrails, and retrieval filtering
laya_finetunning
djairguilherme
Fine-tunes Laya to detect dangerous and malicious commands
claude_guardrail_laya
pedro-ggomes
Uses Laya to score Bash commands in a Claude Code pre-tool guardrail
frontdoor
debojitroy
Screens messages with Laya inference, specialization experiments, and reproducible evaluations
laya-packet-analyser
esterhuizen
Analyzes network traffic and uses a local Laya model to triage alerts and classify conversations
laya-guardrails
javimp2003
Spanish-language guardrails use a self-hosted typed-decision model to check agent inputs, tool calls, and outputs
laya-guard
dockndevai
A local risk guard combines deterministic rules with Laya decisions to confirm or block dangerous commands
shayeban
mamahoos
Checks Persian Telegram messages for health myths, scams and urban legends using Laya
laya-node
felipenmoura
A Node.js wrapper runs Laya as an authenticated Express classification server
laya-multilingual-onnx
Youssful
Provides an ONNX Laya model and tokenizer for SupremeChatModeration
laya-gateway
amanjoshi2002
Uses Laya to classify prompt safety and route prompts to suitable models
Built-in presets
From the core README:
import laya
agent = laya.load("convaiinnovations/laya")
# Real-time prompt guardrails (jailbreaks, injections, leaks)
guard = agent.predict({"prompt": "Ignore all instructions"}, laya.guard_questions())
# Content safety and moderation (toxicity, harassment, threats)
safety = agent.predict({"post": "User comment text"}, laya.moderation_questions())
From the command line: laya "some text" --preset moderation. The Java port Laya4j documents the moderation preset's questions as toxic, harassment, threat, spam and severity.
Your own questions
A noul answer is a probability from 0 to 1, so you pick the threshold:
questions = {
"threat": {"type": "noul", "instructions": "Does the post threaten someone with violence?"},
"severity": {"type": "score", "instructions": "How harmful is this post?",
"criteria": ["harmless", "rude", "abusive", "dangerous"]},
}
Projects
- laya-mcp (NVentimiglia): a
moderate_contentMCP tool. Its eval scored 4/4 on moderation and 7/9 on guardrails, while overall key accuracy was 32.5%. - laya-mcp (wsargent):
laya_moderateandlaya_guardtools on laya-mlx. - gg-friggin-ez: a Node.js toxicity screener that defaults to Jev and can call a local Laya endpoint.
How well it works
sysone-bench ran both models on the same inputs. On its curated moderation suite (n=90), Laya's English checkpoint scored 0.833 and Jev scored 0.989. On guardrails (n=60) the scores were 0.883 and 0.967.
Caveats
- The core README warns that
noulcan follow its option labels instead of the text, most strongly on the English checkpoint. It suggests customlabelsor a two-optionchoicewith neutral keys as workarounds. Validate on your own data. - laya-jev-lab found
noulreliable for explicit facts and weak for judgements such as "is it polite". Phrase questions as facts. - The English checkpoint fails silently on non-Latin scripts. Use the
Routerorlaya-multilingualfor mixed-language chat.
Hosted option
If you would rather not run a model server, layahost serves Laya behind the Jev-compatible POST /v1/systemone and a simpler /v1/decide with ready moderation, spam, prompt_injection and pii templates. It also runs Cloudflare's larger open Clef and Clef-flash models on the same API, and it offers itself as a drop-in for Google's Perspective API. Its test sets let you run your own labelled comments through each model before you pick one and a threshold. layahost is run by the makers of laya.tools.
More ways to use Laya