Säkerhetskopiera och återställa dina modeller för förståelse av konversationsspråk
När du skapar en språkresurs i Azure Portal anger du en region som den ska skapas i. Därefter sker din resurs och alla åtgärder som är relaterade till den i den angivna Azure-serverregionen. Det är ovanligt, men inte omöjligt, att stöta på ett nätverksproblem som drabbar en hel region. Om din lösning alltid behöver vara tillgänglig bör du utforma den till antingen redundansväxling till en annan region. Detta kräver två Azure AI Language-resurser i olika regioner och möjligheten att synkronisera dina CLU-modeller mellan regioner.
Om din app eller ditt företag är beroende av användningen av en CLU-modell rekommenderar vi att du skapar en replik av projektet i en annan region som stöds. Så att om ett regionalt avbrott inträffar kan du komma åt din modell i den andra redundansregionen där du replikerade projektet.
Att replikera ett projekt innebär att du exporterar dina projektmetadata och tillgångar och importerar dem till ett nytt projekt. Detta gör bara en kopia av dina projektinställningar, avsikter, entiteter och yttranden. Du måste fortfarande träna och distribuera modellerna för att vara tillgängliga för användning med körnings-API:er.
I den här artikeln får du lära dig hur du använder export- och import-API:er för att replikera projektet från en resurs till en annan som finns i olika geografiska regioner som stöds, vägledning om hur du håller dina projekt synkroniserade och ändringar som krävs för din körningsförbrukning.
Förutsättningar
- Två Azure AI Language-resurser i olika Azure-regioner, var och en i en annan region.
Hämta resursnycklarnas slutpunkt
Använd följande steg för att hämta nycklar och slutpunkter för dina primära och sekundära resurser. Dessa används i följande steg.
Gå till resursöversiktssidan i Azure Portal. På menyn till vänster väljer du Nycklar och Slutpunkt. Du använder slutpunkten och nyckeln för API-begäranden
Dricks
Anteckna nycklar och slutpunkter för både primära och sekundära resurser. Använd dessa värden för att ersätta följande platshållare: {PRIMARY-ENDPOINT}
, {PRIMARY-RESOURCE-KEY}
och {SECONDARY-ENDPOINT}
{SECONDARY-RESOURCE-KEY}
.
Anteckna även projektnamnet, modellnamnet och distributionsnamnet. Använd dessa värden för att ersätta följande platshållare: {PROJECT-NAME}
, {MODEL-NAME}
och {DEPLOYMENT-NAME}
.
Exportera dina primära projekttillgångar
Börja med att exportera projekttillgångarna från projektet i din primära resurs.
Skicka exportjobb
Ersätt platshållarna i följande begäran med din {PRIMARY-ENDPOINT}
och {PRIMARY-RESOURCE-KEY}
som du fick i det första steget.
Skapa en POST-begäran med hjälp av följande URL, rubriker och JSON-brödtext för att exportera projektet.
Begärans-URL
Använd följande URL när du skapar din API-begäran. Ersätt platshållarvärdena nedan med dina egna värden.
{ENDPOINT}/language/authoring/analyze-conversations/projects/{PROJECT-NAME}/:export?stringIndexType=Utf16CodeUnit&api-version={API-VERSION}
Platshållare | Värde | Exempel |
---|---|---|
{ENDPOINT} |
Slutpunkten för att autentisera din API-begäran. | https://<your-custom-subdomain>.cognitiveservices.azure.com |
{PROJECT-NAME} |
Namnet på projektet. Det här värdet är skiftlägeskänsligt. | EmailApp |
{API-VERSION} |
Den version av API:et som du anropar. | 2023-04-01 |
Sidhuvuden
Använd följande rubrik för att autentisera din begäran.
Tangent | Värde |
---|---|
Ocp-Apim-Subscription-Key |
Nyckeln till resursen. Används för att autentisera dina API-begäranden. |
När du har skickat din API-begäran får du ett 202
svar som anger att det har lyckats. Extrahera värdet i svarshuvudena operation-location
. Den formateras så här:
{ENDPOINT}/language/authoring/analyze-conversations/projects/{PROJECT-NAME}/jobs/{JOB-ID}?api-version={API-VERSION}
JOB-ID
används för att identifiera din begäran, eftersom den här åtgärden är asynkron. Använd den här URL:en för att hämta det exporterade projektets JSON med samma autentiseringsmetod.
Hämta status för exportjobb
Ersätt platshållarna i följande begäran med din {PRIMARY-ENDPOINT}
och {PRIMARY-RESOURCE-KEY}
som du fick i det första steget.
Använd följande GET-begäran för att fråga efter status för exportjobbet. Du kan använda den URL som du fick från föregående steg eller ersätta platshållarvärdena nedan med dina egna värden.
{ENDPOINT}/language/authoring/analyze-conversations/projects/{PROJECT-NAME}/export/jobs/{JOB-ID}?api-version={API-VERSION}
Platshållare | Värde | Exempel |
---|---|---|
{ENDPOINT} |
Slutpunkten för att autentisera din API-begäran. | https://<your-custom-subdomain>.cognitiveservices.azure.com |
{PROJECT-NAME} |
Namnet på projektet. Det här värdet är skiftlägeskänsligt. | myProject |
{JOB-ID} |
ID:t för att hitta statusen för exportjobbet. Det här är i det location rubrikvärde som du fick i föregående steg. |
xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxxx |
{API-VERSION} |
Den version av API:et som du anropar. | 2023-04-01 |
Sidhuvuden
Använd följande rubrik för att autentisera din begäran.
Nyckel | beskrivning | Värde |
---|---|---|
Ocp-Apim-Subscription-Key |
Nyckeln till resursen. Används för att autentisera dina API-begäranden. | {YOUR-PRIMARY-RESOURCE-KEY} |
Själva svaret
{
"resultUrl": "{Endpoint}/language/authoring/analyze-conversations/projects/{PROJECT-NAME}/export/jobs/xxxxxx-xxxxx-xxxxx-xx/result?api-version={API-VERSION}",
"jobId": "xxxx-xxxxx-xxxxx-xxx",
"createdDateTime": "2022-04-18T15:23:07Z",
"lastUpdatedDateTime": "2022-04-18T15:23:08Z",
"expirationDateTime": "2022-04-25T15:23:07Z",
"status": "succeeded"
}
Använd URL:en från resultUrl
nyckeln i brödtexten för att visa exporterade tillgångar från det här jobbet.
Hämta exportresultat
Skicka en GET-begäran med hjälp av det {RESULT-URL}
du fick från föregående steg för att visa resultatet av exportjobbet.
Sidhuvuden
Använd följande rubrik för att autentisera din begäran.
Nyckel | beskrivning | Värde |
---|---|---|
Ocp-Apim-Subscription-Key |
Nyckeln till resursen. Används för att autentisera dina API-begäranden. | {PRIMARY-RESOURCE-KEY} |
Kopiera svarstexten så som du ska använda den som brödtext för nästa importjobb.
Importera till ett nytt projekt
Nu ska du importera de exporterade projekttillgångarna i det nya projektet i den sekundära regionen så att du kan replikera det.
Skicka importjobb
Ersätt platshållarna i följande begäran med din {SECONDARY-ENDPOINT}
och {SECONDARY-RESOURCE-KEY}
som du fick i det första steget.
Skicka en POST-begäran med hjälp av följande URL, rubriker och JSON-brödtext för att importera projektet.
Begärans-URL
Använd följande URL när du skapar din API-begäran. Ersätt platshållarvärdena med dina egna värden.
{ENDPOINT}/language/authoring/analyze-conversations/projects/{PROJECT-NAME}/:import?api-version={API-VERSION}
Platshållare | Värde | Exempel |
---|---|---|
{ENDPOINT} |
Slutpunkten för att autentisera din API-begäran. | https://<your-custom-subdomain>.cognitiveservices.azure.com |
{PROJECT-NAME} |
Namnet på projektet. Det här värdet är skiftlägeskänsligt och måste matcha projektnamnet i JSON-filen som du importerar. | EmailAppDemo |
{API-VERSION} |
Den version av API:et som du anropar. | 2023-04-01 |
Sidhuvuden
Använd följande rubrik för att autentisera din begäran.
Tangent | Värde |
---|---|
Ocp-Apim-Subscription-Key |
Nyckeln till resursen. Används för att autentisera dina API-begäranden. |
Brödtext
JSON-brödtexten som du skickar liknar följande exempel. Mer information om JSON-objektet finns i referensdokumentationen .
{
"projectFileVersion": "{API-VERSION}",
"stringIndexType": "Utf16CodeUnit",
"metadata": {
"projectKind": "Conversation",
"settings": {
"confidenceThreshold": 0.7
},
"projectName": "{PROJECT-NAME}",
"multilingual": true,
"description": "Trying out CLU",
"language": "{LANGUAGE-CODE}"
},
"assets": {
"projectKind": "Conversation",
"intents": [
{
"category": "intent1"
},
{
"category": "intent2"
}
],
"entities": [
{
"category": "entity1"
}
],
"utterances": [
{
"text": "text1",
"dataset": "{DATASET}",
"intent": "intent1",
"entities": [
{
"category": "entity1",
"offset": 5,
"length": 5
}
]
},
{
"text": "text2",
"language": "{LANGUAGE-CODE}",
"dataset": "{DATASET}",
"intent": "intent2",
"entities": []
}
]
}
}
Nyckel | Platshållare | Värde | Exempel |
---|---|---|---|
{API-VERSION} |
Den version av API:et som du anropar. | 2023-04-01 |
|
projectName |
{PROJECT-NAME} |
Namnet på projektet. Det här värdet är skiftlägeskänsligt. | EmailAppDemo |
language |
{LANGUAGE-CODE} |
En sträng som anger språkkoden för de yttranden som används i projektet. Om projektet är ett flerspråkigt projekt väljer du språkkoden för de flesta yttrandena. | en-us |
multilingual |
true |
Ett booleskt värde som gör att du kan ha dokument på flera språk i datauppsättningen. När din modell distribueras kan du fråga modellen på alla språk som stöds, inklusive språk som inte ingår i dina träningsdokument. | true |
dataset |
{DATASET} |
Se hur du tränar en modell för information om hur du delar upp dina data mellan en test- och träningsuppsättning. Möjliga värden för det här fältet är Train och Test . |
Train |
Vid en lyckad begäran innehåller API-svaret en operation-location
rubrik med en URL som du kan använda för att kontrollera status för importjobbet. Den är formaterad så här:
{ENDPOINT}/language/authoring/analyze-conversations/projects/{PROJECT-NAME}/import/jobs/{JOB-ID}?api-version={API-VERSION}
Hämta status för importjobb
Ersätt platshållarna i följande begäran med din {SECONDARY-ENDPOINT}
och {SECONDARY-RESOURCE-KEY}
som du fick i det första steget.
När du skickar en lyckad projektimportbegäran finns den fullständiga begärande-URL:en för att kontrollera importjobbets status (inklusive din slutpunkt, projektnamn och jobb-ID) i svarets operation-location
huvud.
Använd följande GET-begäran för att fråga efter status för importjobbet. Du kan använda den URL som du fick från föregående steg eller ersätta platshållarvärdena med dina egna värden.
{ENDPOINT}/language/authoring/analyze-conversations/projects/{PROJECT-NAME}/import/jobs/{JOB-ID}?api-version={API-VERSION}
Platshållare | Värde | Exempel |
---|---|---|
{ENDPOINT} |
Slutpunkten för att autentisera din API-begäran. | https://<your-custom-subdomain>.cognitiveservices.azure.com |
{PROJECT-NAME} |
Namnet på projektet. Det här värdet är skiftlägeskänsligt. | myProject |
{JOB-ID} |
ID:t för att hitta statusen för importjobbet. | xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxxx |
{API-VERSION} |
Den version av API:et som du anropar. | 2023-04-01 |
Sidhuvuden
Använd följande rubrik för att autentisera din begäran.
Nyckel | beskrivning | Värde |
---|---|---|
Ocp-Apim-Subscription-Key |
Nyckeln till resursen. Används för att autentisera dina API-begäranden. | {YOUR-PRIMARY-RESOURCE-KEY} |
Själva svaret
När du har skickat begäran får du följande svar. Fortsätt att avsöka den här slutpunkten tills statusparametern ändras till "lyckades".
{
"jobId": "xxxxx-xxxxx-xxxx-xxxxx",
"createdDateTime": "2022-04-18T15:17:20Z",
"lastUpdatedDateTime": "2022-04-18T15:17:22Z",
"expirationDateTime": "2022-04-25T15:17:20Z",
"status": "succeeded"
}
Träna din modell
När du har importerat projektet har du bara kopierat projektets tillgångar och metadata och tillgångar. Du måste fortfarande träna din modell, vilket medför användning på ditt konto.
Skicka träningsjobb
Ersätt platshållarna i följande begäran med din {SECONDARY-ENDPOINT}
och {SECONDARY-RESOURCE-KEY}
som du fick i det första steget.
Skapa en POST-begäran med hjälp av följande URL, rubriker och JSON-brödtext för att skicka ett träningsjobb.
Begärans-URL
Använd följande URL när du skapar din API-begäran. Ersätt platshållarvärdena med dina egna värden.
{ENDPOINT}/language/authoring/analyze-conversations/projects/{PROJECT-NAME}/:train?api-version={API-VERSION}
Platshållare | Värde | Exempel |
---|---|---|
{ENDPOINT} |
Slutpunkten för att autentisera din API-begäran. | https://<your-custom-subdomain>.cognitiveservices.azure.com |
{PROJECT-NAME} |
Namnet på projektet. Det här värdet är skiftlägeskänsligt. | EmailApp |
{API-VERSION} |
Den version av API:et som du anropar. | 2023-04-01 |
Sidhuvuden
Använd följande rubrik för att autentisera din begäran.
Tangent | Värde |
---|---|
Ocp-Apim-Subscription-Key |
Nyckeln till resursen. Används för att autentisera dina API-begäranden. |
Begärandetext
Använd följande objekt i din begäran. Modellen namnges efter det värde som du använder för parametern modelLabel
när träningen är klar.
{
"modelLabel": "{MODEL-NAME}",
"trainingMode": "{TRAINING-MODE}",
"trainingConfigVersion": "{CONFIG-VERSION}",
"evaluationOptions": {
"kind": "percentage",
"testingSplitPercentage": 20,
"trainingSplitPercentage": 80
}
}
Nyckel | Platshållare | Värde | Exempel |
---|---|---|---|
modelLabel |
{MODEL-NAME} |
Namnet på din modell. | Model1 |
trainingConfigVersion |
{CONFIG-VERSION} |
Träningskonfigurationsmodellens version. Som standard används den senaste modellversionen . | 2022-05-01 |
trainingMode |
{TRAINING-MODE} |
Träningsläget som ska användas för träning. Lägen som stöds är Standardträning, snabbare utbildning, men endast tillgängliga för engelska och avancerad utbildning som stöds för andra språk och flerspråkiga projekt, men omfattar längre utbildningstider. Läs mer om träningslägen. | standard |
kind |
percentage |
Dela upp metoder. Möjliga värden är percentage eller manual . Mer information finns i träna en modell . |
percentage |
trainingSplitPercentage |
80 |
Procentandel av dina taggade data som ska ingå i träningsuppsättningen. Rekommenderat värde är 80 . |
80 |
testingSplitPercentage |
20 |
Procentandel av dina taggade data som ska ingå i testuppsättningen. Rekommenderat värde är 20 . |
20 |
Kommentar
Och trainingSplitPercentage
testingSplitPercentage
krävs endast om Kind
anges till percentage
och summan av båda procentandelarna ska vara lika med 100.
När du har skickat din API-begäran får du ett 202
svar som anger att det har lyckats. Extrahera värdet i svarshuvudena operation-location
. Den formateras så här:
{ENDPOINT}/language/authoring/analyze-conversations/projects/{PROJECT-NAME}/train/jobs/{JOB-ID}?api-version={API-VERSION}
Du kan använda den här URL:en för att hämta träningsjobbets status.
Hämta träningsstatus
Ersätt platshållarna i följande begäran med din {SECONDARY-ENDPOINT}
och {SECONDARY-RESOURCE-KEY}
som du fick i det första steget.
När du skickar en lyckad utbildningsbegäran finns den fullständiga begärande-URL:en för att kontrollera jobbets status (inklusive din slutpunkt, projektnamn och jobb-ID) i svarets operation-location
huvud.
Använd följande GET-begäran för att få status för din modells träningsförlopp. Ersätt platshållarvärdena nedan med dina egna värden.
Begärans-URL
{ENDPOINT}/language/authoring/analyze-conversations/projects/{PROJECT-NAME}/train/jobs/{JOB-ID}?api-version={API-VERSION}
Platshållare | Värde | Exempel |
---|---|---|
{YOUR-ENDPOINT} |
Slutpunkten för att autentisera din API-begäran. | https://<your-custom-subdomain>.cognitiveservices.azure.com |
{PROJECT-NAME} |
Namnet på projektet. Det här värdet är skiftlägeskänsligt. | EmailApp |
{JOB-ID} |
ID:t för att hitta modellens träningsstatus. | xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxxx |
{API-VERSION} |
Den version av API:et som du anropar. | 2023-04-01 |
Sidhuvuden
Använd följande rubrik för att autentisera din begäran.
Tangent | Värde |
---|---|
Ocp-Apim-Subscription-Key |
Nyckeln till resursen. Används för att autentisera dina API-begäranden. |
Svarstext
När du har skickat begäran får du följande svar. Fortsätt att avsöka den här slutpunkten tills statusparametern ändras till "lyckades".
{
"result": {
"modelLabel": "{MODEL-LABEL}",
"trainingConfigVersion": "{TRAINING-CONFIG-VERSION}",
"trainingMode": "{TRAINING-MODE}",
"estimatedEndDateTime": "2022-04-18T15:47:58.8190649Z",
"trainingStatus": {
"percentComplete": 3,
"startDateTime": "2022-04-18T15:45:06.8190649Z",
"status": "running"
},
"evaluationStatus": {
"percentComplete": 0,
"status": "notStarted"
}
},
"jobId": "xxxxx-xxxxx-xxxx-xxxxx-xxxx",
"createdDateTime": "2022-04-18T15:44:44Z",
"lastUpdatedDateTime": "2022-04-18T15:45:48Z",
"expirationDateTime": "2022-04-25T15:44:44Z",
"status": "running"
}
Tangent | Värde | Exempel |
---|---|---|
modelLabel |
Modellnamnet | Model1 |
trainingConfigVersion |
Träningskonfigurationsversionen. Som standard används den senaste versionen . | 2022-05-01 |
trainingMode |
Ditt valda träningsläge. | standard |
startDateTime |
Tidsträningen startade | 2022-04-14T10:23:04.2598544Z |
status |
Status för träningsjobbet | running |
estimatedEndDateTime |
Beräknad tid för att träningsjobbet ska slutföras | 2022-04-14T10:29:38.2598544Z |
jobId |
Ditt träningsjobbs-ID | xxxxx-xxxx-xxxx-xxxx-xxxxxxxxx |
createdDateTime |
Datum och tid för att skapa utbildningsjobb | 2022-04-14T10:22:42Z |
lastUpdatedDateTime |
Träningsjobbet uppdaterades senast datum och tid | 2022-04-14T10:23:45Z |
expirationDateTime |
Förfallodatum och tid för träningsjobb | 2022-04-14T10:22:42Z |
Distribuera din modell
Det här är steget där du gör din tränade modell tillgänglig formulärförbrukning via API:et för körningsförutsägelse.
Dricks
Använd samma distributionsnamn som ditt primära projekt för enklare underhåll och minimala ändringar i systemet för att hantera omdirigering av trafiken.
Skicka distributionsjobb
Ersätt platshållarna i följande begäran med din {SECONDARY-ENDPOINT}
och {SECONDARY-RESOURCE-KEY}
som du fick i det första steget.
Skapa en PUT-begäran med hjälp av följande URL, rubriker och JSON-brödtext för att börja distribuera en modell för förståelse av konversationsspråk.
Begärans-URL
{ENDPOINT}/language/authoring/analyze-conversations/projects/{PROJECT-NAME}/deployments/{DEPLOYMENT-NAME}?api-version={API-VERSION}
Platshållare | Värde | Exempel |
---|---|---|
{ENDPOINT} |
Slutpunkten för att autentisera din API-begäran. | https://<your-custom-subdomain>.cognitiveservices.azure.com |
{PROJECT-NAME} |
Namnet på projektet. Det här värdet är skiftlägeskänsligt. | myProject |
{DEPLOYMENT-NAME} |
Namnet på distributionen. Det här värdet är skiftlägeskänsligt. | staging |
{API-VERSION} |
Den version av API:et som du anropar. | 2023-04-01 |
Sidhuvuden
Använd följande rubrik för att autentisera din begäran.
Tangent | Värde |
---|---|
Ocp-Apim-Subscription-Key |
Nyckeln till resursen. Används för att autentisera dina API-begäranden. |
Begärandetext
{
"trainedModelLabel": "{MODEL-NAME}",
}
Nyckel | Platshållare | Värde | Exempel |
---|---|---|---|
trainedModelLabel | {MODEL-NAME} |
Modellnamnet som ska tilldelas distributionen. Du kan bara tilldela modeller som tränats. Det här värdet är skiftlägeskänsligt. | myModel |
När du har skickat din API-begäran får du ett 202
svar som anger att det har lyckats. Extrahera värdet i svarshuvudena operation-location
. Den formateras så här:
{ENDPOINT}/language/authoring/analyze-conversations/projects/{PROJECT-NAME}/deployments/{DEPLOYMENT-NAME}/jobs/{JOB-ID}?api-version={API-VERSION}
Du kan använda den här URL:en för att hämta distributionsjobbets status.
Hämta distributionsstatus
Ersätt platshållarna i följande begäran med din {SECONDARY-ENDPOINT}
och {SECONDARY-RESOURCE-KEY}
som du fick i det första steget.
När du skickar en lyckad distributionsbegäran finns den fullständiga begärande-URL:en för att kontrollera jobbets status (inklusive din slutpunkt, projektnamn och jobb-ID) i svarets operation-location
huvud.
Använd följande GET-begäran för att hämta status för distributionsjobbet. Ersätt platshållarvärdena med dina egna värden.
Begärans-URL
{ENDPOINT}/language/authoring/analyze-conversations/projects/{PROJECT-NAME}/deployments/{DEPLOYMENT-NAME}/jobs/{JOB-ID}?api-version={API-VERSION}
Platshållare | Värde | Exempel |
---|---|---|
{ENDPOINT} |
Slutpunkten för att autentisera din API-begäran. | https://<your-custom-subdomain>.cognitiveservices.azure.com |
{PROJECT-NAME} |
Namnet på projektet. Det här värdet är skiftlägeskänsligt. | myProject |
{DEPLOYMENT-NAME} |
Namnet på distributionen. Det här värdet är skiftlägeskänsligt. | staging |
{JOB-ID} |
ID:t för att hitta modellens träningsstatus. | xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxxx |
{API-VERSION} |
Den version av API:et som du anropar. | 2023-04-01 |
Sidhuvuden
Använd följande rubrik för att autentisera din begäran.
Tangent | Värde |
---|---|
Ocp-Apim-Subscription-Key |
Nyckeln till resursen. Används för att autentisera dina API-begäranden. |
Svarstext
När du har skickat begäran får du följande svar. Fortsätt att avsöka den här slutpunkten tills statusparametern ändras till "lyckades".
{
"jobId":"{JOB-ID}",
"createdDateTime":"{CREATED-TIME}",
"lastUpdatedDateTime":"{UPDATED-TIME}",
"expirationDateTime":"{EXPIRATION-TIME}",
"status":"running"
}
Ändringar i att anropa körningen
I ditt system går du till steget där du anropar runtime API-kontrollen för svarskoden som returneras från api:et för att skicka uppgift. Om du ser ett konsekvent fel när du skickar begäran kan detta tyda på ett avbrott i din primära region. Ett fel en gång innebär inte ett avbrott, det kan vara ett tillfälligt problem. Försök att skicka jobbet igen via den sekundära resurs som du har skapat. För den andra begäran använder du din {YOUR-SECONDARY-ENDPOINT}
och den sekundära nyckeln om du har följt stegen ovan {PROJECT-NAME}
och {DEPLOYMENT-NAME}
skulle vara densamma så att inga ändringar krävs i begärandetexten.
Om du återgår till att använda den sekundära resursen ser du en liten ökning av svarstiden på grund av skillnaden i regioner där modellen distribueras.
Kontrollera om dina projekt inte är synkroniserade
Att upprätthålla fräschheten i båda projekten är en viktig del av processen. Du måste ofta kontrollera om några uppdateringar har gjorts i ditt primära projekt så att du flyttar över dem till det sekundära projektet. På så sätt bör du förvänta dig liknande modellprestanda om den primära regionen misslyckas och du flyttar till den sekundära regionen eftersom den redan innehåller de senaste uppdateringarna. Att ange frekvensen för att kontrollera om dina projekt är synkroniserade är ett viktigt val. Vi rekommenderar att du gör den här kontrollen dagligen för att garantera färskheten hos data i den sekundära modellen.
Hämta projektinformation
Använd följande URL för att hämta projektinformationen. En av nycklarna som returneras i brödtexten anger projektets senast ändrade datum. Upprepa följande steg två gånger, ett för ditt primära projekt och ett annat för det sekundära projektet och jämför tidsstämpeln som returneras för dem båda för att kontrollera om de är osynkroniserade.
Använd följande GET-begäran för att hämta projektinformationen. Du kan använda den URL som du fick från föregående steg eller ersätta platshållarvärdena nedan med dina egna värden.
{ENDPOINT}/language/authoring/analyze-conversations/projects/{PROJECT-NAME}?api-version={API-VERSION}
Platshållare | Värde | Exempel |
---|---|---|
{ENDPOINT} |
Slutpunkten för att autentisera din API-begäran. | https://<your-custom-subdomain>.cognitiveservices.azure.com |
{PROJECT-NAME} |
Namnet på projektet. Det här värdet är skiftlägeskänsligt. | myProject |
{API-VERSION} |
Den version av API:et som du anropar. | 2023-04-01 |
Sidhuvuden
Använd följande rubrik för att autentisera din begäran.
Nyckel | beskrivning | Värde |
---|---|---|
Ocp-Apim-Subscription-Key |
Nyckeln till resursen. Används för att autentisera dina API-begäranden. | {YOUR-PRIMARY-RESOURCE-KEY} |
Själva svaret
{
"createdDateTime": "2022-04-18T13:53:03Z",
"lastModifiedDateTime": "2022-04-18T13:53:03Z",
"lastTrainedDateTime": "2022-04-18T14:14:28Z",
"lastDeployedDateTime": "2022-04-18T14:49:01Z",
"projectKind": "Conversation",
"projectName": "{PROJECT-NAME}",
"multilingual": true,
"description": "This is a sample conversation project.",
"language": "{LANGUAGE-CODE}"
}
Upprepa samma steg för det replikerade projektet med hjälp av {SECONDARY-ENDPOINT}
och {SECONDARY-RESOURCE-KEY}
. Jämför returnerade lastModifiedDateTime
från båda projekten. Om ditt primära projekt ändrades tidigare än det sekundära projektet måste du upprepa stegen för att exportera, importera, träna och distribuera din modell.
Nästa steg
I den här artikeln har du lärt dig hur du använder exportera och importera API:er för att replikera projektet till en sekundär språkresurs i en annan region. Utforska sedan API-referensdokumenten för att se vad mer du kan göra med redigering av API:er.