class_docstr: Abstract base class for reparametrizer configuration strategies.
  
  Derived classes must implement the :meth:`configure` method.
  
  :ivar dict config: A dictionary configuration. This will be populated the
      first time the model is run. Thereafter it can be used as an argument
      to ``poutine.reparam(config=___)``.
class_docstr_tok: ["Abstract","base","class","for","reparametrizer","configuration","strategies",".","Derived","classes","must","implement","the",":","meth",":","`","configure","`","method",".",":","ivar","dict","config",":","A","dictionary","configuration",".","This","will","be","populated","the","first","time","the","model","is","run",".","Thereafter","it","can","be","used","as","an","argument","to","``","poutine.reparam","(","config=___",")","``","."]
docstr: Inputs a sample site and returns either None or a
  :class:`~pyro.infer.reparam.reparam.Reparam` instance.
  
  This will be called only on the first model execution; subsequent
  executions will use the reparametrizer stored in ``self.config``.
  
  :param dict msg: A sample site to possibly reparametrize.
  :returns: An optional reparametrizer instance.
docstr_tok: ["Inputs","a","sample","site","and","returns","either","None","or","a",":","class",":","`","~pyro.infer.reparam.reparam.Reparam","`","instance",".","This","will","be","called","only","on","the","first","model","execution",";","subsequent","executions","will","use","the","reparametrizer","stored","in","``","self.config","``",".",":","param","dict","msg",":","A","sample","site","to","possibly","reparametrize",".",":","returns",":","An","optional","reparametrizer","instance","."]
code: def configure(self, msg: dict) -> Optional[Reparam]:
      """
      Inputs a sample site and returns either None or a
      :class:`~pyro.infer.reparam.reparam.Reparam` instance.
  
      This will be called only on the first model execution; subsequent
      executions will use the reparametrizer stored in ``self.config``.
  
      :param dict msg: A sample site to possibly reparametrize.
      :returns: An optional reparametrizer instance.
      """
      raise NotImplementedError
  
imports: from abc import ABC, abstractmethod
  from typing import Callable, Dict, Optional, Union
  import torch
  from torch.distributions import constraints
  import pyro.distributions
  import pyro.poutine
  from .loc_scale import LocScaleReparam
  from .projected_normal import ProjectedNormalReparam
  from .reparam import Reparam
  from .softmax import GumbelSoftmaxReparam
  from .stable import LatentStableReparam, StableReparam, SymmetricStableReparam
  from .transform import TransformReparam
label_desc: Use image node_id 2 for calling the Strategy obj's underlying member method code with example usage: obj.configure(msg) without return types