Practical overview
When it fits
Use it when a Python-based NLP workflow needs dependency parsing and the input data can be prepared in CoNLL format.
Who it is for
- NLP researchers and developers building dependency-parsing workflows.
- Users comparing graph-based and transition-based parsing approaches.
- Practitioners with CoNLL-formatted data who want to train a parser or apply a trained model.
Documented uses
- Train a dependency parser from training and development data.
- Parse a CoNLL-formatted test file using a trained model.
- Experiment with graph-based and transition-based parser architectures.
Requirements & limits
- The graph-based parser is described as faster, while the transition-based parser is described as more accurate in the README's reported benchmark.
- The transition-based parser requires no POS tagging according to the README; setting all tags to NN is stated to produce the expected accuracy.
- External embeddings are optional during training and are described as better omitted for graph-based training.
- Prediction with the provided transition-based model requires the embeddings flag, while the provided first-order graph model should be used without it.
- The repository lists Python 2.7 and DyNet as required software.
Check current requirements in the official documentation. Source-based guidance does not mean OpenViST has run or independently tested this project.
Train a BIST dependency parser
Train a graph-based or transition-based parsing model from CoNLL-formatted training and development data.
Before you start
- Python 2.7 interpreter and the DyNet library.
- Training and development files formatted according to the CoNLL data format.
- Run the command from the relevant parser directory:
bmstparserfor graph-based parsing orbarchybridfor transition-based parsing.
Steps
Choose the parser architecture and change to its documented directory.
Run the command below.
python src/parser.py --dynet-seed 123456789 [--dynet-mem XXXX] --outdir [results directory] --train training.conll --dev development.conll --epochs 30 --lstmdims 125 --lstmlayers 2 [--extrn extrn.vectors] --bibi-lstmFor transition-based training, add
--k 3 --usehead --userlfor the README's stated optimal settings.Use the generated model and parameter files for the later prediction stage.
Expected outcome
Training results, including model and parameter files, are stored in the directory specified by `--outdir`.
Guide limitations
- External embeddings are optional and are stated to be better omitted when training or predicting a graph-based model.
- The README reports benchmark results on the Penn Treebank dataset; those figures are not a guarantee of results on other data.
- The prediction command is a separate next stage and requires the trained model and parameter file.
Parse a CoNLL test file with a trained model
Generate parsed CoNLL output from a test file using a previously trained model.
Before you start
- Python 2.7 interpreter and the DyNet library.
- A test file formatted according to the CoNLL data format.
- A trained model file and its parameter file generated during training.
Steps
Select the trained model and matching parameter file.
Run the command below.
python src/parser.py --predict --outdir [results directory] --test test.conll [--extrn extrn.vectors] --model [trained model file] --params [param file generate during training]If using the provided arc-hybrid model, include
--extrnand specify the external embeddings file; if using the provided first-order model, omit--extrn.Retrieve the resulting CoNLL file from the directory specified by
--outdir.
Expected outcome
The parser stores the parsed CoNLL file in the specified output directory.
Guide limitations
- The README's embedding guidance differs by model: use external embeddings with the provided arc-hybrid model and do not use them with the provided first-order model.
- The command requires a trained model and parameter file; their availability depends on training or obtaining the referenced model files.
Sources & review
Source record details
- Source availability
- Active
- Sources checked
- 18 October 2026
- Original website title
- elikip/bist-parser · Official homepage title · retained in its source language

