Inspiration

In the 2026 Women's T20 World Cup, how an athlete played explained 20% of the attention she received (R² 0.20 on Wikipedia article views). Who she already was — home-market size and prior fame — explained 81%. Hayley Matthews finished the tournament #1 by impact and #52 by attention. Great players from Ireland, Scotland, the West Indies or Sri Lanka finish top-ten by impact and outside the top fifty by attention. Nobody measures that gap weekly, and nobody can afford to write correct, multilingual stories for the athletes the market overlooks. We built the machine that does both.

What it does

SEEN finds the Unseen XI: every week, the eleven women cricketers whose performance most exceeds the attention they get.

  1. Cricsheet ball-by-ball data (3,577 women's matches) becomes a DuckDB graph; ten narrative patterns (first-ever wins, milestones, all-round performances) are scored for significance.
  2. Attention is read from Wikimedia pageviews in eight language editions; two regression lines give every athlete an expected level of attention, and the residual is her visibility gap.
  3. A constrained selection picks the XI (≤3 per country, ≥3 from outside the big three, consent-gated, 14-day cooldown).
  4. For each athlete, NVIDIA Nemotron 3 on Nebius Token Factory writes a story kit — a 60-second video script, social posts and an article — from a bundle of sourced facts, and translates it into Hindi and Urdu with a locked cricket glossary.
  5. A deterministic claim checker re-verifies every number in every draft against the fact bundle and blocks anything it cannot match. In the hosted app an editor can ask Nemotron for a live rewrite with an angle ("for a first-time fan in Lahore"); the draft replaces the text only if it passes.
  6. Kits route to creator briefs, app cards, commentary packs and a fan feed in the fan's language; an impact dashboard measures attention lift against matched controls.

How we built it

Python, DuckDB, pandas and Streamlit; the pipeline runs from one command and the app runs in one container (Docker; the public demo is hosted on Streamlit Community Cloud, and the repo ships a Cloud Run deployment kit). seen/llm.py calls Nebius Token Factory through its OpenAI-compatible endpoint with nvidia/nemotron-3-super-120b-a12b (falling back to Nemotron 3 Nano 30B and Nemotron 3.5 Lightning), reasoning switched off for JSON answers, low temperature, prompts cached by content hash. seen/stories/claim_check.py is the gate between the model and publication. Every data source is public and keyless: Cricsheet (ODC-BY), Wikidata, Wikimedia Pageviews.

How Nemotron and Token Factory are used

Every live "Rewrite with the model" call in the hosted demo is a runtime call to https://api.tokenfactory.nebius.com/v1/chat/completions, and with LLM_PROVIDER=nebius the same provider handles every story-kit prose rewrite and every translation in the weekly pipeline. The model writes from a fact bundle only and must cite every number ([F3]); the checker verifies each figure, so a hallucinated statistic is blocked before it reaches a creator, commentator or fan. That is the point of pairing an open model with a deterministic checker.

Challenges we ran into

Making an open model safe to publish: the answer was not a better prompt but a checker that treats every number as a claim with a fact ID, and a UI that shows a blocked draft instead of hiding it. Keeping the attention model honest (two lines, not one, so a small market is not mistaken for a scandal). Free-tier quotas during development.

Accomplishments that we're proud of

A real run on 165 athletes (the September batch that ships with the demo): 11 kits, 224 facts, 1,123 numeric claims checked, zero unverifiable in the published kits; translations re-verified after generation. In the hosted app, every live Nemotron rewrite goes through the same checker before it can replace the text — the demo video shows one accepted (10/10 numeric claims matched, 74% of the words changed) and a made-up number blocked.

What we learned

Nemotron 3 Super writes vivid, well-structured prose from a fact bundle and keeps citations in place when the instruction is explicit; with reasoning off it answers in a few seconds, which is what makes an interactive editor loop possible. Two lessons: given a reference text it tends to echo it, so the live prompt sends facts only and we measure how much the wording changed; and it once converted balls into overs, so the checker now verifies units as well as numbers.

What's next for SEEN

A weekly public Unseen XI through the WBBL (Nov–Dec), a read-only API for creators, a measured pilot with a rights-holder, and a consent workflow agreed with the boards.

Built before the submission period — what changed during it

SEEN was first built for the ICC Global Hackathon (September 2026) with Gemini as the writing model. During this hackathon's submission period we added: the Nebius Token Factory / Nemotron provider (the whole writing and translation layer), the live "Rewrite with the model" loop in the app, the Docker image and Cloud Run deployment kit, the public demo on Streamlit Community Cloud, the MIT licence and public repository.

Built With

  • cricsheet
  • docker
  • duckdb
  • google-cloud-run
  • nebius-token-factory
  • nvidia-nemotron-3
  • openai-sdk
  • pandas
  • plotly
  • python
  • streamlit
  • wikimedia-api
Share this project:

Updates

Submission history