Quickstart: Aangepaste herkenning van benoemde entiteiten

Deze handleiding bevat stapsgewijze instructies voor het gebruik van aangepaste benoemde entiteitsherkenning (NER) met Microsoft Foundry of de REST API. Met NER kunt u entiteiten in ongestructureerde tekst detecteren en categoriseren, zoals personen, plaatsen, organisaties en getallen. Met aangepaste NER kunnen modellen worden getraind om entiteiten te identificeren die specifiek zijn voor een bedrijf en die doorlopend kunnen worden aangepast wanneer de vereisten veranderen.

Om aan de slag te gaan, wordt een voorbeeldleningsovereenkomst geleverd als een gegevensset om een aangepast NER-model te bouwen en deze belangrijke entiteiten te extraheren:

  • Datum van de overeenkomst
  • Naam, adres, plaats en staat van de leningnemer
  • Naam, adres, plaats en staat van geldschieter
  • Lening en rentebedragen

Notitie

  • Als u al een Azure-taal hebt in Foundry Tools of een resource voor meerdere services, ongeacht of deze afzonderlijk of via Language Studio worden gebruikt, kunt u die bestaande taalresources blijven gebruiken in de Microsoft Foundry-portal. Zie Foundry Tools gebruiken in de Foundry-portal voor meer informatie.

Vereisten

  • Een Azure-abonnement. Als u geen account hebt, kunt u er gratis een maken.

  • De vereiste machtigingen. Zorg ervoor dat de persoon die het account en project tot stand brengt, is toegewezen aan de rol van eigenaar van het Azure AI-account op abonnementsniveau. Voor deze vereiste kunt u ook de rol Inzender of Cognitive Services Inzender binnen het abonnementsbereik hebben. Zieop rollen gebaseerd toegangsbeheer (RBAC) voor meer informatie.

  • Een taalresource met een opslagaccount. Selecteer op de selecteer aanvullende functies pagina de aangepaste tekstclassificatie, aangepaste entiteitsherkenning, aangepaste sentimentanalyse & aangepaste tekstanalyse voor gezondheid om een vereist opslagaccount aan deze resource te koppelen:

    Schermopname van de optie Extra functies selecteren in Foundry.

Notitie

  • U moet een eigenaarsrol hebben toegewezen aan de resourcegroep om een taalresource te maken.
  • Als u een bestaand opslagaccount verbindt, moet er een eigenaarsrol aan het account zijn toegewezen.
  • Verplaats het opslagaccount niet naar een andere resourcegroep of een ander abonnement zodra het is gekoppeld aan de Azure Language-resource.
  • Een Foundry-project dat is gemaakt in Foundry. ZieEen Foundry-project maken voor meer informatie.

  • Een aangepaste NER-gegevensset die is geüpload naar uw opslagcontainer. Een aangepaste NER-gegevensset (Named Entity Recognition) is de verzameling gelabelde tekstdocumenten die worden gebruikt om uw aangepaste NER-model te trainen. U kunt onze voorbeeldgegevensset downloaden voor deze quickstart. De brontaal is Engels.

Stap 1: Vereiste rollen, machtigingen en instellingen configureren

Laten we beginnen met het configureren van uw resources.

Aangepaste functie voor herkenning van benoemde entiteiten inschakelen

Zorg ervoor dat de functie Aangepaste tekstclassificatie/Aangepaste entiteitsherkenning is ingeschakeld in Azure Portal.

  1. Navigeer naar uw taalresource in Azure Portal.
  2. Selecteer Functies in het menu aan de linkerkant onder De sectie Resourcebeheer.
  3. Zorg ervoor dat de functie Aangepaste tekstclassificatie/Aangepaste entiteitsherkenning is ingeschakeld.
  4. Als uw opslagaccount niet is toegewezen, selecteert en verbindt u uw opslagaccount.
  5. Selecteer de optie Toepassen.

Vereiste rollen toevoegen voor uw taalresource

  1. Selecteer op de pagina Taalresource in Azure Portaltoegangsbeheer (IAM) in het linkerdeelvenster.
  2. Selecteer Toevoegen om roltoewijzingen toe te voegen en de roltoewijzing Cognitive Services-taaleigenaar of Cognitive Services-inzender toe te voegen voor uw taalresource.
  3. Selecteer in Toegang toewijzen de optie Gebruiker, groep of service-principal.
  4. Selecteer Leden selecteren.
  5. Selecteer uw gebruikersnaam. U kunt zoeken naar gebruikersnamen in het veld Selecteren . Herhaal deze stap voor alle rollen.
  6. Herhaal deze stappen voor alle gebruikersaccounts die toegang nodig hebben tot deze resource.

Vereiste rollen toevoegen voor uw opslagaccount

  1. Ga naar de pagina van uw opslagaccount in Azure Portal.
  2. Selecteer Toegangsbeheer (IAM) in het linkerdeelvenster.
  3. Selecteer Toevoegen om roltoewijzingen toe te voegen en kies de rol Inzender voor opslagblobgegevens in het opslagaccount.
  4. Selecteer beheerde identiteit binnen Toegang toewijzen tot.
  5. Selecteer Leden selecteren.
  6. Selecteer uw abonnement en Taal als de beheerde identiteit. U kunt zoeken naar uw taalresource in het veld Selecteren .

Vereiste gebruikersrollen toevoegen

Belangrijk

Als u deze stap overslaat, krijgt u een 403-fout wanneer u verbinding probeert te maken met uw aangepaste project. Het is belangrijk dat uw huidige gebruiker deze rol heeft voor toegang tot blobgegevens van het opslagaccount, zelfs als u de eigenaar van het opslagaccount bent.

  1. Ga naar de pagina van uw opslagaccount in Azure Portal.
  2. Selecteer Toegangsbeheer (IAM) in het linkerdeelvenster.
  3. Selecteer Toevoegen om roltoewijzingen toe te voegen en kies de rol Inzender voor opslagblobgegevens in het opslagaccount.
  4. Selecteer in Toegang toewijzen de optie Gebruiker, groep of service-principal.
  5. Selecteer Leden selecteren.
  6. Selecteer uw gebruiker. U kunt zoeken naar gebruikersnamen in het veld Selecteren .

Belangrijk

Als u een firewall of virtueel netwerk of privé-eindpunt hebt, selecteert u Toestaan dat Azure-services in de lijst met vertrouwde services toegang hebben tot dit opslagaccount op het tabblad Netwerken in Azure Portal.

Schermopname waarop te zien is dat Azure-services zijn ingeschakeld in Foundry.

Stap 2: Uw gegevensset uploaden naar uw opslagcontainer

Vervolgens gaan we een container toevoegen en uw gegevenssetbestanden rechtstreeks uploaden naar de hoofdmap van uw opslagcontainer. Deze documenten worden gebruikt om uw model te trainen.

  1. Voeg een container toe aan het opslagaccount dat is gekoppeld aan uw taalresource. ZieEen container maken voor meer informatie.

  2. Download de voorbeeldgegevensset van GitHub. De opgegeven voorbeeldgegevensset bevat 20 leningovereenkomsten:

    • Elke overeenkomst omvat twee partijen: een kredietgever en een kredietnemer.
    • U haalt relevante informatie op voor: beide partijen, overeenkomstdatum, leningbedrag en rentepercentage.
  3. Open het bestand .zip en pak de map met de documenten uit.

  4. Navigeer naar de Foundry.

  5. Als u nog niet bent aangemeld, wordt u in de portal gevraagd dit te doen met uw Azure-referenties.

  6. Nadat u zich hebt aangemeld, opent u uw bestaande Foundry-project voor deze quickstart.

  7. Selecteer Beheercentrum in het linkernavigatiemenu.

  8. Selecteer Verbonden resources in de sectie Hub van het menu Beheercentrum .

  9. Kies vervolgens de werkruimte-blobopslag die voor u is ingesteld als een verbonden resource.

  10. Selecteer in de blobopslag van de werkruimte Bekijken in Azure Portal.

  11. Selecteer Uploaden in het bovenste menu op de pagina AzurePortal voor uw blobopslag. Kies vervolgens de .txt en .json bestanden die u eerder hebt gedownload. Selecteer ten slotte de knop Uploaden om het bestand toe te voegen aan uw container.

    Een schermopname van de knop voor het uploaden van bestanden naar het opslagaccount.

Nu de vereiste Azure-resources zijn ingericht en geconfigureerd in de Azure-portal, gaan we deze resources in Foundry gebruiken om een aangepast NER-model (Named Entity Recognition) te maken.

Stap 3: Uw taalresource verbinden

Vervolgens maken we een verbinding met uw taalresource, zodat Foundry deze veilig kan openen. Deze verbinding biedt beveiligd identiteitsbeheer en verificatie, evenals gecontroleerde en geïsoleerde toegang tot gegevens.

  1. Ga terug naar de Foundry.

  2. Open uw bestaande Foundry-project voor deze quickstart.

  3. Selecteer Beheercentrum in het linkernavigatiemenu.

  4. Selecteer Verbonden resources in de sectie Hub van het menu Beheercentrum .

  5. Selecteer in het hoofdvenster de knop + Nieuwe verbinding .

  6. Selecteer Taal in het venster Een verbinding met externe assets toevoegen .

  7. Selecteer Verbinding toevoegen en selecteer Vervolgens Sluiten.

    Schermopname van het verbindingsvenster in Foundry.

Stap 4: Uw aangepaste NER-model verfijnen

Nu zijn we klaar om een aangepast NER-model te maken.

  1. Selecteer In de sectie Project van het menu Beheercentrum de optie Ga naar project.

  2. Selecteer In het menu Overzichtde optie Afstemmen.

  3. Selecteer in het hoofdvenster het tabblad Voor het afstemmen van de AI-service en vervolgens de knop + Afstemmen .

  4. Kies in het venster Service fijn afstemmen het tabblad Aangepaste entiteitsherkenning en selecteer dan Volgende.

    Schermopname van de tegel voor het afstemmen van de selectie in Foundry.

  5. Vul in het taakvenster Service maken voor het afstemmen van de taak de velden als volgt in:

    • Verbonden dienst. De naam van de taalresource moet standaard al in dit veld worden weergegeven. Als dat niet het geval is, voegt u het toe vanuit de vervolgkeuzelijst.

    • Name. Geef uw taakproject een naam.

    • Taal. Engels is ingesteld als de standaardinstelling en wordt al weergegeven in het veld.

    • Description. U kunt desgewenst een beschrijving opgeven of dit veld leeg laten.

    • Blob Store-container. Selecteer de blobopslagcontainer van de werkruimte in stap 2 en kies de knop Verbinden.

  6. Selecteer ten slotte de knop Maken . Het kan enkele minuten duren voordat de bewerking voltooid is.

Stap 5: Uw model trainen

Schermopname van de werkstroom voor fijn afstemmen in Foundry.

  1. Kies Gegevens beheren in het menu Aan de slag. In het venster Gegevens toevoegen voor training en testen ziet u de voorbeeldgegevens die u eerder hebt geüpload naar uw Azure Blob Storage-container.
  2. Selecteer vervolgens in het menu Aan de slagde optie Model trainen.
  3. Selecteer de + Model trainen knop. Wanneer het venster Een nieuw model trainen wordt weergegeven, voert u een naam in voor uw nieuwe model en behoudt u de standaardwaarden. Selecteer de Volgende knop.
  4. Behoud in het venster Een nieuw model trainen de standaardinstelling Automatisch splitsen van de testset van de trainingsgegevens. Deze optie is ingeschakeld met een aanbevolen percentage van 80% voor trainingsgegevens en 20% voor testgegevens.
  5. Controleer de modelconfiguratie en selecteer vervolgens de knop Maken .
  6. Nadat u een model hebt getraind, kunt u Model evalueren selecteren in het menu Aan de slag . U kunt uw model selecteren in het venster Model evalueren en zo nodig verbeteringen aanbrengen.

Stap 6: Uw model implementeren

Normaal gesproken bekijkt u na het trainen van een model de evaluatiedetails. Voor deze quickstart kunt u uw model gewoon implementeren en beschikbaar maken om te testen in Azure Language Playground of door de voorspellings-API aan te roepen. Als u wilt, kunt u echter even de tijd nemen om uw model evalueren te selecteren in het menu aan de linkerkant en de uitgebreide telemetrie voor uw model te verkennen. Voer de volgende stappen uit om uw model in Foundry te implementeren.

  1. Selecteer Model implementeren in het menu aan de linkerkant.

  2. Selecteer ➕vervolgens Een getraind model implementeren in het venster Uw model implementeren .

    Schermopname van het venster Uw model implementeren in Foundry.

  3. Zorg ervoor dat de knop Een nieuwe implementatie maken is geselecteerd.

  4. Voltooi de velden een getraind modelvenster implementeren :

    • Implementatienaam. Geef uw model een naam.
    • Wijs een model toe. Selecteer het getrainde model in de vervolgkeuzelijst.
    • Regio. Selecteer een regio in de vervolgkeuzelijst.
  5. Selecteer ten slotte de knop Maken . Het kan enkele minuten duren voordat uw model is geïmplementeerd.

  6. Na een geslaagde implementatie kunt u de implementatiestatus van uw model bekijken op de pagina Uw model implementeren . De vervaldatum die wordt weergegeven, markeert de datum waarop uw geïmplementeerde model niet meer beschikbaar is voor voorspellingstaken. Deze datum is meestal 18 maanden nadat een trainingsconfiguratie is geïmplementeerd.

    Schermopname van het statusvenster voor het implementeren van uw model in Foundry.

Stap 7: Azure Language Playground uitproberen

De taalspeelplaats biedt een sandbox om uw nauwkeurig afgestemde model te testen en te configureren voordat u het implementeert in productie, allemaal zonder code te schrijven.

  1. Selecteer In de bovenste menubalk de optie Uitproberen in speeltuin.
  2. Selecteer in het venster Language Playground van Azure de tegel Aangepaste entiteitsherkenning .
  3. Selecteer in de sectie Configuratie de projectnaam en implementatienaam in de vervolgkeuzelijsten.
  4. Voer een entiteit in en selecteer Uitvoeren.
  5. U kunt de resultaten evalueren in het venster Details .

Dat is het, gefeliciteerd!

In deze quickstart hebt u een aangepast NER-model gemaakt, dit geïmplementeerd in Foundry en uw model getest in de Azure Language Playground.

Resources opschonen

Als u uw project niet meer nodig hebt, kunt u het verwijderen uit de Foundry.

  1. Navigeer naar de startpagina van Foundry . Start het verificatieproces door u aan te melden, tenzij u deze stap al hebt voltooid en uw sessie actief is.
  2. Selecteer het project dat u wilt verwijderen uit Doorgaan met bouwen met Foundry.
  3. Selecteer Beheercentrum.
  4. Selecteer Project verwijderen.

De hub samen met alle bijbehorende projecten verwijderen:

  1. Navigeer naar het tabblad Overzicht in de sectie Hub .

  2. Selecteer aan de rechterkant de optie Hub verwijderen.

  3. Met de koppeling opent u Azure Portal om de hub daar te verwijderen.

Vereisten

Een nieuwe Azure-taal maken in Foundry Tools-resource en Azure-opslagaccount

Voordat u aangepaste herkenning van benoemde entiteiten (NER) kunt gebruiken, moet u een taalresource maken, waarmee u de referenties krijgt die u nodig hebt om een project te maken en een model te trainen. U hebt ook een Azure-opslagaccount nodig, waar u uw gegevensset kunt uploaden die wordt gebruikt bij het bouwen van uw model.

Belangrijk

Om snel aan de slag te gaan, raden we u aan een nieuwe taalresource te maken. Gebruik de stappen in dit artikel om een Azure Language-resource te maken en tegelijkertijd een opslagaccount te maken en/of er verbinding mee te maken. Het tegelijkertijd creëren van beide is gemakkelijker dan het later te doen.

Als u een bestaande resource hebt die u wilt gebruiken, moet u deze verbinden met het opslagaccount. Zie Project maken voor informatie.

Een nieuwe resource maken vanuit Azure Portal

  1. Meld u aan bij Azure Portal om een nieuwe Azure-taal te maken in Foundry Tools-resource.

  2. Selecteer in het venster dat wordt weergegeven aangepaste tekstclassificatie en aangepaste entiteitsherkenning in de aangepaste functies. Selecteer Doorgaan onderaan het scherm om uw resource te maken.

    Een schermopname van aangepaste tekstclassificatie en aangepaste entiteitsherkenning in Azure Portal.

  3. Maak een taalresource met de volgende details.

    Name Beschrijving
    Abonnement Uw Azure-abonnement.
    Resourcegroep Een resourcegroep die uw resource bevat. U kunt een bestaande gebruiken of een nieuwe maken.
    Regio De regio voor uw taalresource. Bijvoorbeeld "West US 2".
    Name Een naam voor uw resource.
    Prijscategorie De prijscategorie voor uw taalresource. U kunt de gratis laag (F0) gebruiken om de service uit te proberen.

    Notitie

    Als u een bericht krijgt met de tekst 'uw aanmeldingsaccount is geen eigenaar van de resourcegroep van het geselecteerde opslagaccount', moet aan uw account een rol van eigenaar zijn toegewezen voor de resourcegroep voordat u een taalresource kunt maken. Neem contact op met de eigenaar van uw Azure-abonnement voor hulp.

  4. Selecteer in de sectie Aangepaste tekstclassificatie en aangepaste entiteitsherkenning een bestaand opslagaccount of selecteer Nieuw opslagaccount. Deze waarden zijn om u te helpen aan de slag te gaan en niet noodzakelijkerwijs de opslagaccountwaarden die u wilt gebruiken in productieomgevingen. Als u latentie wilt voorkomen tijdens het bouwen van uw project, maakt u verbinding met opslagaccounts in dezelfde regio als uw taalresource.

    Waarde van opslagaccount Aanbevolen waarde
    Naam van het opslagaccount Elke naam
    Type opslagaccount Lokaal redundante standaardopslag (LRS)
  5. Zorg ervoor dat de Responsible AI Notice is aangevinkt. Selecteer Beoordelen en maken onder aan de pagina en selecteer Maken.

Voorbeeldgegevens uploaden naar blobcontainer

Nadat u een Azure-opslagaccount hebt gemaakt en het hebt verbonden met uw taalresource, moet u de documenten uit de voorbeeldgegevensset uploaden naar de hoofdmap van uw container. Deze documenten worden gebruikt om uw model te trainen.

  1. Download de voorbeeldgegevensset van GitHub.

  2. Open het bestand .zip en pak de map met de documenten uit.

  3. Navigeer in Azure Portal naar het opslagaccount dat u hebt gemaakt en selecteer het.

  4. Selecteer containers in het linkermenu in uw opslagaccount, onder Gegevensopslag. Selecteer + Container op het scherm dat wordt weergegeven. Geef de container de naam voorbeeldgegevens en laat het standaardniveau openbare toegang staan.

    Een schermopname van de hoofdpagina voor een opslagaccount.

  5. Nadat de container is gemaakt, selecteert u deze. Selecteer vervolgens de knop Uploaden om de .txt en .json bestanden te selecteren die u eerder hebt gedownload.

    Een schermopname van de knop voor het uploaden van bestanden naar het opslagaccount.

De opgegeven voorbeeldgegevensset bevat 20 leningovereenkomsten. Elke overeenkomst omvat twee partijen: een kredietgever en een kredietnemer. U kunt het opgegeven voorbeeldbestand gebruiken om relevante informatie te extraheren voor: beide partijen, een overeenkomstdatum, een leningbedrag en een rentepercentage.

Uw resource-sleutels en eindpunt verkrijgen

  1. Ga naar de overzichtspagina van uw resource in Azure Portal

  2. Selecteer sleutels en eindpunt in het menu aan de linkerkant. Het eindpunt en de sleutel worden gebruikt voor API-aanvragen.

    Een schermopname van de pagina sleutel en eindpunt in Azure Portal

Een aangepast NER-project maken

Zodra uw resource en opslagaccount zijn geconfigureerd, maakt u een nieuw aangepast NER-project. Een project is een werkgebied voor het bouwen van uw aangepaste ML-modellen op basis van uw gegevens. Uw project wordt benaderd door u en anderen die toegang hebben tot de gebruikte Azure Language-resource.

Gebruik het tagsbestand dat u in de vorige stap hebt gedownload uit de voorbeeldgegevens en voeg het toe aan de hoofdtekst van de volgende aanvraag.

Importprojecttaak activeren

Verzend een POST-aanvraag met behulp van de volgende URL, headers en JSON-hoofdtekst om het labelbestand te importeren. Zorg ervoor dat het labelsbestand de geaccepteerde indeling volgt.

Als er al een project met dezelfde naam bestaat, worden de gegevens van dat project vervangen.

{Endpoint}/language/authoring/analyze-text/projects/{projectName}/:import?api-version={API-VERSION}
Tijdelijke aanduiding Waarde Voorbeeld
{ENDPOINT} Het eindpunt voor het verifiëren van uw API-aanvraag. https://<your-custom-subdomain>.cognitiveservices.azure.com
{PROJECT-NAME} De naam voor uw project. Deze waarde is hoofdlettergevoelig. myProject
{API-VERSION} De versie van de API die u aanroept. De waarde waarnaar hier wordt verwezen, is voor de nieuwste versie die is uitgebracht. Voor meer informatie, ziede modellevenscyclus. 2022-05-01

Kopteksten

Gebruik de volgende header om uw aanvraag te verifiëren.

Sleutel Waarde
Ocp-Apim-Subscription-Key De sleutel voor uw resource. Wordt gebruikt voor het verifiëren van uw API-aanvragen.

Lichaam

Gebruik de volgende JSON in uw aanvraag. Vervang de tijdelijke aanduidingen door uw eigen waarden.

{
    "projectFileVersion": "{API-VERSION}",
    "stringIndexType": "Utf16CodeUnit",
    "metadata": {
        "projectName": "{PROJECT-NAME}",
        "projectKind": "CustomEntityRecognition",
        "description": "Trying out custom NER",
        "language": "{LANGUAGE-CODE}",
        "multilingual": true,
        "storageInputContainerName": "{CONTAINER-NAME}",
        "settings": {}
    },
    "assets": {
    "projectKind": "CustomEntityRecognition",
        "entities": [
            {
                "category": "Entity1"
            },
            {
                "category": "Entity2"
            }
        ],
        "documents": [
            {
                "location": "{DOCUMENT-NAME}",
                "language": "{LANGUAGE-CODE}",
                "dataset": "{DATASET}",
                "entities": [
                    {
                        "regionOffset": 0,
                        "regionLength": 500,
                        "labels": [
                            {
                                "category": "Entity1",
                                "offset": 25,
                                "length": 10
                            },
                            {
                                "category": "Entity2",
                                "offset": 120,
                                "length": 8
                            }
                        ]
                    }
                ]
            },
            {
                "location": "{DOCUMENT-NAME}",
                "language": "{LANGUAGE-CODE}",
                "dataset": "{DATASET}",
                "entities": [
                    {
                        "regionOffset": 0,
                        "regionLength": 100,
                        "labels": [
                            {
                                "category": "Entity2",
                                "offset": 20,
                                "length": 5
                            }
                        ]
                    }
                ]
            }
        ]
    }
}
Sleutel Tijdelijke aanduiding Waarde Voorbeeld
api-version {API-VERSION} De versie van de API die u aanroept. De versie die hier wordt gebruikt, moet dezelfde API-versie in de URL zijn. Meer informatie over andere beschikbare API-versies 2022-03-01-preview
projectName {PROJECT-NAME} De naam van uw project. Deze waarde is hoofdlettergevoelig. myProject
projectKind CustomEntityRecognition Uw projecttype. CustomEntityRecognition
language {LANGUAGE-CODE} Een tekenreeks die de taalcode opgeeft voor de documenten die in uw project worden gebruikt. Als uw project een meertalige project is, kiest u de taalcode van de meeste documenten. en-us
multilingual true Een booleaanse waarde waarmee u documenten in meerdere talen in uw gegevensset kunt hebben en wanneer uw model wordt geïmplementeerd, kunt u een query uitvoeren op het model in elke ondersteunde taal (niet noodzakelijkerwijs opgenomen in uw trainingsdocumenten). Zie taalondersteuning voor informatie over meertalige ondersteuning. true
storageInputContainerName {CONTAINER-NAME} De naam van uw Azure Storage-container met uw geüploade documenten. myContainer
entities Matrix met alle entiteitstypen die u in het project hebt en uit uw documenten hebt geëxtraheerd.
documents Matrix met alle documenten in uw project en een lijst met de entiteiten die in elk document zijn gelabeld. []
location {DOCUMENT-NAME} De locatie van de documenten in de opslagcontainer. doc1.txt
dataset {DATASET} De testset waarnaar dit bestand gaat wanneer het wordt gesplitst vóór de training. Zie Een model trainen voor meer informatie. Mogelijke waarden voor dit veld zijn Train en Test. Train

Zodra u uw API-aanvraag hebt verzonden, ontvangt u een 202 antwoord dat aangeeft dat de taak correct is verzonden. Pak de operation-location waarde uit in de antwoordheaders. Hier volgt een voorbeeld van de indeling:

{ENDPOINT}/language/authoring/analyze-text/projects/{PROJECT-NAME}/import/jobs/{JOB-ID}?api-version={API-VERSION}

{JOB-ID} wordt gebruikt om uw aanvraag te identificeren, omdat deze bewerking asynchroon is. U gebruikt deze URL om de status van de importtaak op te halen.

Mogelijke foutscenario's voor deze aanvraag:

  • De geselecteerde resource beschikt niet over de juiste machtigingen voor het opslagaccount.
  • De opgegeven storageInputContainerName bestaat niet.
  • Ongeldige taalcode wordt gebruikt of als het taalcodetype geen tekenreeks is.
  • multilingual waarde is een tekenreeks en geen booleaanse waarde.

Status van importtaak ophalen

Gebruik de volgende GET-aanvraag om de status van het importeren van uw project op te halen. Vervang de tijdelijke aanduidingen door uw eigen waarden.

Aanvraag-URL

{ENDPOINT}/language/authoring/analyze-text/projects/{PROJECT-NAME}/import/jobs/{JOB-ID}?api-version={API-VERSION}
Tijdelijke aanduiding Waarde Voorbeeld
{ENDPOINT} Het eindpunt voor het verifiëren van uw API-aanvraag. https://<your-custom-subdomain>.cognitiveservices.azure.com
{PROJECT-NAME} De naam van uw project. Deze waarde is hoofdlettergevoelig. myProject
{JOB-ID} De id voor het zoeken naar de trainingsstatus van uw model. Deze waarde bevindt zich in de location headerwaarde die u in de vorige stap hebt ontvangen. xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxxx
{API-VERSION} De versie van de API die u aanroept. De waarde waarnaar wordt verwezen, is voor de nieuwste versie die is uitgebracht. Voor meer informatie, ziede modellevenscyclus. 2022-05-01

Kopteksten

Gebruik de volgende header om uw aanvraag te verifiëren.

Sleutel Waarde
Ocp-Apim-Subscription-Key De sleutel voor uw resource. Wordt gebruikt voor het verifiëren van uw API-aanvragen.

Uw model trainen

Meestal nadat u een project hebt gemaakt, gaat u verder en begint u met het taggen van de documenten die u hebt in de container die is verbonden met uw project. Voor deze quickstart hebt u een voorbeeldgegevensset met tags geïmporteerd en uw project geïnitialiseerd met het JSON-voorbeeldtagbestand.

Trainingstaak starten

Nadat uw project is geïmporteerd, kunt u beginnen met het trainen van uw model.

Dien een POST-aanvraag in met behulp van de volgende URL, headers en JSON-hoofdtekst om een trainingstaak te verzenden. Vervang de tijdelijke aanduidingen door uw eigen waarden.

{ENDPOINT}/language/authoring/analyze-text/projects/{PROJECT-NAME}/:train?api-version={API-VERSION}
Tijdelijke aanduiding Waarde Voorbeeld
{ENDPOINT} Het eindpunt voor het verifiëren van uw API-aanvraag. https://<your-custom-subdomain>.cognitiveservices.azure.com
{PROJECT-NAME} De naam van uw project. Deze waarde is hoofdlettergevoelig. myProject
{API-VERSION} De versie van de API die u aanroept. De waarde waarnaar wordt verwezen, is voor de nieuwste versie die is uitgebracht. Voor meer informatie, ziede modellevenscyclus. 2022-05-01

Kopteksten

Gebruik de volgende header om uw aanvraag te verifiëren.

Sleutel Waarde
Ocp-Apim-Subscription-Key De sleutel voor uw resource. Wordt gebruikt voor het verifiëren van uw API-aanvragen.

Aanvraagtekst

Gebruik de volgende JSON in de hoofdtekst van uw aanvraag. Het model wordt gegeven als de {MODEL-NAME} zodra de training is voltooid. Alleen succesvolle trainingsjobs produceren modellen.

{
    "modelLabel": "{MODEL-NAME}",
    "trainingConfigVersion": "{CONFIG-VERSION}",
    "evaluationOptions": {
        "kind": "percentage",
        "trainingSplitPercentage": 80,
        "testingSplitPercentage": 20
    }
}
Sleutel Tijdelijke aanduiding Waarde Voorbeeld
modelLabel {MODEL-NAME} De modelnaam die is toegewezen aan uw model nadat deze is getraind. myModel
trainingConfigVersion {CONFIG-VERSION} Dit is de modelversie die wordt gebruikt om het model te trainen. 2022-05-01
evaluationOptions Optie voor het splitsen van uw gegevens in trainings- en testsets. {}
soort percentage Splitsmethoden. Mogelijke waarden zijn percentage en manual. Zie Een model trainen voor meer informatie. percentage
trainingSplitPercentage 80 Percentage van uw getagde gegevens die moeten worden opgenomen in de trainingsset. Aanbevolen waarde is 80. 80
testverdelingspercentage 20 Percentage van uw getagde gegevens die moeten worden opgenomen in de testset. Aanbevolen waarde is 20. 20

Notitie

De trainingSplitPercentage en testingSplitPercentage zijn alleen vereist als Kind is ingesteld op percentage en de som van beide percentages moet gelijk zijn aan 100.

Zodra u uw API-aanvraag hebt verzonden, ontvangt u een 202 antwoord dat aangeeft dat de taak correct is verzonden. Pak in de antwoordheaders de location waarde op die als volgt is opgemaakt:

{ENDPOINT}/language/authoring/analyze-text/projects/{PROJECT-NAME}/train/jobs/{JOB-ID}?api-version={API-VERSION}

{JOB-ID} wordt gebruikt om uw aanvraag te identificeren, omdat deze bewerking asynchroon is. U kunt deze URL gebruiken om de trainingsstatus op te halen.

Trainingstaakstatus ophalen

Training kan enige tijd duren tussen 10 en 30 minuten voor deze voorbeeldgegevensset. U kunt de volgende aanvraag gebruiken om de status van de trainingstaak te peilen totdat deze is voltooid.

Gebruik de volgende GET-aanvraag om de status van de trainingsvoortgang van uw model op te halen. Vervang de tijdelijke aanduidingen door uw eigen waarden.

Aanvraag-URL

{ENDPOINT}/language/authoring/analyze-text/projects/{PROJECT-NAME}/train/jobs/{JOB-ID}?api-version={API-VERSION}
Tijdelijke aanduiding Waarde Voorbeeld
{ENDPOINT} Het eindpunt voor het verifiëren van uw API-aanvraag. https://<your-custom-subdomain>.cognitiveservices.azure.com
{PROJECT-NAME} De naam van uw project. Deze waarde is hoofdlettergevoelig. myProject
{JOB-ID} De id voor het zoeken naar de trainingsstatus van uw model. Deze waarde bevindt zich in de location headerwaarde die u in de vorige stap hebt ontvangen. xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxxx
{API-VERSION} De versie van de API die u aanroept. De waarde waarnaar wordt verwezen, is voor de nieuwste versie die is uitgebracht. Voor meer informatie, ziede modellevenscyclus. 2022-05-01

Kopteksten

Gebruik de volgende header om uw aanvraag te verifiëren.

Sleutel Waarde
Ocp-Apim-Subscription-Key De sleutel voor uw resource. Wordt gebruikt voor het verifiëren van uw API-aanvragen.

Hoofdtekst van antwoord

Zodra u de aanvraag hebt verzonden, krijgt u het volgende antwoord.

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

Uw model implementeren

Over het algemeen controleert u na het trainen van een model de evaluatiedetails en maakt u indien nodig verbeteringen . In deze quickstart implementeert u uw model en stelt u het model beschikbaar om te proberen in Language Studio of kunt u de voorspellings-API aanroepen.

Implementatietaak starten

Dien een PUT-aanvraag in met behulp van de volgende URL, headers en JSON-hoofdtekst om een implementatietaak te verzenden. Vervang de tijdelijke aanduidingen door uw eigen waarden.

{Endpoint}/language/authoring/analyze-text/projects/{projectName}/deployments/{deploymentName}?api-version={API-VERSION}
Tijdelijke aanduiding Waarde Voorbeeld
{ENDPOINT} Het eindpunt voor het verifiëren van uw API-aanvraag. https://<your-custom-subdomain>.cognitiveservices.azure.com
{PROJECT-NAME} De naam van uw project. Deze waarde is hoofdlettergevoelig. myProject
{DEPLOYMENT-NAME} De naam van uw implementatie. Deze waarde is hoofdlettergevoelig. staging
{API-VERSION} De versie van de API die u aanroept. De waarde waarnaar wordt verwezen, is voor de nieuwste versie die is uitgebracht. Voor meer informatie, ziede modellevenscyclus. 2022-05-01

Kopteksten

Gebruik de volgende header om uw aanvraag te verifiëren.

Sleutel Waarde
Ocp-Apim-Subscription-Key De sleutel voor uw resource. Wordt gebruikt voor het verifiëren van uw API-aanvragen.

Aanvraagtekst

Gebruik de volgende JSON in de hoofdtekst van uw aanvraag. Gebruik de naam van het model dat u aan de implementatie wilt toewijzen.

{
  "trainedModelLabel": "{MODEL-NAME}"
}
Sleutel Tijdelijke aanduiding Waarde Voorbeeld
Label van getraind model {MODEL-NAME} De modelnaam die is toegewezen aan uw implementatie. U kunt alleen getrainde modellen toewijzen. Deze waarde is hoofdlettergevoelig. myModel

Zodra u uw API-aanvraag hebt verzonden, ontvangt u een 202 antwoord dat aangeeft dat de taak correct is verzonden. Pak in de antwoordheaders de operation-location waarde op die als volgt is opgemaakt:

{ENDPOINT}/language/authoring/analyze-text/projects/{PROJECT-NAME}/deployments/{DEPLOYMENT-NAME}/jobs/{JOB-ID}?api-version={API-VERSION}

{JOB-ID} wordt gebruikt om uw aanvraag te identificeren, omdat deze bewerking asynchroon is. U kunt deze URL gebruiken om de implementatiestatus op te halen.

Status van uitroltaak ophalen

Gebruik de volgende GET-aanvraag om de status van de implementatietaak op te vragen. U kunt de URL die u hebt ontvangen uit de vorige stap gebruiken of de tijdelijke aanduidingen vervangen door uw eigen waarden.

{ENDPOINT}/language/authoring/analyze-text/projects/{PROJECT-NAME}/deployments/{DEPLOYMENT-NAME}/jobs/{JOB-ID}?api-version={API-VERSION}
Tijdelijke aanduiding Waarde Voorbeeld
{ENDPOINT} Het eindpunt voor het verifiëren van uw API-aanvraag. https://<your-custom-subdomain>.cognitiveservices.azure.com
{PROJECT-NAME} De naam van uw project. Deze waarde is hoofdlettergevoelig. myProject
{DEPLOYMENT-NAME} De naam van uw implementatie. Deze waarde is hoofdlettergevoelig. staging
{JOB-ID} De id voor het zoeken naar de trainingsstatus van uw model. Deze bevindt zich in de location headerwaarde die u in de vorige stap hebt ontvangen. xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxxx
{API-VERSION} De versie van de API die u aanroept. De waarde waarnaar wordt verwezen, is voor de nieuwste versie die is uitgebracht. Voor meer informatie, ziede modellevenscyclus. 2022-05-01

Kopteksten

Gebruik de volgende header om uw aanvraag te verifiëren.

Sleutel Waarde
Ocp-Apim-Subscription-Key De sleutel voor uw resource. Wordt gebruikt voor het verifiëren van uw API-aanvragen.

Hoofdtekst van antwoord

Zodra u de aanvraag hebt verzonden, krijgt u het volgende antwoord. Blijf dit eindpunt peilen totdat de statusparameter is gewijzigd in 'geslaagd'. U moet een 200 code ophalen om het succes van de aanvraag aan te geven.

{
    "jobId":"{JOB-ID}",
    "createdDateTime":"{CREATED-TIME}",
    "lastUpdatedDateTime":"{UPDATED-TIME}",
    "expirationDateTime":"{EXPIRATION-TIME}",
    "status":"running"
}

Aangepaste entiteiten extraheren

Nadat uw model is geïmplementeerd, kunt u het gaan gebruiken om entiteiten uit uw tekst te extraheren met behulp van de voorspellings-API. In de voorbeeldgegevensset die u eerder hebt gedownload, vindt u enkele testdocumenten die u in deze stap kunt gebruiken.

Een aangepaste NER-taak verzenden

Gebruik deze POST-aanvraag om een tekstclassificatietaak te starten.

{ENDPOINT}/language/analyze-text/jobs?api-version={API-VERSION}
Tijdelijke aanduiding Waarde Voorbeeld
{ENDPOINT} Het eindpunt voor het verifiëren van uw API-aanvraag. https://<your-custom-subdomain>.cognitiveservices.azure.com
{API-VERSION} De versie van de API die u aanroept. De waarde waarnaar wordt verwezen, is voor de nieuwste versie die is uitgebracht. Voor meer informatie, ziede modellevenscyclus. 2022-05-01

Kopteksten

Sleutel Waarde
Ocp-Apim-Subscription-Key Uw sleutel die toegang biedt tot deze API.

Lichaam

{
  "displayName": "Extracting entities",
  "analysisInput": {
    "documents": [
      {
        "id": "1",
        "language": "{LANGUAGE-CODE}",
        "text": "Text1"
      },
      {
        "id": "2",
        "language": "{LANGUAGE-CODE}",
        "text": "Text2"
      }
    ]
  },
  "tasks": [
     {
      "kind": "CustomEntityRecognition",
      "taskName": "Entity Recognition",
      "parameters": {
        "projectName": "{PROJECT-NAME}",
        "deploymentName": "{DEPLOYMENT-NAME}"
      }
    }
  ]
}
Sleutel Tijdelijke aanduiding Waarde Voorbeeld
displayName {JOB-NAME} Uw taaknaam. MyJobName
documents [{},{}] Lijst met documenten waarop taken moeten worden uitgevoerd. [{},{}]
id {DOC-ID} Documentnaam of id. doc1
language {LANGUAGE-CODE} Een tekenreeks die de taalcode voor het document opgeeft. Als deze sleutel niet is opgegeven, wordt door de service uitgegaan van de standaardtaal van het project dat is geselecteerd tijdens het maken van het project. Zie taalondersteuning voor een lijst met ondersteunde taalcodes. en-us
text {DOC-TEXT} Documenteer de taak waarop de taken moeten worden uitgevoerd. Lorem ipsum dolor sit amet
tasks Lijst met taken die we willen uitvoeren. []
taskName CustomEntityRecognition De taaknaam AangepasteEntiteitHerkenning
parameters Lijst met parameters die aan de taak moeten worden doorgegeven.
project-name {PROJECT-NAME} De naam voor uw project. Deze waarde is hoofdlettergevoelig. myProject
deployment-name {DEPLOYMENT-NAME} De naam van uw implementatie. Deze waarde is hoofdlettergevoelig. prod

Antwoord

U ontvangt een 202-antwoord dat aangeeft dat uw taak is verzonden. Pak in de antwoordheaders het uitoperation-location. operation-location is als volgt opgemaakt:

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

U kunt deze URL gebruiken om de voltooiingsstatus van de taak op te vragen en de resultaten op te halen wanneer de taak is voltooid.

Taakresultaten ophalen

Gebruik de volgende GET-aanvraag om de status/resultaten van de aangepaste entiteitsherkenningstaak op te vragen.

{ENDPOINT}/language/analyze-text/jobs/{JOB-ID}?api-version={API-VERSION}
Tijdelijke aanduiding Waarde Voorbeeld
{ENDPOINT} Het eindpunt voor het verifiëren van uw API-aanvraag. https://<your-custom-subdomain>.cognitiveservices.azure.com
{API-VERSION} De versie van de API die u aanroept. De waarde waarnaar wordt verwezen, is voor de nieuwste versie die is uitgebracht. Voor meer informatie, ziede modellevenscyclus. 2022-05-01

Kopteksten

Sleutel Waarde
Ocp-Apim-Subscription-Key Uw sleutel die toegang biedt tot deze API.

Hoofdtekst van antwoord

Het antwoord is een JSON-document met de volgende parameters

{
  "createdDateTime": "2021-05-19T14:32:25.578Z",
  "displayName": "MyJobName",
  "expirationDateTime": "2021-05-19T14:32:25.578Z",
  "jobId": "xxxx-xxxx-xxxxx-xxxxx",
  "lastUpdateDateTime": "2021-05-19T14:32:25.578Z",
  "status": "succeeded",
  "tasks": {
    "completed": 1,
    "failed": 0,
    "inProgress": 0,
    "total": 1,
    "items": [
      {
        "kind": "EntityRecognitionLROResults",
        "taskName": "Recognize Entities",
        "lastUpdateDateTime": "2020-10-01T15:01:03Z",
        "status": "succeeded",
        "results": {
          "documents": [
            {
              "entities": [
                {
                  "category": "Event",
                  "confidenceScore": 0.61,
                  "length": 4,
                  "offset": 18,
                  "text": "trip"
                },
                {
                  "category": "Location",
                  "confidenceScore": 0.82,
                  "length": 7,
                  "offset": 26,
                  "subcategory": "GPE",
                  "text": "Seattle"
                },
                {
                  "category": "DateTime",
                  "confidenceScore": 0.8,
                  "length": 9,
                  "offset": 34,
                  "subcategory": "DateRange",
                  "text": "last week"
                }
              ],
              "id": "1",
              "warnings": []
            }
          ],
          "errors": [],
          "modelVersion": "2020-04-01"
        }
      }
    ]
  }
}

Resources opschonen

Wanneer u uw project niet meer nodig hebt, kunt u het verwijderen met de volgende DELETE-aanvraag . Vervang de tijdelijke aanduidingen door uw eigen waarden.

{Endpoint}/language/authoring/analyze-text/projects/{projectName}?api-version={API-VERSION}
Tijdelijke aanduiding Waarde Voorbeeld
{ENDPOINT} Het eindpunt voor het verifiëren van uw API-aanvraag. https://<your-custom-subdomain>.cognitiveservices.azure.com
{PROJECT-NAME} De naam voor uw project. Deze waarde is hoofdlettergevoelig. myProject
{API-VERSION} De versie van de API die u aanroept. De waarde waarnaar wordt verwezen, is voor de nieuwste versie die is uitgebracht. Voor meer informatie, ziede modellevenscyclus. 2022-05-01

Kopteksten

Gebruik de volgende header om uw aanvraag te verifiëren.

Sleutel Waarde
Ocp-Apim-Subscription-Key De sleutel voor uw resource. Wordt gebruikt voor het verifiëren van uw API-aanvragen.

Zodra u uw API-aanvraag hebt verzonden, ontvangt u een 202 antwoord dat aangeeft dat uw project is verwijderd. Een geslaagde aanroepresultaten met een header Operation-Location die wordt gebruikt om de status van de taak te controleren.

Nadat u het model voor entiteitextractie hebt gemaakt, kunt u de runtime-API gebruiken om entiteiten te extraheren.

Wanneer u uw eigen aangepaste NER-projecten maakt, gebruikt u onze artikelen met procedures voor meer informatie over taggen, trainen en gebruiken van uw model: