এই দস্তাবেজটি tfhub.dev - TFJS, TF Lite এবং TensorFlow মডেলগুলিতে সমস্ত মডেলের ধরন হোস্ট করার সময় ব্যবহৃত ইউআরএল কনভেনশনগুলি বর্ণনা করে৷ এটি tfhub.dev থেকে TensorFlow মডেল এবং TensorFlow প্রোগ্রামগুলিতে সামঞ্জস্যপূর্ণ পরিষেবাগুলি লোড করার জন্য tensorflow_hub
লাইব্রেরি দ্বারা বাস্তবায়িত HTTP(S)-ভিত্তিক প্রোটোকলের বর্ণনা দেয়।
এর মূল বৈশিষ্ট্য হল মডেল লোড করতে কোডে একই URL ব্যবহার করা এবং মডেল ডকুমেন্টেশন দেখতে ব্রাউজারে।
সাধারণ ইউআরএল কনভেনশন
tfhub.dev নিম্নলিখিত URL বিন্যাস সমর্থন করে:
- TF হাব প্রকাশকরা
<a href="https://tfhub.dev/">https://tfhub.dev/</a><publisher>
অনুসরণ করে - TF হাব সংগ্রহ
<a href="https://tfhub.dev/">https://tfhub.dev/</a><publisher>/collection/<collection_name>
অনুসরণ করে - TF হাব মডেলের ভার্সন url
<a href="https://tfhub.dev/">https://tfhub.dev/</a><publisher>/<model_name>/<version>
এবং unversioned url<a href="https://tfhub.dev/">https://tfhub.dev/</a><publisher>/<model_name>
যা মডেলের সর্বশেষ সংস্করণে সমাধান করে।
TF Hub মডেলগুলি tfhub.dev মডেল URL-এ URL প্যারামিটার যুক্ত করে সংকুচিত সম্পদ হিসাবে ডাউনলোড করা যেতে পারে। যাইহোক, এটি অর্জনের জন্য প্রয়োজনীয় URL প্যারামিটারগুলি মডেলের প্রকারের উপর নির্ভর করে:
- TensorFlow মডেল (উভয় সংরক্ষিত মডেল এবং TF1 হাব ফর্ম্যাট): TensorFlow মডেল url-এ
?tf-hub-format=compressed
যুক্ত করুন। - TFJS মডেল: রিমোট স্টোরেজ থেকে পড়ার জন্য সংকুচিত বা
/model.json?tfjs-format=file
ফাইল ডাউনলোড করতে TFJS মডেল url-এ?tfjs-format=compressed
যুক্ত করুন। - TF লাইট মডেল: TF Lite মডেল url-এ
?lite-format=tflite
যোগ করুন।
যেমন:
টাইপ | মডেল URL | ডাউনলোড টাইপ | ইউআরএল প্যারাম | URL ডাউনলোড করুন |
টেনসরফ্লো (সংরক্ষিত মডেল, TF1 হাব ফর্ম্যাট) | https://tfhub.dev/google/spice/2 | .tar.gz | ?tf-হাব-ফরম্যাট = সংকুচিত | 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 মডেল চালানো বা Colab- এ একটি SavedModel লোড করা। সচেতন থাকুন যে স্থানীয়ভাবে ডাউনলোড না করে দূরবর্তীভাবে হোস্ট করা মডেলগুলি পড়া লেটেন্সি বাড়াতে পারে৷
টাইপ | মডেল URL | প্রতিক্রিয়ার ধরন | ইউআরএল প্যারাম | অনুরোধ URL |
টেনসরফ্লো (সংরক্ষিত মডেল, TF1 হাব ফর্ম্যাট) | https://tfhub.dev/google/spice/2 | স্ট্রিং (জিসিএস ফোল্ডারের পাথ যেখানে অসংকুচিত মডেল সংরক্ষণ করা হয়) | ?tf-hub-format=uncompressed | 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=file | https://tfhub.dev/google/tfjs-model/spice/2/default/1/model.json?tfjs-format=file |
tensorflow_hub লাইব্রেরি প্রোটোকল
এই বিভাগে আমরা tensorflow_hub লাইব্রেরির সাথে ব্যবহারের জন্য tfhub.dev- এ মডেলগুলি কীভাবে হোস্ট করি তা বর্ণনা করে। আপনি যদি tensorflow_hub লাইব্রেরির সাথে কাজ করার জন্য আপনার নিজস্ব মডেল সংগ্রহস্থল হোস্ট করতে চান, তাহলে আপনার HTTP(গুলি) বিতরণ পরিষেবা এই প্রোটোকলের একটি বাস্তবায়ন প্রদান করবে।
মনে রাখবেন যে এই বিভাগটি হোস্টিং TF Lite এবং TFJS মডেলগুলিকে সম্বোধন করে না কারণ সেগুলি tensorflow_hub
লাইব্রেরির মাধ্যমে ডাউনলোড করা হয় না৷ এই ধরনের মডেল হোস্টিং সম্পর্কে আরও তথ্যের জন্য, অনুগ্রহ করে উপরে দেখুন।
সংকুচিত হোস্টিং
মডেলগুলি tfhub.dev- এ সংকুচিত tar.gz ফাইল হিসাবে সংরক্ষণ করা হয়। ডিফল্টরূপে, tensorflow_hub লাইব্রেরি স্বয়ংক্রিয়ভাবে সংকুচিত মডেল ডাউনলোড করে। মডেল url-এ ?tf-hub-format=compressed
যুক্ত করে ম্যানুয়ালি ডাউনলোড করা যেতে পারে, উদাহরণস্বরূপ:
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
লিগ্যাসি TF1 হাব ফর্ম্যাটের সাথে ব্যবহারের জন্য টারবলগুলিতে একটি ./tfhub_module.pb
ফাইলও থাকবে৷
যখন tensorflow_hub
লাইব্রেরি মডেল লোডিং এপিআইগুলির মধ্যে একটি চালু করা হয় ( hub.KerasLayer , hub.load , ইত্যাদি) লাইব্রেরি মডেলটি ডাউনলোড করে, মডেলটিকে আনকম্প্রেস করে এবং স্থানীয়ভাবে ক্যাশে করে। tensorflow_hub
লাইব্রেরি আশা করে যে মডেল URLগুলি সংস্করণ করা হয়েছে এবং একটি প্রদত্ত সংস্করণের মডেল বিষয়বস্তু অপরিবর্তনীয়, যাতে এটি অনির্দিষ্টকালের জন্য ক্যাশে করা যায়। ক্যাশিং মডেল সম্পর্কে আরও জানুন।
আনকম্প্রেস হোস্টিং
যখন পরিবেশ পরিবর্তনশীল TFHUB_MODEL_LOAD_FORMAT
বা কমান্ড-লাইন ফ্ল্যাগ --tfhub_model_load_format
UNCOMPRESSED
এ সেট করা হয়, তখন মডেলটিকে স্থানীয়ভাবে ডাউনলোড এবং আনকম্প্রেস না করে সরাসরি রিমোট স্টোরেজ (GCS) থেকে পড়া হয়। এই আচরণ সক্রিয় করা হলে লাইব্রেরি মডেল URL-এ ?tf-hub-format=uncompressed
যুক্ত করে। সেই অনুরোধটি 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 গন্তব্য থেকে মডেলটি পড়ে।