awesome-repositories.com
Blog
MCP
awesome-repositories.com

Discover the best open-source repositories with AI-powered search.

ExploreCurated searchesOpen-source alternativesSelf-hosted softwareBlogSitemap
ProjectMCP serverAboutHow we rankPress
LegalPrivacyTerms
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com

Named Entity Recognition and Extraction

Ranking updated Jun 30, 2026

For a toolkit for entity extraction from text, the strongest matches are macanv/bert-bilstm-crf-ner (This repository provides a TensorFlow-based NER framework with BERT-BiLSTM-CRF), loadfive/knwl.js (Knwl) and stanfordnlp/corenlp (Stanford CoreNLP is a comprehensive Java NLP library with). microsoft/biogpt and rahulnyk/knowledge_graph round out the shortlist. Each is ranked by relevance to your query, popularity and recent activity.

Open-source libraries and frameworks for identifying entities and extracting structured information from unstructured text data.

Named Entity Recognition and Extraction

Find the best repos with AI.We'll search the best matching repositories with AI.
  • macanv/bert-bilstm-crf-nermacanv avatar

    macanv/BERT-BiLSTM-CRF-NER

    4,904View on GitHub↗

    This project is a named entity recognition framework and TensorFlow-based natural language processing model. It provides a pipeline for adapting pre-trained language models to specific entity recognition and text classification tasks. The system implements a sequence labeling architecture that combines transformer-based embeddings with bidirectional sequence modeling and conditional random field decoding. It includes tools for fine-tuning model weights and training the network to identify and categorize entities within unstructured text. The framework also includes a client-server architectu

    This repository provides a TensorFlow-based NER framework with BERT-BiLSTM-CRF architecture for fine-tuning and entity recognition, fitting the core need but lacking explicit support for relationship extraction, rule-based methods, or multi-language processing mentioned in your search.

    PythonNER Training ToolsBERT NER FrameworksNamed Entity Recognition
    View on GitHub↗4,904
  • loadfive/knwl.jsloadfive avatar

    loadfive/Knwl.js

    5,260View on GitHub↗

    Knwl.js is a JavaScript named entity recognition library and rule-based text parser. It serves as an extensible information extraction tool designed to identify and pull structured entities, such as dates, times, and locations, from unstructured text strings. The library allows for the definition of specialized rules and custom plugins to identify and extract unique pieces of information. This extensibility enables the automation of information retrieval by converting human-readable text into structured formats for applications and databases. The system utilizes regular expression matching a

    Knwl.js is a JavaScript library dedicated to named entity recognition and information extraction using rule-based pattern matching, which fits the core NER category, though it lacks pre-trained models, training capabilities, relationship extraction, and multi-language support.

    JavaScriptEntity and Relation ExtractionNamed Entity Recognition
    View on GitHub↗5,260
  • stanfordnlp/corenlpstanfordnlp avatar

    stanfordnlp/CoreNLP

    10,085View on GitHub↗

    CoreNLP is a Java natural language processing library designed to convert raw human language text into structured data. It utilizes a suite of linguistic annotators to analyze text through a pipeline, extracting grammatical structures, sentiment, and linguistic patterns. The project includes a coreference resolution engine that links multiple mentions of the same entity to maintain contextual consistency across documents. It also provides tools for named entity recognition to categorize people, companies, and locations, and a part-of-speech tagger to assign grammatical categories and base for

    Stanford CoreNLP is a comprehensive Java NLP library with full pipelines for named entity recognition, coreference resolution, rule-based extraction (tokensregex/semgrex), and document-level processing, directly matching your need for NER and information extraction with pre-trained models and API access.

    JavaNamed Entity Recognition
    View on GitHub↗10,085
  • microsoft/biogptmicrosoft avatar

    microsoft/BioGPT

    4,486View on GitHub↗

    BioGPT is a biomedical large language model and domain-specific transformer designed for processing and creating specialized medical text. It functions as a generative tool and knowledge extraction engine trained on large-scale scientific literature to produce human-like scientific prose and factual responses to queries. The project provides specialized capabilities for biomedical named entity recognition and the extraction of complex relations from unstructured medical corpora. It is designed to identify and classify biological entities through data mining and relation extraction to support

    BioGPT is a biomedical large language model that directly performs named entity recognition and relation extraction from scientific text, making it a fitting tool for this search—its value is strongest for biomedical domains rather than general multi-language or rule-based extraction.

    PythonRelation ExtractionMedical Relationship Extraction
    View on GitHub↗4,486
  • rahulnyk/knowledge_graphrahulnyk avatar

    rahulnyk/knowledge_graph

    2,978View on GitHub↗

    This project is a tool for transforming unstructured text into semantic knowledge graphs. It uses local language models to extract entities and their relationships, converting text corpora into a structured network of linked concepts. The system provides a web interface for interactive network visualization, allowing users to navigate the resulting nodes and edges. It includes a topology analysis tool that calculates node degrees and identifies community clusters to determine the visual size and color of graph elements. Beyond visualization, the project enables graph-based information retrie

    A tool that transforms unstructured text into semantic knowledge graphs by extracting entities and their relationships using local language models, which squarely addresses named entity recognition and information extraction, though it focuses on graph construction rather than offering a general-purpose NER library with all the listed features.

    Jupyter NotebookEntity Extraction PipelinesKnowledge Graph Extraction
    View on GitHub↗2,978
  • nltk/nltknltk avatar

    nltk/nltk

    14,649View on GitHub↗

    This project is a comprehensive Python toolkit designed for natural language processing, research, and education. It functions as a linguistic data processor that provides a standardized framework for managing, cleaning, and analyzing large collections of annotated text corpora and lexical resources. The library distinguishes itself through its integration of both symbolic and statistical methods, allowing users to perform complex tasks ranging from rule-based grammar parsing to machine learning-driven classification. It offers a modular pipeline for text processing, enabling the transformati

    NLTK is a comprehensive Python NLP library that includes built-in support for named entity recognition, information extraction, and rule-based extraction, making it a solid fit for this search even though it covers a broader range of NLP tasks.

    PythonCorpus Management ToolsEntity Extraction PipelinesInformation Extraction
    View on GitHub↗14,649
  • explosion/spacyexplosion avatar

    explosion/spaCy

    33,688View on GitHub↗

    spaCy is a Python natural language processing framework designed for industrial-scale text processing. It converts raw text into structured data for machine learning pipelines through a combination of statistical language model trainers, transformer-based text processors, and syntactic dependency parsers. The project enables the integration of pretrained transformer architectures to perform complex linguistic analysis and multi-task learning. It also provides a specialized system for neural named entity recognition to identify and categorize key entities within text. The framework covers a b

    spaCy is a production-ready NLP library that excels at named entity recognition and information extraction with pre-trained models, custom training, rule-based matching, multi-language pipelines, and a CLI—exactly the kind of tool this search targets.

    PythonDeep Learning NLP FrameworksIndustrial NLP PipelinesLanguage Model Trainers
    View on GitHub↗33,688
  • flairnlp/flairflairNLP avatar

    flairNLP/flair

    14,378View on GitHub↗

    Flair is a transformer-based natural language processing framework used to build and train models for text classification and sequence tagging. It provides a specialized library for generating contextual text embeddings and performing linguistic analysis. The framework includes dedicated tools for named entity recognition, including the identification of specialized biomedical entities across multiple languages. It further supports entity linking to map identified text mentions to unique entries within general or biomedical knowledge bases. The project covers a broad range of language analys

    Flair is a transformer-based NLP framework built specifically for named entity recognition and sequence tagging, providing pre-trained models, custom training, multi-language support, and entity linking — covering the core NER and information extraction needs this search is after.

    PythonContextual Embedding GenerationNatural Language ProcessingContextual Embeddings
    View on GitHub↗14,378
  • hankcs/hanlphankcs avatar

    hankcs/HanLP

    36,413View on GitHub↗

    HanLP is a natural language processing library and deep learning framework specifically optimized for the Chinese language, while also functioning as a multilingual text processor. It serves as a toolkit for performing linguistic analysis, semantic understanding, and script conversion. The project distinguishes itself through a dedicated focus on Chinese linguistic structures, including a specialized script converter for transforming text between Simplified Chinese, Traditional Chinese, and Pinyin. It further supports domain-specific model training to improve the recognition of professional t

    HanLP is a comprehensive NLP library that includes pre-trained NER models, custom entity training, and multilingual support, making it directly suitable for named entity recognition and information extraction, though its primary focus on Chinese text makes it a narrower fit than a general-purpose flagship.

    PythonMultilingual Text ProcessingInformation Extraction
    View on GitHub↗36,413
  • google/langextractgoogle avatar

    google/langextract

    36,898View on GitHub↗

    Langextract is a framework designed to transform unstructured text into structured, machine-readable data using language model orchestration. It provides a high-performance pipeline that processes large volumes of narrative text by utilizing parallel execution and sequential extraction passes. The library is built to handle complex data extraction tasks, including specialized support for clinical information and medical entity relationship recognition. The project distinguishes itself through a plugin-based architecture that supports both local hardware execution and cloud-hosted model endpoi

    Langextract is a Python framework that uses language model orchestration to extract structured data, entities, and relationships from unstructured text, making it a suitable open-source tool for named entity recognition and information extraction, though it relies on LLM-based processing rather than traditional pre-trained NER models and may require custom setup for rule-based extraction.

    PythonMedical Relationship Extraction
    View on GitHub↗36,898
  • zalandoresearch/flairzalandoresearch avatar

    zalandoresearch/flair

    14,378View on GitHub↗

    Flair is a natural language processing framework for training and applying models for sequence labeling and text classification. It provides a system for generating word embeddings and identifying semantic entities within text. The framework includes a dedicated system for zero and few-shot learning, enabling text classification and entity extraction using minimal training examples by leveraging pre-trained knowledge. Its capabilities cover named entity recognition, sentiment analysis, and the training of specialized models using custom datasets. It also includes tooling for the visual highl

    Flair is an NLP framework that excels at sequence labeling and text classification, making it a strong fit for named entity recognition; it supports custom model training and zero/few-shot learning, but its coverage of advanced information extraction features like relationship extraction is less explicit.

    PythonDeep Learning NLP FrameworksNamed Entity RecognitionNiche NLP Model Training
    View on GitHub↗14,378
  • allenai/allennlpallenai avatar

    allenai/allennlp

    11,889View on GitHub↗

    AllenNLP is a PyTorch-based research library and deep learning language toolkit designed for developing and training neural network architectures for linguistic tasks. It provides a distributed training system that coordinates data and gradients across multiple GPUs and a framework for integrating pretrained transformer architectures. The system distinguishes itself with a dedicated algorithmic bias mitigation tool used to identify and reduce bias in linguistic model predictions. It also includes model influence analysis to interpret predictions by calculating the influence of specific traini

    AllenNLP is a deep learning NLP library built on PyTorch that provides a framework for building and training models for tasks like named entity recognition and information extraction, with support for pretrained transformers and custom training pipelines that align with the desired capabilities.

    PythonDeep Learning ToolkitsPyTorch-Based FrameworksComponent Registries
    View on GitHub↗11,889
  • yuanxiaosc/entity-relation-extractionyuanxiaosc avatar

    yuanxiaosc/Entity-Relation-Extraction

    1,231View on GitHub↗

    Entity-Relation-Extraction is a machine learning framework designed to identify entities and their logical connections within unstructured text. It functions as a pipeline that transforms raw documents into structured knowledge graphs by utilizing deep learning models and transformer architectures. The project distinguishes itself through a schema-driven approach, which maps extracted information to predefined relational templates to ensure output consistency. It employs a multi-stage process that combines sequence-labeling token classification with contextual encoding to delineate entity bou

    This repository implements a pipeline for entity and relation extraction using TensorFlow and BERT, directly addressing named entity recognition and information extraction, though it is a competition-specific solution rather than a general-purpose library, which fits your search but may require adaptation for broader use.

    PythonEntity and Relation Extraction
    View on GitHub↗1,231
  • baidu/information-extractionbaidu avatar

    baidu/information-extraction

    329View on GitHub↗

    InfoExtractor is an information extraction baseline system based on the Schema constrained Knowledge Extraction dataset(SKED). InfoExtractor adopt a pipeline architecture with a p-classification model and a so-labeling model which are both implemented with PaddlePaddle. The p-classification…

    Baidu/information-extraction is a PaddlePaddle-based pipeline for named entity recognition and relation extraction on the SKED dataset, which fits the core task but is narrow in scope, lacking multi-language support, spaCy integration, and rule-based extraction features requested.

    PythonInformation Extraction
    View on GitHub↗329
  • crownpku/information-extraction-chinesecrownpku avatar

    crownpku/Information-Extraction-Chinese

    2,265View on GitHub↗

    Chinese Named Entity Recognition with IDCNN/biLSTM+CRF, and Relation Extraction with biGRU+2ATT 中文实体识别与关系提取

    This repository provides a complete pipeline for Chinese named entity recognition and relation extraction using deep learning models, fitting the intent for an NLP library in this domain but limited to Chinese language.

    PythonInformation Extraction
    View on GitHub↗2,265
  • hazyresearch/snorkelH

    HazyResearch/snorkel

    0View on GitHub↗

    Snorkel is a programmatic data-labeling and model-training framework built for information extraction, enabling custom NER, relation extraction, and rule-based extraction through labeling functions—it fits the category as a tool for building extraction systems, though it requires users to create their own training data rather than offering out-of-the-box pre-trained models.

    Information Extraction
    View on GitHub↗0
Compare the top 10 at a glance
RepositoryStarsLanguageLicenseLast push
macanv/bert-bilstm-crf-ner4.9KPython—Feb 24, 2021
loadfive/knwl.js5.3KJavaScriptMITSep 28, 2023
stanfordnlp/corenlp10.1KJavaGPL-3.0Jun 3, 2026
microsoft/biogpt4.5KPythonmitJul 25, 2024
rahulnyk/knowledge_graph3KJupyter NotebookmitFeb 12, 2026
nltk/nltk14.6KPythonApache-2.0Jun 11, 2026
explosion/spacy33.7KPythonMITMay 19, 2026
flairnlp/flair14.4KPythonNOASSERTIONOct 27, 2025
hankcs/hanlp36.4KPythonApache-2.0Nov 15, 2025
google/langextract36.9KPythonApache-2.0May 21, 2026

Related searches

  • a library for natural language processing
  • a toolkit for text sentiment analysis
  • a toolkit for document chunking and embedding
  • a pipeline for domain-adaptive pretraining
  • an ocr tool for extracting text
  • a library for generating text embeddings
  • a toolkit for dataset cleaning and curation
  • a graph-based RAG framework