What is the difference between tf-nightly and tensorflow in PyPI?

Just to add to what Ben Souchet wrote:

  1. As its name suggests, the tf-nightly pip package is built and released to PyPI every night (barring any build failures, which happens rarely). As a result, you can see an almost once-per-day version update history. It has the latest features close to the HEAD of the master branch of github.com/tensorflow. Therefore, if you want the latest features, improvements and bug fixes, such as the ones committed after the last stable tensorflow release (see below), you should use pip install tf-nightly. But the downside is that because tf-nightly releases are not subject to the same strict set of release testing as tensorflow, it'll occasionally include bugs that will be fixed later. Also, since it's built from HEAD, it'll reflect intermediate developments status such as incompleteness in features.

  2. The tensorflow pip package is released by a semantic-version-based schedule. A new version is pushed out approximately once 2-6 months. Due to the comprehensive set of release testing jobs, the quality is higher than tf-nightly. The documentation on https://www.tensorflow.org/api_docs/python/ is updated once per minor version bump in the tensorflow pip package.

The Nightly is used to get earlier access to the latest tensorflow development ideas, this version is daily updated. It's the same as with browsers (see here).

Which one is reliable?

The classic tensorflow pip install tensorflow is the most reliable of the two. this version has been tested by lot of people before being released.