Hi shi_le, thanks for the additional info. It’s important to make sure your tensorflow and TFP versions are in alignment, and that there is only one version of each installed.
There are two release patterns for TF and TFP: nightly and stable, which I think you’ve noticed given your latest comment. You should avoid ever having both tensorflow and tf-nightly installed side by side, and similarly with TFP.
If you want to use tf-nightly, you should also use tfp-nightly. Every once in a while one of these fails to be pushed out on a given day, but usually they should both be there and even if they’re off by one or two days they should be compatible.
If you are using tensorflow==1.15, you will need to install an older TFP version, since we stopped supporting the 1.x line in new stable releases when TF stopped incrementing the stable 1.x versions. The last TFP version that should work with TF 1.15 was tensorflow_probability==0.8 (see the release notes here 1).
In general, when TFP publishes a new release, we note the compatible TF version in the release notes (see all of them here 3). Generally speaking we release stables in lock-step with TF. When they push a new stable, we do, too.
So, final advice: uninstall all the TF’s TFP’s and TF nightly’s and TFP nightly’s you have and then just install exactly the ones you want to use. Then things should work! Please let us know if not, or if I can clarify any of the above.