class_docstr: Example of weight sharing between two different TorchModelV2s.
  
  The shared (single) layer is simply defined outside of the two Models,
  then used by both Models in their forward pass.
class_docstr_tok: ["Example","of","weight","sharing","between","two","different","TorchModelV2s",".","The","shared","(","single",")","layer","is","simply","defined","outside","of","the","two","Models",",","then","used","by","both","Models","in","their","forward","pass","."]
code: def value_function(self):
      assert self._output is not None, "must call forward first!"
      return torch.reshape(self.vf(self._output), [-1])
  
imports: import numpy
  from ray.rllib.models.modelv2 import ModelV2
  from ray.rllib.models.tf.tf_modelv2 import TFModelV2
  from ray.rllib.models.torch.misc import SlimFC
  from ray.rllib.models.torch.torch_modelv2 import TorchModelV2
  from ray.rllib.utils.annotations import override
  from ray.rllib.utils.framework import try_import_tf, try_import_torch
label_desc: Use image node_id 3 for calling the TorchSharedWeightsModel obj's underlying member method code with example usage: obj.value_function() and returns: torch