GitHunt
BU

busunkim96/tfx-bsl

Common code for TFX

TFX Basic Shared Libraries

Python
PyPI

TFX Basic Shared Libraries (tfx_bsl) contains libraries shared by many
TensorFlow eXtended (TFX) components.

Only symbols exported by sub-modules under tfx_bsl/public are intended for
direct use by TFX users
, including by standalone TFX library (e.g. TFDV, TFMA,
TFT) users, TFX pipeline authors and TFX component authors. Those APIs will
become stable and follow semantic versioning once tfx_bsl goes beyond 1.0.

APIs under other directories should be considered internal to TFX
(and therefore there is no backward or forward compatibility guarantee for
them).

Each minor version of a TFX library or TFX itself, if it needs to
depend on tfx_bsl, will depend on a specific minor version of it (e.g.
tensorflow_data_validation 0.14.* will depend on, and only work with,
tfx_bsl 0.14.*)

Installing from PyPI

tfx_bsl is available as a PyPI package.

pip install tfx-bsl

Nightly Packages

TFX-BSL also hosts nightly packages at https://pypi-nightly.tensorflow.org on
Google Cloud. To install the latest nightly package, please use the following
command:

pip install -i https://pypi-nightly.tensorflow.org/simple tfx-bsl

This will install the nightly packages for the major dependencies of TFX-BSL
such as TensorFlow Metadata (TFMD).

However it is a dependency of many TFX components and usually as a user you
don't need to install it directly.

Build with Docker

If you want to build a TFX component from the master branch, past the latest
release, you may also have to build the latest tfx_bsl, as that TFX component
might have depended on new features introduced past the latest tfx_bsl
release.

Building from Docker is the recommended way to build tfx_bsl under Linux,
and is continuously tested at Google.

1. Install Docker

Please first install docker and
docker-compose by following the
directions.

2. Clone the tfx_bsl repository

git clone https://github.com/tensorflow/tfx-bsl
cd tfx-bsl

Note that these instructions will install the latest master branch of tfx-bsl.
If you want to install a specific branch (such as a release branch), pass
-b <branchname> to the git clone command.

3. Build the pip package

Then, run the following at the project root:

sudo docker-compose build manylinux2010
sudo docker-compose run -e PYTHON_VERSION=${PYTHON_VERSION} manylinux2010

where PYTHON_VERSION is one of {37, 38}.

A wheel will be produced under dist/.

4. Install the pip package

pip install dist/*.whl

Build from source

1. Prerequisites

Install NumPy

If NumPy is not installed on your system, install it now by following these
directions
.

Install Bazel

If Bazel is not installed on your system, install it now by following these
directions
.

2. Clone the tfx_bsl repository

git clone https://github.com/tensorflow/tfx-bsl
cd tfx-bsl

Note that these instructions will install the latest master branch of tfx_bsl
If you want to install a specific branch (such as a release branch),
pass -b <branchname> to the git clone command.

3. Build the pip package

tfx_bsl wheel is Python version dependent -- to build the pip package that
works for a specific Python version, use that Python binary to run:

python setup.py bdist_wheel

You can find the generated .whl file in the dist subdirectory.

4. Install the pip package

pip install dist/*.whl

Supported platforms

tfx_bsl is tested on the following 64-bit operating systems:

  • macOS 10.12.6 (Sierra) or later.
  • Ubuntu 16.04 or later.
  • Windows 7 or later.

Compatible versions

The following table is the tfx_bsl package versions that are compatible with
each other. This is determined by our testing framework, but other untested
combinations may also work.

tfx-bsl apache-beam[gcp] pyarrow tensorflow tensorflow-metadata tensorflow-serving-api
GitHub master 2.31.0 2.0.0 nightly (1.x/2.x) 1.4.0 2.6.0
1.4.0 2.31.0 2.0.0 1.15 / 2.6 1.4.0 2.6.0
1.3.0 2.31.0 2.0.0 1.15 / 2.6 1.2.0 2.6.0
1.2.0 2.31.0 2.0.0 1.15 / 2.5 1.2.0 2.5.1
1.1.0 2.29.0 2.0.0 1.15 / 2.5 1.1.0 2.5.1
1.0.0 2.29.0 2.0.0 1.15 / 2.5 1.0.0 2.5.1
0.30.0 2.28.0 2.0.0 1.15 / 2.4 0.30.0 2.4.0
0.29.0 2.28.0 2.0.0 1.15 / 2.4 0.29.0 2.4.0
0.28.0 2.28.0 2.0.0 1.15 / 2.4 0.28.0 2.4.0
0.27.1 2.27.0 2.0.0 1.15 / 2.4 0.27.0 2.4.0
0.27.0 2.27.0 2.0.0 1.15 / 2.4 0.27.0 2.4.0
0.26.1 2.25.0 0.17.0 1.15 / 2.3 0.27.0 2.3.0
0.26.0 2.25.0 0.17.0 1.15 / 2.3 0.27.0 2.3.0