Skip to the content.

Install TensorFlow Federated

There are a few ways to set up your environment to use TensorFlow Federated (TFF):

Install TensorFlow Federated using pip

See the TensorFlow pip install guide to set up your system for Python development and to create a virtualenv virtual environment to install packages:

virtualenv --python python3 "venv"
source ./venv/bin/activate
pip install --upgrade pip

Note: To exit the virtual environment, run deactivate.

Within the virtual environment, install the TensorFlow Federated pip package:

pip install --upgrade tensorflow_federated

To test your Tensorflow Federated installation:

python -c "import tensorflow_federated as tff; tff.federated_computation(lambda: 'Hello, World!')()"

Success: TensorFlow Federated is now installed.

Build the TensorFlow Federated pip package

Build the TensorFlow Federated pip package and install it on Ubuntu or macOS.

  1. Create a development environment using virtualenv or using Docker.
  2. Build the pip package.

Using virtualenv

Create a Tensorflow Federated development environment using virtualenv on Ubuntu or macOS.

1.Install the Python development environment.

On Ubuntu:

sudo apt update
sudo apt install python3-dev python3-pip  # Python 3
sudo pip3 install --upgrade virtualenv  # system-wide install

On macOS:

/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
export PATH="/usr/local/bin:/usr/local/sbin:$PATH"
brew update
brew install python  # Python 3
sudo pip3 install --upgrade virtualenv  # system-wide install

2. Install Bazel.

Install Bazel, the build tool used to compile Tensorflow Federated.

Note: Bazel version 0.19.2 or greater is required by TensorFlow Federated.

3. Clone the Tensorflow Federated repository.

git clone https://github.com/tensorflow/federated.git
cd federated

4. Create a virtual environment.

virtualenv --python python3 "venv"
source ./venv/bin/activate
pip install --upgrade pip

Note: To exit the virtual environment run deactivate.

5. Install Tensorflow Federated dependencies.

pip install --requirement requirements.txt

6. (Optional) Test Tensorflow Federated.

bazel test //tensorflow_federated/...

Success: The TensorFlow Federated package is built.

Using Docker

Create a Tensorflow Federated development environment using Docker on Ubuntu or macOS.

1. Install Docker.

Install Docker on your local machine.

2. Clone the latest Tensorflow Federated source.

git clone https://github.com/tensorflow/federated.git

3. Build a Docker image.

cd federated
docker build . --tag tensorflow_federated:latest

4. Start a Docker container.

docker run -it \
    --workdir /federated \
    --volume $(pwd):/federated \
    tensorflow_federated:latest \
    bash

5. (Optional) Test Tensorflow Federated.

bazel test //tensorflow_federated/...

Success: The TensorFlow Federated development environment is ready.

Build the pip package

Build the TensorFlow Federated pip package and install it on Ubuntu or macOS.

1. Build the pip package.

mkdir /tmp/tensorflow_federated
bazel build //tensorflow_federated/tools:build_pip_package
bazel-bin/tensorflow_federated/tools/build_pip_package /tmp/tensorflow_federated

2. Create a new project.

mkdir /tmp/project
cd /tmp/project

virtualenv --python python3 "venv"
source ./venv/bin/activate
pip install --upgrade pip

Note: To exit the virtual environment run deactivate.

3. Install the pip package.

pip install --upgrade "/tmp/tensorflow_federated/tensorflow_federated-"*".whl"

4. Test Tensorflow Federated.

python -c "import tensorflow_federated as tff; tff.federated_computation(lambda: 'Hello, World!')()"

Success: The TensorFlow Federated package is built.