wrapping multiple CoreML models into single MLFeatureProvider

Scenario: We have a situation where we have multple core ml models integrated and use some of them at given point of time based on inputs available.

Eg. One more takes parameter a, Second model takes parameter a,b and Third model takes a,b and c and so on.

When I integrate these models into App, currently getting individual MLFeatureProvider generated.

Instead would like to define my own MLFeatureProvider that takes all parameters a,b,c,d etc. and invoke prediction based on number of inputs in hand.

If user provided only parameter a, then would invoke model A's prediction.


Presently composition seems possible solution, to have variable of MLFeatureProvider and initiate to relevant model like

var model:MLFeatureProvider = First /Second / third and then invoke corresponding prediction.


Is there better way to define single MLFeatureProvider that takes say all the paramters and invoke prediction and it automatically chooses the relevant model?