Dela via


Snabbstart: Anpassad textklassificering

Använd den här artikeln om du vill komma igång med att skapa ett anpassat textklassificeringsprojekt där du kan träna anpassade modeller för textklassificering. En modell är programvara för artificiell intelligens som är tränad att utföra en viss uppgift. För det här systemet klassificerar modellerna text och tränas genom att lära sig från taggade data.

Anpassad textklassificering stöder två typer av projekt:

  • Klassificering med en etikett – du kan tilldela en enskild klass för varje dokument i datauppsättningen. Ett filmskript kan till exempel bara klassificeras som "Romance" eller "Comedy".
  • Klassificering med flera etiketter – du kan tilldela flera klasser för varje dokument i datauppsättningen. Ett filmmanus kan till exempel klassificeras som "Comedy" eller "Romance" och "Comedy".

I den här snabbstarten kan du använda de exempeldatauppsättningar som tillhandahålls för att skapa en klassificering med flera etiketter där du kan klassificera filmskript i en eller flera kategorier eller använda enstaka etikettklassificeringsdatauppsättning där du kan klassificera sammanfattningar av vetenskapliga artiklar i en av de definierade domänerna.

Förutsättningar

Skapa en ny Azure AI Language-resurs och Ett Azure-lagringskonto

Innan du kan använda anpassad textklassificering måste du skapa en Azure AI Language-resurs som ger dig de autentiseringsuppgifter som du behöver för att skapa ett projekt och börja träna en modell. Du behöver också ett Azure Storage-konto där du kan ladda upp din datauppsättning som ska användas för att skapa din modell.

Viktigt!

För att snabbt komma igång rekommenderar vi att du skapar en ny Azure AI Language-resurs med hjälp av stegen i den här artikeln. Med hjälp av stegen i den här artikeln kan du skapa språkresursen och lagringskontot samtidigt, vilket är enklare än att göra det senare.

Om du har en befintlig resurs som du vill använda måste du ansluta den till lagringskontot.

Skapa en ny resurs från Azure-portalen

  1. Gå till Azure-portalen för att skapa en ny Azure AI Language-resurs.

  2. I fönstret som visas väljer du Anpassad textklassificering och anpassad namngiven entitetsigenkänning från de anpassade funktionerna. Välj Fortsätt för att skapa resursen längst ned på skärmen.

    A screenshot showing the selection option for custom text classification and custom named entity recognition in Azure portal.

  3. Skapa en språkresurs med följande information.

    Name Obligatoriskt värde
    Prenumeration Din Azure-prenumeration.
    Resursgrupp En resursgrupp som ska innehålla din resurs. Du kan använda en befintlig eller skapa en ny.
    Region En av de regioner som stöds. Till exempel "USA, västra 2".
    Name Ett namn på resursen.
    Prisnivå En av de prisnivåer som stöds. Du kan använda nivån Kostnadsfri (F0) för att prova tjänsten.

    Om du får ett meddelande om att ditt inloggningskonto inte är ägare till det valda lagringskontots resursgrupp måste ditt konto ha en ägarroll tilldelad till resursgruppen innan du kan skapa en Språkresurs. Kontakta din Azure-prenumerationsägare om du vill ha hjälp.

    Du kan fastställa din Azure-prenumerationsägare genom att söka i resursgruppen och följa länken till den associerade prenumerationen. Sedan:

    1. Välj fliken Åtkomstkontroll (IAM)
    2. Välj Rolltilldelningar
    3. Filtrera efter roll:Ägare.
  4. I avsnittet Anpassad textklassificering och anpassad namngiven entitetsigenkänning väljer du ett befintligt lagringskonto eller väljer Nytt lagringskonto. Observera att dessa värden hjälper dig att komma igång och inte nödvändigtvis de lagringskontovärden som du vill använda i produktionsmiljöer. Undvik svarstider när du skapar projektet genom att ansluta till lagringskonton i samma region som språkresursen.

    Lagringskontovärde Rekommenderat värde
    Lagringskontonamn Valfritt namn
    Storage account type Standard LRS
  5. Kontrollera att meddelandet om ansvarsfull AI är markerat. Välj Granska + skapa längst ned på sidan.

Ladda upp exempeldata till blobcontainer

När du har skapat ett Azure-lagringskonto och anslutit det till språkresursen måste du ladda upp dokumenten från exempeldatauppsättningen till rotkatalogen för containern. Dessa dokument kommer senare att användas för att träna din modell.

  1. Ladda ned exempeldatauppsättningen för klassificeringsprojekt med flera etiketter.

  2. Öppna zip-filen och extrahera mappen som innehåller dokumenten.

Den angivna exempeldatauppsättningen innehåller cirka 200 dokument, som var och en är en sammanfattning för en film. Varje dokument tillhör en eller flera av följande klasser:

  • "Mysterium"
  • "Drama"
  • "Thriller"
  • "Komedi"
  • "Åtgärd"
  1. I Azure-portalen navigerar du till lagringskontot som du skapade och väljer det. Du kan göra detta genom att klicka på Lagringskonton och skriva namnet på lagringskontot i Filtrera efter valfritt fält.

    Om resursgruppen inte visas kontrollerar du att filtret Prenumeration är lika med är inställt på Alla.

  2. I ditt lagringskonto väljer du Containrar på den vänstra menyn under Datalagring. På skärmen som visas väljer du + Container. Ge containern namnet example-data och lämna standardnivån offentlig åtkomst.

    A screenshot showing the main page for a storage account.

  3. När containern har skapats väljer du den. Välj sedan knappen Ladda upp för att välja filerna .txt och .json som du laddade ned tidigare.

    A screenshot showing the button for uploading files to the storage account.

Skapa ett anpassat textklassificeringsprojekt

När resursen och lagringscontainern har konfigurerats skapar du ett nytt anpassat textklassificeringsprojekt. Ett projekt är ett arbetsområde för att skapa dina anpassade ML-modeller baserat på dina data. Ditt projekt kan bara nås av dig och andra som har åtkomst till den språkresurs som används.

  1. Logga in på Language Studio. Ett fönster visas där du kan välja din prenumeration och språkresurs. Välj språkresursen.

  2. Under avsnittet Klassificera text i Language Studio väljer du Anpassad textklassificering.

    A screenshot showing the location of custom text classification in the Language Studio landing page.

  3. Välj Skapa nytt projekt på den översta menyn på projektsidan. När du skapar ett projekt kan du märka data, träna, utvärdera, förbättra och distribuera dina modeller.

    A screenshot of the custom text classification project creation page.

  4. När du har klickat på Skapa nytt projekt visas ett fönster där du kan ansluta ditt lagringskonto. Om du redan har anslutit ett lagringskonto visas det anslutna lagringskontot. Om inte väljer du ditt lagringskonto i listrutan som visas och väljer Anslut lagringskonto. Detta anger de roller som krävs för ditt lagringskonto. Det här steget returnerar eventuellt ett fel om du inte har tilldelats som ägare på lagringskontot.

    Kommentar

    • Du behöver bara göra det här steget en gång för varje ny språkresurs som du använder.
    • Den här processen kan inte ångras, om du ansluter ett lagringskonto till din Språkresurs kan du inte koppla från det senare.
    • Du kan bara ansluta språkresursen till ett lagringskonto.

    A screenshot of the storage connection screen for custom classification projects.

  5. Välj projekttyp. Du kan antingen skapa ett klassificeringsprojekt för flera etiketter där varje dokument kan tillhöra en eller flera klasser eller ett klassificeringsprojekt med en etikett där varje dokument bara kan tillhöra en klass. Den valda typen kan inte ändras senare. Läs mer om projekttyper

    A screenshot of the available custom classification project types.

  6. Ange projektinformationen, inklusive ett namn, en beskrivning och språket för dokumenten i projektet. Om du använder exempeldatauppsättningen väljer du Engelska. Du kommer inte att kunna ändra namnet på projektet senare. Välj Nästa.

    Dricks

    Datamängden behöver inte vara helt på samma språk. Du kan ha flera dokument, var och en med olika språk som stöds. Om datamängden innehåller dokument med olika språk eller om du förväntar dig text från olika språk under körningen väljer du alternativet Aktivera flerspråkig datauppsättning när du anger grundläggande information för projektet. Det här alternativet kan aktiveras senare från sidan Projektinställningar .

  7. Välj den container där du har laddat upp datamängden.

    Kommentar

    Om du redan har etiketterat dina data kontrollerar du att de följer formatet som stöds och väljer Ja, mina dokument är redan märkta och jag har formaterat JSON-etikettfilen och väljer etikettfilen i listrutan nedan.

    Om du använder någon av exempeldatauppsättningarna använder du den inkluderade webOfScience_labelsFile filen eller movieLabels json-filen. Välj sedan Nästa.

  8. Granska de data som du har angett och välj Skapa projekt.

Träna din modell

När du har skapat ett projekt börjar du vanligtvis märka de dokument som du har i containern som är ansluten till projektet. För den här snabbstarten har du importerat en exempeletiketterad datauppsättning och initierat projektet med JSON-exempeletikettfilen.

Så här börjar du träna din modell inifrån Language Studio:

  1. Välj Träningsjobb på menyn till vänster.

  2. Välj Starta ett träningsjobb på den översta menyn.

  3. Välj Träna en ny modell och skriv in modellnamnet i textrutan. Du kan också skriva över en befintlig modell genom att välja det här alternativet och välja den modell som du vill skriva över från den nedrullningsbara menyn. Att skriva över en tränad modell är oåterkalleligt, men det påverkar inte dina distribuerade modeller förrän du distribuerar den nya modellen.

    Create a new training job

  4. Välj datadelningsmetod. Du kan välja Att automatiskt dela upp testuppsättningen från träningsdata där systemet delar upp dina märkta data mellan tränings- och testuppsättningarna, enligt de angivna procentandelarna. Eller så kan du använda en manuell delning av tränings- och testdata. Det här alternativet är bara aktiverat om du har lagt till dokument i testuppsättningen under dataetiketteringen. Mer information om datadelning finns i Träna en modell .

  5. Välj knappen Träna.

  6. Om du väljer träningsjobbets ID i listan visas en sidoruta där du kan kontrollera träningsförloppet, jobbstatusen och annan information för det här jobbet.

    Kommentar

    • Endast slutförda träningsjobb genererar modeller.
    • Tiden det tar att träna modellen kan ta mellan några minuter och flera timmar baserat på storleken på dina märkta data.
    • Du kan bara köra ett träningsjobb i taget. Du kan inte starta ett annat träningsjobb i samma projekt förrän det pågående jobbet har slutförts.

Distribuera din modell

Vanligtvis efter att ha tränat en modell skulle du granska dess utvärderingsinformation och göra förbättringar om det behövs. I den här snabbstarten distribuerar du bara din modell och gör den tillgänglig för dig att prova i Language Studio, eller så kan du anropa förutsägelse-API:et.

Så här distribuerar du din modell inifrån Language Studio:

  1. Välj Distribuera en modell från menyn till vänster.

  2. Välj Lägg till distribution för att starta ett nytt distributionsjobb.

    A screenshot showing the deployment button

  3. Välj Skapa ny distribution för att skapa en ny distribution och tilldela en tränad modell i listrutan nedan. Du kan också skriva över en befintlig distribution genom att välja det här alternativet och välja den tränade modell som du vill tilldela till den i listrutan nedan.

    Kommentar

    Om du skriver över en befintlig distribution krävs inte ändringar i ditt Förutsägelse-API-anrop , men de resultat du får baseras på den nyligen tilldelade modellen.

    A screenshot showing the deployment screen

  4. välj Distribuera för att starta distributionsjobbet.

  5. När distributionen har slutförts visas ett förfallodatum bredvid den. Distributionen upphör att gälla när den distribuerade modellen inte kommer att användas för förutsägelse, vilket vanligtvis sker tolv månader efter att en träningskonfiguration upphör att gälla.

Testa din modell

När din modell har distribuerats kan du börja använda den för att klassificera din text via Förutsägelse-API. I den här snabbstarten använder du Language Studio för att skicka den anpassade textklassificeringsuppgiften och visualisera resultatet. I exempeldatauppsättningen som du laddade ned tidigare hittar du några testdokument som du kan använda i det här steget.

Så här testar du dina distribuerade modeller i Language Studio:

  1. Välj Testa distributioner på menyn till vänster på skärmen.

  2. Välj den distribution som du vill testa. Du kan bara testa modeller som har tilldelats distributioner.

  3. För flerspråkiga projekt väljer du språket för den text som du testar med hjälp av listrutan språk.

  4. Välj den distribution som du vill köra frågor mot/testa i listrutan.

  5. Ange den text som du vill skicka i begäran eller ladda upp ett .txt dokument som ska användas. Om du använder en av exempeldatauppsättningarna kan du använda en av de inkluderade .txt-filerna.

  6. Välj Kör testet på den översta menyn.

  7. På fliken Resultat kan du se de förutsagda klasserna för din text. Du kan också visa JSON-svaret under fliken JSON . Följande exempel är för ett klassificeringsprojekt med en etikett. Ett klassificeringsprojekt med flera etiketter kan returnera mer än en klass i resultatet.

    A screenshot showing model test results for a single label classification project.

Rensa projekt

När du inte längre behöver projektet kan du ta bort projektet med Hjälp av Language Studio. Välj Anpassad textklassificering överst och välj sedan det projekt som du vill ta bort. Välj Ta bort på den översta menyn för att ta bort projektet.

Förutsättningar

Skapa en ny Azure AI Language-resurs och Ett Azure-lagringskonto

Innan du kan använda anpassad textklassificering måste du skapa en Azure AI Language-resurs som ger dig de autentiseringsuppgifter som du behöver för att skapa ett projekt och börja träna en modell. Du behöver också ett Azure-lagringskonto där du kan ladda upp din datauppsättning som ska användas för att skapa din modell.

Viktigt!

För att komma igång snabbt rekommenderar vi att du skapar en ny Azure AI Language-resurs med hjälp av stegen i den här artikeln, som gör att du kan skapa språkresursen och skapa och/eller ansluta ett lagringskonto samtidigt, vilket är enklare än att göra det senare.

Om du har en befintlig resurs som du vill använda måste du ansluta den till lagringskontot.

Skapa en ny resurs från Azure-portalen

  1. Gå till Azure-portalen för att skapa en ny Azure AI Language-resurs.

  2. I fönstret som visas väljer du Anpassad textklassificering och anpassad namngiven entitetsigenkänning från de anpassade funktionerna. Välj Fortsätt för att skapa resursen längst ned på skärmen.

    A screenshot showing the selection option for custom text classification and custom named entity recognition in Azure portal.

  3. Skapa en språkresurs med följande information.

    Name Obligatoriskt värde
    Prenumeration Din Azure-prenumeration.
    Resursgrupp En resursgrupp som ska innehålla din resurs. Du kan använda en befintlig eller skapa en ny.
    Region En av de regioner som stöds. Till exempel "USA, västra 2".
    Name Ett namn på resursen.
    Prisnivå En av de prisnivåer som stöds. Du kan använda nivån Kostnadsfri (F0) för att prova tjänsten.

    Om du får ett meddelande om att ditt inloggningskonto inte är ägare till det valda lagringskontots resursgrupp måste ditt konto ha en ägarroll tilldelad till resursgruppen innan du kan skapa en Språkresurs. Kontakta din Azure-prenumerationsägare om du vill ha hjälp.

    Du kan fastställa din Azure-prenumerationsägare genom att söka i resursgruppen och följa länken till den associerade prenumerationen. Sedan:

    1. Välj fliken Åtkomstkontroll (IAM)
    2. Välj Rolltilldelningar
    3. Filtrera efter roll:Ägare.
  4. I avsnittet Anpassad textklassificering och anpassad namngiven entitetsigenkänning väljer du ett befintligt lagringskonto eller väljer Nytt lagringskonto. Observera att dessa värden hjälper dig att komma igång och inte nödvändigtvis de lagringskontovärden som du vill använda i produktionsmiljöer. Undvik svarstider när du skapar projektet genom att ansluta till lagringskonton i samma region som språkresursen.

    Lagringskontovärde Rekommenderat värde
    Lagringskontonamn Valfritt namn
    Storage account type Standard LRS
  5. Kontrollera att meddelandet om ansvarsfull AI är markerat. Välj Granska + skapa längst ned på sidan.

Ladda upp exempeldata till blobcontainer

När du har skapat ett Azure-lagringskonto och anslutit det till språkresursen måste du ladda upp dokumenten från exempeldatauppsättningen till rotkatalogen för containern. Dessa dokument kommer senare att användas för att träna din modell.

  1. Ladda ned exempeldatauppsättningen för klassificeringsprojekt med flera etiketter.

  2. Öppna zip-filen och extrahera mappen som innehåller dokumenten.

Den angivna exempeldatauppsättningen innehåller cirka 200 dokument, som var och en är en sammanfattning för en film. Varje dokument tillhör en eller flera av följande klasser:

  • "Mysterium"
  • "Drama"
  • "Thriller"
  • "Komedi"
  • "Åtgärd"
  1. I Azure-portalen navigerar du till lagringskontot som du skapade och väljer det. Du kan göra detta genom att klicka på Lagringskonton och skriva namnet på lagringskontot i Filtrera efter valfritt fält.

    Om resursgruppen inte visas kontrollerar du att filtret Prenumeration är lika med är inställt på Alla.

  2. I ditt lagringskonto väljer du Containrar på den vänstra menyn under Datalagring. På skärmen som visas väljer du + Container. Ge containern namnet example-data och lämna standardnivån offentlig åtkomst.

    A screenshot showing the main page for a storage account.

  3. När containern har skapats väljer du den. Välj sedan knappen Ladda upp för att välja filerna .txt och .json som du laddade ned tidigare.

    A screenshot showing the button for uploading files to the storage account.

Hämta dina resursnycklar och slutpunkt

  • Gå till resursöversiktssidan i Azure-portalen

  • På menyn till vänster väljer du Nycklar och Slutpunkt. Du använder slutpunkten och nyckeln för API-begäranden

A screenshot showing the key and endpoint page in the Azure portal.

Skapa ett anpassat textklassificeringsprojekt

När resursen och lagringscontainern har konfigurerats skapar du ett nytt anpassat textklassificeringsprojekt. Ett projekt är ett arbetsområde för att skapa dina anpassade ML-modeller baserat på dina data. Ditt projekt kan bara nås av dig och andra som har åtkomst till den språkresurs som används.

Projektjobb för utlösare för import

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"
          }
        ]
      }
    ]
  }
}

Key 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ålkigt 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

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äran-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 skapat ett projekt börjar du vanligtvis tagga de dokument som du har i containern som är ansluten till projektet. I den här snabbstarten har du importerat en exempeltaggad datauppsättning och initierat projektet med JSON-exempeltaggarfilen.

Börja träna din modell

När projektet har importerats kan du börja träna din modell.

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
	}
}
Key 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 trainingSplitPercentagetestingSplitPercentage 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 status för träningsjobb

Träningen kan ta någon gång mellan 10 och 30 minuter. Du kan använda följande begäran för att fortsätta avsöka statusen för träningsjobbet tills det har slutförts.

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äran-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

När du har tränat en modell kan du granska dess utvärderingsinformation och göra förbättringar om det behövs. I den här snabbstarten distribuerar du bara din modell och gör den tillgänglig för dig att prova i Language Studio, eller så kan du anropa förutsägelse-API:et.

Skicka distributionsjobb

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}"
}
Key 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 status för distributionsjobb

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"
}

Klassificera text

När din modell har distribuerats kan du börja använda den för att klassificera din text via Förutsägelse-API. I exempeldatauppsättningen som du laddade ned tidigare hittar du några testdokument som du kan använda i det här steget.

Skicka en anpassad textklassificeringsuppgift

Använd den här POST-begäran för att starta en textklassificeringsuppgift.

{ENDPOINT}/language/analyze-text/jobs?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
{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 Modelllivscykel . 2022-05-01

Sidhuvuden

Tangent Värde
Ocp-Apim-Subscription-Key Din nyckel som ger åtkomst till det här API:et.

Brödtext

{
  "displayName": "Classifying documents",
  "analysisInput": {
    "documents": [
      {
        "id": "1",
        "language": "{LANGUAGE-CODE}",
        "text": "Text1"
      },
      {
        "id": "2",
        "language": "{LANGUAGE-CODE}",
        "text": "Text2"
      }
    ]
  },
  "tasks": [
     {
      "kind": "CustomMultiLabelClassification",
      "taskName": "Multi Label Classification",
      "parameters": {
        "projectName": "{PROJECT-NAME}",
        "deploymentName": "{DEPLOYMENT-NAME}"
      }
    }
  ]
}
Key Platshållare Värde Exempel
displayName {JOB-NAME} Ditt jobbnamn. MyJobName
documents [{},{}] Lista över dokument som aktiviteter ska köras på. [{},{}]
id {DOC-ID} Dokumentnamn eller ID. doc1
language {LANGUAGE-CODE} En sträng som anger språkkoden för dokumentet. Om den här nyckeln inte anges förutsätter tjänsten standardspråket för projektet som valdes när projektet skapades. Se språkstöd för en lista över språkkoder som stöds. en-us
text {DOC-TEXT} Dokumentuppgift som aktiviteterna ska köras på. Lorem ipsum dolor sit amet
tasks Lista över uppgifter som vi vill utföra. []
taskName CustomMultiLabelClassification Uppgiftsnamnet CustomMultiLabelClassification
parameters Lista över parametrar som ska skickas till uppgiften.
project-name {PROJECT-NAME} Namnet på projektet. Det här värdet är skiftlägeskänsligt. myProject
deployment-name {DEPLOYMENT-NAME} Namnet på distributionen. Det här värdet är skiftlägeskänsligt. prod

Response

Du får ett 202-svar som anger att det har lyckats. I svarshuvudena extraherar du operation-location. operation-location är formaterad så här:

{ENDPOINT}/language/analyze-text/jobs/{JOB-ID}?api-version={API-VERSION}

Du kan använda den här URL:en för att fråga efter uppgiftens slutförandestatus och få resultatet när aktiviteten har slutförts.

Hämta aktivitetsresultat

Använd följande GET-begäran för att fråga efter status/resultat för textklassificeringsaktiviteten.

{ENDPOINT}/language/analyze-text/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
{API-VERSION} Den version av API:et som du anropar. Värdet som refereras här är för den senaste versionen av modellen . 2022-05-01

Sidhuvuden

Tangent Värde
Ocp-Apim-Subscription-Key Din nyckel som ger åtkomst till det här API:et.

Själva svaret

Svaret är ett JSON-dokument med följande parametrar.

{
  "createdDateTime": "2021-05-19T14:32:25.578Z",
  "displayName": "MyJobName",
  "expirationDateTime": "2021-05-19T14:32:25.578Z",
  "jobId": "xxxx-xxxxxx-xxxxx-xxxx",
  "lastUpdateDateTime": "2021-05-19T14:32:25.578Z",
  "status": "succeeded",
  "tasks": {
    "completed": 1,
    "failed": 0,
    "inProgress": 0,
    "total": 1,
    "items": [
      {
        "kind": "customMultiClassificationTasks",
        "taskName": "Classify documents",
        "lastUpdateDateTime": "2020-10-01T15:01:03Z",
        "status": "succeeded",
        "results": {
          "documents": [
            {
              "id": "{DOC-ID}",
              "classes": [
                  {
                      "category": "Class_1",
                      "confidenceScore": 0.0551877357
                  }
              ],
              "warnings": []
            }
          ],
          "errors": [],
          "modelVersion": "2020-04-01"
        }
      }
    ]
  }
}

Rensa resurser

När du inte längre behöver projektet kan du ta bort det med följande DELETE-begäran . Ersätt platshållarvärdena med dina egna värden.

{Endpoint}/language/authoring/analyze-text/projects/{projectName}?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.

När du har skickat din API-begäran får du ett 202 svar som anger att projektet har slutförts, vilket innebär att projektet har tagits bort. Ett lyckat anrop resulterar i ett Operation-Location huvud som används för att kontrollera jobbets status.

Nästa steg

När du har skapat en anpassad textklassificeringsmodell kan du:

När du börjar skapa egna anpassade textklassificeringsprojekt använder du instruktionsartiklarna för att lära dig mer om att utveckla din modell i detalj: