यदि आप TensorFlow हब पिप पैकेज में परिवर्तन करते हैं, तो आप संभवतः अपने परिवर्तनों को आज़माने के लिए स्रोत से पिप पैकेज का पुनर्निर्माण करना चाहेंगे।
इस आवश्यकता है:
- अजगर
- टेंसरफ़्लो
- गिट
- बज़ेल
वैकल्पिक रूप से, यदि आप प्रोटोबफ़ कंपाइलर स्थापित करते हैं तो आप bagel का उपयोग किए बिना अपने परिवर्तनों को आज़मा सकते हैं।
एक वर्चुअलएन्व सेटअप करें
वर्चुअलएन्व सक्रिय करें
यदि वर्चुअलएन्व पहले से इंस्टॉल नहीं है तो इंस्टॉल करें:
~$ 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 हब रिपॉजिटरी को क्लोन करें।
(tensorflow_hub_env)~/$ git clone https://github.com/tensorflow/hub
(tensorflow_hub_env)~/$ cd hub
अपने परिवर्तनों का परीक्षण करें
TensorFlow हब के परीक्षण चलाएँ
(tensorflow_hub_env)~/hub/$ bazel test tensorflow_hub:all
पैकेज बनाएं और इंस्टॉल करें
TensorFlow हब पिप पैकेजिंग स्क्रिप्ट बनाएँ
TensorFlow हब के लिए एक पिप पैकेज बनाने के लिए:
(tensorflow_hub_env)~/hub/$ bazel build tensorflow_hub/pip_package:build_pip_package
TensorFlow हब पिप पैकेज बनाएं
(tensorflow_hub_env)~/hub/$ bazel-bin/tensorflow_hub/pip_package/build_pip_package \
/tmp/tensorflow_hub_pkg
पिप पैकेज स्थापित करें और उसका परीक्षण करें (वैकल्पिक)
पिप पैकेज को स्थापित करने के लिए निम्नलिखित कमांड चलाएँ।
(tensorflow_hub_env)~/hub/$ pip install /tmp/tensorflow_hub_pkg/*.whl
परीक्षण आयात TensorFlow हब:
(tensorflow_hub_env)~/hub/$ cd .. # exit the directory to avoid confusion
(tensorflow_hub_env)~/$ python -c "import tensorflow_hub as hub"
"डेवलपर" इंस्टॉल (प्रयोगात्मक)
बेज़ेल के साथ पैकेज बनाना एकमात्र आधिकारिक रूप से समर्थित तरीका है। हालाँकि यदि आप बेज़ेल से अपरिचित हैं तो ओपन सोर्स टूल के साथ काम करना आसान है। इसके लिए आप पैकेज का "डेवलपर इंस्टाल" कर सकते हैं।
यह इंस्टॉलेशन विधि आपको कार्यशील निर्देशिका को अपने पायथन वातावरण में स्थापित करने की अनुमति देती है, ताकि जब आप पैकेज आयात करें तो चल रहे परिवर्तन प्रतिबिंबित हों।
भंडार सेटअप करें
जैसा कि ऊपर बताया गया है, सबसे पहले वर्चुअलएन्व और रिपॉजिटरी सेटअप करें।
protoc
स्थापित करें
चूँकि TensorFlow हब प्रोटोबफ़्स का उपयोग करता है, इसलिए आपको .proto
फ़ाइलों से आवश्यक पायथन _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 हब निर्देशिका से अपने संशोधनों को आज़मा सकते हैं:
(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
अब आप प्रत्येक नए परिवर्तन के लिए पाइप पैकेज को पुनर्निर्माण और स्थापित करने की आवश्यकता के बिना, नियमित पायथन वर्चुअलएन्व में अपने स्थानीय परिवर्तनों का उपयोग कर सकते हैं:
(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