Dispatcher for model architectures.
This module handles model versioning, ensuring that trained models can be loaded even if the library's default architecture changes.
Adding a new architecture
- Create a new module e.g.
BinClass.Model.NewArchinlib/bin_class/model/new_arch.ex. - Implement
build/2in that module. - Add a new clause to
BinClass.Model.build/3:def build(:new_arch, vocab_size, opts), do: BinClass.Model.NewArch.build(vocab_size, opts) - Update
@model_versioninBinClass.Trainerto:new_arch.
Summary
Functions
Builds the model architecture based on the version.