The system that i designed

Hey everyone,

I've been working on an agent architecture designed to detect bot accounts and paid fake reviews in e-commerce ecosystems.

The core challenge

  1. Using full LLM prompts on every review is way too expensive, slow, and prone to hallucinations.
  2. Simple rule heuristics (like banning short reviews or flagged keywords) cause high false positives—banning actual customers who just write short, blunt reviews.

To solve this, I designed a 2-tier Probabilistic Bayesian Engine that shifts decision-making from subjective text guessing to pure probability updating.

  1. The hidden state

We model the review space using 4 mutually exclusive states separating Perception (how the review looks) from Ground Truth (what the review actually is):

  • S1 (Appears Real | Actually Real): Standard genuine review.
  • S2 (Appears Fake | Actually Fake): Low-effort bot/spam review.
  • S3 (Appears Real | Actually Fake): High-effort paid fake review.
  • S4 (Appears Fake | Actually Real): Short or unusual review by an authentic user.

Total Genuine Probability: P(Genuine) = P(S1) + P(S4)

  1. The level 2 pipeline

Level 1 (Fast Pass):

Micro-LLM structure check + fast metadata rules (verified purchase, account age, review frequency) Primary Bayesian Update.

  • P(Genuine) > 60% --> Auto-Approve
  • P(Genuine) < 20% --> Flag for High-Priority Ban Queue
  • 20% to 60% -->Triggers Level 2 (Gray Zone)

Level 2 (Deep Check for Gray Zone):

Async evaluation of cross-review embedding similarity (copypasta/templates) + brand concentration ratio (% reviews targeting 1 seller) --> Secondary Bayesian Update.

  • P > 60% = Approve
  • P < 20% =Flag for High-Priority Ban Queue
  • Still 20% to 60% = Watchlist / 0.20x Rating Impact
  1. handling greyzone(20%-60%)

Because false-positive bans ruin customer trust, the system never auto-bans accounts in the gray zone.

If Level 2 still leaves the score between 20% and 60%:

  • The review stays published, but its weight on the seller’s aggregate star rating is dampened to 0.20x.
  • The account is routed to a low-priority human audit queue.

Posted Aug 13, 2026, 4:09 PM UTC

10
Loading comments…