Skip to main content

kipimo

Over one hundred million people coordinate their lives in Swahili, yet no benchmark measures whether an AI agent can route their requests correctly — send money, check drought status, find a clinic, verify a worker's credentials. Agents targeting East Africa are evaluated on English tasks and deployed on faith.

kipimo (Swahili: a measure) is a model-agnostic seed benchmark for exactly that gap: 46 tasks across three types, with golds machine-derived from authoritative sources — the coordination-stack registry and the live africa-coord-bus routing table — never from memory.

Type n What it measures Metric
server_routing 25 Swahili request → correct stack server (payments, tax, health, land, labour…) exact
term_grounding 14 Swahili domain term → English meaning exact (case-insensitive)
cascade_routing 7 Coordination event → which sectors must be notified set F1

Live leaderboard → — score any model in your browser, no keys.

Use it (any model, no API keys)

pip install kipimo
kipimo tasks > tasks.jsonl        # feed to your agent however you like
kipimo template > preds.jsonl     # fill "prediction": [...] per id
kipimo score preds.jsonl          # per-type + overall report

The harness never calls a model — you generate predictions with whatever system you're evaluating; kipimo only scores. Any lab can publish comparable numbers.

Data sovereignty

The models deployable under African data-sovereignty constraints are open-weight and self-hostable. kipimo scores that tier on equal terms with frontier APIs so builders can test whether the model they are allowed to run is good enough — see docs/DATA_SOVEREIGNTY.md and examples/generate_predictions.py.

Honesty box

  • v0.1 is a seed set. 46 tasks establish the format and scoring; breadth comes from contributions.
  • Swahili phrasing is simple-register and pending native-speaker review — that is issue #1, and corrections are the most valuable contribution possible.
  • Scores measure stack-routing competence, not general Swahili fluency.
  • Dataset: CC BY 4.0 (usable by everyone, including commercial labs — that's the point). Harness: MIT.

IP & Collaboration

MIT-licensed harness, CC BY 4.0 data. Feedback via GitHub Issues only — pull requests are not accepted; task corrections and additions via Issues are actively wanted. Full policy: docs/architecture/IP_POLICY.md. Security: see SECURITY.md.

Part of the East Africa coordination stack

Model-agnostic by design: closed APIs, open-weight models, and small distilled models are all first-class citizens.

Running a scorecard (kipimo run)

Fan out across targets in parallel, converge to one ranked scorecard. kipimo still never calls a model API — you supply a generator command per target (any process that reads tasks JSONL on stdin and writes predictions JSONL on stdout; see examples/generate_predictions.py).

cat > generators.json <<'JSON'
{
  "gemma-3-12b":    "python generate_predictions.py --model gemma-3-12b",
  "inkubalm-0.4b":  "python generate_predictions.py --model inkubalm-0.4b",
  "kimi-k3":        ""
}
JSON

kipimo run generators.json --timeout 600 --workers 4

An untested target is UNKNOWN, never zero. If a generator crashes, times out, or is unconfigured, that target appears under untested with a reason — it is not ranked at 0.0. Conflating "the model failed the task" with "we never tested the model" is how an evaluation starts measuring its own assumptions instead of reality. Every scorecard also reports coverage, so a partial run cannot be misread as a ranking of the field.

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

kipimo-0.3.0.tar.gz (16.9 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

kipimo-0.3.0-py3-none-any.whl (14.1 kB view details)

Uploaded Python 3

File details

Details for the file kipimo-0.3.0.tar.gz.

File metadata

  • Download URL: kipimo-0.3.0.tar.gz
  • Upload date:
  • Size: 16.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/7.0.0 CPython/3.12.3

File hashes

Hashes for kipimo-0.3.0.tar.gz
Algorithm Hash digest
SHA256 540dc55b9343b9f6ff58186f1a14efa8ca22385070570acad0e2118ac5e17f3e
MD5 586bfa08b928fb07d9878cb76808f4b8
BLAKE2b-256 2ec90d33343b6fa3be5e10ac4cbfbeeddbe03a619db169ad0a522c604eb91738

See more details on using hashes here.

File details

Details for the file kipimo-0.3.0-py3-none-any.whl.

File metadata

  • Download URL: kipimo-0.3.0-py3-none-any.whl
  • Upload date:
  • Size: 14.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/7.0.0 CPython/3.12.3

File hashes

Hashes for kipimo-0.3.0-py3-none-any.whl
Algorithm Hash digest
SHA256 eaf81fc31b87ae863204a5fa2a74d4bc26240fdb847e701c2ce430a074456039
MD5 8f7b143ee64df3d36ef391a29f66c6af
BLAKE2b-256 f758ad3147cd3f5c5a2b5d6ea5029afdf049db6d4d81fd692b9efbee78bf45f2

See more details on using hashes here.

Release history Release notifications | RSS feed

0.4.0

2 files

This release

0.3.0 This release

2 files

0.2.2

2 files

0.2.1

2 files

0.2.0

2 files

0.1.0

2 files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page