All demosChat Firehose

Chat Firehose

A very busy chat. A much shorter moderation queue.

Examples are free. Bring a key for your own inputs. Get a free key

Performance & cost

This session

Ready to run
Delivery time · median
—
Live model compute
—
Live input tokens
0
Est. cost · USD
$0.00

Bypass examples to measure live inference. Uses your quota.

Measurement details · 0 successful requests
Successful requests
0

Run an example for free to see its measurements.

Model compute is the average per measured request. Delivery time is the median browser time for successful requests, including queue, network, and retries. Cached delivery speed is not inference speed. Model compute can exceed browser time when one request processes many inputs.

Tokens come from response headers. Inference costs use $0.04 per million input tokens, before plan credits. The estimate includes live and recorded tokens at the same rate; cached examples are not charged again. Missing usage is unavailable or a partial total (≥). Demo resets keep these totals; reload to start a new session.

Try it

Start the stream and inspect a flagged message.

Build with the SDKTypeScript · Python · dm1

One request from this demo. Copy it into your app.

Uses your MS_API_KEY and quota. Keep the key on your server.

Install · set your key
npm install @cloudraker/milliseconds
export MS_API_KEY="your-api-key"
example.ts
import { DecisionMachine } from "@cloudraker/milliseconds";

// Run on your server; reads MS_API_KEY from the environment.
const dm = new DecisionMachine();

const { result, usage } = await dm.classify(
  [
    "copypasta copypasta copypasta copypasta copypasta",
    "anyone else lagging",
    "the ending is just a dream, saved you 40 hours",
    "melhor de Baldur's Gate 3 do mundo",
    "your account has been flagged, verify at twitch-secure-login[.]co",
    "W",
    "lmaooo",
    "esse cara e brabo",
    "всем привет",
    "you are literally carrying",
    "actually goated",
    "gg",
    "this run is cracked",
    "W chat W streamer",
    "nobody watches this crap, get a job",
    "follow my channel twitch.tv/quinn_gg749 for Zelda content",
    "розыгрыш 3 PS5 подпишись на @realgiveaway",
    "ヽ(゚〇゚)ノ ヽ(゚〇゚)ノ ヽ(゚〇゚)ノ ヽ(゚〇゚)ノ ヽ(゚〇゚)ノ",
    "?????",
    "HYPERS GIGACHAD",
    "what mouse do you use?",
    "hallo zusammen",
    "chat calm down",
    "catJAM",
    "o7",
    "no way you hit that",
    "GG EZ",
    "your dog dies in chapter 5 lol",
    "gigachad play",
    "THAT WAS INSANE",
    "c'est incroyable",
    "clip it clip it"
  ],
  {
    "harassment": "an insult or a threat aimed at a person: calling them trash, garbage, a loser, kys, telling them to shut up, quit, or die (下手すぎる, 黙れ, 접어라, 닥쳐, заткнись)",
    "scam": "a fake giveaway, free skins, robux, vbucks or nitro, a phishing or suspicious link, a crypto pump, a t.me or gift-card link, I made money from home dm me, or selling followers",
    "selfpromo": "the author advertises their OWN channel or video: follow my channel twitch.tv/their-name, sub to my yt, come watch me instead, new montage on my channel, link in my bio, sigan mi canal, meu canal",
    "spam": "flooding: one word, emote, name or phrase repeated over and over (copypasta copypasta copypasta, LETS GO LETS GO LETS GO, @name @name @name), or a long wall of identical characters such as AAAAAAAAAA",
    "spoiler": "gives away a plot twist, an ending, a boss or a match result the host has not reached yet: the butler is the killer, the main character dies, 犯人は執事, el mayordomo es el asesino, der butler ist der mörder, le majordome le tueur, Liquid already won the final 3-1",
    "question": "a viewer asking the host a question: it ends in a question mark, or starts with what, how, when, which, why, do you, are you, can you, will you - about gear, settings, rank, plans, or how many hours they have played a named game (how many hours in Elden Ring?, quantas horas de Tekken 8?, сколько часов в Baldur's Gate 3?)",
    "hype": "praise or excitement for the streamer of this chat: LETS GOOOO, W streamer, W chat W streamer, GG EZ, clip it clip it, you are literally carrying, no way you hit that, insane clutch, actually goated, this run is cracked, we are so back, gigachad play, best Baldur's Gate 3 player alive, VAMOS, 미쳤다, すごすぎる, 神プレイ, うますぎ, ㄱㄱㄱ",
    "chatter": "ordinary small talk: a greeting, a hello from somewhere, or a remark about the author's day, food, sleep or connection",
    "emote": "a bare reaction token with no sentence: KEKW, PogChamp, LUL, LULW, OMEGALUL, Kappa, PepeLaugh, catJAM, GIGACHAD, HYPERS, monkaS, Sadge, 5Head, gg, o7, F, W, L, 7, xD, :), lol, lmaooo, bruh, sheesh, ratio, ?????, !!!!"
  }
).withUsage();

console.log(result);
console.log({ inputTokens: usage.inputTokens, modelMs: usage.inferenceMs });

Under the hood How it works & limitations

API calls/classify/rate

How it works

Messages are classified in batches. Flagged messages receive a severity check, and moderation thresholds decide which messages enter the review queue. Changing a threshold reuses the existing judgments.

Demo scope

The chat is simulated. Mixed intent, slang and multilingual messages can be misread. Messages handled by local fallback rules are labeled, and high traffic can exceed the model’s processing capacity.

Inspired by the work of dabit3.