What it does

ai-image-detector takes an image URL and returns a calibrated probability that the image is AI-generated or synthetic, along with the specific signals behind the score.

{
  "image_url": "https://picsum.photos/id/237/400/300"
}

returns:

{
  "probability_ai_generated": 0.82,
  "verdict": "likely_ai",
  "confidence": 0.75,
  "reasoning": [
    "Hands show an extra finger and inconsistent joint spacing.",
    "Background text is garbled, not legible as real signage."
  ],
  "signals": {
    "anatomical_artifacts": true,
    "garbled_text": true,
    "texture_smearing": false,
    "lighting_inconsistency": false,
    "background_incoherence": false,
    "generator_artifacts": false,
    "ai_aesthetic": true
  },
  "source": "venice vision heuristic",
  "model": "qwen3-5-9b"
}

Verdict buckets follow the probability: below 0.4 is likely_real, 0.4-0.65 is uncertain, 0.65 and up is likely_ai.

What it checks

The vision model scores seven signals: malformed hands/teeth/eyes, garbled or pseudo-text rendered in the image, over-smooth "waxy" texture, lighting or shadow that doesn't match a single light source, a background that doesn't cohere spatially, visible generator watermarks or diffusion artifacts, and an over-stylized "AI look" — hyper-saturated color, dreamlike composition.

Honest framing

This is a vision-model heuristic, not a forensic detector. It doesn't read cryptographic watermarks (C2PA, SynthID) or file provenance — it reads the same visual tells a careful human reviewer would look for, and it's calibrated to never inflate a verdict just because a caller wants a confident answer. If the vision call fails or returns something the model can't parse, the endpoint returns an error instead of guessing at a fallback score.

Use cases

Screening user-submitted images for AI content, filtering AI-generated listing photos, flagging synthetic profile pictures, or a quick pre-check before a more expensive review step.

Price: $0.02.