Hello! Without going too much into detail about why converting to Float32 doesn’t work, have you tried using an alternative AD backend such as Mooncake or Enzyme? Although please note that both of these require Julia 1.11 for now, as they haven’t yet been fully updated to work with Julia 1.12.
Example code for Mooncake:
using Turing, Mooncake
# define model exactly the same way...
posterior_prediction = sample(model, NUTS(; adtype=AutoMooncake()), 100)