Sdílet prostřednictvím


Kopírování a zálohování projektů Custom Vision

Po vytvoření a vytrénování projektu Custom Vision můžete chtít projekt zkopírovat do jiného zdroje. Pokud vaše aplikace nebo firma závisí na projektu Custom Vision, doporučujeme zkopírovat model do jiného účtu Custom Vision v jiné oblasti. Pokud dojde k výpadku oblasti, můžete získat přístup k projektu v oblasti, ve které byl zkopírován.

Rozhraní API ExportProject a ImportProject umožňují tento scénář tím, že umožňují kopírovat projekty z jednoho účtu Custom Vision do jiných. V této příručce se dozvíte, jak tato rozhraní REST API používat s cURL. K vydávání požadavků můžete také použít službu požadavků HTTP, jako je klient REST pro Visual Studio Code.

Tip

Příklad tohoto scénáře s využitím klientské knihovny Pythonu najdete v úložišti Move Custom Vision Project na GitHubu.

Tip

Pokud chcete přesunout projekt Custom Vision do azure AI Vision Image Analysis 4.0, prohlédněte si průvodce migrací. Pokud chcete porovnat dvě služby, podívejte se na stránku Porovnání.

Požadavky

  • Dva prostředky Azure AI Custom Vision Pokud je nemáte, přejděte na web Azure Portal a vytvořte nový prostředek Custom Vision.
  • Trénovací klíče a adresy URL koncových bodů vašich prostředků služby Custom Vision Tyto hodnoty najdete na kartě Přehled prostředku na webu Azure Portal.
  • Vytvořený projekt Custom Vision Pokyny k tomu najdete v tématu Sestavení klasifikátoru .

Vysvětlení procesu

Proces kopírování projektu se skládá z následujících kroků:

  1. Nejprve získáte ID projektu ve zdrojovém účtu, který chcete zkopírovat.
  2. Pak zavoláte rozhraní API ExportProject pomocí ID projektu a trénovacího klíče zdrojového účtu. Získáte dočasný řetězec tokenu.
  3. Pak zavoláte rozhraní IMPORTProject API pomocí řetězce tokenu a trénovacího klíče cílového účtu. Projekt se pak zobrazí pod vaším cílovým účtem.

Získání ID projektu

Nejprve zavolejte GetProjects , abyste viděli seznam existujících projektů Custom Vision a jejich ID. Použijte trénovací klíč a koncový bod zdrojového účtu.

curl -v -X GET "{endpoint}/customvision/v3.3/Training/projects"
-H "Training-key: {training key}"

Dostanete 200\OK odpověď se seznamem projektů a jejich metadat v těle. Hodnota "id" je řetězec, který chcete zkopírovat pro další kroky.

[
  {
    "id": "00000000-0000-0000-0000-000000000000",
    "name": "string",
    "description": "string",
    "settings": {
      "domainId": "00000000-0000-0000-0000-000000000000",
      "classificationType": "Multiclass",
      "targetExportPlatforms": [
        "CoreML"
      ],
      "useNegativeSet": true,
      "detectionParameters": "string",
      "imageProcessingSettings": {
        "augmentationMethods": {}
      }
    },
    "created": "string",
    "lastModified": "string",
    "thumbnailUri": "string",
    "drModeEnabled": true,
    "status": "Succeeded"
  }
]

Export projektu

Volání ExportProject pomocí ID projektu a zdrojového trénovacího klíče a koncového bodu

curl -v -X GET "{endpoint}/customvision/v3.3/Training/projects/{projectId}/export"
-H "Training-key: {training key}"

200/OK Získáte odpověď s metadaty o exportovaného projektu a referenčním řetězci "token". Zkopírujte hodnotu tokenu.

{
  "iterationCount": 0,
  "imageCount": 0,
  "tagCount": 0,
  "regionCount": 0,
  "estimatedImportTimeInMS": 0,
  "token": "string"
}

Tip

Pokud při importu projektu dojde k chybě Neplatný token, může se jednat o to, že řetězec adresy URL tokenu není kódovaný na webu. Token můžete kódovat pomocí kodéru URL.

Import projektu

Volání ImportProject pomocí cílového trénovacího klíče a koncového bodu spolu s referenčním tokenem Projekt můžete také pojmenovat v novém účtu.

curl -v -G -X POST "{endpoint}/customvision/v3.3/Training/projects/import"
--data-urlencode "token={token}" --data-urlencode "name={name}"
-H "Training-key: {training key}" -H "Content-Length: 0"

Získáte 200/OK odpověď s metadaty o nově importovaném projektu.

{
  "id": "00000000-0000-0000-0000-000000000000",
  "name": "string",
  "description": "string",
  "settings": {
    "domainId": "00000000-0000-0000-0000-000000000000",
    "classificationType": "Multiclass",
    "targetExportPlatforms": [
      "CoreML"
    ],
    "useNegativeSet": true,
    "detectionParameters": "string",
    "imageProcessingSettings": {
      "augmentationMethods": {}
    }
  },
  "created": "string",
  "lastModified": "string",
  "thumbnailUri": "string",
  "drModeEnabled": true,
  "status": "Succeeded"
}

Další krok

V této příručce jste se naučili kopírovat a přesouvat projekt mezi prostředky Služby Custom Vision. Dále prozkoumejte referenční dokumentaci k rozhraní API a podívejte se, co dalšího můžete s Custom Vision dělat.