Adding custom analyzers¶
To add support for new ML library or new types of data, you need to implement a hook for analyzer and the type it produces.
Model support¶
For models, you need to implement BindingModelHook, ModelWrapper and ModelIO.
BindingModelHook should check an object if it is the object that you want to add support for (for example, check it’s base module to be the library you providing support for). Result of _wrapper_factory() must be an instance of ModelWrapper implementation you provided. We recommend to mixin TypeHookMixin to simplify hook implementation. Even if it’s not possible please provide valid_types value anyway.
In ModelWrapper you must implement _exposed_methods_mapping() method and constructor which creates corresponding ModelIO subclass instance.
In ModelIO you must implement dump() and load() methods.
Data type support¶
For data types, you need to implement DatasetHook and DatasetType.
DatasetHook should check an object if it is the object that you want to add support for (for example, check it’s base module to be the library you providing support for). Result of process() must be an instance of DatasetType implementation you provided.
In DatasetType you must implement methods serialize(), deserialize() and get_spec().