ner english fast

Providerflair
Categorytoken-classification
LicenseApache-2.0
Downloads91
Stars0

Overview

The 'ner-english-fast' model is a lightweight token-classification tool designed for high-throughput Named Entity Recognition (NER) tasks. Built on the Flair framework, it prioritizes inference speed without sacrificing significant accuracy, making it an ideal choice for real-time data pipelines where latency is a critical constraint. Unlike larger transformer-based models that require heavy GPU resources, this model is optimized for efficiency, allowing developers to extract entities like people, organizations, and locations from raw English text with minimal overhead. It integrates seamlessly into Python-based workflows via the Flair library, providing a pragmatic alternative for developers who need a reliable, fast-acting NER layer for preprocessing or information extraction tasks.

Highlights

  • Optimized for low-latency, high-throughput entity extraction
  • Seamless integration via the Flair NLP framework
  • Efficiently identifies standard English named entities
  • Apache-2.0 license for flexible commercial deployment

Usage

Install
# Install Hugging Face transformers
pip install transformers torch
SDK Usage
# Load model with transformers
from transformers import AutoModel, AutoTokenizer

model = AutoModel.from_pretrained("flair/ner-english-fast")
tokenizer = AutoTokenizer.from_pretrained("flair/ner-english-fast")

Hugging Face Download

We recommend downloading the model via the Hugging Face CLI or Hub SDK.

Guidance:Before downloading, install huggingface_hub with:

Guidance
pip install -U huggingface_hub

CLI Download

Download the full repository

Download the full repository
huggingface-cli download flair/ner-english-fast

Download a single file to a local folder (e.g. config.json into ./dir)

Download a single file to a local folder (e.g. config.json into ./dir)
huggingface-cli download flair/ner-english-fast config.json --local-dir ./dir

See the official docs for more CLI options

SDK Download

SDK Download
# 模型下载
from huggingface_hub import snapshot_download
model_dir = snapshot_download('flair/ner-english-fast')

Git Download

Make sure git-lfs is installed first

Git Download
git lfs install
git clone https://huggingface.co/flair/ner-english-fast

To skip LFS large-file downloads, use:

Skip LFS
GIT_LFS_SKIP_SMUDGE=1 git clone https://huggingface.co/flair/ner-english-fast

Model files are hosted on the Hugging Face Hub — download directly via HF CLI / SDK / Git, not through this site.

PyTorch / Transformers Usage

Install Transformers

Install Transformers
pip install -U transformers torch

Load the model and run inference

Load the model and run inference
from transformers import AutoModelForCausalLM, AutoTokenizer

model = AutoModelForCausalLM.from_pretrained('flair/ner-english-fast')
tokenizer = AutoTokenizer.from_pretrained('flair/ner-english-fast')

Model Download

We recommend downloading the model via the ModelScope CLI or SDK.

Guidance:Before downloading, install ModelScope with:

Guidance
pip install modelscope

CLI Download

Download the full repository

Download the full repository
modelscope download --model flair/ner-english-fast

Download a single file to a local folder (e.g. README.md into ./dir)

Download a single file to a local folder (e.g. README.md into ./dir)
modelscope download --model flair/ner-english-fast README.md --local_dir ./dir

See the docs for more CLI options

SDK Download

SDK Download
# 模型下载
from modelscope import snapshot_download
model_dir = snapshot_download('flair/ner-english-fast')

Git Download

Make sure git-lfs is installed first

Git Download
git lfs install
git clone https://www.modelscope.cn/flair/ner-english-fast.git

To skip LFS large-file downloads, use:

Skip LFS
GIT_LFS_SKIP_SMUDGE=1 git clone https://www.modelscope.cn/flair/ner-english-fast.git

ModelScope 模型页直接下载模型文件;无需将模型文件放在本站服务器。

Notebook Quickstart

Install the ModelScope library

Install the ModelScope library
pip install "modelscope[audio,cv,nlp,multi-modal,science]" -f https://modelscope.oss-cn-beijing.aliyuncs.com/releases/repo.html

Load the model and run inference

Load the model and run inference
from modelscope.pipelines import pipeline
from modelscope.utils.constant import Tasks

p = pipeline('text-generation', 'flair/ner-english-fast')

Full Documentation

来源: HuggingFace

---
tags:

  • flair

  • token-classification

  • sequence-tagger-model

language: en
datasets:
  • conll2003

widget:
  • text: "George Washington went to Washington"

---

English NER in Flair (fast model)

This is the fast 4-class NER model for English that ships with Flair.

F1-Score: 92,92 (corrected CoNLL-03)

Predicts 4 tags:

| tag | meaning |
|---------------------------------|-----------|
| PER | person name |
| LOC | location name |
| ORG | organization name |
| MISC | other name |

Based on Flair embeddings and LSTM-CRF.

---

Demo: How to use in Flair

Requires: Flair (pip install flair)

python
from flair.data import Sentence
from flair.models import SequenceTagger

load tagger

tagger = SequenceTagger.load("flair/ner-english-fast")

make example sentence

sentence = Sentence("George Washington went to Washington")

predict NER tags

tagger.predict(sentence)

print sentence

print(sentence)

print predicted NER spans

print('The following NER tags are found:')

iterate over entities and print

for entity in sentence.get_spans('ner'): print(entity)

This yields the following output:

code
Span [1,2]: "George Washington"   [− Labels: PER (0.9515)]
Span [5]: "Washington" [− Labels: LOC (0.992)]

So, the entities "*George Washington*" (labeled as a person) and "*Washington*" (labeled as a location) are found in the sentence "*George Washington went to Washington*".

---

Training: Script to train this model

The following Flair script was used to train this model:

python
from flair.data import Corpus
from flair.datasets import CONLL_03
from flair.embeddings import WordEmbeddings, StackedEmbeddings, FlairEmbeddings

1. get the corpus

corpus: Corpus = CONLL_03()

2. what tag do we want to predict?

tag_type = 'ner'

3. make the tag dictionary from the corpus

tag_dictionary = corpus.make_tag_dictionary(tag_type=tag_type)

4. initialize each embedding we use

embedding_types = [

# GloVe embeddings
WordEmbeddings('glove'),

# contextual string embeddings, forward
FlairEmbeddings('news-forward-fast'),

# contextual string embeddings, backward
FlairEmbeddings('news-backward-fast'),
]

embedding stack consists of Flair and GloVe embeddings

embeddings = StackedEmbeddings(embeddings=embedding_types)

5. initialize sequence tagger

from flair.models import SequenceTagger

tagger = SequenceTagger(hidden_size=256,
embeddings=embeddings,
tag_dictionary=tag_dictionary,
tag_type=tag_type)

6. initialize trainer

from flair.trainers import ModelTrainer

trainer = ModelTrainer(tagger, corpus)

7. run training

trainer.train('resources/taggers/ner-english', train_with_dev=True, max_epochs=150)

---

Cite

Please cite the following paper when using this model.

code
@inproceedings{akbik2018coling,
  title={Contextual String Embeddings for Sequence Labeling},
  author={Akbik, Alan and Blythe, Duncan and Vollgraf, Roland},
  booktitle = {{COLING} 2018, 27th International Conference on Computational Linguistics},
  pages     = {1638--1649},
  year      = {2018}
}

---

Issues?

The Flair issue tracker is available here.

Join our Telegram