หากคุณทำการเปลี่ยนแปลงใดๆ กับแพ็กเกจ pip ของ TensorFlow Hub คุณอาจต้องสร้างแพ็กเกจ pip ใหม่จากซอร์สโค้ดเพื่อทดลองใช้การเปลี่ยนแปลงของคุณ
ซึ่งต้องใช้สิ่งต่อไปนี้:
- ไพธอน
- เทนเซอร์โฟลว์
- กิต
- บาเซล
อีกทางเลือกหนึ่ง หากคุณติดตั้งคอมไพเลอร์ protobuf คุณสามารถ ทดลองการเปลี่ยนแปลงของคุณได้โดยไม่ต้องใช้ bazel
ตั้งค่า virtualenv
เปิดใช้งาน virtualenv
ติดตั้ง virtualenv หากยังไม่ได้ติดตั้ง:
~$ 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
โคลน repository ของ 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
วิธีการสร้างแพ็กเกจ pip สำหรับ TensorFlow Hub:
(tensorflow_hub_env)~/hub/$ bazel build tensorflow_hub/pip_package:build_pip_package
สร้างแพ็กเกจ pip ของ TensorFlow Hub
(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"
การติดตั้ง "นักพัฒนา" (เวอร์ชันทดลอง)
การสร้างแพ็กเกจด้วย Bazel เป็นวิธีเดียวที่ได้รับการสนับสนุนอย่างเป็นทางการ อย่างไรก็ตาม หากคุณไม่คุ้นเคยกับ Bazel การใช้เครื่องมือโอเพนซอร์สจะง่ายกว่า สำหรับวิธีนั้น คุณสามารถทำการ "ติดตั้งแบบนักพัฒนา" (developer install) ของแพ็กเกจได้
วิธีการติดตั้งนี้ช่วยให้คุณสามารถติดตั้งไดเร็กทอรีการทำงานลงในสภาพแวดล้อม Python ของคุณได้ เพื่อให้การเปลี่ยนแปลงที่เกิดขึ้นจะสะท้อนให้เห็นเมื่อคุณนำเข้าแพ็กเกจ
ตั้งค่าที่เก็บข้อมูล
ขั้นแรก ให้ตั้งค่า virtualenv และ repository ตามที่อธิบายไว้ ข้างต้น
ติดตั้ง protoc
เนื่องจาก TensorFlow Hub ใช้ protobuf คุณจึงจำเป็นต้องใช้คอมไพเลอร์ protobuf เพื่อสร้างไฟล์ python _pb2.py ที่จำเป็นจากไฟล์ . .proto
บนเครื่อง Mac:
(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
ตอนนี้คุณสามารถใช้การเปลี่ยนแปลงในเครื่องของคุณในสภาพแวดล้อมเสมือน Python ทั่วไปได้แล้ว โดยไม่จำเป็นต้องสร้างและติดตั้งแพ็กเกจ pip ใหม่ทุกครั้งที่มีการเปลี่ยนแปลง:
(tensorflow_hub_env)~/hub/$ cd .. # exit the directory to avoid confusion
(tensorflow_hub_env)~/$ python -c "import tensorflow_hub as hub"
ปิดใช้งาน virtualenv
(tensorflow_hub_env)~/hub/$ deactivate
หากคุณทำการเปลี่ยนแปลงใดๆ กับแพ็กเกจ pip ของ TensorFlow Hub คุณอาจต้องสร้างแพ็กเกจ pip ใหม่จากซอร์สโค้ดเพื่อทดลองใช้การเปลี่ยนแปลงของคุณ
ซึ่งต้องใช้สิ่งต่อไปนี้:
- ไพธอน
- เทนเซอร์โฟลว์
- กิต
- บาเซล
อีกทางเลือกหนึ่ง หากคุณติดตั้งคอมไพเลอร์ protobuf คุณสามารถ ทดลองการเปลี่ยนแปลงของคุณได้โดยไม่ต้องใช้ bazel
ตั้งค่า virtualenv
เปิดใช้งาน virtualenv
ติดตั้ง virtualenv หากยังไม่ได้ติดตั้ง:
~$ 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
โคลน repository ของ 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
วิธีการสร้างแพ็กเกจ pip สำหรับ TensorFlow Hub:
(tensorflow_hub_env)~/hub/$ bazel build tensorflow_hub/pip_package:build_pip_package
สร้างแพ็กเกจ pip ของ TensorFlow Hub
(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"
การติดตั้ง "นักพัฒนา" (เวอร์ชันทดลอง)
การสร้างแพ็กเกจด้วย Bazel เป็นวิธีเดียวที่ได้รับการสนับสนุนอย่างเป็นทางการ อย่างไรก็ตาม หากคุณไม่คุ้นเคยกับ Bazel การใช้เครื่องมือโอเพนซอร์สจะง่ายกว่า สำหรับวิธีนั้น คุณสามารถทำการ "ติดตั้งแบบนักพัฒนา" (developer install) ของแพ็กเกจได้
วิธีการติดตั้งนี้ช่วยให้คุณสามารถติดตั้งไดเร็กทอรีการทำงานลงในสภาพแวดล้อม Python ของคุณได้ เพื่อให้การเปลี่ยนแปลงที่เกิดขึ้นจะสะท้อนให้เห็นเมื่อคุณนำเข้าแพ็กเกจ
ตั้งค่าที่เก็บข้อมูล
ขั้นแรก ให้ตั้งค่า virtualenv และ repository ตามที่อธิบายไว้ ข้างต้น
ติดตั้ง protoc
เนื่องจาก TensorFlow Hub ใช้ protobuf คุณจึงจำเป็นต้องใช้คอมไพเลอร์ protobuf เพื่อสร้างไฟล์ python _pb2.py ที่จำเป็นจากไฟล์ . .proto
บนเครื่อง Mac:
(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
ตอนนี้คุณสามารถใช้การเปลี่ยนแปลงในเครื่องของคุณในสภาพแวดล้อมเสมือน Python ทั่วไปได้แล้ว โดยไม่จำเป็นต้องสร้างและติดตั้งแพ็กเกจ pip ใหม่ทุกครั้งที่มีการเปลี่ยนแปลง:
(tensorflow_hub_env)~/hub/$ cd .. # exit the directory to avoid confusion
(tensorflow_hub_env)~/$ python -c "import tensorflow_hub as hub"
ปิดใช้งาน virtualenv
(tensorflow_hub_env)~/hub/$ deactivate