OpenViSTAI · Agents · Blockchain · Crypto
Menu
AI Developer Tools & SDKs

NCRF++

NCRF++ is an open-source Python toolkit built on PyTorch for configuring, training and decoding neural sequence-labeling models. Its architecture combines character-level representations, word-level sequence models and a softmax or CRF inference layer.

Independent OpenViST project profile, based on linked sources.

NCRF++ — OpenViST project profile in AI Developer Tools & SDKs.
OpenViST project illustration. See the linked sources for product details.
Understand the project

Practical overview

When it fits

Use NCRF++ when you want a configurable Python/PyTorch framework for training and decoding sequence-labeling models, and can prepare data in a supported tag format.

Who it is for

  • NLP developers building sequence taggers
  • Researchers comparing neural sequence-labeling model structures
  • Practitioners working on named-entity recognition, part-of-speech tagging, segmentation or related labeling tasks

Documented uses

  • Configure and train a neural model for sequence labeling.
  • Decode labeled sequences, including N-best candidates with probabilities.
  • Choose character- and word-level model components and a softmax or CRF output layer.
  • Add handcrafted input features or extend the model layers with custom modules.
Before you choose

Requirements & limits

The repository describes NCRF++ as open source and lists an Apache-2.0 license.

  • The documented requirements are Python 2 or 3 and PyTorch 1.0; a separate PyTorch 0.3-compatible version is linked.
  • The main workflow is configuration-file driven, with sample data and configurations included in the repository.
  • BIO and BIOES/BMES are supported; IOB is not directly supported, though the repository includes a conversion script.
  • The available model choices include character LSTM, GRU and CNN representations; word LSTM, GRU and CNN sequence models; and softmax or CRF inference.

Check current requirements in the official documentation. Source-based guidance does not mean OpenViST has run or independently tested this project.

Source-based practical guide

Run the documented training and decoding stages

Use the repository’s included configuration files to start model training and decoding.

Before you start

  • Python 2 or 3
  • PyTorch 1.0
  • Repository sample data and configuration files

Steps

  1. Prepare a configuration file for the desired model and task; the configuration controls model structure, I/O, training settings and hyperparameters.

  2. Start training with the command below.

    Documented command
    python main.py --config demo.train.config
  3. Run decoding with the command below.

    Documented command
    python main.py --config demo.decode.config

Expected outcome

The documented workflow invokes NCRF++ in training and decoding modes using the selected configuration files.

Guide limitations

  • The README documents BIO and BIOES/BMES tags; IOB requires conversion using the included tag-scheme converter.
  • These are the repository’s documented commands, not a report of an execution test.
COMPARE OPTIONS

Compare options for Model inference and serving

These projects document a common task and share a project role. This is a source-based comparison, not an execution benchmark or a guarantee of interchangeability.

ProjectDocumented purposePlatformAccess and requirements
NCRF++Configure and train a neural model for sequence labeling.The repository describes NCRF++ as open source and lists an Apache-2.0 license.
HyperposeCustomize pose-estimation architectures and datasets.Docker, Linux, macOS, Windows
Multi Task NlpDefine multiple tasks and their data and model settings in a YAML file.Linux, macOS, WindowsThe project is an open-source library under the Apache-2.0 license, distributed through its public GitHub repository.
Evidence and transparency

Sources & review

Source record details
Source availability
Active
Sources checked
15 October 2026
Original website title
jiesutd/NCRFpp · Official homepage title · retained in its source language