text: Title: Exclude_deterministic argument in Predictive does not apply for models with discrete latents
  Body: See the forum issue https://forum.pyro.ai/t/enumerate-support-for-batch-dimensions-of-custom-distribution/7656/4
  
  We need to move the logic of exclude_deterministic to the `infer_discrete` branch https://github.com/pyro-ppl/numpyro/blob/3cde93d0f25490b9b90c1c423816c6cfd9ea23ed/numpyro/infer/util.py#L793-L818