Säkerhetskopiera och återställa dina anpassade textklassificeringsmodeller
När du skapar en språkresurs 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 anpassade modeller mellan regioner.
Om din app eller ditt företag är beroende av användningen av en anpassad textklassificeringsmodell 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 och taggade data. Du måste fortfarande träna och distribuera modellerna för att vara tillgängliga för användning med förutsägelse-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. Skapa en språkresurs och anslut dem till ett Azure-lagringskonto. Vi rekommenderar att du ansluter båda dina Språk-resurser till samma lagringskonto, även om det kan medföra något högre svarstid när du importerar projektet och tränar en modell.
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-text/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. | MyProject |
{API-VERSION} |
Den version av API:et som du anropar. Värdet som refereras här är den senaste modellversionen som släppts. | 2022-05-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
Använd följande JSON i begärandetexten och ange att du vill exportera alla tillgångar.
{
"assetsToExport": ["*"]
}
När du har skickat din API-begäran får du ett 202
svar som anger att jobbet har skickats korrekt. Extrahera värdet i svarshuvudena operation-location
. Den formateras så här:
{ENDPOINT}/language/authoring/analyze-text/projects/{PROJECT-NAME}/export/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. Du använder den här URL:en för att hämta status för exportjobbet.
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 hämta statusen för att exportera dina projekttillgångar. Ersätt platshållarvärdena nedan med dina egna värden.
Begärans-URL
{ENDPOINT}/language/authoring/analyze-text/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 modellens träningsstatus. 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. Värdet som refereras här är för den senaste versionen som släppts. Läs mer om andra tillgängliga API-versioner | 2022-05-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. |
Själva svaret
{
"resultUrl": "{RESULT-URL}",
"jobId": "string",
"createdDateTime": "2021-10-19T23:24:41.572Z",
"lastUpdatedDateTime": "2021-10-19T23:24:41.572Z",
"expirationDateTime": "2021-10-19T23:24:41.572Z",
"status": "unknown",
"errors": [
{
"code": "unknown",
"message": "string"
}
]
}
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.
Tangent | Värde |
---|---|
Ocp-Apim-Subscription-Key |
Nyckeln till resursen. Används för att autentisera dina API-begäranden. |
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 din etikettfil. Kontrollera att din etikettfil följer det godkända formatet.
Om det redan finns ett projekt med samma namn ersätts data för projektet.
{Endpoint}/language/authoring/analyze-text/projects/{projectName}/: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. | myProject |
{API-VERSION} |
Den version av API:et som du anropar. Värdet som refereras här är för den senaste versionen som släppts. Läs mer om andra tillgängliga API-versioner | 2022-05-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
Använd följande JSON i din begäran. Ersätt platshållarvärdena nedan med dina egna värden.
{
"projectFileVersion": "{API-VERSION}",
"stringIndexType": "Utf16CodeUnit",
"metadata": {
"projectName": "{PROJECT-NAME}",
"storageInputContainerName": "{CONTAINER-NAME}",
"projectKind": "customMultiLabelClassification",
"description": "Trying out custom multi label text classification",
"language": "{LANGUAGE-CODE}",
"multilingual": true,
"settings": {}
},
"assets": {
"projectKind": "customMultiLabelClassification",
"classes": [
{
"category": "Class1"
},
{
"category": "Class2"
}
],
"documents": [
{
"location": "{DOCUMENT-NAME}",
"language": "{LANGUAGE-CODE}",
"dataset": "{DATASET}",
"classes": [
{
"category": "Class1"
},
{
"category": "Class2"
}
]
},
{
"location": "{DOCUMENT-NAME}",
"language": "{LANGUAGE-CODE}",
"dataset": "{DATASET}",
"classes": [
{
"category": "Class2"
}
]
}
]
}
}
Nyckel | Platshållare | Värde | Exempel |
---|---|---|---|
api-version | {API-VERSION} |
Den version av API:et som du anropar. Den version som används här måste vara samma API-version i URL:en. Läs mer om andra tillgängliga API-versioner | 2022-05-01 |
projektnamn | {PROJECT-NAME} |
Namnet på projektet. Det här värdet är skiftlägeskänsligt. | myProject |
projectKind | customMultiLabelClassification |
Din projekttyp. | customMultiLabelClassification |
språk | {LANGUAGE-CODE} |
En sträng som anger språkkoden för de dokument som används i projektet. Om projektet är ett flerspråkigt projekt väljer du språkkoden för de flesta dokumenten. Mer information om flerspråkig support finns i språkstöd . | en-us |
flerspråkig | true |
Ett booleskt värde som gör att du kan ha dokument på flera språk i datauppsättningen och när din modell distribueras kan du fråga modellen på alla språk som stöds (inte nödvändigtvis i dina träningsdokument. Mer information om flerspråkig support finns i språkstöd . | true |
storageInputContainerName | {CONTAINER-NAME} |
Namnet på din Azure Storage-container där du har laddat upp dina dokument. | myContainer |
klasser | [] | Matris som innehåller alla klasser som du har i projektet. Det här är de klasser som du vill klassificera dina dokument i. | [] |
documents | [] | Matris som innehåller alla dokument i projektet och vilka klasser som är märkta för det här dokumentet. | [] |
plats | {DOCUMENT-NAME} |
Platsen för dokumenten i lagringscontainern. Eftersom alla dokument finns i roten i containern bör detta vara dokumentnamnet. | doc1.txt |
datauppsättning | {DATASET} |
Testuppsättningen som det här dokumentet ska gå till när det delas upp före träningen. Mer information om datadelning finns i Träna en modell . Möjliga värden för det här fältet är Train och Test . |
Train |
När du har skickat din API-begäran får du ett 202
svar som anger att jobbet har skickats korrekt. Extrahera värdet i svarshuvudena operation-location
. Den formateras så här:
{ENDPOINT}/language/authoring/analyze-text/projects/{PROJECT-NAME}/import/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. Du använder den här URL:en för att hämta status för importjobbet.
Möjliga felscenarier för den här begäran:
- Den valda resursen har inte rätt behörigheter för lagringskontot.
- Den
storageInputContainerName
angivna finns inte. - Ogiltig språkkod används, eller om språkkodtypen inte är sträng.
multilingual
värdet är en sträng och inte ett booleskt värde.
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.
Använd följande GET-begäran för att hämta statusen för din import av projektet. Ersätt platshållarvärdena nedan med dina egna värden.
Begärans-URL
{ENDPOINT}/language/authoring/analyze-text/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 modellens träningsstatus. Det här värdet finns 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. Värdet som refereras här är för den senaste versionen som släppts. Läs mer om andra tillgängliga API-versioner | 2022-05-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. |
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.
Skicka en POST-begäran med hjälp av följande URL, rubriker och JSON-brödtext för att skicka ett träningsjobb. Ersätt platshållarvärdena nedan med dina egna värden.
{ENDPOINT}/language/authoring/analyze-text/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. | myProject |
{API-VERSION} |
Den version av API:et som du anropar. Värdet som refereras här är för den senaste versionen som släppts. Läs mer om andra tillgängliga API-versioner | 2022-05-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 JSON i begärandetexten. Modellen kommer att ges när {MODEL-NAME}
träningen är klar. Endast lyckade träningsjobb skapar modeller.
{
"modelLabel": "{MODEL-NAME}",
"trainingConfigVersion": "{CONFIG-VERSION}",
"evaluationOptions": {
"kind": "percentage",
"trainingSplitPercentage": 80,
"testingSplitPercentage": 20
}
}
Nyckel | Platshållare | Värde | Exempel |
---|---|---|---|
modelLabel | {MODEL-NAME} |
Modellnamnet som ska tilldelas till din modell när den har tränats. | myModel |
trainingConfigVersion | {CONFIG-VERSION} |
Det här är den modellversion som ska användas för att träna modellen. | 2022-05-01 |
evaluationOptions | Alternativ för att dela upp dina data mellan tränings- och testuppsättningar. | {} |
|
typ | 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 jobbet har skickats korrekt. Extrahera värdet i svarshuvudena location
. Den formateras så här:
{ENDPOINT}/language/authoring/analyze-text/projects/{PROJECT-NAME}/train/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. Du kan använda den här URL:en för att hämta träningsstatusen.
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.
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-text/projects/{PROJECT-NAME}/train/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 modellens träningsstatus. Det här värdet finns 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. Värdet som refereras här är för den senaste versionen som släppts. Mer information om andra tillgängliga API-versioner finns i modelllivscykeln . | 2022-05-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.
{
"result": {
"modelLabel": "{MODEL-NAME}",
"trainingConfigVersion": "{CONFIG-VERSION}",
"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": "{JOB-ID}",
"createdDateTime": "2022-04-18T15:44:44Z",
"lastUpdatedDateTime": "2022-04-18T15:45:48Z",
"expirationDateTime": "2022-04-25T15:44:44Z",
"status": "running"
}
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.
Skicka en PUT-begäran med hjälp av följande URL, rubriker och JSON-brödtext för att skicka ett distributionsjobb. Ersätt platshållarvärdena nedan med dina egna värden.
{Endpoint}/language/authoring/analyze-text/projects/{projectName}/deployments/{deploymentName}?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. Värdet som refereras här är för den senaste versionen som släppts. Läs mer om andra tillgängliga API-versioner | 2022-05-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 JSON i brödtexten i din begäran. Använd namnet på den modell som du tilldelar distributionen.
{
"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 jobbet har skickats korrekt. Extrahera värdet i svarshuvudena operation-location
. Den formateras så här:
{ENDPOINT}/language/authoring/analyze-text/projects/{PROJECT-NAME}/deployments/{DEPLOYMENT-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. Du kan använda den här URL:en för att hämta distributionsstatusen.
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.
Använd följande GET-begäran för att fråga efter status för distributionsjobbet. 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-text/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. 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. Värdet som refereras här är för den senaste versionen som släppts. Läs mer om andra tillgängliga API-versioner | 2022-05-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". Du bör få en 200
kod som anger att begäran har slutförts.
{
"jobId":"{JOB-ID}",
"createdDateTime":"{CREATED-TIME}",
"lastUpdatedDateTime":"{UPDATED-TIME}",
"expirationDateTime":"{EXPIRATION-TIME}",
"status":"running"
}
Ändringar i att anropa körningen
I systemet går du till steget där du anropar API :et för körningsförutsägelse för att söka efter 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 {SECONDARY-ENDPOINT}
och {SECONDARY-RESOURCE-KEY}
, om du har följt stegen ovan och {PROJECT-NAME}
{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. Ersätt platshållarvärdena nedan med dina egna värden.
{ENDPOINT}/language/authoring/analyze-text/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. Värdet som refereras här är för den senaste versionen som släppts. Läs mer om andra tillgängliga API-versioner | 2022-05-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. |
Själva svaret
{
"createdDateTime": "2021-10-19T23:24:41.572Z",
"lastModifiedDateTime": "2021-10-19T23:24:41.572Z",
"lastTrainedDateTime": "2021-10-19T23:24:41.572Z",
"lastDeployedDateTime": "2021-10-19T23:24:41.572Z",
"projectKind": "customMultiLabelClassification",
"storageInputContainerName": "{CONTAINER-NAME}",
"projectName": "{PROJECT-NAME}",
"multilingual": false,
"description": "Project description",
"language": "{LANGUAGE-CODE}"
}
När du har skickat din API-begäran får du ett 200
svar som anger lyckad och JSON-svarstext med projektinformationen.
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 projektet. 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.