v1.2.0
This Saturday marks the 4 year anniversary since the initial release of ParlAI. I'd like to offer my sincere gratitude to our users, our contributors, and all of the core development team. ParlAI wouldn't be what it is without all of you. -@stephenroller
Major new features
Background Preprocessing
Improve your training speeds by 1.25x-5.0x by switching from --num-workers 0
to --num-workers N
. See our Speeding up training docs for details. (#3527, #3586, #3575, #3533, #3389)
(Beta) Support for torch.jit
Deploy faster models by exporting models with TorchScript. Currently limited to BART models only. (#3459)
Support for T5
We now have agents for Google's T5 models (#3519)
Opt Presets
Opt presets. Easily use prepackaged opt files as shorthand for long command line arguments (#3564)
Log/validate/stop based on number of steps
Get up to a 10% speedup of distributed training by switching from -vtim
or -veps
to -vstep
(#3379, #3555)
Backwards-incompatible changes
- DictionaryAgent.text2vec now requires input to be a string (#3472)
- A number of older projects have been archived: DrQA (#3559), Controllable Dialogue (#3557), and Self-Feeding Chatbot (#3557).
Minor improvements
- Performance speedup in generation using Transformer Generators (#3550)
- Improvements to the Transformer API, making Transformer models more easily extensible. More to come soon. (#3486, #3545, #3466, #3501)
- Various performance improvements when loading ParlAI or performing some activities (#3544, #3482)
- Metrics:
- Self-chat can now use seed messages (#3580)
- New "normalized" ConvAI2 teachers for the non-standard variants (#3509)
- Update FusedAdam support to use FairScale (#3522)
- Add --wandb-entity flag to the logger (#3562)
- Tensorboard now provides nicer names of metrics (#3534)
Bugfixes
- [core] Fix a bug when resuming with the cosine LR scheduler after preemption (#3599)
- [core] Improve robustness to serialization of Observations (#3591)
- [core] ParlaiDialogTeacher now parses the
rewards
field as a number (#3517) - [core] Fix recently introduced ChunkTeacher bugs (#3549, #3542, #3543)
- [core] Minor FP16 fixes when converting old checkpoints (#3514)
- [core] Fix annoying ambiguity issues with commandline parsing in Python 3.8 (#3598)
- [core] Fix a rare situation in case a dictionary contained tokens with leading whitespace (#3613)
- [mutators] Fix a bug with the flatten mutator providing the wrong history (#3578, #3584)
- [metrics] Fix a bug with computation of fairseq metrics (#3518)
- [task] Fix a bug with Wizard of Wikipedia teacher causing some data to be omitted (#3585)
- [task] Fix a crash in Wizard of Wikipedia end2end agent when given zero documents (#3602)
- [task] Update a dead dataset to a new link (#3520)
- [task] Fix an issue with CCPE (#3487)
- [tga] Fix a case where TGA used as a ranking model could crash (#3541)
- [agent] Fix a crash in BertDictionaryAgent (#3560)
- [other] Various rare issues (#3505) and quality improvements (#3496)
Crowdsourcing improvements
- Add new option to avoid randomizing pairs in ACUTE-Eval (#3528)
- ACUTE-Eval provides additional warnings when options are not set to recommended values (#3536, #3524)
New Datasets
Doc improvements
- New tutorial: How to write a PR contributing (moving to a fork) tutorial (#3490)
- New reference manual of standard ParlAI metrics (#3498)
- Fix a bug keeping some tasks from being listed in our docs (#3495)
- Various minor doc changes (#3513, #3561, #3596)
Developer improvements
- Update to pytorch 1.8. No changes necessary. (#3607)
- Various reliability improvements and speed ups to our CI and tests (#3603, #3597, #3604, #3606, #3605, #3587, #3588, #3590, #3539, #3535, #3526, #3521)
- Various dependency bumps (#3553, #3537, #3515)
- Switched logging.warn to logging.warning (#3569)
- TorchAgent.history prettier debug printing (#3510)
- Small other improvements (#3506)