Po zakończeniu pracy nad modelem i osiągnięciu satysfakcjonujących wyników, będzie on gotowy do wdrożenia i można go zapytać o przewidywania na podstawie wypowiedzi. Wdrożenie modelu udostępnia go do użycia za pośrednictwem interfejsu API przewidywania.
Wymagania wstępne
Aby uzyskać więcej informacji, zobacz cykl projektowania projektu.
Wdrażanie modelu
Po przejrzeniu wydajności modelu i podjęciu decyzji, że można go używać w danym środowisku, musisz przypisać go do wdrożenia, aby móc wykonywać względem niego zapytania. Przypisanie modelu do wdrożenia udostępnia go do wykorzystania za pośrednictwem API prognozowania. Zaleca się utworzenie wdrożenia o nazwie production
, do którego przypisano najlepszy model utworzony do tej pory i użycie go w systemie. Możesz utworzyć kolejne wdrożenie o nazwie staging
, do którego można przypisać model, nad którym pracujesz, aby móc go przetestować. W projekcie można mieć maksymalnie 10 wdrożeń.
Aby wdrożyć model z poziomu programu Language Studio:
Wybierz pozycję Deploying a model (Wdrażanie modelu ) z menu po lewej stronie.
Wybierz Dodaj wdrożenie, aby uruchomić kreator Dodaj wdrożenie.
Wybierz Utwórz nową nazwę wdrożenia, aby utworzyć nowe wdrożenie i przyporządkuj wytrenowany model z listy rozwijanej poniżej. W przeciwnym razie możesz wybrać pozycję Zastąp istniejącą nazwę wdrożenia, aby skutecznie zastąpić model używany przez istniejące wdrożenie.
Uwaga
Nadpisywanie istniejącego wdrożenia nie wymaga zmian w wywołaniu API Predykcji, ale uzyskane wyniki będą oparte na niedawno przypisanym modelu.
Wybierz wytrenowany model z listy rozwijanej Model .
Wybierz pozycję Wdróż , aby uruchomić zadanie wdrożenia.
Po pomyślnym wdrożeniu obok zostanie wyświetlona data wygaśnięcia.
Wygaśnięcie wdrożenia jest wtedy, gdy wdrożony model będzie niedostępny do przewidywania, co zwykle występuje dwanaście miesięcy po wygaśnięciu konfiguracji trenowania.
Wyślij zadanie wdrożenia
Utwórz żądanie PUT przy użyciu następującego adresu URL, nagłówków i treści JSON, aby rozpocząć wdrażanie modelu interpretacji języka konwersacji.
Adres URL żądania
{ENDPOINT}/language/authoring/analyze-conversations/projects/{PROJECT-NAME}/deployments/{DEPLOYMENT-NAME}?api-version={API-VERSION}
Symbol zastępczy |
Wartość |
Przykład |
{ENDPOINT} |
Punkt końcowy do uwierzytelniania żądania interfejsu API. |
https://<your-custom-subdomain>.cognitiveservices.azure.com |
{PROJECT-NAME} |
Nazwa projektu. Wartość jest rozróżnialna względem wielkości liter. |
myProject |
{DEPLOYMENT-NAME} |
Nazwa Twojego wdrożenia. Ta wartość jest rozróżniana według wielkości liter. |
staging |
{API-VERSION} |
Wersja wywoływanego interfejsu API. |
2023-04-01 |
Użyj następującego nagłówka, aby uwierzytelnić żądanie.
Klucz |
Wartość |
Ocp-Apim-Subscription-Key |
Klucz do twojego zasobu. Służy do uwierzytelniania żądań interfejsu API. |
Treść żądania
{
"trainedModelLabel": "{MODEL-NAME}",
}
Klucz |
Symbol zastępczy |
Wartość |
Przykład |
WytrenowanyModelEtykieta |
{MODEL-NAME} |
Nazwa modelu, która zostanie przypisana do wdrożenia. Można przypisać tylko pomyślnie wyszkolone modele. Wartość ta jest rozróżniana ze względu na wielkość liter. |
myModel |
Po wysłaniu żądania API otrzymasz odpowiedź oznaczającą 202
powodzenie. W nagłówkach odpowiedzi wyodrębnij wartość operation-location
. Zostanie on sformatowany w następujący sposób:
{ENDPOINT}/language/authoring/analyze-conversations/projects/{PROJECT-NAME}/deployments/{DEPLOYMENT-NAME}/jobs/{JOB-ID}?api-version={API-VERSION}
Możesz użyć tego adresu URL, aby uzyskać stan zadania wdrożenia.
Pobierz stan zadania wdrożenia
Po wysłaniu pomyślnego żądania wdrożenia pełny adres URL żądania sprawdzania stanu zadania (w tym punktu końcowego, nazwy projektu i identyfikatora zadania) jest zawarty w nagłówku operation-location
odpowiedzi.
Użyj następującego żądania GET , aby uzyskać stan zadania wdrożenia. Zastąp wartości zastępcze własnymi wartościami.
Żądany adres URL
{ENDPOINT}/language/authoring/analyze-conversations/projects/{PROJECT-NAME}/deployments/{DEPLOYMENT-NAME}/jobs/{JOB-ID}?api-version={API-VERSION}
Symbol zastępczy |
Wartość |
Przykład |
{ENDPOINT} |
Punkt końcowy do uwierzytelniania żądania interfejsu API. |
https://<your-custom-subdomain>.cognitiveservices.azure.com |
{PROJECT-NAME} |
Nazwa projektu. Ta wartość jest wrażliwa na wielkość liter. |
myProject |
{DEPLOYMENT-NAME} |
Nazwa wdrożenia. Ta wartość jest uwzględniana w wielkości liter. |
staging |
{JOB-ID} |
Identyfikator (ID) do określenia statusu treningu modelu. |
xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxxx |
{API-VERSION} |
Wersja wywoływanego interfejsu API. |
2023-04-01 |
Użyj następującego nagłówka, aby uwierzytelnić żądanie.
Klucz |
Wartość |
Ocp-Apim-Subscription-Key |
Klucz do Twojego zasobu. Służy do uwierzytelniania żądań interfejsu API. |
Treść odpowiedzi
Po wysłaniu żądania otrzymasz następującą odpowiedź. Kontynuuj sondowanie tego punktu końcowego, dopóki parametr status nie zmieni się na "zakończono pomyślnie".
{
"jobId":"{JOB-ID}",
"createdDateTime":"{CREATED-TIME}",
"lastUpdatedDateTime":"{UPDATED-TIME}",
"expirationDateTime":"{EXPIRATION-TIME}",
"status":"running"
}
Zamień wdrożenia
Po zakończeniu testowania modelu przypisanego do jednego wdrożenia warto przypisać go do innego wdrożenia. Zamiana wdrożeń obejmuje:
- Pobranie modelu przypisanego do pierwszego wdrożenia i przypisanie go do drugiego wdrożenia.
- pobranie modelu przypisanego do drugiego wdrożenia i przypisanie go do pierwszego wdrożenia.
Może to być użyte do zamiany twoich wdrożeń production
i staging
, gdy chcesz przejąć model przypisany do staging
i przypisać go do production
.
Aby przełączyć wdrożenia z poziomu programu Language Studio
Na stronie Wdrażanie modelu wybierz dwa wdrożenia, które chcesz zamienić, i wybierz pozycję Zamień wdrożenia z górnego menu.
W wyświetlonym oknie wybierz nazwy wdrożeń, które chcesz zamienić.
Utwórz żądanie POST przy użyciu następującego adresu URL, nagłówków i treści JSON, aby rozpocząć zadanie wdrażania zamiany.
Adres URL żądania
{ENDPOINT}/language/authoring/analyze-conversations/projects/{PROJECT-NAME}/deployments/:swap?api-version={API-VERSION}
Symbol zastępczy |
Wartość |
Przykład |
{ENDPOINT} |
Punkt końcowy do uwierzytelniania żądania interfejsu API. |
https://<your-custom-subdomain>.cognitiveservices.azure.com |
{PROJECT-NAME} |
Nazwa projektu. Ta wartość jest rozróżniana według wielkości liter. |
myProject |
{API-VERSION} |
Wersja interfejsu API, którą wywołujesz. |
2023-04-01 |
Użyj następującego nagłówka, aby uwierzytelnić żądanie.
Klucz |
Wartość |
Ocp-Apim-Subscription-Key |
Klucz do twojego zasobu. Służy do uwierzytelniania żądań interfejsu API. |
Ciało żądania
{
"firstDeploymentName": "{FIRST-DEPLOYMENT-NAME}",
"secondDeploymentName": "{SECOND-DEPLOYMENT-NAME}"
}
Klucz |
Symbol zastępczy |
Wartość |
Przykład |
NazwaPierwszegoWdrożenia |
{FIRST-DEPLOYMENT-NAME} |
Nazwa pierwszego wdrożenia. Ta wartość jest uwzględniana w wielkości liter. |
production |
drugaNazwaWdrożenia |
{SECOND-DEPLOYMENT-NAME} |
Nazwa drugiego wdrożenia. Ta wartość jest rozróżniana co do wielkości liter. |
staging |
Po wysłaniu żądania API otrzymasz odpowiedź potwierdzającą 202
sukces.
Usuń wdrożenie
Aby usunąć wdrożenie z poziomu programu Language Studio, wybierz stronę Wdrażanie modelu . Następnie wybierz wdrożenie, które chcesz usunąć, a następnie wybierz pozycję Usuń wdrożenie w górnym menu.
Utwórz żądanie DELETE przy użyciu następującego adresu URL, nagłówków i treści JSON, aby usunąć wdrożenie interpretacji języka konwersacji.
Adres URL żądania
{ENDPOINT}/language/authoring/analyze-conversations/projects/{projectName}/deployments/{deploymentName}?api-version={API-VERSION}
Symbol zastępczy |
Wartość |
Przykład |
{ENDPOINT} |
Punkt końcowy do uwierzytelniania żądania interfejsu API. |
https://<your-custom-subdomain>.cognitiveservices.azure.com |
{PROJECT-NAME} |
Nazwa projektu. Ta wartość jest rozróżniana pod względem wielkości liter. |
myProject |
{DEPLOYMENT-NAME} |
Nazwa wdrożenia. Ta wartość jest rozróżniana ze względu na wielkość liter. |
staging |
{API-VERSION} |
Wersja wywoływanego interfejsu API. |
2023-04-01 |
Użyj następującego nagłówka, aby uwierzytelnić żądanie.
Klucz |
Wartość |
Ocp-Apim-Subscription-Key |
Klucz do twojego zasobu. Służy do uwierzytelniania żądań interfejsu API. |
Po wysłaniu żądania do interfejsu programowania aplikacji (API) otrzymasz odpowiedź informującą o 202
powodzeniu, co oznacza, że Twoje wdrożenie zostało usunięte.
Przypisz zasoby wdrażania
Projekt można wdrożyć w wielu regionach , przypisując różne zasoby językowe, które istnieją w różnych regionach.
Aby przypisać zasoby wdrażania w innych regionach w programie Language Studio:
- Upewnij się, że masz przypisaną rolę właściciela języka Cognitive Services do zasobu, którego użyłeś do utworzenia projektu.
- Przejdź do strony Wdrażanie modelu w programie Language Studio.
- Wybierz kartę Regiony .
- Wybierz Dodaj zasób wdrożenia.
- Wybierz zasób języka w innym regionie.
Teraz możesz przystąpić do wdrażania projektu w regionach, w których przypisano zasoby.
Programatyczne przypisywanie zasobów wdrażania wymaga uwierzytelniania Microsoft Entra. Identyfikator Entra firmy Microsoft służy do potwierdzania, że masz dostęp do zasobów, które chcesz przypisać do projektu na potrzeby wdrożenia w wielu regionach. Aby programowo korzystać z uwierzytelniania Microsoft Entra podczas wykonywania wywołań interfejsu API REST, zapoznaj się z dokumentacją uwierzytelniania usług Azure AI.
Przypisywanie zasobu
Prześlij żądanie POST przy użyciu następującego adresu URL, nagłówków i treści JSON, aby przypisać zasoby wdrożenia.
Adres URL żądania
Podczas tworzenia żądania interfejsu API użyj następującego adresu URL. Zastąp poniższe wartości umowne własnymi wartościami.
{ENDPOINT}/language/authoring/analyze-conversations/projects/{PROJECT-NAME}/resources/:assign?api-version={API-VERSION}
Symbol zastępczy |
Wartość |
Przykład |
{ENDPOINT} |
Punkt końcowy do uwierzytelniania żądania interfejsu API. |
https://<your-custom-subdomain>.cognitiveservices.azure.com |
{PROJECT-NAME} |
Nazwa projektu. Ta wartość jest rozróżniana ze względu na wielkość liter. |
myProject |
{API-VERSION} |
Wersja wywoływanego interfejsu API. |
2022-10-01-preview |
Użyj uwierzytelniania Microsoft Entra, aby uwierzytelnić ten interfejs API.
Treść
Użyj następującego przykładowego kodu JSON jako treści.
{
"resourcesMetadata": [
{
"azureResourceId": "{AZURE-RESOURCE-ID}",
"customDomain": "{CUSTOM-DOMAIN}",
"region": "{REGION-CODE}"
}
]
}
Klucz |
Symbol zastępczy |
Wartość |
Przykład |
azureResourceId |
{AZURE-RESOURCE-ID} |
Pełna ścieżka identyfikatora zasobu, którą chcesz przypisać. Znaleziono w witrynie Azure Portal na karcie Właściwości zasobu w polu Identyfikator zasobu . |
/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourceGroups/ContosoResourceGroup/providers/Microsoft.CognitiveServices/accounts/ContosoResource |
customDomain |
{CUSTOM-DOMAIN} |
Niestandardowa poddomena zasobu, który chcesz przypisać. Znaleziono w portalu Azure, pod kartą Klucze i punkt końcowy dla zasobu, w części pola Punkt końcowy w adresie URL https://<your-custom-subdomain>.cognitiveservices.azure.com/ |
contosoresource |
region |
{REGION-CODE} |
Kod regionu określający region zasobu, który chcesz przypisać. Znalezione w portalu Azure na karcie Klucze i punkt końcowy dla zasobu, w polu Lokalizacja/region. |
eastus |
Uzyskaj stan przypisanego zasobu
Użyj następującego żądania GET, aby uzyskać status zadania dotyczącego przydzielenia zasobu wdrożeniowego. Zastąp poniższe wartości symboli zastępczych własnymi wartościami.
Adres URL żądania
{ENDPOINT}/language/authoring/analyze-conversations/projects/{PROJECT-NAME}/resources/assign/jobs/{JOB-ID}?api-version={API-VERSION}
Symbol zastępczy |
Wartość |
Przykład |
{ENDPOINT} |
Punkt końcowy do uwierzytelniania żądania interfejsu API. |
https://<your-custom-subdomain>.cognitiveservices.azure.com |
{PROJECT-NAME} |
Nazwa projektu. Ta wartość rozróżnia wielkie i małe litery. |
myProject |
{JOB-ID} |
Identyfikator zadania służącego do uzyskiwania stanu wdrożenia przypisania. Jest to wartość nagłówka operation-location , którą otrzymałeś z API w odpowiedzi na żądanie przypisanie zasobu wdrożeniowego. |
xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxxx |
{API-VERSION} |
Wersja wywoływanego interfejsu API. |
2022-10-01-preview |
Użyj następującego nagłówka, aby uwierzytelnić żądanie.
Klucz |
Wartość |
Ocp-Apim-Subscription-Key |
Klucz do zasobu. Służy do uwierzytelniania żądań interfejsu API. |
Treść odpowiedzi
Po wysłaniu żądania otrzymasz następującą odpowiedź. Kontynuuj sondowanie tego punktu końcowego, aż parametr status zmieni się na "powodzenie".
{
"jobId":"{JOB-ID}",
"createdDateTime":"{CREATED-TIME}",
"lastUpdatedDateTime":"{UPDATED-TIME}",
"expirationDateTime":"{EXPIRATION-TIME}",
"status":"running"
}
Anulowanie przypisania zasobów wdrożeniowych
Odłączenie lub usunięcie zasobu wdrożenia z projektu spowoduje również usunięcie wszystkich wdrożeń, które zostały wdrożone w regionie tego zasobu.
Aby cofnąć przypisanie lub usunąć zasoby wdrożenia w innych regionach przy użyciu programu Language Studio:
- Przejdź do karty Regiony na stronie Wdrażanie modelu.
- Wybierz zasób, który chcesz cofnąć przypisania.
-
Wybierz przycisk Usuń przypisanie.
- W wyświetlonym oknie wpisz nazwę zasobu, który chcesz usunąć.
Usuń przypisanie zasobu
Prześlij żądanie POST przy użyciu następującego adresu URL, nagłówków i treści JSON, aby cofnąć przypisanie lub usunąć zasoby wdrożenia z projektu.
Adres URL żądania
Podczas tworzenia żądania interfejsu API użyj następującego adresu URL. Zastąp poniższe wartości zastępcze własnymi wartościami.
{ENDPOINT}/language/authoring/analyze-conversations/projects/{PROJECT-NAME}/resources/:unassign?api-version={API-VERSION}
Element zastępczy |
Wartość |
Przykład |
{ENDPOINT} |
Punkt końcowy do uwierzytelniania żądania interfejsu API. |
https://<your-custom-subdomain>.cognitiveservices.azure.com |
{PROJECT-NAME} |
Nazwa projektu. Ta wartość jest uwzględniana w wielkości liter. |
myProject |
{API-VERSION} |
Wersja wywoływanego interfejsu API. |
2022-10-01-preview |
Użyj następującego nagłówka, aby uwierzytelnić żądanie.
Klucz |
Wartość |
Ocp-Apim-Subscription-Key |
Klucz do Twojego zasobu. Służy do uwierzytelniania żądań interfejsu API. |
Treść
Użyj następującego przykładowego kodu JSON jako treść.
{
"assignedResourceIds": [
"{AZURE-RESOURCE-ID}"
]
}
Klucz |
Symbol zastępczy |
Wartość |
Przykład |
assignedResourceIds |
{AZURE-RESOURCE-ID} |
Pełna ścieżka identyfikatora zasobu, którą chcesz cofnąć. Znajduje się w portalu Azure na karcie Właściwości zasobu w polu Identyfikator zasobu. |
/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourceGroups/ContosoResourceGroup/providers/Microsoft.CognitiveServices/accounts/ContosoResource |
Pobierz stan nieprzypisanych zasobów
Użyj następującego żądania GET, aby uzyskać stan zadania dotyczącego nieprzypisania zasobów wdrożeniowych. Zastąp poniższe wartości tymczasowe własnymi wartościami.
Adres URL żądania
{ENDPOINT}/language/authoring/analyze-conversations/projects/{PROJECT-NAME}/resources/unassign/jobs/{JOB-ID}?api-version={API-VERSION}
Symbol zastępczy |
Wartość |
Przykład |
{ENDPOINT} |
Punkt końcowy do uwierzytelniania żądania interfejsu API. |
https://<your-custom-subdomain>.cognitiveservices.azure.com |
{PROJECT-NAME} |
Nazwa projektu. Ta wartość jest uwzględniana w wielkości liter. |
myProject |
{JOB-ID} |
Identyfikator zadania służący do uzyskania statusu przypisanego wdrożenia. Jest to wartość nagłówka operation-location otrzymana z API w odpowiedzi na Twoje żądanie usunięcia przypisania zasobu wdrożeniowego. |
xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxxx |
{API-VERSION} |
Wersja wywoływanego interfejsu API. |
2022-10-01-preview |
Użyj następującego nagłówka, aby uwierzytelnić żądanie.
Klucz |
Wartość |
Ocp-Apim-Subscription-Key |
Klucz do twojego zasobu. Służy do uwierzytelniania żądań interfejsu API. |
Treść odpowiedzi
Po wysłaniu żądania otrzymasz następującą odpowiedź. Kontynuuj sondowanie tego punktu końcowego, aż parametr status zmieni się na "sukces".
{
"jobId":"{JOB-ID}",
"createdDateTime":"{CREATED-TIME}",
"lastUpdatedDateTime":"{UPDATED-TIME}",
"expirationDateTime":"{EXPIRATION-TIME}",
"status":"running"
}
Następne kroki