Aangepaste herkenningscontainers voor benoemde entiteiten installeren en uitvoeren

Met containers kunt u de Api voor aangepaste benoemde entiteitsherkenning hosten in uw eigen infrastructuur met behulp van uw eigen getrainde model. Als u beveiligings- of gegevensbeheervereisten hebt waaraan niet kan worden voldaan door aangepaste benoemde entiteitsherkenning op afstand aan te roepen, zijn containers mogelijk een goede optie.

Notitie

Vereisten

Vereiste parameters verzamelen

Er zijn drie primaire parameters vereist voor alle Azure AI-containers. De licentievoorwaarden voor Microsoft-software moeten worden weergegeven met de waarde accepteren. Er zijn ook een eindpunt-URI en API-sleutel nodig.

Eindpunt-URI

De {ENDPOINT_URI} waarde is beschikbaar op de pagina Azure Portal Overzicht van de bijbehorende Resource voor Azure AI-services. Ga naar de pagina Overzicht , beweeg de muisaanwijzer over het eindpunt en het pictogram Kopiëren naar klembord wordt weergegeven. Kopieer en gebruik het eindpunt waar nodig.

Schermopname van het verzamelen van de eindpunt-URI voor later gebruik.

Sleutels

De {API_KEY} waarde wordt gebruikt om de container te starten en is beschikbaar op de pagina Sleutels van de Azure Portal van de bijbehorende Azure AI-servicesresource. Ga naar de pagina Sleutels en selecteer het pictogram Kopiëren naar klembord .

Schermopname van het ophalen van een van de twee sleutels voor later gebruik.

Belangrijk

Deze abonnementssleutels worden gebruikt voor toegang tot uw Api voor Azure AI-services. Deel uw sleutels niet. Bewaar ze veilig. Gebruik bijvoorbeeld Azure Key Vault. We raden u ook aan deze sleutels regelmatig opnieuw te genereren. Er is slechts één sleutel nodig om een API-aanroep te maken. Wanneer u de eerste sleutel opnieuw genereert, kunt u de tweede sleutel gebruiken voor continue toegang tot de service.

Vereisten en aanbevelingen voor hostcomputers

De host is een x64-computer waarop de Docker-container wordt uitgevoerd. Dit kan een computer op uw locatie zijn of een Docker-hostingservice in Azure, zoals:

In de volgende tabel worden de minimale en aanbevolen specificaties voor aangepaste benoemde entiteitsherkenningscontainers beschreven. Elke CPU-kern moet ten minste 2,6 gigahertz (GHz) of sneller zijn. De toegestane transacties per seconde (TPS) worden ook vermeld.

Minimale hostspecificaties Aanbevolen hostspecificaties Minimale TPS Maximum TPS
Aangepaste benoemde entiteitsherkenning 1 kerngeheugen, 2 GB geheugen 1 kerngeheugen, 4 GB geheugen 15 30

DE CPU-kern en het geheugen komen overeen met de --cpus instellingen en --memory , die worden gebruikt als onderdeel van de docker run opdracht.

Uw aangepaste model voor benoemde entiteitsherkenning exporteren

Voordat u doorgaat met het uitvoeren van de Docker-installatiekopieën, moet u uw eigen getrainde model exporteren om het weer te geven aan uw container. Gebruik de volgende opdracht om uw model te extraheren en de onderstaande tijdelijke aanduidingen te vervangen door uw eigen waarden:

Tijdelijke aanduiding Waarde Opmaak of voorbeeld
{API_KEY} De sleutel voor uw aangepaste benoemde entiteitsherkenningsresource. U vindt deze op de pagina Sleutel en eindpunt van uw resource, op de Azure Portal. xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
{ENDPOINT_URI} Het eindpunt voor toegang tot de Aangepaste benoemde entiteitsherkennings-API. U vindt deze op de pagina Sleutel en eindpunt van uw resource, op de Azure Portal. https://<your-custom-subdomain>.cognitiveservices.azure.com
{PROJECT_NAME} De naam van het project met het model dat u wilt exporteren. U vindt deze op het tabblad Projecten in de Language Studio-portal. myProject
{TRAINED_MODEL_NAME} De naam van het getrainde model dat u wilt exporteren. U vindt uw getrainde modellen op het tabblad Modelevaluatie onder uw project in de Language Studio-portal. myTrainedModel
curl --location --request PUT '{ENDPOINT_URI}/language/authoring/analyze-text/projects/{PROJECT_NAME}/exported-models/{TRAINED_MODEL_NAME}?api-version=2023-04-15-preview' \
--header 'Ocp-Apim-Subscription-Key: {API_KEY}' \
--header 'Content-Type: application/json' \
--data-raw '{
    "TrainedmodelLabel": "{TRAINED_MODEL_NAME}"
}'

De containerinstallatiekopieën ophalen met docker pull

De containerinstallatiekopieën voor aangepaste benoemde entiteitsherkenning vindt u in het mcr.microsoft.com containerregistersyndicaat. Deze bevindt zich in de azure-cognitive-services/textanalytics/ opslagplaats en heeft de naam customner. De volledig gekwalificeerde naam van de containerinstallatiekopieën is mcr.microsoft.com/azure-cognitive-services/textanalytics/customner.

Als u de nieuwste versie van de container wilt gebruiken, kunt u de latest tag gebruiken. U vindt ook een volledige lijst met tags op de MCR.

Gebruik de docker pull opdracht om een containerinstallatiekopieën te downloaden van Microsoft Container Registry.

docker pull mcr.microsoft.com/azure-cognitive-services/textanalytics/customner:latest

Tip

U kunt de opdracht docker-installatiekopieën gebruiken om uw gedownloade containerinstallatiekopieën weer te geven. Met de volgende opdracht worden bijvoorbeeld de id, opslagplaats en tag weergegeven van elke gedownloade containerinstallatiekopieën, opgemaakt als een tabel:

docker images --format "table {{.ID}}\t{{.Repository}}\t{{.Tag}}"

IMAGE ID         REPOSITORY                TAG
<image-id>       <repository-path/name>    <tag-name>

De container uitvoeren met docker run

Zodra de container zich op de hostcomputer bevindt, gebruikt u de opdracht docker run om de containers uit te voeren. De container blijft actief totdat u deze stopt.

Belangrijk

  • De docker-opdrachten in de volgende secties gebruiken de back-slash, \, als een regel vervolgteken. Vervang of verwijder deze op basis van de vereisten van uw hostbesturingssysteem.
  • De Eulaopties , Billingen ApiKey moeten worden opgegeven om de container uit te voeren; anders wordt de container niet gestart. Zie Facturering voor meer informatie.

Voer de volgende docker run opdracht uit om de container Custom Named Entity Recognition uit te voeren. Vervang de onderstaande tijdelijke aanduidingen door uw eigen waarden:

Tijdelijke aanduiding Waarde Opmaak of voorbeeld
{API_KEY} De sleutel voor uw aangepaste benoemde entiteitsherkenningsresource. U vindt deze op de pagina Sleutel en eindpunt van uw resource, op de Azure Portal. xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
{ENDPOINT_URI} Het eindpunt voor toegang tot de Aangepaste benoemde entiteitsherkennings-API. U vindt deze op de pagina Sleutel en eindpunt van uw resource, op de Azure Portal. https://<your-custom-subdomain>.cognitiveservices.azure.com
{PROJECT_NAME} De naam van het project met het model dat u wilt exporteren. U vindt deze op het tabblad Projecten in de Language Studio-portal. myProject
{LOCAL_PATH} Het pad waarin het geëxporteerde model in de vorige stap wordt gedownload. U kunt elk pad naar wens kiezen. C:/custom-ner-model
{TRAINED_MODEL_NAME} De naam van het getrainde model dat u wilt exporteren. U vindt uw getrainde modellen op het tabblad Modelevaluatie onder uw project in de Language Studio-portal. myTrainedModel
docker run --rm -it -p5000:5000  --memory 4g --cpus 1 \
-v {LOCAL_PATH}:/modelPath \
mcr.microsoft.com/azure-cognitive-services/textanalytics/customner:latest \
EULA=accept \
BILLING={ENDPOINT_URI} \
APIKEY={API_KEY} \
projectName={PROJECT_NAME}
exportedModelName={TRAINED_MODEL_NAME}

Met deze opdracht gebeurt het volgende:

  • Hiermee voert u een aangepaste container voor benoemde entiteitsherkenning uit en downloadt u het geëxporteerde model naar het opgegeven lokale pad.
  • Wijst één CPU-kern en 4 gigabyte (GB) geheugen toe
  • Tcp-poort 5000 beschikbaar en wijst een pseudo-TTY toe voor de container
  • De container wordt automatisch verwijderd nadat deze is afgesloten. De containerinstallatiekopie is nog steeds beschikbaar op de hostcomputer.

Meerdere containers uitvoeren op dezelfde host

Als u van plan bent om meerdere containers met zichtbare poorten uit te voeren, moet u ervoor zorgen dat u elke container uitvoert met een andere weergegeven poort. Voer bijvoorbeeld de eerste container uit op poort 5000 en de tweede container op poort 5001.

U kunt deze container en een andere Azure AI-servicescontainer samen uitvoeren op de HOST. U kunt ook meerdere containers van dezelfde Azure AI-servicescontainer uitvoeren.

Een query uitvoeren op het voorspellingseindpunt van de container

De container bevat op REST gebaseerde eindpunt-API's voor queryvoorspelling.

Gebruik de host, http://localhost:5000, voor container-API's.

Controleren of een container wordt uitgevoerd

Er zijn verschillende manieren om te controleren of de container wordt uitgevoerd. Zoek het externe IP-adres en de weergegeven poort van de betreffende container en open uw favoriete webbrowser. Gebruik de verschillende aanvraag-URL's die volgen om te controleren of de container wordt uitgevoerd. De hier vermelde voorbeeldaanvraag-URL's zijn http://localhost:5000, maar uw specifieke container kan variëren. Zorg ervoor dat u vertrouwt op het externe IP-adres en de weergegeven poort van uw container.

Aanvraag-URL Doel
http://localhost:5000/ De container bevat een startpagina.
http://localhost:5000/ready Deze URL wordt aangevraagd met GET en biedt een verificatie dat de container gereed is om een query op het model te accepteren. Deze aanvraag kan worden gebruikt voor Kubernetes-liveness- en gereedheidstests.
http://localhost:5000/status Deze URL wordt ook aangevraagd met GET en controleert of de API-sleutel die wordt gebruikt om de container te starten, geldig is zonder dat er een eindpuntquery wordt veroorzaakt. Deze aanvraag kan worden gebruikt voor Kubernetes-liveness- en gereedheidstests.
http://localhost:5000/swagger De container bevat een volledige set met documentatie voor de eindpunten en een functie Uitproberen. Met deze functie kunt u uw instellingen invoeren in een html-webformulier en de query maken zonder dat u code hoeft te schrijven. Nadat de query is geretourneerd, wordt een voorbeeld van een CURL-opdracht gegeven om de vereiste HTTP-headers en hoofdtekstindeling te demonstreren.

Startpagina van container

De container stoppen

Als u de container wilt afsluiten, selecteert u Ctrl+C in de opdrachtregelomgeving waarin de container wordt uitgevoerd.

Problemen oplossen

Als u de container uitvoert met een uitvoerkoppeling en logboekregistratie ingeschakeld, genereert de container logboekbestanden die handig zijn voor het oplossen van problemen die optreden tijdens het starten of uitvoeren van de container.

Tip

Zie Veelgestelde vragen (FAQ) over Azure AI-containers voor meer informatie en richtlijnen voor probleemoplossing.

Billing

De containers aangepaste benoemde entiteitsherkenning verzenden factureringsgegevens naar Azure met behulp van een aangepaste benoemde entiteitsherkenningsresource in uw Azure-account.

Query's naar de container worden gefactureerd in de prijscategorie van de Azure-resource die wordt gebruikt voor de ApiKey parameter.

Azure AI-servicescontainers worden niet in licentie gegeven om te worden uitgevoerd zonder dat ze zijn verbonden met het eindpunt voor meting of facturering. U moet de containers te allen tijde inschakelen om factureringsgegevens te communiceren met het factureringseindpunt. Azure AI-servicescontainers verzenden geen klantgegevens, zoals de afbeelding of tekst die wordt geanalyseerd, naar Microsoft.

Verbinding maken met Azure

De container heeft de waarden van het factureringsargument nodig om uit te voeren. Met deze waarden kan de container verbinding maken met het factureringseindpunt. De container rapporteert het gebruik ongeveer elke 10 tot 15 minuten. Als de container geen verbinding maakt met Azure binnen het toegestane tijdvenster, blijft de container actief, maar worden er geen query's uitgevoerd totdat het factureringseindpunt is hersteld. De verbinding wordt tien keer geprobeerd met hetzelfde tijdsinterval van 10 tot 15 minuten. Als er binnen de tien pogingen geen verbinding kan worden gemaakt met het factureringseindpunt, stopt de container met het verwerken van aanvragen. Zie de Veelgestelde vragen over Azure AI-servicescontainers voor een voorbeeld van de informatie die voor facturering naar Microsoft is verzonden.

Factureringsargumenten

Met docker run de opdracht wordt de container gestart wanneer alle drie de volgende opties zijn voorzien van geldige waarden:

Optie Beschrijving
ApiKey De API-sleutel van de Azure AI-servicesresource die wordt gebruikt voor het bijhouden van factureringsgegevens.
De waarde van deze optie moet worden ingesteld op een API-sleutel voor de ingerichte resource die is opgegeven in Billing.
Billing Het eindpunt van de Azure AI-servicesresource die wordt gebruikt voor het bijhouden van factureringsgegevens.
De waarde van deze optie moet worden ingesteld op de eindpunt-URI van een ingerichte Azure-resource.
Eula Geeft aan dat u de licentie voor de container hebt geaccepteerd.
De waarde van deze optie moet worden ingesteld om te accepteren.

Samenvatting

In dit artikel hebt u concepten en werkstromen geleerd voor het downloaden, installeren en uitvoeren van aangepaste benoemde entiteitsherkenningscontainers. Samenvatting:

  • Custom Named Entity Recognition biedt Linux-containers voor Docker.
  • Containerinstallatiekopieën worden gedownload van Microsoft Container Registry (MCR).
  • Containerinstallatiekopieën worden uitgevoerd in Docker.
  • U kunt de REST API of SDK gebruiken om bewerkingen in aangepaste benoemde entiteitsherkenningscontainers aan te roepen door de host-URI van de container op te geven.
  • U moet factureringsgegevens opgeven bij het instantiëren van een container.

Belangrijk

Azure AI-containers worden niet in licentie gegeven om te worden uitgevoerd zonder dat ze zijn verbonden met Azure voor meting. Klanten moeten de containers te allen tijde inschakelen om factureringsgegevens te communiceren met de meetservice. Azure AI-containers verzenden geen klantgegevens (bijvoorbeeld tekst die wordt geanalyseerd) naar Microsoft.

Volgende stappen