The runtime have the opportunity to share the model weights among multipleIModelInstanceRDGcreated from anIModelRDGinstance, however this is not mandatory. The caller can decide to convert the result into a shared pointer if required (e.g. if the model needs to be shared with an async task for evaluation).