Created by: oserikov
this PR contains the global GO-bot logic refactoring.
-
removed
obs_size
config param: the model' input size is now derived from the params. - NLU logic moved to NLUManager
- text vectorization moved to TextVectorizer
- NLG logic moved to NLGManager
- policy NN logic moved to PolicyNetwork class
- DTO classes introduced for training data entries, configs and shared params
requires more testing before merge
found bugs (not fixed yet):
- possible GPU bug when gobot_best config is used
- possible bug when GLOVE embeddings are used
todo:
- logic
- backward compatibility of configs and model serialization\deserialization
- test on every config with and without gpu, log both execution time and performance
- simplify config logic: remove conflicting params
- configs could be stored in properly serializable objects but not dicts
- allow to easily configure logging level for parts of GO-bot pipeline
- architecture
- proper OOP for trackers and multiple users tracking
- remove redundant code duplication in features and targets classes
- meaningful typehinting for NLU and NLG: trackers, intent extractor, slotfiller, embedders are more than just
Component
s
- improvements
- simplify templates files composition
- remove redundant code and datasets duplication for dstc2 cases