blob: af8a25b5315a609fd8460b5042e3ff1cf9c1b5a6 [file] [log] [blame] [view]
# Getting Started with Python
IREE has Python bindings geared towards lower level compiler interop that are
not intended to be a public API, and integration with Python frontends such as
TensorFlow.
We do not yet provide a pip package for easy installation, so to use IREE's
Python bindings you must build from source.
## Prerequisites
You should already have IREE cloned and building on your machine. See the other
[getting started guides](../get-started) for instructions.
> Note:<br>
> &nbsp;&nbsp;&nbsp;&nbsp;Support is best with Bazel.
> For CMake (excluding TensorFlow), set the `IREE_BUILD_PYTHON_BINDINGS` option.
## Python Setup
Install a recent version of [Python 3](https://www.python.org/downloads/) and
[pip](https://pip.pypa.io/en/stable/installing/), if needed.
Install packages:
```shell
$ python3 -m pip install --upgrade pip
$ python3 -m pip install numpy
# If using the TensorFlow integration
$ python3 -m pip install tf-nightly
```
## Running Python Tests
To run tests for core Python bindings built with CMake:
```shell
$ cd build
$ ctest -L bindings/python
```
To run tests for core Python bindings built with Bazel:
```shell
$ bazel test bindings/python/...
```
To run tests for the TensorFlow integration, which include end-to-end backend
comparison tests:
```shell
# Exclude tests that are skipped in the Kokoro CI
$ bazel test \
--build_tag_filters="-nokokoro" \
--test_tag_filters="-nokokoro" \
--define=iree_tensorflow=true \
integrations/tensorflow/...
```
## Using Colab
See
[start_colab_kernel.py](https://github.com/google/iree/blob/main/colab/start_colab_kernel.py)
and [Using Colab](../using_iree/using_colab.md) for setup instructions, then
take a look through the
[Colab directory](https://github.com/google/iree/tree/main/colab) for some
sample notebooks.