Skip to content
All work

AI systems

StreamWidget

A live prompter for streamers: real-time suggestions over chat

Chrome extension (MV3)PythonFastAPIWebSocketDeepInfra (Qwen, Llama-3)Railway

Problem

A live host can't read chat and invent a reply at the same time. The suggestion must arrive within seconds, in the viewer's language, and never confuse who is who in the dialogue.

System

A Chrome extension reads the chat and holds a WebSocket to a FastAPI backend on Railway. Two models with different jobs do the generating: the primary one drives the dialogue and always handles translation, the second — a specialised English-only model — writes only in English. That split is deliberate: the second model's Russian is weak, meaning got lost and viewer nicknames were translated like ordinary words. So translation always belongs to the primary model, and nicknames are masked with placeholders before it and restored after. Parsing of the second model's output tolerates malformed JSON and retries once.

Role

Solo contract build: extension, backend, model routing, deployment.

Outcome

Shipped to Railway and verified with a live WebSocket request after deploy. Routing quality is measured by a bench script over EN/RU pairs (cents per run), not by feel.