TensorFlow Hub pip paketinde değişiklik yaparsanız değişikliklerinizi denemek için muhtemelen pip paketini kaynaktan yeniden oluşturmak isteyeceksiniz.
Bu şunları gerektirir:
- Python
- TensorFlow
- Git
- bazel
Alternatif olarak, protobuf derleyicisini yüklerseniz değişikliklerinizi bazel kullanmadan deneyebilirsiniz .
Bir sanalenv kurun
Virtualenv'i etkinleştir
Henüz kurulu değilse virtualenv'i yükleyin:
~$ sudo apt-get install python-virtualenv
Paket oluşturmak için sanal bir ortam oluşturun:
~$ virtualenv --system-site-packages tensorflow_hub_env
Ve etkinleştirin:
~$ source ~/tensorflow_hub_env/bin/activate # bash, sh, ksh, or zsh
~$ source ~/tensorflow_hub_env/bin/activate.csh # csh or tcsh
TensorFlow Hub deposunu klonlayın.
(tensorflow_hub_env)~/$ git clone https://github.com/tensorflow/hub
(tensorflow_hub_env)~/$ cd hub
Değişikliklerinizi test edin
TensorFlow Hub'ın testlerini çalıştırın
(tensorflow_hub_env)~/hub/$ bazel test tensorflow_hub:all
Paketi oluşturun ve yükleyin
TensorFlow Hub pip paketleme komut dosyasını oluşturun
TensorFlow Hub'a yönelik bir pip paketi oluşturmak için:
(tensorflow_hub_env)~/hub/$ bazel build tensorflow_hub/pip_package:build_pip_package
TensorFlow Hub pip paketini oluşturun
(tensorflow_hub_env)~/hub/$ bazel-bin/tensorflow_hub/pip_package/build_pip_package \
/tmp/tensorflow_hub_pkg
Pip paketini kurun ve test edin (isteğe bağlı)
Pip paketini kurmak için aşağıdaki komutları çalıştırın.
(tensorflow_hub_env)~/hub/$ pip install /tmp/tensorflow_hub_pkg/*.whl
TensorFlow Hub'ı içe aktarmayı test edin:
(tensorflow_hub_env)~/hub/$ cd .. # exit the directory to avoid confusion
(tensorflow_hub_env)~/$ python -c "import tensorflow_hub as hub"
"Geliştirici" kurulumu (deneysel)
Paketi bazel ile oluşturmak resmi olarak desteklenen tek yöntemdir. Ancak bazel'e aşina değilseniz açık kaynaklı araçlarla çalışmak daha kolaydır. Bunun için paketin "geliştirici kurulumunu" yapabilirsiniz.
Bu kurulum yöntemi, çalışma dizinini python ortamınıza kurmanıza olanak tanır, böylece paketi içe aktardığınızda devam eden değişiklikler yansıtılır.
Depoyu kurun
Öncelikle yukarıda anlatıldığı gibi virtualenv'i ve repository'yi kurun.
protoc
yükle
TensorFlow Hub protobuf'ları kullandığından, .proto
dosyalarından gerekli python _pb2.py
dosyalarını oluşturmak için protobuf derleyicisine ihtiyacınız olacaktır.
Mac'te:
(tensorflow_hub_env)~/hub/$ brew install protobuf
Linux'ta
(tensorflow_hub_env)~/hub/$ sudo apt install protobuf-compiler
.proto
dosyalarını derleyin
Başlangıçta dizinde _pb2.py
dosyası yok:
(tensorflow_hub_env)~/hub/$ ls -1 tensorflow_hub/*_pb2.py
Bunları oluşturmak için protoc
çalıştırın:
(tensorflow_hub_env)~/hub/$ protoc -I=tensorflow_hub --python_out=tensorflow_hub tensorflow_hub/*.proto
(tensorflow_hub_env)~/hub/$ ls -1 tensorflow_hub/*_pb2.py
tensorflow_hub/image_module_info_pb2.py tensorflow_hub/module_attachment_pb2.py tensorflow_hub/module_def_pb2.py
Doğrudan depodan içe aktarın
_pb2.py
dosyaları mevcut olduğunda değişikliklerinizi doğrudan TensorFlow Hub dizininden deneyebilirsiniz:
(tensorflow_hub_env)~/$ python -c "import tensorflow_hub as hub"
"Geliştirici" modunda yükleyin
Veya bunu depo kökünün dışından kullanmak için setup.py develop
kurulumunu kullanabilirsiniz:
(tensorflow_hub_env)~/hub/$ python tensorflow_hub/pip_package/setup.py develop
Artık yerel değişikliklerinizi, her yeni değişiklik için pip paketini yeniden oluşturmaya ve yüklemeye gerek kalmadan normal bir python virtualenv'de kullanabilirsiniz:
(tensorflow_hub_env)~/hub/$ cd .. # exit the directory to avoid confusion
(tensorflow_hub_env)~/$ python -c "import tensorflow_hub as hub"
Virtualenv'i devre dışı bırakın
(tensorflow_hub_env)~/hub/$ deactivate