Udtræk information fra dokumenter

Fuldført

Tip

Se fanen Tekst og billeder for flere detaljer!

Nutidens forretningsprocesser er i høj grad afhængige af data i dokumenter som formularer, kvitteringer og fakturaer. Manuel behandling kan medføre forsinkelser og fejl, hvilket gør automatisering af dataudtræk vigtigere end nogensinde.

Hvordan Azure Content Understanding fungerer

Azure Content Understanding følger en modeldrevet ekstraktionsarbejdsgang, hvor ustruktureret indhold indlæses, analyseres og returneres som strukturerede data.

  1. Indtag indhold: Du indsender indhold til Azure Content Understanding.

  2. AI-drevet analyse: Tjenesten bruger en kombination af: Optisk tegngenkendelse (OCR), talegenkendelse, naturlig sprogforståelse og multimodale AI-modeller til at analysere indholdet.

  3. Struktureret output: Tjenesten returnerer strukturerede resultater (for eksempel i JSON), der matcher din model – hvilket gør dataene nemme at lagre, søge i eller integrere i downstream-systemer.

Bemærkning

JSON (JavaScript Object Notation) er et tekstbaseret dataformat, der bruges til at lagre og udveksle strukturerede data mellem systemer. Det er nemt for mennesker at læse og skrive, og nemt for maskiner at analysere og generere.

Forstå skemaer

OCR (optisk tegngenkendelse) gør det muligt for en computer at 'læse' tekst fra billeder, såsom scannede dokumenter, fotos af kvitteringer eller billeder af trykte sider, og omdanne denne tekst til redigerbar og søgbar digital tekst. Grundlæggende OCR hjælper med at genkende trykt tekst, fokuserer på tekstudtrækning og forstår ikke betydning, kontekst eller relationer mellem ord.

Azure Content Understandings dokumentanalysefunktioner går ud over simpel OCR-baseret tekstudtrækning til også at omfatte skemabaseret udtrækning af felter og deres værdier. Den skema-drevne tilgang er det, der adskiller Azure Content Understanding fra grundlæggende OCR- eller transskriptionstjenester.

Et skema beskriver , hvilken information du ønsker at udtrække, og hvordan denne information skal struktureres. Når du definerer et skema, specificerer du felter, der skal udtrækkes. Et skema oplister de specifikke felter eller enheder, du går op i.

Antag f.eks., at du definerer et skema, der indeholder de almindelige felter, der typisk findes på en faktura, f.eks.:

  • Leverandørnavn
  • Fakturanummer
  • Fakturadato
  • Kundenavn
  • Brugerdefineret adresse
  • Items – de bestilte varer, som hver især indeholder:
    • Varebeskrivelse
    • Salgspris
    • Antal, der er bestilt.
    • Linjevaretotal
  • Fakturasubtotaler
  • Skat
  • Forsendelsesgebyr
  • Fakturatotal

Lad os antage, at du skal udtrække disse oplysninger fra følgende faktura:

Foto af en faktura.

Azure Content Understanding kan anvende fakturaskemaet på din faktura og identificere de tilsvarende felter, selv når de er mærket med forskellige navne (eller slet ikke mærket). Den resulterende analyse giver et resultat som dette:

Fotografi af en analyseret faktura med registrerede felter fremhævet.

Skemaet definerer også feltstrukturen. Skemaer understøtter strukturerede og indlejrede felter, ikke bare flad tekst. Eksempel:

  • Items er en samling
  • Hvert element har description, unit price, quantity, og line total

At identificere strukturerede felter gør det muligt for Azure Content Understanding at forstå relationer mellem værdier, noget OCR alene ikke kan gøre.

I fakturaeksemplet kan du for hvert opdaget felt udtrække indlejrede værdier:

  • Leverandørnavn: Adventure Works Cycles
  • Fakturanummer: 1234
  • Fakturadato: 07-03-2025
  • Kundenavn: John Smith
  • Brugerdefineret adresse: 123 River Street, Marshtown, England, GL1 234
  • Elementer:
    • Element 1:
      • Varebeskrivelse: 38" racercykel (rød)
      • Enhedspris: 1299,00
      • Bestilt antal: 1
      • Linjeelement i alt: 1299,00
    • Element 2:
      • Varebeskrivelse: Cykelhjelm (sort)
      • Enhedspris: 25,99
      • Bestilt antal: 1
      • Linjeelement i alt: 25,99
    • Element 3:
      • Varebeskrivelse: Cykelskjorte (L)
      • Enhedspris: 42,50
      • Bestilt antal: 2
      • Linjeelement i alt: 85,00
  • Fakturasubtotaler: 1409,99
  • Skat: 140,99
  • Forsendelsesgebyr: 35.00
  • Faktura i alt: 1585,98

Azure Content Understanding udtrækker forventet betydning, ikke kun etiketter. Skemaer anvendes semantisk og betyder:

  • Felter kan udtrækkes, selvom labels er forskellige
  • Felter kan udtrækkes, selvom labels mangler

For eksempel kan faktura nr., faktura # eller et umærket nummer alle tillægges InvoiceNumber , hvis analysatoren fastslår, at de repræsenterer det samme koncept.

Forstå analysatorer

En analysator er en enhed i Azure Content Understanding, der tager input, anvender AI-analyse og producerer strukturerede resultater. Analysatorer anvender konsekvent den samme ekstraktionslogik på alt indkommende indhold. Når det er konfigureret, sikrer en analysator, at et skema genbruges konsekvent for hver analyseanmodning. Analysatorer producerer også forudsigelige JSON-resultater. De strukturerede resultater gør downstream-behandling (lagring, søgning, automatisering) lettere.

Azure Content Understanding tilbyder færdigbyggede analysatorer til almindelige scenarier og understøtter specialtilpassede analysatorer, der er tilpasset dine behov. På et højt niveau:

  1. Du vælger eller opretter en analysator.
  2. Analysatoren indeholder et skema, der definerer felter og struktur.
  3. Du indsender indhold til analyse
  4. Tjenesten anvender skemaet
  5. Du modtager strukturerede JSON-resultater, der matcher skemaet

Brug af Azure Content Understanding i Foundry-portalen

Bemærkning

Foundry-portalen har en klassisk brugerflade (UI) og en ny brugerflade.

Efter du har oprettet en Microsoft Foundry-ressource, kan du bruge new Foundry portal-interfacet til at teste Azure Content Understanding. Foundry-portalen giver eksempler på indhold og giver dig mulighed for at uploade dit eget materiale til analyse.

Du kan bruge det visuelle interface til at vælge et kildedokument og udtrække standardfelter med information. For eksempel, når du prøver Azure Content Understanding på et billede af et dokument, returnerer tjenesten dokumentets tekst og tekstlayoutinformation.

Skærmbillede af den nye Foundry-portal med et dokument analyseret med Azure Content Understanding.

Azure Content Understandings analysatorer identificerer tekstværdier i dokumenter og kortlægger dem til specifikke felter. For eksempel, givet en faktura, returnerer tjenesten felterne (såsom leverandøradresse) og dataene i felterne (såsom 123 456th Street).

Skærmbillede af den nye Foundry-portal med en faktura analyseret med Azure Content Understanding.

I Foundry-portalen kan du også se JSON-resultaterne af behandlingen.

Skærmbillede af den nye Foundry-portal med JSON-resultatet af en faktura analyseret med Azure Content Understanding.

At bygge en klientapplikation med Azure Content Understanding

Du kan bruge Content Understanding API til at bygge en letvægts klientapplikation, der udtrækker data programmatisk.

Bemærkning

En klientapplikation er et softwareprogram, der kører på en brugers enhed og anmoder om tjenester eller data fra et andet system, typisk en server, over et netværk. Klienten er den del af en applikation, som brugerne interagerer med, mens serveren udfører det tunge arbejde bag kulisserne. Applikationer kan anmode om data eller handlinger fra en tjeneste og modtage et struktureret svar ved hjælp af et API.

Når du bruger Content Understanding API'en, kan du vælge en færdigbygget analysator eller oprette en brugerdefineret analysator. Forudbyggede analysatorer inkluderer: prebuilt-invoice, prebuilt-imageSearch, , prebuilt-audioSearchog prebuilt-videoSearch. Når du indsender indhold til analyse til analysatoren, er analysen asynkron, hvilket betyder, at du får resultatet senere, når det er klar. Fordi analysen er asynkron, skal du polle den Operation-Location URL (eller analyzerResults), indtil jobbet lykkes.

Brug af Azure Content Understanding Python SDK

Lad os se på processen med at bruge Python SDK til at analysere en faktura fra en URL.

  1. Installer Azure Content Understanding Python SDK.
python -m pip install azure-ai-contentunderstanding
  1. Identificer dit Foundry resource endpoint og API-nøgle eller Microsoft Entra ID. Dit endpoint ser typisk sådan ud: https://<your-resource-name>.services.ai.azure.com/

  2. Opret og kør klientapplikationskoden. Det er analzyer_id ID'et på den forudbyggede analysator. Du kan finde en liste over forudbyggede analysator-ID-værdier her.

import os
from azure.ai.contentunderstanding import ContentUnderstandingClient
from azure.core.credentials import AzureKeyCredential

endpoint = os.environ["FOUNDRY_ENDPOINT"]
key = os.environ["FOUNDRY_KEY"]

client = ContentUnderstandingClient(endpoint=endpoint, credential=AzureKeyCredential(key))

# 1) start analysis with analyzer id + inputs
analyzer_id = "prebuilt-invoice"
inputs = [
    {"url": "https://github.com/Azure-Samples/azure-ai-content-understanding-python/raw/refs/heads/main/data/invoice.pdf"}
]

# 2) wait for the Long Running Operation (LRO) to complete
poller = client.begin_analyze(analyzer_id=analyzer_id, inputs=inputs)  # starts LRO
result = poller.result()  # waits for completion (polling handled by SDK)

# 3) read structured fields + markdown
# The result typically includes extracted "fields" and "markdown" per input content item.
for content in result.contents:
    print(content.markdown)
    print(content.fields)

Det resulterende output er JSON, der viser den udtrukne markdown, felter, data i felterne og konfidensscore. Eksempel:

{
	"status": "Succeeded",
	"result": {
		"analyzerId": "prebuilt-invoice",
		"apiVersion": "2025-05-01-preview",
		"contents": [
			{
				"markdown": "# INVOICE\n\nCONTOSO LTD.\n\nContoso Headquarters\n123 456th St\nNew York, NY, 10001\n\nINVOICE: INV-100\n\nINVOICE DATE: 11/15/2019\n\nDUE DATE: 12/15/2019\n\nCUSTOMER NAME: MICROSOFT CORPORATION\n",
				"fields": {
					"CustomerName": {
						"type": "string",
						"valueString": "MICROSOFT CORPORATION",
						"confidence": 0.95,
					},
					"InvoiceDate": {
						"type": "date",
						"valueDate": "2019-11-15",
						"confidence": 0.994,
					}
                }
            }
        ]
    }
}

Dernæst skal du lære, hvordan du bruger Azure Content Understanding-analysatorer til at udtrække strukturerede data fra lyd og video.