Share via


Document Intelligence-indelingsmodel

Belangrijk

  • Openbare preview-versies van Document Intelligence bieden vroegtijdige toegang tot functies die actief zijn in ontwikkeling. Functies, benaderingen en processen kunnen veranderen, vóór algemene beschikbaarheid (GA), op basis van feedback van gebruikers.
  • De openbare preview-versie van Document Intelligence-clientbibliotheken is standaard ingesteld op REST API-versie 2024-07-31-preview.
  • Openbare preview-versie 2024-07-31-preview is momenteel alleen beschikbaar in de volgende Azure-regio's. Houd er rekening mee dat het aangepaste model voor generatieve (extractie van documentvelden) in AI Studio alleen beschikbaar is in de regio VS - noord-centraal:
    • VS - oost
    • VS - west 2
    • Europa -west
    • VS - noord-centraal

Deze inhoud is van toepassing op: vinkje v4.0 (preview) | Vorige versies:blauw-vinkje v3.1 (GA)blauw-vinkje v3.0 (GA)blauw-vinkje v2.1 (GA)

Document Intelligence-indelingsmodel is een geavanceerde machine learning-API voor documentanalyse die beschikbaar is in de Document Intelligence-cloud. Hiermee kunt u documenten in verschillende indelingen opnemen en gestructureerde gegevensweergaven van de documenten retourneren. Het combineert een verbeterde versie van onze krachtige OCR-mogelijkheden (Optical Character Recognition) met deep learning-modellen om tekst, tabellen, selectiemarkeringen en documentstructuur te extraheren.

Analyse van documentindeling (v4)

De indelingsanalyse van documentstructuur is het analyseren van een document om interessegebieden en hun onderlinge relaties te extraheren. Het doel is om tekst en structurele elementen van de pagina te extraheren om betere semantische begripsmodellen te maken. Er zijn twee typen rollen in een documentindeling:

  • Geometrische rollen: Tekst, tabellen, afbeeldingen en selectiemarkeringen zijn voorbeelden van geometrische rollen.
  • Logische rollen: Titels, koppen en voetteksten zijn voorbeelden van logische rollen van teksten.

In de volgende afbeelding ziet u de typische onderdelen in een afbeelding van een voorbeeldpagina.

Afbeelding van voorbeeld van documentindeling.

Ontwikkelingsopties (v4)

Document Intelligence v4.0 (2024-07-31-preview) ondersteunt de volgende hulpprogramma's, toepassingen en bibliotheken:

Functie Resources Model-id
Indelingsmodel Document Intelligence Studio
REST API
C# SDK
• Python SDK
Java SDK
JavaScript SDK
vooraf gedefinieerde indeling

Invoervereisten (v4)

  • Ondersteunde bestandsindelingen:

    Modelleren PDF Afbeelding:
    JPEG/JPG, PNG, BMP, , TIFFHEIF
    Microsoft Office:
    Word (), Excel (XLSXDOCX), PowerPoint (PPTX), HTML
    Read
    Indeling ✔ (2024-07-31-preview, 2024-02-29-preview, 2023-10-31-preview)
    Algemeen document
    Vooraf gebouwd
    Aangepaste extractie
    Aangepaste classificatie ✔ (2024-07-31-preview, 2024-02-29-preview)
  • Geef voor de beste resultaten één duidelijke foto of een hoogwaardige scan per document op.

  • Voor PDF en TIFF kunnen maximaal 2000 pagina's worden verwerkt (met een gratis abonnement worden alleen de eerste twee pagina's verwerkt).

  • De bestandsgrootte voor het analyseren van documenten is 500 MB voor betaalde (S0) laag en 4 MB voor gratis (F0).

  • De afmetingen van de afbeelding moeten tussen 50 x 50 pixels en 10.000 pixels x 10.000 pixels zijn.

  • Als uw PDF's zijn vergrendeld met een wachtwoord, moet u de vergrendeling verwijderen voordat u ze indient.

  • De minimale hoogte van de tekst die moet worden geëxtraheerd, is 12 pixels voor een afbeelding van 1024 x 768 pixels. Deze dimensie komt overeen met punttekst 8 op 150 punten per inch (DPI).

  • Voor aangepaste modeltraining is het maximum aantal pagina's voor trainingsgegevens 500 voor het aangepaste sjabloonmodel en 50.000 voor het aangepaste neurale model.

    • Voor het trainen van aangepaste extractiemodellen is de totale grootte van trainingsgegevens 50 MB voor het sjabloonmodel en 1 GB voor het neurale model.

    • Voor het trainen van aangepast classificatiemodel is 1 de totale grootte van trainingsgegevens GB met maximaal 10.000 pagina's. Voor 2024-07-31-preview en hoger is 2 de totale grootte van trainingsgegevens GB met maximaal 10.000 pagina's.

Aan de slag met het indelingsmodel

Bekijk hoe gegevens, waaronder tekst, tabellen, tabelkoppen, selectiemarkeringen en structuurgegevens worden geëxtraheerd uit documenten met behulp van Document Intelligence. U hebt de volgende resources nodig:

  • Een Azure-abonnement: u kunt er gratis een maken.

  • Een Document Intelligence-exemplaar in Azure Portal. U kunt de gratis prijscategorie (F0) gebruiken om de service te proberen. Nadat uw resource is geïmplementeerd, selecteert u Ga naar de resource om uw sleutel en eindpunt op te halen.

    Schermopname van sleutels en eindpuntlocatie in Azure Portal.

Notitie

Document Intelligence Studio is beschikbaar met v3.0-API's en latere versies.

Voorbeelddocument verwerkt met Document Intelligence Studio

Schermopname van 'Indeling' voor het verwerken van een krantenpagina in Document Intelligence Studio.

  1. Selecteer Indeling op de startpagina van Document Intelligence Studio.

  2. U kunt het voorbeelddocument analyseren of uw eigen bestanden uploaden.

  3. Selecteer de knop Analyse uitvoeren en configureer indien nodig de opties analyseren:

    Schermopname van de knoppen Analyse uitvoeren en Opties analyseren in Document Intelligence Studio.

Ondersteunde talen en landinstellingen (ocr)

Zie onze pagina Taalondersteuning: documentanalysemodellen voor een volledige lijst met ondersteunde talen.

Gegevensextractie (v4)

Met het indelingsmodel worden tekst, selectiemarkeringen, tabellen, alinea's en alineatypen (roles) uit uw documenten geëxtraheerd.

Notitie

Versies 2024-02-29-preview, 2023-10-31-previewen later ondersteunen Microsoft Office-bestanden (DOCX, XLSX, PPTX) en HTML-bestanden. De volgende functies worden niet ondersteund:

  • Er zijn geen hoeken, breedte/hoogte en eenheid voor elk paginaobject.
  • Voor elk gedetecteerd object is er geen begrenzings- of begrenzingsregio.
  • Paginabereik (pages) wordt niet ondersteund als parameter.
  • Geen lines object.

Pagina's

De verzameling pagina's is een lijst met pagina's in het document. Elke pagina wordt sequentieel weergegeven in het document en .. /bevat de richtingshoek die aangeeft of de pagina wordt gedraaid en de breedte en hoogte (afmetingen in pixels). De pagina-eenheden in de modeluitvoer worden berekend zoals weergegeven:

Bestandsindeling Berekende pagina-eenheid Totaal aantal pagina's
Afbeeldingen (JPEG/JPG, PNG, BMP, HEIF) Elke afbeelding = 1 pagina-eenheid Totaal aantal afbeeldingen
PDF Elke pagina in de PDF = 1 pagina-eenheid Totaal aantal pagina's in het PDF-bestand
TIFF Elke afbeelding in de TIFF = 1 pagina-eenheid Totaal aantal afbeeldingen in de TIFF
Word (DOCX) Maximaal 3000 tekens = 1 pagina-eenheid, ingesloten of gekoppelde afbeeldingen worden niet ondersteund Totaal aantal pagina's van maximaal 3000 tekens per pagina
Excel (XLSX) Elk werkblad = 1 pagina-eenheid, ingesloten of gekoppelde afbeeldingen wordt niet ondersteund Totaal aantal werkbladen
PowerPoint (PPTX) Elke dia = 1 pagina-eenheid, ingesloten of gekoppelde afbeeldingen wordt niet ondersteund Totaal aantal dia's
HTML Maximaal 3000 tekens = 1 pagina-eenheid, ingesloten of gekoppelde afbeeldingen worden niet ondersteund Totaal aantal pagina's van maximaal 3000 tekens per pagina
# Analyze pages.
for page in result.pages:
print(f"----Analyzing layout from page #{page.page_number}----")
print(f"Page has width: {page.width} and height: {page.height}, measured with unit: {page.unit}")

Geselecteerde pagina's uit documenten extraheren

Voor grote documenten met meerdere pagina's gebruikt u de pages queryparameter om specifieke paginanummers of paginabereiken aan te geven voor tekstextractie.

Leden

Met het indelingsmodel worden alle geïdentificeerde tekstblokken in de verzameling geëxtraheerd als een object op het paragraphs hoogste niveau onder analyzeResults. Elke vermelding in deze verzameling vertegenwoordigt een tekstblok en .. /bevat de geëxtraheerde tekst alscontenten de begrenzingscoördinaten polygon . De span informatie verwijst naar het tekstfragment in de eigenschap op het hoogste niveau content die de volledige tekst uit het document bevat.


"paragraphs": [
    {
        "spans": [],
        "boundingRegions": [],
        "content": "While healthcare is still in the early stages of its Al journey, we are seeing pharmaceutical and other life sciences organizations making major investments in Al and related technologies.\" TOM LAWRY | National Director for Al, Health and Life Sciences | Microsoft"
    }
]

Alinearollen

Met de nieuwe op machine learning gebaseerde paginaobjectdetectie worden logische rollen geëxtraheerd, zoals titels, sectiekoppen, paginakopteksten, paginavoetteksten en meer. Met het Document Intelligence-indelingsmodel worden bepaalde tekstblokken in de paragraphs verzameling toegewezen met hun gespecialiseerde rol of type dat door het model wordt voorspeld. U kunt het beste alinearollen met ongestructureerde documenten gebruiken om inzicht te verkrijgen in de indeling van de geëxtraheerde inhoud voor een uitgebreidere semantische analyse. De volgende alinearollen worden ondersteund:

Voorspelde rol Beschrijving Ondersteunde bestandstypen
title De hoofdkoppen op de pagina pdf, image, docx, pptx, xlsx, html
sectionHeading Een of meer subkoppen op de pagina pdf, image, docx, xlsx, html
footnote Tekst onder aan de pagina pdf, afbeelding
pageHeader Tekst aan de bovenrand van de pagina pdf, afbeelding, docx
pageFooter Tekst aan de onderkant van de pagina pdf, afbeelding, docx, pptx, html
pageNumber Paginanummer pdf, afbeelding
{
    "paragraphs": [
                {
                    "spans": [],
                    "boundingRegions": [],
                    "role": "title",
                    "content": "NEWS TODAY"
                },
                {
                    "spans": [],
                    "boundingRegions": [],
                    "role": "sectionHeading",
                    "content": "Mirjam Nilsson"
                }
    ]
}

Tekst, regels en woorden

Het documentindelingsmodel in Document Intelligence extraheert tekst in afdruk- en handgeschreven stijl als lines en words. De styles verzameling .. /bevat een handgeschreven stijl voor lijnen indien gedetecteerd, samen met de spanten die verwijzen naar de bijbehorende tekst. Deze functie is van toepassing op ondersteunde handgeschreven talen.

Voor Microsoft Word, Excel, PowerPoint en HTML halen documentinformatieversies 2024-02-29-preview en 2023-10-31-preview-indelingsmodel alle ingesloten tekst op. Teksten worden geëxtraheerd als woorden en alinea's. Ingesloten afbeeldingen worden niet ondersteund.

# Analyze lines.
if page.lines:
    for line_idx, line in enumerate(page.lines):
    words = get_words(page, line)
    print(
        f"...Line # {line_idx} has word count {len(words)} and text '{line.content}' "
        f"within bounding polygon '{line.polygon}'"
    )

    # Analyze words.
    for word in words:
        print(f"......Word '{word.content}' has a confidence of {word.confidence}")

Handgeschreven stijl voor tekstregels

Het antwoord .. /bevat het classificeren of elke tekstregel een handschriftstijl heeft of niet, samen met een betrouwbaarheidsscore. Voor meer informatie. Zie handgeschreven taalondersteuning. In het volgende voorbeeld ziet u een voorbeeld van een JSON-fragment.

"styles": [
{
    "confidence": 0.95,
    "spans": [
    {
        "offset": 509,
        "length": 24
    }
    "isHandwritten": true
    ]
}

Als u de mogelijkheid voor de invoegtoepassing lettertype/stijl inschakelt, krijgt u ook het resultaat lettertype/stijl als onderdeel van het styles object.

Selectiemarkeringen

Met het indelingsmodel worden ook selectiemarkeringen uit documenten geëxtraheerd. Geëxtraheerde selectiemarkeringen worden weergegeven in de pages verzameling voor elke pagina. Ze bevatten de begrenzing polygon, confidenceen selectie state (selected/unselected). De tekstweergave (dat wil gezegd :selected: en :unselected) wordt ook opgenomen als de beginindex (offset) en length die verwijst naar de eigenschap op het hoogste niveau content die de volledige tekst uit het document bevat.

# Analyze selection marks.
if page.selection_marks:
    for selection_mark in page.selection_marks:
        print(
            f"Selection mark is '{selection_mark.state}' within bounding polygon "
            f"'{selection_mark.polygon}' and has a confidence of {selection_mark.confidence}"
        )

Tabellen

Het extraheren van tabellen is een belangrijke vereiste voor het verwerken van documenten met grote hoeveelheden gegevens die doorgaans zijn opgemaakt als tabellen. Het indelingsmodel extraheert tabellen in de pageResults sectie van de JSON-uitvoer. Geëxtraheerde tabelgegevens.. /bevat het aantal kolommen en rijen, rijspanne en kolomspanne. Elke cel met de begrenzingsveelhoek wordt samen met informatie weergegeven, ongeacht of het gebied wordt herkend als een columnHeader of niet. Het model ondersteunt het extraheren van tabellen die worden gedraaid. Elke tabelcel bevat de rij- en kolomindex en begrenzingspogoncoördinaten. Voor de celtekst voert het model de informatie uit die de span beginindex (offset) bevat. Het model voert ook de length inhoud op het hoogste niveau uit die de volledige tekst uit het document bevat.

Hier volgen enkele factoren die u moet overwegen bij het gebruik van de mogelijkheid voor het extraheren van balen van documentinformatie:

  • Zijn de gegevens die u wilt ophalen als een tabel en is de tabelstructuur zinvol?

  • Kunnen de gegevens in een tweedimensionaal raster passen als de gegevens niet in een tabelindeling zijn opgenomen?

  • Beslaan uw tabellen meerdere pagina's? Zo ja, om te voorkomen dat u alle pagina's moet labelen, splitst u het PDF-bestand in pagina's voordat u het naar Document Intelligence verzendt. Na de analyse worden de pagina's na de analyse verwerkt in één tabel.

  • Raadpleeg tabellaire velden als u aangepaste modellen maakt. Dynamische tabellen hebben een variabel aantal rijen voor elke kolom. Vaste tabellen hebben een constant aantal rijen voor elke kolom.

Notitie

  • Tabelanalyse wordt niet ondersteund als het invoerbestand XLSX is.
  • Vanaf 2024-07-31-preview hebben de begrenzingsregio's voor afbeeldingen en tabellen alleen betrekking op de kerninhoud en sluiten het bijbehorende bijschrift en voetnoten uit.
if result.tables:
    for table_idx, table in enumerate(result.tables):
        print(f"Table # {table_idx} has {table.row_count} rows and " f"{table.column_count} columns")
        if table.bounding_regions:
            for region in table.bounding_regions:
                print(f"Table # {table_idx} location on page: {region.page_number} is {region.polygon}")
        # Analyze cells.
        for cell in table.cells:
            print(f"...Cell[{cell.row_index}][{cell.column_index}] has text '{cell.content}'")
            if cell.bounding_regions:
                for region in cell.bounding_regions:
                print(f"...content on page {region.page_number} is within bounding polygon '{region.polygon}'")

Uitvoer naar markdown-indeling

De Indelings-API kan de geëxtraheerde tekst uitvoeren in markdown-indeling. Gebruik de outputContentFormat=markdown opdracht om de uitvoerindeling in Markdown op te geven. De markdown-inhoud wordt uitgevoerd als onderdeel van de content sectie.

Notitie

Vanaf 2024-07-31-preview wordt de weergave van tabellen gewijzigd in HTML-tabellen om het weergeven van samengevoegde cellen, kopteksten met meerdere rijen, enzovoort mogelijk te maken. Een andere gerelateerde wijziging is het gebruik van Unicode-selectievakjetekens ☒ en ☐ voor selectiemarkeringen in plaats van :selected: en :unselected:. Houd er rekening mee dat de inhoud van selectiemarkeringsvelden :selected bevat, ook al verwijzen de spanten naar Unicode-tekens in de span span op het hoogste niveau.

document_intelligence_client = DocumentIntelligenceClient(endpoint=endpoint, credential=AzureKeyCredential(key))
poller = document_intelligence_client.begin_analyze_document(
    "prebuilt-layout",
    AnalyzeDocumentRequest(url_source=url),
    output_content_format=ContentFormat.MARKDOWN,
)

Cijfers

Afbeeldingen (grafieken, afbeeldingen) in documenten spelen een cruciale rol bij het aanvullen en verbeteren van de tekstuele inhoud, waardoor visuele weergaven worden geboden die helpen bij het begrijpen van complexe informatie. Het afbeeldingsobject dat door het indelingsmodel wordt gedetecteerd, heeft belangrijke eigenschappen, zoals boundingRegions (de ruimtelijke locaties van de afbeelding op de documentpagina's, inclusief het paginanummer en de veelhoekcoördinaten die de grens van de afbeelding aangeven), spans (details van de tekst die betrekking heeft op de afbeelding, waarbij de offsets en lengten binnen de tekst van het document worden opgegeven. Deze verbinding helpt bij het koppelen van de afbeelding aan de relevante tekstcontext( elements de id's voor tekstelementen of alinea's in het document die gerelateerd zijn aan of beschrijven de afbeelding) en caption of er een is.

Wanneer output=figures wordt opgegeven tijdens de eerste analysebewerking, genereert de service bijgesneden afbeeldingen voor alle gedetecteerde afbeeldingen die toegankelijk zijn via /analyeResults/{resultId}/figures/{figureId}. FigureId is opgenomen in elk afbeeldingsobject, volgens een niet-gedocumenteerde conventie van {pageNumber}.{figureIndex} waar figureIndex het opnieuw wordt ingesteld op één per pagina.

Notitie

Vanaf 2024-07-31-preview hebben de begrenzingsregio's voor afbeeldingen en tabellen alleen betrekking op de kerninhoud en sluiten het bijbehorende bijschrift en voetnoten uit.

# Analyze figures.
if result.figures:
    for figures_idx,figures in enumerate(result.figures):
        print(f"Figure # {figures_idx} has the following spans:{figures.spans}")
        for region in figures.bounding_regions:
            print(f"Figure # {figures_idx} location on page:{region.page_number} is within bounding polygon '{region.polygon}'")

Secties

Hiërarchische documentstructuuranalyse is cruciaal bij het organiseren, begrijpen en verwerken van uitgebreide documenten. Deze aanpak is essentieel voor het semantisch segmenteren van lange documenten om het begrip te verbeteren, navigatie te vergemakkelijken en het ophalen van informatie te verbeteren. De komst van Het ophalen van Augmented Generation (RAG) in documentgeneratieve AI onderstreept de betekenis van hiërarchische documentstructuuranalyse. Het indelingsmodel ondersteunt secties en subsecties in de uitvoer, waarmee de relatie tussen secties en objecten in elke sectie wordt geïdentificeerd. De hiërarchische structuur wordt in elements elke sectie onderhouden. U kunt uitvoer gebruiken om de Markdown-indeling te gebruiken om eenvoudig de secties en subsecties in Markdown op te halen.

document_intelligence_client = DocumentIntelligenceClient(endpoint=endpoint, credential=AzureKeyCredential(key))
poller = document_intelligence_client.begin_analyze_document(
    "prebuilt-layout",
    AnalyzeDocumentRequest(url_source=url),
    output_content_format=ContentFormat.MARKDOWN,
)

Deze inhoud is van toepassing op: vinkje v3.1 (GA) | Nieuwste versie:paars vinkje v4.0 (preview) | Vorige versies: blauw-vinkje v3.0blauw-vinkje v2.1

Deze inhoud is van toepassing op: vinkje v3.0 (GA) | Nieuwste versies:paars vinkje v4.0 (preview)paars vinkje v3.1 | Vorige versie: blauw-vinkje v2.1

Deze inhoud is van toepassing op: vinkje v2.1 | Nieuwste versie: blauw-vinkje v4.0 (preview)

Document Intelligence-indelingsmodel is een geavanceerde machine learning-API voor documentanalyse die beschikbaar is in de Document Intelligence-cloud. Hiermee kunt u documenten in verschillende indelingen opnemen en gestructureerde gegevensweergaven van de documenten retourneren. Het combineert een verbeterde versie van onze krachtige OCR-mogelijkheden (Optical Character Recognition) met deep learning-modellen om tekst, tabellen, selectiemarkeringen en documentstructuur te extraheren.

Analyse van documentindeling

De indelingsanalyse van documentstructuur is het analyseren van een document om interessegebieden en hun onderlinge relaties te extraheren. Het doel is om tekst en structurele elementen van de pagina te extraheren om betere semantische begripsmodellen te maken. Er zijn twee typen rollen in een documentindeling:

  • Geometrische rollen: Tekst, tabellen, afbeeldingen en selectiemarkeringen zijn voorbeelden van geometrische rollen.
  • Logische rollen: Titels, koppen en voetteksten zijn voorbeelden van logische rollen van teksten.

In de volgende afbeelding ziet u de typische onderdelen in een afbeelding van een voorbeeldpagina.

Afbeelding van voorbeeld van documentindeling.

Ontwikkelingsopties

Document Intelligence v3.1 ondersteunt de volgende hulpprogramma's, toepassingen en bibliotheken:

Functie Resources Model-id
Indelingsmodel Document Intelligence Studio
REST API
C# SDK
• Python SDK
Java SDK
JavaScript SDK
vooraf gedefinieerde indeling

Document Intelligence v3.0 ondersteunt de volgende hulpprogramma's, toepassingen en bibliotheken:

Functie Resources Model-id
Indelingsmodel Document Intelligence Studio
REST API
C# SDK
• Python SDK
Java SDK
JavaScript SDK
vooraf gedefinieerde indeling

Document Intelligence v2.1 ondersteunt de volgende hulpprogramma's, toepassingen en bibliotheken:

Functie Resources
Indelingsmodel Hulpprogramma
voor documentinformatielabels• REST API
• Sdk
voor clientbibliotheek•
Document Intelligence Docker-container

Vereisten voor invoer

  • Ondersteunde bestandsindelingen:

    Modelleren PDF Afbeelding:
    JPEG/JPG, PNG, BMP, , TIFFHEIF
    Microsoft Office:
    Word (), Excel (XLSXDOCX), PowerPoint (PPTX), HTML
    Read
    Indeling ✔ (2024-07-31-preview, 2024-02-29-preview, 2023-10-31-preview)
    Algemeen document
    Vooraf gebouwd
    Aangepaste extractie
    Aangepaste classificatie ✔ (2024-07-31-preview, 2024-02-29-preview)
  • Geef voor de beste resultaten één duidelijke foto of een hoogwaardige scan per document op.

  • Voor PDF en TIFF kunnen maximaal 2000 pagina's worden verwerkt (met een gratis abonnement worden alleen de eerste twee pagina's verwerkt).

  • De bestandsgrootte voor het analyseren van documenten is 500 MB voor betaalde (S0) laag en 4 MB voor gratis (F0).

  • De afmetingen van de afbeelding moeten tussen 50 x 50 pixels en 10.000 pixels x 10.000 pixels zijn.

  • Als uw PDF's zijn vergrendeld met een wachtwoord, moet u de vergrendeling verwijderen voordat u ze indient.

  • De minimale hoogte van de tekst die moet worden geëxtraheerd, is 12 pixels voor een afbeelding van 1024 x 768 pixels. Deze dimensie komt overeen met punttekst 8 op 150 punten per inch (DPI).

  • Voor aangepaste modeltraining is het maximum aantal pagina's voor trainingsgegevens 500 voor het aangepaste sjabloonmodel en 50.000 voor het aangepaste neurale model.

    • Voor het trainen van aangepaste extractiemodellen is de totale grootte van trainingsgegevens 50 MB voor het sjabloonmodel en 1 GB voor het neurale model.

    • Voor het trainen van aangepast classificatiemodel is 1 de totale grootte van trainingsgegevens GB met maximaal 10.000 pagina's. Voor 2024-07-31-preview en hoger is 2 de totale grootte van trainingsgegevens GB met maximaal 10.000 pagina's.

  • Ondersteunde bestandsindelingen: JPEG, PNG, PDF en TIFF.
  • Ondersteund aantal pagina's: voor PDF en TIFF worden maximaal 2000 pagina's verwerkt. Voor abonnees van de gratis laag worden alleen de eerste twee pagina's verwerkt.
  • Ondersteunde bestandsgrootte: de bestandsgrootte moet kleiner zijn dan 50 MB en afmetingen ten minste 50 x 50 pixels en maximaal 10.000 x 10.000 pixels.

Aan de slag met het indelingsmodel

Bekijk hoe gegevens, waaronder tekst, tabellen, tabelkoppen, selectiemarkeringen en structuurgegevens worden geëxtraheerd uit documenten met behulp van Document Intelligence. U hebt de volgende resources nodig:

  • Een Azure-abonnement: u kunt er gratis een maken.

  • Een Document Intelligence-exemplaar in Azure Portal. U kunt de gratis prijscategorie (F0) gebruiken om de service te proberen. Nadat uw resource is geïmplementeerd, selecteert u Ga naar de resource om uw sleutel en eindpunt op te halen.

Schermopname van sleutels en eindpuntlocatie in Azure Portal.

Notitie

Document Intelligence Studio is beschikbaar met v3.0-API's en latere versies.

Voorbeelddocument verwerkt met Document Intelligence Studio

Schermopname van 'Indeling' voor het verwerken van een krantenpagina in Document Intelligence Studio.

  1. Selecteer Indeling op de startpagina van Document Intelligence Studio.

  2. U kunt het voorbeelddocument analyseren of uw eigen bestanden uploaden.

  3. Selecteer de knop Analyse uitvoeren en configureer indien nodig de opties analyseren:

    Schermopname van de knoppen Analyse uitvoeren en Opties analyseren in Document Intelligence Studio.

Document Intelligence-voorbeeldhulpprogramma voor labelen

  1. Navigeer naar het voorbeeldhulpprogramma Document Intelligence.

  2. Selecteer Op de startpagina van het voorbeeldhulpprogramma de optie Indeling gebruiken om tekst, tabellen en selectiemarkeringen op te halen.

    Schermopname van verbindingsinstellingen voor het documentinformatie-indelingsproces.

  3. Plak in het veld Eindpunt van de Document Intelligence-service het eindpunt dat u hebt verkregen met uw Document Intelligence-abonnement.

  4. Plak in het sleutelveld de sleutel die u hebt verkregen uit uw Document Intelligence-resource.

  5. Selecteer in het veld Bron de URL in de vervolgkeuzelijst U kunt ons voorbeelddocument gebruiken:

  6. Selecteer Indeling uitvoeren. Met het hulpprogramma Document Intelligence-voorbeeldlabels wordt de Analyze Layout API aangeroepen om het document te analyseren.

    Schermopname van het vervolgkeuzevenster Indeling.

  7. Bekijk de resultaten: bekijk de gemarkeerde geëxtraheerde tekst, gedetecteerde selectiemarkeringen en gedetecteerde tabellen.

    Schermopname van verbindingsinstellingen voor het hulpprogramma Document Intelligence-voorbeeldlabels.

Ondersteunde talen en landinstellingen

Zie onze pagina Taalondersteuning: documentanalysemodellen voor een volledige lijst met ondersteunde talen.

Document Intelligence v2.1 ondersteunt de volgende hulpprogramma's, toepassingen en bibliotheken:

Functie Resources
Indelings-API Hulpprogramma
voor documentinformatielabels• REST API
• Sdk
voor clientbibliotheek•
Document Intelligence Docker-container

Gegevensextractie

Met het indelingsmodel worden tekst, selectiemarkeringen, tabellen, alinea's en alineatypen (roles) uit uw documenten geëxtraheerd.

Notitie

Versies 2024-02-29-preview, 2023-10-31-previewen later ondersteunen Microsoft Office-bestanden (DOCX, XLSX, PPTX) en HTML-bestanden. De volgende functies worden niet ondersteund:

  • Er zijn geen hoeken, breedte/hoogte en eenheid voor elk paginaobject.
  • Voor elk gedetecteerd object is er geen begrenzings- of begrenzingsregio.
  • Paginabereik (pages) wordt niet ondersteund als parameter.
  • Geen lines object.

Pagina's

De verzameling pagina's is een lijst met pagina's in het document. Elke pagina wordt sequentieel weergegeven in het document en .. /bevat de richtingshoek die aangeeft of de pagina wordt gedraaid en de breedte en hoogte (afmetingen in pixels). De pagina-eenheden in de modeluitvoer worden berekend zoals weergegeven:

Bestandsindeling Berekende pagina-eenheid Totaal aantal pagina's
Afbeeldingen (JPEG/JPG, PNG, BMP, HEIF) Elke afbeelding = 1 pagina-eenheid Totaal aantal afbeeldingen
PDF Elke pagina in de PDF = 1 pagina-eenheid Totaal aantal pagina's in het PDF-bestand
TIFF Elke afbeelding in de TIFF = 1 pagina-eenheid Totaal aantal afbeeldingen in de TIFF
Word (DOCX) Maximaal 3000 tekens = 1 pagina-eenheid, ingesloten of gekoppelde afbeeldingen worden niet ondersteund Totaal aantal pagina's van maximaal 3000 tekens per pagina
Excel (XLSX) Elk werkblad = 1 pagina-eenheid, ingesloten of gekoppelde afbeeldingen wordt niet ondersteund Totaal aantal werkbladen
PowerPoint (PPTX) Elke dia = 1 pagina-eenheid, ingesloten of gekoppelde afbeeldingen wordt niet ondersteund Totaal aantal dia's
HTML Maximaal 3000 tekens = 1 pagina-eenheid, ingesloten of gekoppelde afbeeldingen worden niet ondersteund Totaal aantal pagina's van maximaal 3000 tekens per pagina
"pages": [
    {
        "pageNumber": 1,
        "angle": 0,
        "width": 915,
        "height": 1190,
        "unit": "pixel",
        "words": [],
        "lines": [],
        "spans": []
    }
]
# Analyze pages.
for page in result.pages:
    print(f"----Analyzing layout from page #{page.page_number}----")
    print(
        f"Page has width: {page.width} and height: {page.height}, measured with unit: {page.unit}"
    )

Geselecteerde pagina's uit documenten extraheren

Voor grote documenten met meerdere pagina's gebruikt u de pages queryparameter om specifieke paginanummers of paginabereiken aan te geven voor tekstextractie.

Leden

Met het indelingsmodel worden alle geïdentificeerde tekstblokken in de verzameling geëxtraheerd als een object op het paragraphs hoogste niveau onder analyzeResults. Elke vermelding in deze verzameling vertegenwoordigt een tekstblok en .. /bevat de geëxtraheerde tekst alscontenten de begrenzingscoördinaten polygon . De span informatie verwijst naar het tekstfragment in de eigenschap op het hoogste niveau content die de volledige tekst uit het document bevat.


"paragraphs": [
    {
        "spans": [],
        "boundingRegions": [],
        "content": "While healthcare is still in the early stages of its Al journey, we are seeing pharmaceutical and other life sciences organizations making major investments in Al and related technologies.\" TOM LAWRY | National Director for Al, Health and Life Sciences | Microsoft"
    }
]

Alinearollen

Met de nieuwe op machine learning gebaseerde paginaobjectdetectie worden logische rollen geëxtraheerd, zoals titels, sectiekoppen, paginakopteksten, paginavoetteksten en meer. Met het Document Intelligence-indelingsmodel worden bepaalde tekstblokken in de paragraphs verzameling toegewezen met hun gespecialiseerde rol of type dat door het model wordt voorspeld. U kunt het beste alinearollen met ongestructureerde documenten gebruiken om inzicht te verkrijgen in de indeling van de geëxtraheerde inhoud voor een uitgebreidere semantische analyse. De volgende alinearollen worden ondersteund:

Voorspelde rol Beschrijving Ondersteunde bestandstypen
title De hoofdkoppen op de pagina pdf, image, docx, pptx, xlsx, html
sectionHeading Een of meer subkoppen op de pagina pdf, image, docx, xlsx, html
footnote Tekst onder aan de pagina pdf, afbeelding
pageHeader Tekst aan de bovenrand van de pagina pdf, afbeelding, docx
pageFooter Tekst aan de onderkant van de pagina pdf, afbeelding, docx, pptx, html
pageNumber Paginanummer pdf, afbeelding
{
    "paragraphs": [
                {
                    "spans": [],
                    "boundingRegions": [],
                    "role": "title",
                    "content": "NEWS TODAY"
                },
                {
                    "spans": [],
                    "boundingRegions": [],
                    "role": "sectionHeading",
                    "content": "Mirjam Nilsson"
                }
    ]
}

Tekst, regels en woorden

Het documentindelingsmodel in Document Intelligence extraheert tekst in afdruk- en handgeschreven stijl als lines en words. De styles verzameling .. /bevat een handgeschreven stijl voor lijnen indien gedetecteerd, samen met de spanten die verwijzen naar de bijbehorende tekst. Deze functie is van toepassing op ondersteunde handgeschreven talen.

Voor Microsoft Word, Excel, PowerPoint en HTML halen documentinformatieversies 2024-02-29-preview en 2023-10-31-preview-indelingsmodel alle ingesloten tekst op. Teksten worden geëxtraheerd als woorden en alinea's. Ingesloten afbeeldingen worden niet ondersteund.

"words": [
    {
        "content": "While",
        "polygon": [],
        "confidence": 0.997,
        "span": {}
    },
],
"lines": [
    {
        "content": "While healthcare is still in the early stages of its Al journey, we",
        "polygon": [],
        "spans": [],
    }
]
# Analyze lines.
for line_idx, line in enumerate(page.lines):
    words = line.get_words()
    print(
        f"...Line # {line_idx} has word count {len(words)} and text '{line.content}' "
        f"within bounding polygon '{format_polygon(line.polygon)}'"
    )

    # Analyze words.
    for word in words:
        print(
            f"......Word '{word.content}' has a confidence of {word.confidence}"
        )

Handgeschreven stijl voor tekstregels

Het antwoord .. /bevat het classificeren of elke tekstregel een handschriftstijl heeft of niet, samen met een betrouwbaarheidsscore. Voor meer informatie. Zie handgeschreven taalondersteuning. In het volgende voorbeeld ziet u een voorbeeld van een JSON-fragment.

"styles": [
{
    "confidence": 0.95,
    "spans": [
    {
        "offset": 509,
        "length": 24
    }
    "isHandwritten": true
    ]
}

Als u de mogelijkheid voor de invoegtoepassing lettertype/stijl inschakelt, krijgt u ook het resultaat lettertype/stijl als onderdeel van het styles object.

Selectiemarkeringen

Met het indelingsmodel worden ook selectiemarkeringen uit documenten geëxtraheerd. Geëxtraheerde selectiemarkeringen worden weergegeven in de pages verzameling voor elke pagina. Ze bevatten de begrenzing polygon, confidenceen selectie state (selected/unselected). De tekstweergave (dat wil gezegd :selected: en :unselected) wordt ook opgenomen als de beginindex (offset) en length die verwijst naar de eigenschap op het hoogste niveau content die de volledige tekst uit het document bevat.

{
    "selectionMarks": [
        {
            "state": "unselected",
            "polygon": [],
            "confidence": 0.995,
            "span": {
                "offset": 1421,
                "length": 12
            }
        }
    ]
}
# Analyze selection marks.
for selection_mark in page.selection_marks:
    print(
        f"Selection mark is '{selection_mark.state}' within bounding polygon "
        f"'{format_polygon(selection_mark.polygon)}' and has a confidence of {selection_mark.confidence}"
    )

Tabellen

Het extraheren van tabellen is een belangrijke vereiste voor het verwerken van documenten met grote hoeveelheden gegevens die doorgaans zijn opgemaakt als tabellen. Het indelingsmodel extraheert tabellen in de pageResults sectie van de JSON-uitvoer. Geëxtraheerde tabelgegevens.. /bevat het aantal kolommen en rijen, rijspanne en kolomspanne. Elke cel met de begrenzingsveelhoek wordt samen met informatie weergegeven, ongeacht of het gebied wordt herkend als een columnHeader of niet. Het model ondersteunt het extraheren van tabellen die worden gedraaid. Elke tabelcel bevat de rij- en kolomindex en begrenzingspogoncoördinaten. Voor de celtekst voert het model de informatie uit die de span beginindex (offset) bevat. Het model voert ook de length inhoud op het hoogste niveau uit die de volledige tekst uit het document bevat.

Hier volgen enkele factoren die u moet overwegen bij het gebruik van de mogelijkheid voor het extraheren van balen van documentinformatie:

  • Zijn de gegevens die u wilt ophalen als een tabel en is de tabelstructuur zinvol?

  • Kunnen de gegevens in een tweedimensionaal raster passen als de gegevens niet in een tabelindeling zijn opgenomen?

  • Beslaan uw tabellen meerdere pagina's? Zo ja, om te voorkomen dat u alle pagina's moet labelen, splitst u het PDF-bestand in pagina's voordat u het naar Document Intelligence verzendt. Na de analyse worden de pagina's na de analyse verwerkt in één tabel.

  • Raadpleeg tabellaire velden als u aangepaste modellen maakt. Dynamische tabellen hebben een variabel aantal rijen voor elke kolom. Vaste tabellen hebben een constant aantal rijen voor elke kolom.

Notitie

  • Tabelanalyse wordt niet ondersteund als het invoerbestand XLSX is.
  • Vanaf 2024-07-31-preview hebben de begrenzingsregio's voor afbeeldingen en tabellen alleen betrekking op de kerninhoud en sluiten het bijbehorende bijschrift en voetnoten uit.
{
    "tables": [
        {
            "rowCount": 9,
            "columnCount": 4,
            "cells": [
                {
                    "kind": "columnHeader",
                    "rowIndex": 0,
                    "columnIndex": 0,
                    "columnSpan": 4,
                    "content": "(In millions, except earnings per share)",
                    "boundingRegions": [],
                    "spans": []
                    },
            ]
        }
    ]
}

# Analyze tables.
for table_idx, table in enumerate(result.tables):
    print(
        f"Table # {table_idx} has {table.row_count} rows and "
        f"{table.column_count} columns"
    )
    for region in table.bounding_regions:
        print(
            f"Table # {table_idx} location on page: {region.page_number} is {format_polygon(region.polygon)}"
        )
    for cell in table.cells:
        print(
            f"...Cell[{cell.row_index}][{cell.column_index}] has text '{cell.content}'"
        )
        for region in cell.bounding_regions:
            print(
                f"...content on page {region.page_number} is within bounding polygon '{format_polygon(region.polygon)}'"
            )

Aantekeningen (alleen beschikbaar in 2023-02-28-preview API.)

Het indelingsmodel extraheert aantekeningen in documenten, zoals controles en kruisingen. Het antwoord .. /bevat het soort aantekening, samen met een betrouwbaarheidsscore en begrenzingsveelhoek.

    {
    "pages": [
    {
        "annotations": [
        {
            "kind": "cross",
            "polygon": [...],
            "confidence": 1
        }
        ]
    }
    ]
}

Uitvoer van natuurlijke leesvolgorde (alleen Latijns)

U kunt de volgorde opgeven waarin de tekstregels worden uitgevoerd met de readingOrder queryparameter. Gebruik natural deze functie voor een meer mensvriendelijke uitvoer van leesvolgorde, zoals wordt weergegeven in het volgende voorbeeld. Deze functie wordt alleen ondersteund voor Latijnse talen.

Schermopname van 'layout' model voor het verwerken van leesvolgordes.

Paginanummers of bereiken selecteren voor tekstextractie

Voor grote documenten met meerdere pagina's gebruikt u de pages queryparameter om specifieke paginanummers of paginabereiken aan te geven voor tekstextractie. In het volgende voorbeeld ziet u een document met 10 pagina's, met tekst die voor beide gevallen is geëxtraheerd: alle pagina's (1-10) en geselecteerde pagina's (3-6).

Schermafbeelding van de uitvoer van de geselecteerde pagina's van het indelingsmodel.

De bewerking Resultaat van indeling Ophalen analyseren

De tweede stap is het aanroepen van de bewerking Get Analyze Layout Result . Deze bewerking wordt gebruikt als invoer van de resultaat-id die de Analyze Layout bewerking heeft gemaakt. Het retourneert een JSON-antwoord dat een statusveld bevat met de volgende mogelijke waarden.

Veld Type Mogelijke waarden
status tekenreeks notStarted: De analysebewerking is niet gestart.

running: De analysebewerking wordt uitgevoerd.

failed: de analysebewerking is mislukt.

succeeded: de analysebewerking is voltooid.

Roep deze bewerking iteratief aan totdat deze de succeeded waarde retourneert. Gebruik een interval van 3 tot 5 seconden om te voorkomen dat de aanvragen per seconde (RPS) worden overschreden.

Wanneer het statusveld de succeeded waarde heeft, wordt het JSON-antwoord .. /bevat de geëxtraheerde indeling, tekst, tabellen en selectiemarkeringen. De geëxtraheerde gegevens.. /bevat geëxtraheerde tekstregels en woorden, begrenzingsvakken, tekstuitzicht met handgeschreven indicatie, tabellen en selectiemarkeringen met geselecteerde/niet-geselecteerd aangegeven.

Handgeschreven classificatie voor tekstregels (alleen Latijns)

Het antwoord .. /bevat het classificeren of elke tekstregel een handschriftstijl heeft of niet, samen met een betrouwbaarheidsscore. Deze functie wordt alleen ondersteund voor Latijnse talen. In het volgende voorbeeld ziet u de handgeschreven classificatie voor de tekst in de afbeelding.

Schermopname van het handschriftclassificatieproces van het indelingsmodel.

Voorbeeld van JSON-uitvoer

Het antwoord op de bewerking Resultaat van indeling Ophalen analyseren is een gestructureerde weergave van het document met alle geëxtraheerde informatie. Zie hier voor een voorbeelddocumentbestand en de uitvoer van de indeling met gestructureerde uitvoervoorbeelden.

De JSON-uitvoer bestaat uit twee delen:

  • readResults het knooppunt bevat alle herkende tekst en selectiemarkering. De hiërarchie van de tekstpresentatie is pagina, vervolgens regel en vervolgens afzonderlijke woorden.
  • pageResults het knooppunt bevat de tabellen en cellen die zijn geëxtraheerd met hun begrenzingsvakken, betrouwbaarheid en een verwijzing naar de regels en woorden in het veld readResults.

Voorbeelduitvoer

Sms verzenden

Met de Indelings-API wordt tekst geëxtraheerd uit documenten en afbeeldingen met meerdere teksthoeken en kleuren. Het accepteert foto's van documenten, faxen, afgedrukte en/of handgeschreven (alleen Engelstalige) tekst en gemengde modi. Tekst wordt geëxtraheerd met informatie over regels, woorden, begrenzingsvakken, betrouwbaarheidsscores en stijl (handgeschreven of andere). Alle tekstinformatie wordt opgenomen in de readResults sectie van de JSON-uitvoer.

Tabellen met kopteksten

Indelings-API extraheert tabellen in de pageResults sectie van de JSON-uitvoer. Documenten kunnen worden gescand, gefotografeerd of gedigitaliseerd. Tabellen kunnen complex zijn met samengevoegde cellen of kolommen, met of zonder randen, en met oneven hoeken. Geëxtraheerde tabelgegevens.. /bevat het aantal kolommen en rijen, rijspanne en kolomspanne. Elke cel met het begrenzingsvak wordt uitgevoerd, samen met of het gebied wordt herkend als onderdeel van een koptekst of niet. Het voorspelde koptekstcellen van het model kunnen meerdere rijen omvatten en zijn niet noodzakelijkerwijs de eerste rijen in een tabel. Ze werken ook met gedraaide tabellen. Elke tabelcel ook .. /bevat de volledige tekst met verwijzingen naar de afzonderlijke woorden in de readResults sectie.

Voorbeeld van tabellen

Selectiemarkeringen

Met de Indelings-API worden ook selectiemarkeringen uit documenten geëxtraheerd. Uitgepakte selectiemarkeringen bevatten het begrenzingsvak, betrouwbaarheid en status (geselecteerd/uitgeschakeld). Informatie over selectiemarkeringen wordt geëxtraheerd in de readResults sectie van de JSON-uitvoer.

Migratiehandleiding

  • Volg onze migratiehandleiding voor Document Intelligence v3.1 voor meer informatie over het gebruik van de versie v3.1 in uw toepassingen en werkstromen.

Volgende stappen