Open-source developer infrastructure

The toolkit that makes
N-ATLaS easy to build with.

natlas-kit is a Python & TypeScript SDK and CLI for NCAIR's N-ATLaS language and speech models. Unified backends, reliable structured output, Nigerian-language tasks, speech-to-text and an eval harness, in the language you already use.

natlas-kit
The gap

N-ATLaS is powerful. Building on it isn't.

Every team re-solves the same four problems before writing a single line of their product. natlas-kit solves them once, for everyone.

1

No hosted API

You self-host. natlas-kit speaks TGI, vLLM/OpenAI-compatible and a mock backend out of the box.

2

Tricky templating

N-ATLaS uses a dated Llama-3 chat header that's easy to get wrong. natlas-kit builds it for you.

3

No structured output

Chat models don't reliably return JSON. extract() parses, repairs, validates and retries.

4

Scattered ASR

The speech models are separate repos. One ASRClient ties voice to the rest of the toolkit.

What you get

Everything you need to ship on N-ATLaS.

πŸ”Œ Unified backends

One client for TGI (Hugging Face Inference Endpoints), vLLM / OpenAI-compatible servers, and an offline mock for tests and CI.

🧩 Structured JSON

Turn free text into validated JSON with a tiny schema. Parsing, repair, type-coercion and retry are handled for you.

πŸ—£οΈ Nigerian-language tasks

Ready helpers for translate, detect-language, classify and summarize across English, Hausa, Igbo, Yoruba and Pidgin.

πŸŽ™οΈ Speech-to-text

An ASR client for the N-ATLaS speech models, so voice-first apps go from microphone to structured data in one toolkit.

πŸ“Š Eval harness

Measure your integration on the real model, prove it works and catch regressions in CI with natlas eval.

🐍 Python & TypeScript

The same API in both ecosystems, so web, React Native and ML teams can all build on N-ATLaS without leaving their stack.

Quickstart

Three lines to your first call.

python
# pip install git+https://github.com/nevodesigns/natlas-kit.git
from natlaskit import NatlasClient, extract

nat = NatlasClient.from_env()   # any N-ATLaS endpoint
nat.ask("Translate 'good morning' into Yoruba")
# -> "αΊΈ kaaro"

extract(nat, "Sold 2 brake pads for 15k to Musa on credit", {
  "item":   {"type": "string", "required": True},
  "amount": {"type": "number", "required": True},
  "on_credit": {"type": "boolean", "default": False},
})
# -> {"item":"brake pads","amount":15000,"on_credit":true}
typescript
// git clone + npm install (not yet on npm)
import { NatlasClient, extract } from "natlas-kit";

const nat = NatlasClient.fromEnv();

await nat.ask("Translate 'good morning' into Hausa");

await extract(nat, "Paid 6k for fuel today", {
  category: { type: "string", required: true },
  amount:   { type: "number", required: true },
});
// -> { category: "fuel", amount: 6000 }
Proven on real N-ATLaS

Measured on the live model. Ready for real applications.

natlas-kit was built to add Nigerian-language AI to EgoTrack, a ledger for market traders. It has been tested on the live N-ATLaS model in a Nigerian-language voice-to-structured-data workflow and is now open-sourced for every N-ATLaS builder.

5 / 7eval cases passing on a live N-ATLaS endpoint β€” real results, not cherry-picked.
~384 msaverage latency per call on a single GPU.
EN Β· Hausa Β· Igbo Β· Yoruba Β· Pidginthe languages real Nigerian users actually speak.
natlas-kit: EgoTrack voice-to-ledger
$ python examples/egotrack_voice_to_ledger.py

Heard (spoken in Pidgin):
  I sell one alternator for sixty-eight thousand
  give Emeka Motors, dem pay fifty, remaining go be credit.

Ledger entry:
{ "kind":"income", "item":"alternator",
  "amount":68000, "amount_paid":50000,
  "counterparty":"Emeka Motors", "on_credit":true }

β†’ Also opens a debt of ₦18,000 for Emeka Motors.

Build with N-ATLaS today.

Open source under MIT. Python and TypeScript. One pip install away.

Get it on GitHub β†—