What's the difference between get_trace(0.0) and get_trace(1.0)

I am playing around with traces and I was wondering what the argument of .get_trace() in poutine effect handlers do, since they are not mentioned in the documentation.

It is evidently possible to get a trace by calling without any arguments: trace_inner = fn_inner.get_trace(), but some examples use arguments, but it is not clear what they do: tr = pyro.poutine.trace(lifted_model).get_trace(0.0), or old_trace = pyro.poutine.trace(model).get_trace(1.0).

So what is the difference?

Arguments of .get_trace(*args, **kwargs) are passed to the model. So in your case it gets the traces for lifted_model(0.0) and model(1.0), respectively. I believe the return type is wrong in the docs for pyro.poutine.trace. It should be TraceHandler and not TraceMessenger.