# apache/opennlp

Apache OpenNLP

Repository: https://github.com/apache/opennlp
Canonical: https://ross.abutalabs.com/products/opennlp
Homepage: https://opennlp.apache.org/
Language: Java
License: Apache-2.0
License Family: permissive
Topics: opennlp, apache, compling, nlp, textprocessing, languagetechnology
Last push: 2026-08-26T11:16:26+00:00

## Health v2 (maintenance only)
Score: 97/100 (v2, computed 2026-09-02T17:46:02.011165+00:00)
- activity 99, release rhythm 94, longevity 100
- inputs: {"age_days": 5411, "days_push": 7, "days_rel": 40, "gap_med": 27.0, "n_releases_24m": 19}
- flags: none
- formula: round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)

## Adoption (not part of the score)
Stars 1602, forks 504 (observed 2026-08-28T04:05:09.765762+00:00)

## What it is
Apache OpenNLP is a machine learning based Java toolkit for processing natural language text, supporting tasks like tokenization, sentence segmentation, POS tagging, named entity extraction, chunking, parsing, and language detection. It can be used programmatically via its Java API or from the command line, and includes pre-trained models for many languages.

## Use cases
- tokenize and sentence-split text in a Java application
- extract named entities like people and organizations from documents
- tag parts of speech in text
- detect the language of a document
- train custom NER or POS tagging models from annotated data
- resolve coreferences in text
- integrate NLP into Spark, Flink, or NiFi pipelines

## When to choose
- you need classic NLP tasks in a JVM-based application
- you want a mature, permissively licensed toolkit with pre-trained models for many languages
- you need to train your own models from annotated training data
- you want a CLI for quick text processing without writing code

## When to avoid
- you need state-of-the-art transformer-based NLP accuracy
- you work primarily in Python and prefer spaCy or Hugging Face
- you need deep learning pipelines out of the box

## Facets
- artifact type: library
- maturity: stable
- function: nlp, machine-learning, parser, cli
- domain: machine-learning, developer-tools
- platform: jvm, cli, cross-platform
- tags: tokenization, named-entity-recognition, part-of-speech-tagging, sentence-segmentation, language-detection, coreference-resolution, apache-software-foundation, pretrained-models, natural-language-processing

## Member repositories
- apache/opennlp (main) score 97

## Provenance
- Observed fields: from GitHub, fetched 2026-08-28T04:05:09.765762+00:00.
- Health v2: computed from the inputs above; adoption is never an input.
- Inferred fields (summary, facets, guidance): AI-extracted, prompt v1, taxonomy v1, on 2026-08-30T03:52:36.801611+00:00, confidence not recorded.
  - readme: https://github.com/apache/opennlp (fetched 2026-08-28T04:05:09.765762+00:00, sha cda262f5fa97)
  - homepage: https://opennlp.apache.org/ (fetched 2026-08-29T11:24:12.656369+00:00, sha f2bd5abf7040)
  - site_page: https://opennlp.apache.org/docs (fetched 2026-08-29T11:24:12.667351+00:00, sha 21c5e6404704)
  - site_page: https://opennlp.apache.org/download.html (fetched 2026-08-29T11:24:12.665414+00:00, sha 8b1395ab7914)
  - site_page: https://opennlp.apache.org/faq.html (fetched 2026-08-29T11:24:12.669064+00:00, sha e78eda8111f4)
- Data as of 2026-08-30T08:39:29.467469+00:00.
