เอกสารนี้อธิบายแบบแผน URL ที่ใช้เมื่อโฮสต์โมเดลทุกประเภทบน tfhub.dev - โมเดล TFJS, TF Lite และ TensorFlow นอกจากนี้ยังอธิบายโปรโตคอลที่ใช้ HTTP(S) ที่ใช้งานโดยไลบรารี tensorflow_hub เพื่อโหลดโมเดล TensorFlow จาก tfhub.dev และบริการที่เข้ากันได้ลงในโปรแกรม TensorFlow
คุณสมบัติหลักของมันคือการใช้ URL เดียวกันในโค้ดเพื่อโหลดโมเดลและในเบราว์เซอร์เพื่อดูเอกสารประกอบของโมเดล
แบบแผน URL ทั่วไป
tfhub.dev รองรับรูปแบบ URL ต่อไปนี้:
-  ผู้เผยแพร่ TF Hub ติดตาม 
<a href="https://tfhub.dev/">https://tfhub.dev/</a><publisher> -  คอลเลกชัน TF Hub ติดตาม 
<a href="https://tfhub.dev/">https://tfhub.dev/</a><publisher>/collection/<collection_name> -  โมเดล TF Hub มีเวอร์ชัน URL 
<a href="https://tfhub.dev/">https://tfhub.dev/</a><publisher>/<model_name>/<version>และ URL ที่ไม่มีเวอร์ชัน<a href="https://tfhub.dev/">https://tfhub.dev/</a><publisher>/<model_name>ที่แก้ไขเป็นเวอร์ชันล่าสุด 
สามารถดาวน์โหลดโมเดล TF Hub เป็นเนื้อหาที่บีบอัดได้โดยการผนวกพารามิเตอร์ URL เข้ากับ URL โมเดล tfhub.dev อย่างไรก็ตาม พารามิเตอร์ URL ที่จำเป็นเพื่อให้บรรลุซึ่งขึ้นอยู่กับประเภทโมเดล:
-  โมเดล TensorFlow (ทั้งรูปแบบ SavedModel และ TF1 Hub): ผนวก 
?tf-hub-format=compressedเข้ากับ URL โมเดล TensorFlow -  โมเดล TFJS: ผนวก 
?tfjs-format=compressedเข้ากับ URL ของโมเดล TFJS เพื่อดาวน์โหลดไฟล์บีบอัดหรือ/model.json?tfjs-format=fileเพื่ออ่านว่ามาจากที่จัดเก็บข้อมูลระยะไกลหรือไม่ -  รุ่น TF lite: ผนวก 
?lite-format=tfliteเข้ากับ URL รุ่น TF Lite 
ตัวอย่างเช่น:
| พิมพ์ | URL รุ่น | ประเภทการดาวน์โหลด | พารามิเตอร์ URL | ดาวน์โหลด URL | 
| TensorFlow (SavedModel, รูปแบบ TF1 Hub) | https://tfhub.dev/google/spice/2 | .tar.gz | ?tf-hub-format=บีบอัด | https://tfhub.dev/google/spice/2?tf-hub-format=compressed | 
| ทีเอฟ ไลท์ | https://tfhub.dev/google/lite-model/spice/1 | .tflite | ?lite-format=tflite | https://tfhub.dev/google/lite-model/spice/1?lite-format=tflite | 
| TF.js | https://tfhub.dev/google/tfjs-model/spice/2/default/1 | .tar.gz | ?tfjs-format=บีบอัด | https://tfhub.dev/google/tfjs-model/spice/2/default/1?tfjs-format=compressed | 
นอกจากนี้ บางรุ่นยังโฮสต์ในรูปแบบที่สามารถอ่านได้โดยตรงจากที่จัดเก็บข้อมูลระยะไกลโดยไม่ต้องดาวน์โหลด สิ่งนี้มีประโยชน์อย่างยิ่งหากไม่มีที่เก็บข้อมูลในเครื่อง เช่น การเรียกใช้โมเดล TF.js ในเบราว์เซอร์หรือการโหลด SavedModel บน Colab โปรดทราบว่าการอ่านโมเดลที่โฮสต์จากระยะไกลโดยไม่ต้องดาวน์โหลดในเครื่องอาจเพิ่มเวลาแฝง
| พิมพ์ | URL รุ่น | ประเภทการตอบกลับ | พารามิเตอร์ URL | URL คำขอ | 
| TensorFlow (SavedModel, รูปแบบ TF1 Hub) | https://tfhub.dev/google/spice/2 | สตริง (เส้นทางไปยังโฟลเดอร์ GCS ที่เก็บโมเดลที่ไม่มีการบีบอัด) | ?tf-hub-format=ไม่มีการบีบอัด | https://tfhub.dev/google/spice/2?tf-hub-format=uncompressed | 
| TF.js | https://tfhub.dev/google/tfjs-model/spice/2/default/1 | .json | ?tfjs-format=ไฟล์ | https://tfhub.dev/google/tfjs-model/spice/2/default/1/model.json?tfjs-format=file | 
โปรโตคอลไลบรารี tensorflow_hub
ส่วนนี้อธิบายวิธีที่เราโฮสต์โมเดลบน tfhub.dev เพื่อใช้กับไลบรารี tensorflow_hub หากคุณต้องการโฮสต์พื้นที่เก็บข้อมูลโมเดลของคุณเองเพื่อทำงานกับไลบรารี tensorflow_hub บริการเผยแพร่ HTTP ของคุณควรจัดให้มีการใช้งานโปรโตคอลนี้
 โปรดทราบว่าส่วนนี้ไม่ได้กล่าวถึงการโฮสต์โมเดล TF Lite และ TFJS เนื่องจากไม่ได้ดาวน์โหลดผ่านไลบรารี tensorflow_hub สำหรับข้อมูลเพิ่มเติมเกี่ยวกับการโฮสต์ประเภทโมเดลเหล่านี้ โปรดตรวจสอบ ด้านบน
โฮสติ้งที่ถูกบีบอัด
 โมเดลจะถูกจัดเก็บไว้ใน tfhub.dev เป็นไฟล์ tar.gz ที่ถูกบีบอัด ตามค่าเริ่มต้น ไลบรารี tensorflow_hub จะดาวน์โหลดโมเดลที่บีบอัดโดยอัตโนมัติ นอกจากนี้ยังสามารถดาวน์โหลดได้ด้วยตนเองโดยผนวก ?tf-hub-format=compressed เข้ากับ URL ของโมเดล เช่น:
wget https://tfhub.dev/tensorflow/albert_en_xxlarge/1?tf-hub-format=compressed
รากของไฟล์เก็บถาวรคือรากของไดเร็กทอรีโมเดล และควรมี SavedModel ดังในตัวอย่างนี้:
# Create a compressed model from a SavedModel directory.
$ tar -cz -f model.tar.gz --owner=0 --group=0 -C /tmp/export-model/ .
# Inspect files inside a compressed model
$ tar -tf model.tar.gz
./
./variables/
./variables/variables.data-00000-of-00001
./variables/variables.index
./assets/
./saved_model.pb
 Tarball สำหรับใช้กับ รูปแบบ TF1 Hub รุ่นเก่าจะมีไฟล์ . ./tfhub_module.pb ด้วย
 เมื่อมีการเรียกใช้ API การโหลดโมเดลไลบรารี tensorflow_hub ตัวใดตัวหนึ่ง ( hub.KerasLayer , hub.load ฯลฯ) ไลบรารีจะดาวน์โหลดโมเดล คลายการบีบอัดโมเดล และแคชโมเดลไว้ในเครื่อง ไลบรารี tensorflow_hub คาดว่า URL ของโมเดลจะได้รับการกำหนดเวอร์ชัน และเนื้อหาโมเดลของเวอร์ชันที่ระบุนั้นไม่เปลี่ยนรูป เพื่อให้สามารถแคชได้อย่างไม่มีกำหนด เรียนรู้เพิ่มเติมเกี่ยวกับ โมเดลแคช 

โฮสติ้งที่ไม่มีการบีบอัด
 เมื่อตัวแปรสภาพแวดล้อม TFHUB_MODEL_LOAD_FORMAT หรือแฟล็กบรรทัดคำสั่ง --tfhub_model_load_format ถูกตั้งค่าเป็น UNCOMPRESSED โมเดลจะถูกอ่านโดยตรงจากที่จัดเก็บข้อมูลระยะไกล (GCS) แทนที่จะดาวน์โหลดและไม่บีบอัดในเครื่อง เมื่อเปิดใช้งานลักษณะการทำงานนี้ ไลบรารีจะต่อท้าย ?tf-hub-format=uncompressed ไปยัง URL ของโมเดล คำขอดังกล่าวจะส่งกลับเส้นทางไปยังโฟลเดอร์บน GCS ที่มีไฟล์โมเดลที่ไม่มีการบีบอัด ตัวอย่างเช่น
 <a href="https://tfhub.dev/google/spice/2?tf-hub-format=uncompressed">https://tfhub.dev/google/spice/2?tf-hub-format=uncompressed</a>
 ผลตอบแทน
 gs://tfhub-modules/google/spice/2/uncompressed ในเนื้อความของการตอบกลับ 303 จากนั้นไลบรารีจะอ่านโมเดลจากปลายทาง GCS นั้น