← all repositories
Hironsan/anago

Keras NER without the linguistic plumbing

A Keras library that treats named-entity recognition as a generic sequence-labeling problem, no language-specific feature engineering required.

1.5k stars Python Language ModelsML Frameworks
anago
Velocity · 7d
+0.5
★ / day
Trend
steady
star history

What it does

anaGo wraps BiLSTM-CRF and ELMo models into a scikit-learn-ish API: fit, score, analyze, save/load. Feed it tokenized sentences and IOB-style labels; it handles the rest. The library targets NER, part-of-speech tagging, and similar sequence-labeling tasks across any language.

The interesting bit

The pitch is “no language dependent features” — you don’t hand-craft POS tags or morphological rules. The ELMo path (F1 92.22) is more involved than the basic Sequence model, but the README at least points you to the right modules and an example script rather than leaving you to reverse-engineer the architecture.

Key highlights

  • anago.Sequence() gets you training and tagging in a few lines
  • Pre-trained CoNLL-2003 English model available via download()
  • Character-level features and CRF layer included in the base stack
  • ELMo support via ELModel / ELMoTransformer for higher scores
  • GPU support and custom callback hooks

Caveats

  • Officially supports Python 3.4–3.6 only; unclear if it runs cleanly on modern Python
  • Documentation is marked “(coming soon)” — the README and code examples are your docs
  • The basic model hits 0.802 F1 out of the box; you need pre-trained embeddings (or ELMo) to approach the advertised 90.94+ scores

Verdict

Worth a look if you want a quick Keras-native NER baseline without SpaCy or Hugging Face overhead. Skip it if you need production maintenance or modern Python support; the repo hasn’t kept pace with the ecosystem.

heatdrop uses Google Analytics to see which pages get read — nothing else. Your call. How we handle data.