Releases: isi-nlp/rtg
Releases · isi-nlp/rtg
v0.7.1: updated REST API; fix bfloat16 issue; dockers w/ both arm64, amd64
- Bfloat16 is not default and used only when it is available
/translate
REST API is updated- accepts params
lp_alpha
,beam_size
,num_hyp
- produces n-best hyps, scores, time taken per API call
- accepts params
- Web APP: relative paths to static files are correctly updated when base prefix is used
- Docker files are updated. multi-arch build with
linux/arm64
linux/amd64
have been released to docker hub
v0.7
- Improvements:
- Autocast / mixed precision:
bfloat16
instead offloat16
. Now we can train larger models on larger batches using 16bit float ops without loss becoming infinity!- WARNING: we need pytorch 1.10 or newer. Please upgrade!
- validation BLEU scores are computed without teacher forcing i.e., similar to inference. BLEU is more realistic estimate of test time bleu
- WARNING: validations can be slower. Dont use too big validation set
- schedule:
inverse_sqrt
support scaler multiplier term, similar tonoam
inverse_root
schedule added, generalization ofinverse_sqrt
- Autocast / mixed precision:
- fixes
rtg.prep
CLI arguments works now- optimizer state loading now works while resuming training
- parent model will be recreated if missing even after _PREPARED flag exists
v0.6.1
rtg.fork
accepts multiple to_dir; thus supports cloning multiple times at once- Bug fix: early stopping on distributed parallel training
rtg.tool.augment
to support data augmentations- Add attention visualization in rtg.serve; powered by plotly
- rtg.pipeline and rtg.fork: uses relative symlinks instead of absolute paths
- rtg.decode shows decoding speed (segs, src_toks, hyp_toks)
batch_size
is auto adjusted based on number of workers and gradient_accum (huh! finally)batch_size
normalizer in distributed training setting (fix! faster convergence now)- support for
byte
encoding added
v0.6.0
-
Redesign of registry; using decorators to register all modules
-
optim
block is split intooptimizer
schedule
andcriterion
; as a result,- this version is not backward compatible with prior versions Refer to migration guide
- Migration instruction: https://isi-nlp.github.io/rtg/v0.6.0/#migrate-to-0_6
NoamOpt
replaced withScheduledOptimizer
which takes scheduler and optimizer objects which are independently configurable from conf.yml
-
Transformer sequence classification model:
tfmcls
, supports initialization from pretrained NMT (picks encoder layers, source embeddings, and source vocabs from NMT experiment)
v0.5.2 - minor bug fixes
- Fix rtg.decode bug fix (partial migration to new API)
- test case added for decode api so we can catch such errors in future
0.5.1 - tfmcls, source preproc and target post proc,
- Add
rtg-params
command that shows trainable parameters in model (layer wise as well as total) rtg.serve
supports flexible transformations on source (pre processing) and target (post processing)- Travis build configured to auto run tests
- sequence classification is now supported via
tfmcls
model
0.5.0 - DDP , NLcodec + NLDb, scaling to large datasets
- DDP: multinode training see
scripts/slurm-multinode-launch.sh
- FP16 and mixed-precision (upgrade from APEX to torch's built in AMP)
- NLCodec & NLDb integration for scaling to large datasets using pyspark backend
- Web UI rtg-serve
- Cache ensemble state for rtg-decode
- Docker images for 500-eng model
- Parent-child transfer: Shrink parent model vocab and embeddings to child datasets
- Fix packaging of flask app: now templates and static files are also included in PyPI package
0.4.2
- Fix issue with dec_bos_cut complaining that tensors are not on contigous storage
- REST API
- Docker for deployment
Fix description type and platform type issues in setup.py
0.4.1 fix long_description_type as markdown to pypi
First release to PyPi
0.4.0 Fix classifiers of setup.py