forked from espnet/espnet
-
Notifications
You must be signed in to change notification settings - Fork 0
/
install_fairseq.sh
executable file
·50 lines (39 loc) · 1010 Bytes
/
install_fairseq.sh
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
#!/usr/bin/env bash
set -euo pipefail
if [ $# != 0 ]; then
echo "Usage: $0"
exit 1;
fi
if ! python -c "import packaging.version" &> /dev/null; then
python3 -m pip install packaging
fi
torch_version=$(python3 -c "import torch; print(torch.__version__)")
python_36_plus=$(python3 <<EOF
from packaging.version import parse as V
import sys
if V("{}.{}.{}".format(*sys.version_info[:3])) >= V("3.6"):
print("true")
else:
print("false")
EOF
)
pt_plus(){
python3 <<EOF
import sys
from packaging.version import parse as L
if L('$torch_version') >= L('$1'):
print("true")
else:
print("false")
EOF
}
echo "[INFO] torch_version=${torch_version}"
if "$(pt_plus 1.8.0)" && "${python_36_plus}"; then
rm -rf fairseq
# NOTE(nelson): using custom fairseq for espnet
git clone https://github.com/espnet/fairseq.git
python3 -m pip install --editable ./fairseq
python3 -m pip install filelock
else
echo "[WARNING] fairseq requires pytorch>=1.8.0, python>=3.6"
fi