प्रलेखन लिखें

tfhub.devमें योगदान करने के लिए, मार्कडाउन प्रारूप में दस्तावेज़ीकरण प्रदान किया जाना चाहिए। tfhub.devमें मॉडल योगदान करने की प्रक्रिया के पूर्ण अवलोकन के लिए, योगदान एक मॉडल मार्गदर्शिका देखें।

मार्कडाउन दस्तावेज़ीकरण के प्रकार

tfhub.devमें 3 प्रकार के मार्कडाउन दस्तावेज़ों का उपयोग किया जाता है:

सामग्री संगठन

TensorFlow हब GitHub रिपॉजिटरी में योगदान करते समय निम्नलिखित सामग्री संगठन की आवश्यकता होती है:

  • प्रत्येक प्रकाशक निर्देशिका assets/docs निर्देशिका में है
  • प्रत्येक प्रकाशक निर्देशिका में वैकल्पिक models और collections निर्देशिकाएं होती हैं
  • प्रत्येक मॉडल की assets/docs/<publisher_name>/models के अंतर्गत अपनी निर्देशिका होनी चाहिए
  • प्रत्येक संग्रह की अपनी निर्देशिका assets/docs/<publisher_name>/collections के अंतर्गत होनी चाहिए

प्रकाशक मार्कडाउन अपरिवर्तित हैं, जबकि मॉडल के अलग-अलग संस्करण हो सकते हैं। प्रत्येक मॉडल संस्करण को एक अलग मार्कडाउन फ़ाइल की आवश्यकता होती है जिसका नाम उस संस्करण के नाम पर रखा गया है (यानी 1.md, 2)। संग्रह संस्करणबद्ध हैं लेकिन केवल एक संस्करण (1) समर्थित है।

किसी दिए गए मॉडल के सभी मॉडल संस्करण मॉडल निर्देशिका में स्थित होने चाहिए।

मार्कडाउन सामग्री को कैसे व्यवस्थित किया जाता है, इसका एक उदाहरण नीचे दिया गया है:

assets/docs
├── <publisher_name_a>
│   ├── <publisher_name_a>.md  -> Documentation of the publisher.
│   └── models
│       └── <model_name>       -> Model name with slashes encoded as sub-path.
│           ├── 1.md           -> Documentation of the model version 1.
│           └── 2.md           -> Documentation of the model version 2.
├── <publisher_name_b>
│   ├── <publisher_name_b>.md  -> Documentation of the publisher.
│   ├── models
│   │   └── ...
│   └── collections
│       └── <collection_name>
│           └── 1.md           -> Documentation for the collection.
├── <publisher_name_c>
│   └── ...
└── ...

प्रकाशक मार्कडाउन प्रारूप

प्रकाशक दस्तावेज़ीकरण उसी तरह की मार्कडाउन फ़ाइलों में मॉडल के रूप में घोषित किया जाता है, जिसमें मामूली वाक्यविन्यास अंतर होता है।

TensorFlow हब रेपो पर प्रकाशक फ़ाइल के लिए सही स्थान है: tfhub.dev/assets/docs /<publisher_id>/<publisher_id.md>

"vtab" प्रकाशक के लिए न्यूनतम प्रकाशक दस्तावेज़ीकरण उदाहरण देखें:

# Publisher vtab
Visual Task Adaptation Benchmark

[![Icon URL]](https://storage.googleapis.com/vtab/vtab_logo_120.png)

## VTAB
The Visual Task Adaptation Benchmark (VTAB) is a diverse, realistic and
challenging benchmark to evaluate image representations.

ऊपर दिया गया उदाहरण प्रकाशक आईडी, प्रकाशक का नाम, उपयोग करने के लिए आइकन का पथ, और एक लंबा फ़्री-फ़ॉर्म मार्कडाउन दस्तावेज़ीकरण निर्दिष्ट करता है। ध्यान दें कि प्रकाशक आईडी में केवल छोटे अक्षर, अंक और हाइफ़न होने चाहिए।

प्रकाशक का नाम दिशानिर्देश

आपका प्रकाशक नाम आपका GitHub उपयोगकर्ता नाम या आपके द्वारा प्रबंधित GitHub संगठन का नाम हो सकता है।

मॉडल पेज मार्कडाउन प्रारूप

मॉडल प्रलेखन कुछ ऐड-ऑन सिंटैक्स के साथ एक मार्कडाउन फ़ाइल है। न्यूनतम उदाहरण या अधिक यथार्थवादी उदाहरण मार्कडाउन फ़ाइल के लिए नीचे दिया गया उदाहरण देखें।

उदाहरण दस्तावेज़ीकरण

एक उच्च-गुणवत्ता वाले मॉडल दस्तावेज़ में कोड स्निपेट होते हैं, जानकारी होती है कि मॉडल को कैसे प्रशिक्षित किया गया और इसका उपयोग कैसे किया गया। आपको नीचे बताए गए मॉडल-विशिष्ट मेटाडेटा गुणों का भी उपयोग करना चाहिए ताकि उपयोगकर्ता आपके मॉडल को tfhub.dev पर तेज़ी से ढूंढ सकें।

# Module google/text-embedding-model/1

Simple one sentence description.

<!-- asset-path: https://path/to/text-embedding-model/model.tar.gz -->
<!-- task: text-embedding -->
<!-- fine-tunable: true -->
<!-- format: saved_model_2 -->

## Overview

Here we give more information about the model including how it was trained,
expected use cases, and code snippets demonstrating how to use the model:

```
Code snippet demonstrating use (e.g. for a TF model using the tensorflow_hub library)

import tensorflow_hub as hub

model = hub.KerasLayer(<model name>)
inputs = ...
output = model(inputs)
```

मॉडल परिनियोजन और समूह परिनियोजन एक साथ

tfhub.dev -placeholder54 TensorFlow SavedModel के TF.js, TFLite और Coral परिनियोजन को प्रकाशित करने की अनुमति देता है।

मार्कडाउन फ़ाइल की पहली पंक्ति में प्रारूप का प्रकार निर्दिष्ट होना चाहिए:

  • # Module publisher/model/version
  • # Tfjs publisher/model/version
  • लाइट परिनियोजन के लिए # Lite publisher/model/version
  • # Coral publisher/model/version

एक ही वैचारिक मॉडल के इन विभिन्न स्वरूपों के लिए tfhub.devपर एक ही मॉडल पृष्ठ पर दिखाना एक अच्छा विचार है। किसी दिए गए TF.js, TFLite या Coral परिनियोजन को TensorFlow SavedModel मॉडल से संबद्ध करने के लिए, पैरेंट-मॉडल टैग निर्दिष्ट करें:

<!-- parent-model: publisher/model/version -->

कभी-कभी आप TensorFlow SavedModel के बिना एक या अधिक परिनियोजन प्रकाशित करना चाह सकते हैं। उस स्थिति में, आपको एक प्लेसहोल्डर मॉडल बनाना होगा और उसके हैंडल को parent-model टैग में निर्दिष्ट करना होगा। प्लेसहोल्डर मार्कडाउन TensorFlow मॉडल मार्कडाउन के समान है, सिवाय इसके कि पहली पंक्ति है: # Placeholder publisher/model/version और इसके लिए asset-path प्रॉपर्टी की आवश्यकता नहीं है।

मॉडल मार्कडाउन विशिष्ट मेटाडेटा गुण

मार्कडाउन फाइलों में मेटाडेटा गुण हो सकते हैं। इनका उपयोग फ़िल्टर और टैग प्रदान करने के लिए किया जाता है ताकि उपयोगकर्ताओं को आपका मॉडल ढूंढने में सहायता मिल सके। मार्कडाउन फ़ाइल के संक्षिप्त विवरण के बाद मेटाडेटा विशेषताओं को मार्कडाउन टिप्पणियों के रूप में शामिल किया गया है, उदाहरण के लिए

# Module google/universal-sentence-encoder/1
Encoder of greater-than-word length text trained on a variety of data.

<!-- task: text-embedding -->
...

निम्नलिखित मेटाडेटा गुण समर्थित हैं:

  • format : TensorFlow मॉडल के लिए: मॉडल का TensorFlow हब प्रारूप। मान्य मान hub होते हैं जब मॉडल को लीगेसी TF1 हब प्रारूप के माध्यम से निर्यात किया गया था या saved_model_2 जब मॉडल को TF2 सहेजे गए मॉडल के माध्यम से निर्यात किया गया था।
  • asset-path : अपलोड करने के लिए वास्तविक मॉडल एसेट का विश्व-पठनीय दूरस्थ पथ, जैसे कि Google क्लाउड स्टोरेज बकेट। URL को robots.txt फ़ाइल से प्राप्त करने की अनुमति दी जानी चाहिए (इस कारण से, "https://github.com/. /releases/download/. " समर्थित नहीं है क्योंकि यह https://github द्वारा निषिद्ध है .com/robots.txt )। अपेक्षित फ़ाइल प्रकार और सामग्री के बारे में अधिक जानकारी के लिए नीचे देखें।
  • parent-model : TF.js/TFLite/कोरल मॉडल के लिए: साथ में सहेजे गए मॉडल/प्लेसहोल्डर का हैंडल
  • fine-tunable : बूलियन, क्या मॉडल को उपयोगकर्ता द्वारा फाइन-ट्यून किया जा सकता है।
  • task : समस्या डोमेन, उदाहरण के लिए "पाठ-एम्बेडिंग"। सभी समर्थित मान task.yaml में परिभाषित हैं।
  • dataset : वह डेटासेट जिस पर मॉडल को प्रशिक्षित किया गया था, उदाहरण के लिए "विकिपीडिया"। सभी समर्थित मान dataset.yaml में परिभाषित हैं।
  • network-architecture : नेटवर्क आर्किटेक्चर जिस पर मॉडल आधारित है, उदाहरण के लिए "mobilenet-v3"। सभी समर्थित मान network_architecture.yaml में परिभाषित हैं।
  • language : भाषा का भाषा कोड जिस पर पाठ मॉडल को प्रशिक्षित किया गया था, उदाहरण के लिए "एन"। सभी समर्थित मान language.yaml में परिभाषित हैं।
  • license : वह लाइसेंस जो मॉडल पर लागू होता है, उदाहरण के लिए "मिट"। एक प्रकाशित मॉडल के लिए डिफ़ॉल्ट मान लिया गया लाइसेंस Apache 2.0 लाइसेंस है। सभी समर्थित मान licence.yaml में परिभाषित हैं। ध्यान दें कि custom लाइसेंस के लिए मामले के अनुसार विशेष विचार की आवश्यकता होगी।
  • colab : एक नोटबुक का HTTPS URL जो दर्शाता है कि मॉडल का उपयोग या प्रशिक्षण कैसे किया जा सकता है ( उदाहरण bigbigan-resnet50 के लिए)। colab.research.google.com पर जाना होगा। ध्यान दें कि GitHub पर होस्ट की गई Jupyter नोटबुक को <a href="https://colab.research.google.com/github/ORGANIZATION/PROJECT/">https://colab.research.google.com/github/ORGANIZATION/PROJECT/</a> blob/master/.../my_notebook.ipynb के ज़रिए एक्सेस किया जा सकता है <a href="https://colab.research.google.com/github/ORGANIZATION/PROJECT/">https://colab.research.google.com/github/ORGANIZATION/PROJECT/</a> blob/master/.../my_notebook.ipynb
  • demo : किसी वेबसाइट का HTTPS URL जो दर्शाता है कि TF.js मॉडल का उपयोग कैसे किया जा सकता है ( उदाहरण के लिए posenet )।
  • interactive-visualizer : विज़ुअलाइज़र का नाम जिसे मॉडल पेज पर एम्बेड किया जाना चाहिए, जैसे "विज़न"। विज़ुअलाइज़र प्रदर्शित करने से उपयोगकर्ता मॉडल की भविष्यवाणियों को अंतःक्रियात्मक रूप से एक्सप्लोर कर सकते हैं। सभी समर्थित मान Interactive_visualizer.yaml में परिभाषित हैं।

मार्कडाउन प्रलेखन प्रकार विभिन्न आवश्यक और वैकल्पिक मेटाडेटा गुणों का समर्थन करते हैं:

प्रकार आवश्यक वैकल्पिक
प्रकाशक
संग्रह काम डेटासेट, भाषा, नेटवर्क-वास्तुकला
प्लेसहोल्डर काम डेटासेट, फाइन-ट्यून करने योग्य, इंटरैक्टिव-विज़ुअलाइज़र, भाषा, लाइसेंस, नेटवर्क-आर्किटेक्चर
सहेजा गया मॉडल संपत्ति-पथ, कार्य, ठीक-ट्यून करने योग्य, प्रारूप कोलाब, डेटासेट, इंटरैक्टिव-विज़ुअलाइज़र, भाषा, लाइसेंस, नेटवर्क-आर्किटेक्चर
Tfjs संपत्ति-पथ, अभिभावक-मॉडल कोलाब, डेमो, इंटरैक्टिव-विज़ुअलाइज़र
हल्का संपत्ति-पथ, अभिभावक-मॉडल colab, इंटरैक्टिव-विज़ुअलाइज़र
मूंगा संपत्ति-पथ, अभिभावक-मॉडल colab, इंटरैक्टिव-विज़ुअलाइज़र

मॉडल-विशिष्ट संपत्ति सामग्री

मॉडल प्रकार के आधार पर, निम्न फ़ाइल प्रकार और सामग्री अपेक्षित हैं:

  • SavedModel: एक tar.gz संग्रह जिसमें इस तरह की सामग्री शामिल है:
saved_model.tar.gz
├── assets/            # Optional.
├── assets.extra/      # Optional.
├── variables/
│     ├── variables.data-?????-of-?????
│     └──  variables.index
├── saved_model.pb
├── keras_metadata.pb  # Optional, only required for Keras models.
└── tfhub_module.pb    # Optional, only required for TF1 models.
  • TF.js: एक tar.gz संग्रह जिसमें इस तरह की सामग्री शामिल है:
tf_js_model.tar.gz
├── group*
├── *.json
├── *.txt
└── *.pb
  • TFlite: एक .tflite फ़ाइल
  • मूंगा: एक .tflite फ़ाइल

tar.gz अभिलेखागार के लिए: मान लें कि आपकी मॉडल फ़ाइलें my_model निर्देशिका में हैं (उदाहरण के लिए my_model/saved_model.pb सहेजे गए मॉडल के लिए या my_model/model.json TF.js मॉडल के लिए), आप टार टूल का उपयोग करके एक मान्य tar.gz संग्रह बना सकते हैं। cd my_model && tar -czvf ../model.tar.gz * के माध्यम से।

आम तौर पर, सभी फाइलों और निर्देशिकाओं (चाहे संपीड़ित या असम्पीडित) एक शब्द वर्ण से शुरू होनी चाहिए, उदाहरण के लिए डॉट्स फ़ाइल नामों/निर्देशिकाओं का कोई मान्य उपसर्ग नहीं हैं।

संग्रह पृष्ठ मार्कडाउन प्रारूप

संग्रह tfhub.dev placeholder60 की एक विशेषता है जो प्रकाशकों को उपयोगकर्ता खोज अनुभव को बेहतर बनाने के लिए संबंधित मॉडलों को एक साथ बंडल करने में सक्षम बनाता है।

tfhub.devplaceholder63 पर सभी संग्रहों की सूची देखें।

रिपॉजिटरी में संग्रह फ़ाइल के लिए सही स्थान github.com/tensorflow/tfhub.dev है एसेट/डॉक्स / पब्लिशर_नाम > /संग्रह/ <संग्रह_नाम> / 1 एमडी

यहां एक न्यूनतम उदाहरण दिया गया है जो संपत्ति/दस्तावेज़/ vtab /संग्रह/ बेंचमार्क / 1 .md में जाएगा। ध्यान दें कि पहली पंक्ति में संग्रह के नाम में collections/ भाग शामिल नहीं है जो फ़ाइलपथ में शामिल है।

# Collection vtab/benchmark/1
Collection of visual representations that have been evaluated on the VTAB
benchmark.

<!-- task: image-feature-vector -->

## Overview
This is the list of visual representations in TensorFlow Hub that have been
evaluated on VTAB. Results can be seen in
[google-research.github.io/task_adaptation/](https://google-research.github.io/task_adaptation/)

#### Models
|                   |
|-------------------|
| [vtab/sup-100/1](https://tfhub.dev/vtab/sup-100/1)   |
| [vtab/rotation/1](https://tfhub.dev/vtab/rotation/1) |
|------------------------------------------------------|

उदाहरण संग्रह का नाम, एक संक्षिप्त वाक्य विवरण, समस्या डोमेन मेटाडेटा और फ्री-फॉर्म मार्कडाउन दस्तावेज़ीकरण निर्दिष्ट करता है।