Early access — ported from Chem IRL's production moderation

Photo moderation that shows its working.

One API call grades a user photo across 8 policy categories and returns approved, review, or blocked — with the decision rules applied deterministically in code, not just model vibes. A second op checks whether a selfie and a profile photo show the same person.

Eight categories. One verdict. Zero mystery.

Every image is graded per category with severity, score, and notes. The final verdict is the stricter of the model's judgement and the platform's deterministic rules — and when they disagree, the response says so.

  • sexual / nudity
  • violence
  • weapons
  • drugs
  • hate symbols
  • suspected minors
  • spam / scam
  • authenticity

Same-person check: the match op compares a live selfie against a gallery photo and returns match, no-match, or no-face-detected with a confidence score — biased toward no-match when uncertain.

curl -X POST https://solutions.chemirl.app/api/v1/moderate \
  -H "Authorization: Bearer cis_..." \
  -H "Content-Type: application/json" \
  -d '{"op": "safety", "image": {"url": "https://.../photo.jpg"}}'

{
  "op": "safety",
  "decision": "review",
  "rule_decision": "review",
  "rule_disagreement": false,
  "overall_risk_score": 41,
  "contains_person": true,
  "categories": [ ... 8 graded categories ... ]
}

What this is — and what it isn't

This is LLM-vision moderation and identity-consistency checking. It is not biometric identification and not liveness detection — we say what it is, and our terms require the same honesty downstream. Consequential verdicts belong in a human review queue, and callers must hash-match against industry CSAM databases before submitting images. Usage is metered per call and visible in your workspace, priced with volume tiers during early access — talk to us.