forked from tensorflow/tensor2tensor
-
Notifications
You must be signed in to change notification settings - Fork 0
/
.travis.yml
107 lines (101 loc) · 4.68 KB
/
.travis.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
language: python
python:
- "2.7"
- "3.6"
env:
global:
- T2T_PROBLEM=algorithmic_reverse_binary40_test
- T2T_DATA_DIR=/tmp/t2t-data
- T2T_TRAIN_DIR=/tmp/t2t-train
- TF_LATEST="1.8.*"
# This is necessary to have gsutil work with Python 2.7
- BOTO_CONFIG=/dev/null
matrix:
# We test against the last 4 versions of TensorFlow
# If updating, also update TF_LATEST above
- TF_VERSION="1.5.*"
- TF_VERSION="1.6.*"
- TF_VERSION="1.7.*"
- TF_VERSION="1.8.*"
matrix:
exclude:
# We test against all versions in Python 2 but only the latest in Python 3
- python: "3.6"
env: TF_VERSION="1.5.*"
- python: "3.6"
env: TF_VERSION="1.6.*"
- python: "3.6"
env: TF_VERSION="1.7.*"
before_install:
# Disabled TensorFlow Serving install until bug fixed. See "Export and query"
# section below.
# - echo "deb [arch=amd64] http://storage.googleapis.com/tensorflow-serving-apt stable tensorflow-model-server tensorflow-model-server-universal" | sudo tee /etc/apt/sources.list.d/tensorflow-serving.list
# - curl https://storage.googleapis.com/tensorflow-serving-apt/tensorflow-serving.release.pub.gpg | sudo apt-key add -
- sudo apt-get update -qq
- sudo apt-get install -qq libhdf5-dev
# - sudo apt-get install -qq tensorflow-model-server
install:
- pip install -q "tensorflow==$TF_VERSION"
# First ensure that the base dependencies are sufficient for a full import
- pip install -q .
- t2t-trainer --registry_help
# Then install the test dependencies
- pip install -q .[tests]
# Make sure to install the atari extras for gym
- pip install "gym[atari]"
# Make sure we have the latest version of numpy - avoid problems we were
# seeing with Python 3
- pip install -q -U numpy
script:
# Check import
- python -c "from tensor2tensor.models import transformer; print(transformer.Transformer.__name__)"
# Run tests
# Ignores:
# Tested separately:
# * registry_test
# * trainer_lib_test
# * visualization_test
# * model_rl_experiment_test
# algorithmic_math_test: flaky
# universal_transformer_test: requires new feature in tf.foldl (rm with TF 1.9)
- pytest
--ignore=tensor2tensor/utils/registry_test.py
--ignore=tensor2tensor/utils/trainer_lib_test.py
--ignore=tensor2tensor/visualization/visualization_test.py
--ignore=tensor2tensor/bin/t2t_trainer_test.py
--ignore=tensor2tensor/data_generators/algorithmic_math_test.py
--ignore=tensor2tensor/models/research/universal_transformer_test.py
--ignore=tensor2tensor/rl/model_rl_experiment_test.py
- pytest tensor2tensor/utils/registry_test.py
- pytest tensor2tensor/utils/trainer_lib_test.py
- pytest tensor2tensor/visualization/visualization_test.py
# Run installed scripts
- t2t-datagen 2>&1 | grep translate && echo passed
- t2t-trainer --registry_help
# Test --t2t_usr_dir
- t2t-trainer --registry_help --t2t_usr_dir=./tensor2tensor/test_data/example_usr_dir 2>&1 | grep my_very_own_hparams && echo passed
# Run data generation, training, and decoding on a dummy problem
- t2t-datagen --problem=$T2T_PROBLEM --data_dir=$T2T_DATA_DIR
- t2t-trainer --problem=$T2T_PROBLEM --data_dir=$T2T_DATA_DIR --model=transformer --hparams_set=transformer_tiny --train_steps=5 --eval_steps=5 --output_dir=$T2T_TRAIN_DIR
- t2t-decoder --problem=$T2T_PROBLEM --data_dir=$T2T_DATA_DIR --model=transformer --hparams_set=transformer_tiny --output_dir=$T2T_TRAIN_DIR --decode_hparams='num_samples=10'
# Do some things only on Python 2 and the latest TF version
- if [[ "$TRAVIS_PYTHON_VERSION" == "2.7" ]] && [[ "$TF_VERSION" == "$TF_LATEST" ]]; then
pylint -j 2 tensor2tensor;
fi
- if [[ "$TRAVIS_PYTHON_VERSION" == "2.7" ]] && [[ "$TF_VERSION" == "$TF_LATEST" ]]; then
pytest tensor2tensor/rl/model_rl_experiment_test.py;
fi
- if [[ "$TRAVIS_PYTHON_VERSION" == "2.7" ]] && [[ "$TF_VERSION" == "$TF_LATEST" ]]; then
jupyter nbconvert --ExecutePreprocessor.timeout=600 --to notebook --execute tensor2tensor/notebooks/hello_t2t.ipynb;
fi
# Export and query (on Python 2 only)
# Bug: https://github.com/tensorflow/serving/issues/819
#- if [[ "$TRAVIS_PYTHON_VERSION" == "2.7" ]] && [[ "$TF_VERSION" == "1.6.*" ]]; then
# t2t-exporter --problem=$T2T_PROBLEM --data_dir=$T2T_DATA_DIR --model=transformer --hparams_set=transformer_tiny --output_dir=$T2T_TRAIN_DIR;
# pip install tensorflow-serving-api;
# tensorflow_model_server --port=9000 --model_name=my_model --model_base_path=$T2T_TRAIN_DIR/export/Servo &
# sleep 10;
# t2t-query-server --problem=$T2T_PROBLEM --server=localhost:9000 --servable_name=my_model --data_dir=$T2T_DATA_DIR --inputs_once='1 0 1 0 1 0';
# fi
git:
depth: 3