· Evaluation report
NaviKinase 1.0: evaluation of a domain-specific protein language model for the phosphotransferase superfamily
How NaviKinase performs on sequences it never saw in training, and how it compares with ESM-2 and ProtGPT2.
NaviKinase 1.0 is a 149.6M-parameter decoder-only transformer trained on Apple Silicon via MLX. It speaks the language of kinases: 2.45M UniProtKB sequences, one enzyme superfamily.
| Architecture | Decoder-only transformer |
| Normalisation | Pre-norm RMSNorm |
| Position encoding | RoPE |
| Layers | 18 |
| d_model | 832 |
| Attention heads | 13 (head dim 64) |
| FFN dimension | 3,328 |
| Context length | 1,024 tokens |
| Precision | fp32 |
| Framework | MLX |
· Evaluation report
How NaviKinase performs on sequences it never saw in training, and how it compares with ESM-2 and ProtGPT2.
NaviKinase doesn’t speak English — there’s no chat template, no instruction-following. It speaks amino acid sequences. Everything around it is tooling that makes that useful.
Generate from scratch, condition on one of 14 EC 2.7.- sub-subclasses, or continue a real sequence you provide.
Teacher-forced loss over a real sequence — a plausibility signal for how “kinase-like” it reads to the model.
A pattern-matching router (not an LLM) that maps natural requests onto the tools — and asks rather than guesses when it matters.
Real UniProt accession fetches and PubMed citation search — the only parts of this release that need internet access.
“Research protein X” chains fetch → score → classify → motif scan → literature search into one synthesised report.
Regex checks for canonical catalytic motifs — P-loop, HRD, DFG — as a cheap directional signal, not a benchmark.
Real structure prediction via ESMFold — a genuinely different model, called on NaviKinase’s output or any fetched sequence.
Every fresh generation carries an automatic notice: treat output as an unvalidated hypothesis, not a confirmed protein.
UniProtKB entries with EC 2.7.-, 30–2000 residues, non-fragment — deduplicated at the UniRef90 cluster level so near-identical bacterial strain variants can’t dominate training, with train/val/test split kept at the same cluster level.
Each example is packed as <BOS> <EC-tag> residues <EOS>, conditioning generation on one of 14 EC 2.7.- sub-subclasses, or <EC_UNKNOWN> for the ~3.3% without a recognised one.
Betas 0.9/0.95, weight decay 0.1, peak LR 3e-4, effective batch size 64 (batch 4 × grad-accum 16) over a 1,024-token context.
Automatic checkpointing, power-aware pause/resume, and crash recovery via launchd — designed for unattended runs on constrained hardware without a dedicated server environment.
chat.py is keyword/regex pattern matching, not a language model, and says so rather than guessing on an unrecognised request.score.py --classify is an improvised proxy — the model was never trained as a classifier.Use, share, and adapt NaviKinase 1.0 freely for non-commercial purposes with attribution. Weights, code, and tokeniser are covered.
Any use intended to generate revenue requires prior written permission. Reach out and we’ll work out terms.
jaydev.bhatt@navitratech.comPull the weights, run it locally with MLX, and see what a purpose-built, single-family protein model can do.