Linux का उपयोग करके TensorFlow हब पाइप पैकेज बनाना

यदि आप TensorFlow Hub pip पैकेज में बदलाव करते हैं, तो संभवतः आप अपने बदलावों को आज़माने के लिए pip पैकेज को स्रोत से फिर से बनाना चाहेंगे।

इस आवश्यकता है:

वैकल्पिक रूप से, यदि आप प्रोटोबफ कंपाइलर स्थापित करते हैं, तो आप बेज़ेल का उपयोग किए बिना अपने परिवर्तनों को आज़मा सकते हैं।

एक वर्चुअलएनवायरनमेंट सेटअप करें

वर्चुअलएनवी को सक्रिय करें

यदि वर्चुअलएनवी पहले से इंस्टॉल नहीं है तो उसे इंस्टॉल करें:

~$ sudo apt-get install python-virtualenv

पैकेज निर्माण के लिए एक आभासी वातावरण बनाएं:

~$ virtualenv --system-site-packages tensorflow_hub_env

और इसे सक्रिय करें:

~$ source ~/tensorflow_hub_env/bin/activate  # bash, sh, ksh, or zsh
~$ source ~/tensorflow_hub_env/bin/activate.csh  # csh or tcsh

TensorFlow Hub रिपॉजिटरी को क्लोन करें।

(tensorflow_hub_env)~/$ git clone https://github.com/tensorflow/hub
(tensorflow_hub_env)~/$ cd hub

अपने बदलावों का परीक्षण करें

TensorFlow Hub के परीक्षण चलाएँ

(tensorflow_hub_env)~/hub/$ bazel test tensorflow_hub:all

पैकेज बनाएं और इंस्टॉल करें

TensorFlow Hub pip पैकेजिंग स्क्रिप्ट बनाएं

TensorFlow Hub के लिए pip पैकेज बनाने के लिए:

(tensorflow_hub_env)~/hub/$ bazel build tensorflow_hub/pip_package:build_pip_package

TensorFlow Hub pip पैकेज बनाएं

(tensorflow_hub_env)~/hub/$ bazel-bin/tensorflow_hub/pip_package/build_pip_package \
/tmp/tensorflow_hub_pkg

pip पैकेज को इंस्टॉल और टेस्ट करें (वैकल्पिक)

pip पैकेज को इंस्टॉल करने के लिए निम्नलिखित कमांड चलाएँ।

(tensorflow_hub_env)~/hub/$ pip install /tmp/tensorflow_hub_pkg/*.whl

TensorFlow Hub से आयात का परीक्षण करें:

(tensorflow_hub_env)~/hub/$ cd ..  # exit the directory to avoid confusion
(tensorflow_hub_env)~/$ python -c "import tensorflow_hub as hub"

"डेवलपर" इंस्टॉलेशन (प्रायोगिक)

पैकेज को बेज़ेल के साथ बनाना ही एकमात्र आधिकारिक रूप से समर्थित तरीका है। हालाँकि, यदि आप बेज़ेल से परिचित नहीं हैं, तो ओपन सोर्स टूल के साथ काम करना आसान है। इसके लिए आप पैकेज का "डेवलपर इंस्टॉल" कर सकते हैं।

इस इंस्टॉलेशन विधि से आप वर्किंग डायरेक्टरी को अपने पायथन एनवायरनमेंट में इंस्टॉल कर सकते हैं, ताकि पैकेज को इंपोर्ट करते समय चल रहे बदलाव दिखाई दें।

रिपॉजिटरी सेटअप करें

सबसे पहले ऊपर बताए अनुसार वर्चुअलएनवी और रिपॉजिटरी को सेटअप करें।

protoc इंस्टॉल करें

क्योंकि TensorFlow Hub प्रोटोबफ का उपयोग करता है, इसलिए आपको .proto फ़ाइलों से आवश्यक python _pb2.py फ़ाइलें बनाने के लिए प्रोटोबफ कंपाइलर की आवश्यकता होगी।

मैक पर:

(tensorflow_hub_env)~/hub/$ brew install protobuf

लिनक्स पर

(tensorflow_hub_env)~/hub/$ sudo apt install protobuf-compiler

.proto फ़ाइलों को संकलित करें

प्रारंभ में इस निर्देशिका में कोई _pb2.py फ़ाइल नहीं होती है:

(tensorflow_hub_env)~/hub/$ ls -1 tensorflow_hub/*_pb2.py

इन्हें बनाने के लिए protoc चलाएँ:

(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

रिपॉजिटरी से सीधे आयात करें

_pb2.py फ़ाइलें मौजूद होने पर, आप अपने संशोधनों को सीधे TensorFlow Hub निर्देशिका से आज़मा सकते हैं:

(tensorflow_hub_env)~/$ python -c "import tensorflow_hub as hub"

डेवलपर मोड में इंस्टॉल करें

या फिर रिपॉजिटरी रूट के बाहर से इसका उपयोग करने के लिए, आप setup.py develop इंस्टॉलेशन का उपयोग कर सकते हैं:

(tensorflow_hub_env)~/hub/$ python tensorflow_hub/pip_package/setup.py develop

अब आप प्रत्येक नए बदलाव के लिए pip पैकेज को रीबिल्ड और इंस्टॉल करने की आवश्यकता के बिना, एक नियमित पायथन वर्चुअलएनवी में अपने स्थानीय परिवर्तनों का उपयोग कर सकते हैं:

(tensorflow_hub_env)~/hub/$ cd ..  # exit the directory to avoid confusion
(tensorflow_hub_env)~/$ python -c "import tensorflow_hub as hub"

वर्चुअलएनवी को निष्क्रिय करें

(tensorflow_hub_env)~/hub/$ deactivate
,

यदि आप TensorFlow Hub pip पैकेज में बदलाव करते हैं, तो संभवतः आप अपने बदलावों को आज़माने के लिए pip पैकेज को स्रोत से फिर से बनाना चाहेंगे।

इस आवश्यकता है:

वैकल्पिक रूप से, यदि आप प्रोटोबफ कंपाइलर स्थापित करते हैं, तो आप बेज़ेल का उपयोग किए बिना अपने परिवर्तनों को आज़मा सकते हैं।

एक वर्चुअलएनवायरनमेंट सेटअप करें

वर्चुअलएनवी को सक्रिय करें

यदि वर्चुअलएनवी पहले से इंस्टॉल नहीं है तो उसे इंस्टॉल करें:

~$ sudo apt-get install python-virtualenv

पैकेज निर्माण के लिए एक आभासी वातावरण बनाएं:

~$ virtualenv --system-site-packages tensorflow_hub_env

और इसे सक्रिय करें:

~$ source ~/tensorflow_hub_env/bin/activate  # bash, sh, ksh, or zsh
~$ source ~/tensorflow_hub_env/bin/activate.csh  # csh or tcsh

TensorFlow Hub रिपॉजिटरी को क्लोन करें।

(tensorflow_hub_env)~/$ git clone https://github.com/tensorflow/hub
(tensorflow_hub_env)~/$ cd hub

अपने बदलावों का परीक्षण करें

TensorFlow Hub के परीक्षण चलाएँ

(tensorflow_hub_env)~/hub/$ bazel test tensorflow_hub:all

पैकेज बनाएं और इंस्टॉल करें

TensorFlow Hub pip पैकेजिंग स्क्रिप्ट बनाएं

TensorFlow Hub के लिए pip पैकेज बनाने के लिए:

(tensorflow_hub_env)~/hub/$ bazel build tensorflow_hub/pip_package:build_pip_package

TensorFlow Hub pip पैकेज बनाएं

(tensorflow_hub_env)~/hub/$ bazel-bin/tensorflow_hub/pip_package/build_pip_package \
/tmp/tensorflow_hub_pkg

pip पैकेज को इंस्टॉल और टेस्ट करें (वैकल्पिक)

pip पैकेज को इंस्टॉल करने के लिए निम्नलिखित कमांड चलाएँ।

(tensorflow_hub_env)~/hub/$ pip install /tmp/tensorflow_hub_pkg/*.whl

TensorFlow Hub से आयात का परीक्षण करें:

(tensorflow_hub_env)~/hub/$ cd ..  # exit the directory to avoid confusion
(tensorflow_hub_env)~/$ python -c "import tensorflow_hub as hub"

"डेवलपर" इंस्टॉलेशन (प्रायोगिक)

पैकेज को बेज़ेल के साथ बनाना ही एकमात्र आधिकारिक रूप से समर्थित तरीका है। हालाँकि, यदि आप बेज़ेल से परिचित नहीं हैं, तो ओपन सोर्स टूल के साथ काम करना आसान है। इसके लिए आप पैकेज का "डेवलपर इंस्टॉल" कर सकते हैं।

इस इंस्टॉलेशन विधि से आप वर्किंग डायरेक्टरी को अपने पायथन एनवायरनमेंट में इंस्टॉल कर सकते हैं, ताकि पैकेज को इंपोर्ट करते समय चल रहे बदलाव दिखाई दें।

रिपॉजिटरी सेटअप करें

सबसे पहले ऊपर बताए अनुसार वर्चुअलएनवी और रिपॉजिटरी को सेटअप करें।

protoc इंस्टॉल करें

क्योंकि TensorFlow Hub प्रोटोबफ का उपयोग करता है, इसलिए आपको .proto फ़ाइलों से आवश्यक python _pb2.py फ़ाइलें बनाने के लिए प्रोटोबफ कंपाइलर की आवश्यकता होगी।

मैक पर:

(tensorflow_hub_env)~/hub/$ brew install protobuf

लिनक्स पर

(tensorflow_hub_env)~/hub/$ sudo apt install protobuf-compiler

.proto फ़ाइलों को संकलित करें

प्रारंभ में इस निर्देशिका में कोई _pb2.py फ़ाइल नहीं होती है:

(tensorflow_hub_env)~/hub/$ ls -1 tensorflow_hub/*_pb2.py

इन्हें बनाने के लिए protoc चलाएँ:

(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

रिपॉजिटरी से सीधे आयात करें

_pb2.py फ़ाइलें मौजूद होने पर, आप अपने संशोधनों को सीधे TensorFlow Hub निर्देशिका से आज़मा सकते हैं:

(tensorflow_hub_env)~/$ python -c "import tensorflow_hub as hub"

डेवलपर मोड में इंस्टॉल करें

या फिर रिपॉजिटरी रूट के बाहर से इसका उपयोग करने के लिए, आप setup.py develop इंस्टॉलेशन का उपयोग कर सकते हैं:

(tensorflow_hub_env)~/hub/$ python tensorflow_hub/pip_package/setup.py develop

अब आप प्रत्येक नए बदलाव के लिए pip पैकेज को रीबिल्ड और इंस्टॉल करने की आवश्यकता के बिना, एक नियमित पायथन वर्चुअलएनवी में अपने स्थानीय परिवर्तनों का उपयोग कर सकते हैं:

(tensorflow_hub_env)~/hub/$ cd ..  # exit the directory to avoid confusion
(tensorflow_hub_env)~/$ python -c "import tensorflow_hub as hub"

वर्चुअलएनवी को निष्क्रिय करें

(tensorflow_hub_env)~/hub/$ deactivate