Dela via


Layoutmodell för dokumentinformation

Viktigt!

  • Versioner av den offentliga förhandsversionen av Document Intelligence ger tidig åtkomst till funktioner som är i aktiv utveckling. Funktioner, metoder och processer kan ändras, före allmän tillgänglighet (GA), baserat på användarfeedback.
  • Den offentliga förhandsversionen av Dokumentinformationsklientbiblioteken är som standard REST API version 2024-07-31-preview.
  • Den offentliga förhandsversionen 2024-07-31-preview är för närvarande endast tillgänglig i följande Azure-regioner. Observera att modellen för anpassad generativ (extrahering av dokumentfält) i AI Studio endast är tillgänglig i regionen USA, norra centrala:
    • USA, östra
    • USA, västra 2
    • Europa, västra
    • USA, norra centrala

Det här innehållet gäller för: Bockmarkering v4.0 (förhandsversion) | Tidigare versioner:blå bockmarkering v3.1 (GA) blå bockmarkering v3.0 (GA)blå bockmarkering v2.1 (GA)

Layoutmodellen för dokumentinformation är ett avancerat maskininlärningsbaserat dokumentanalys-API som är tillgängligt i document intelligence-molnet. Det gör att du kan ta dokument i olika format och returnera strukturerade datarepresentationer av dokumenten. Den kombinerar en förbättrad version av våra kraftfulla OCR-funktioner (Optisk teckenigenkänning) med djupinlärningsmodeller för att extrahera text, tabeller, urvalsmarkeringar och dokumentstruktur.

Analys av dokumentlayout (v4)

Layoutanalys av dokumentstruktur är en process för att analysera ett dokument för att extrahera intressanta regioner och deras relationer. Målet är att extrahera text och strukturella element från sidan för att skapa bättre semantiska förståelsemodeller. Det finns två typer av roller i en dokumentlayout:

  • Geometriska roller: Text, tabeller, siffror och urvalsmarkeringar är exempel på geometriska roller.
  • Logiska roller: Rubriker, rubriker och sidfötter är exempel på logiska roller i texter.

Följande bild visar de typiska komponenterna i en bild av en exempelsida.

Bild av dokumentlayoutexempel.

Utvecklingsalternativ (v4)

Document Intelligence v4.0 (2024-07-31-preview) stöder följande verktyg, program och bibliotek:

Funktion Resurser Model ID
Layoutmodell Document Intelligence Studio
REST API
C# SDK
Python SDK
Java SDK
JavaScript SDK
fördefinierad layout

Indatakrav (v4)

  • Filformat som stöds:

    Modell PDF Bild:
    JPEG/JPG, PNG, BMP, , TIFFHEIF
    Microsoft Office:
    Word (DOCX), Excel (XLSX), PowerPoint (PPTX), HTML
    Lästa
    Layout ✔ (2024-07-31-preview, 2024-02-29-preview, 2023-10-31-preview)
    Allmänt dokument
    Inbyggda
    Anpassad extrahering
    Anpassad klassificering ✔ (2024-07-31-preview, 2024-02-29-preview)
  • För bästa resultat anger du ett tydligt foto eller en genomsökning av hög kvalitet per dokument.

  • För PDF och TIFF kan upp till 2 000 sidor bearbetas (med en prenumeration på den kostnadsfria nivån bearbetas endast de två första sidorna).

  • Filstorleken för att analysera dokument är 500 MB för betald (S0) nivå och 4 MB för den kostnadsfria nivån (F0).

  • Bilddimensioner måste vara mellan 50 bildpunkter x 50 bildpunkter och 10 000 bildpunkter x 10 000 bildpunkter.

  • Om dina PDF-filer är låsta med lösenord måste du ta bort låset innan du skickar filerna.

  • Den minsta höjden på texten som ska extraheras är 12 bildpunkter för en bild på 1 024 x 768 bildpunkter. Den här dimensionen motsvarar om 8 punkttext vid 150 punkter per tum (DPI).

  • För anpassad modellträning är det maximala antalet sidor för träningsdata 500 för den anpassade mallmodellen och 50 000 för den anpassade neurala modellen.

    • För anpassad extraheringsmodellträning är den totala storleken på träningsdata 50 MB för mallmodellen och 1 GB för den neurala modellen.

    • För anpassad klassificeringsmodellträning är 1 den totala storleken på träningsdata GB med högst 10 000 sidor. För förhandsversionen 2024-07-31 och senare är 2 den totala storleken på träningsdata GB med högst 10 000 sidor.

Kom igång med layoutmodell

Se hur data, inklusive text, tabeller, tabellrubriker, markeringsmarkeringar och strukturinformation extraheras från dokument med hjälp av dokumentinformation. Du behöver följande resurser:

  • En Azure-prenumeration – du kan skapa en kostnadsfritt.

  • En instans av dokumentinformation i Azure Portal. Du kan använda den kostnadsfria prisnivån (F0) för att prova tjänsten. När resursen har distribuerats väljer du Gå till resurs för att hämta din nyckel och slutpunkt.

    Skärmbild av nycklar och slutpunktsplats i Azure Portal.

Kommentar

Document Intelligence Studio är tillgängligt med v3.0 API:er och senare versioner.

Exempeldokument som bearbetas med Document Intelligence Studio

Skärmbild av

  1. På startsidan för Document Intelligence Studio väljer du Layout.

  2. Du kan analysera exempeldokumentet eller ladda upp dina egna filer.

  3. Välj knappen Kör analys och konfigurera vid behov alternativen Analysera:

    Skärmbild av knapparna Kör analys och Analysera alternativ i Document Intelligence Studio.

Språk och språk som stöds (ocr)

Se sidan Språkstöd – modeller för dokumentanalys för en fullständig lista över språk som stöds.

Extrahering av data (v4)

Layoutmodellen extraherar text, markeringsmarkeringar, tabeller, stycken och stycketyper (roles) från dina dokument.

Kommentar

Versioner 2024-02-29-preview, 2023-10-31-previewoch senare stöder Microsoft Office (DOCX-, XLSX-, PPTX- och HTML-filer). Följande funktioner stöds inte:

  • Det finns ingen vinkel, bredd/höjd och enhet för varje sidobjekt.
  • För varje objekt som identifieras finns det ingen avgränsande polygon eller avgränsningsregion.
  • Sidintervall (pages) stöds inte som en parameter.
  • Inget lines objekt.

Sidor

Sidsamlingen är en lista över sidor i dokumentet. Varje sida representeras sekventiellt i dokumentet och .. /innehåller orienteringsvinkeln som anger om sidan roteras och bredden och höjden (dimensioner i bildpunkter). Sidenheterna i modellutdata beräknas enligt följande:

Filformat Beräknad sidenhet Totalt antal sidor
Bilder (JPEG/JPG, PNG, BMP, HEIF) Varje bild = 1 sidenhet Totalt antal bilder
PDF Varje sida i PDF = 1 sidenhet Totalt antal sidor i PDF-filen
TIFF Varje bild i enheten TIFF = 1 sida Totalt antal bilder i TIFF
Word (DOCX) Upp till 3 000 tecken = en sidenhet, inbäddade eller länkade bilder stöds inte Totalt antal sidor på upp till 3 000 tecken vardera
Excel (XLSX) Varje kalkylblad = 1 sidenhet, inbäddade eller länkade bilder stöds inte Totalt antal kalkylblad
PowerPoint (PPTX) Varje bild = 1 sidenhet, inbäddade eller länkade bilder stöds inte Totalt antal bilder
HTML Upp till 3 000 tecken = en sidenhet, inbäddade eller länkade bilder stöds inte Totalt antal sidor på upp till 3 000 tecken vardera
# 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}")

Extrahera markerade sidor från dokument

För stora dokument med flera sidor använder du pages frågeparametern för att ange specifika sidnummer eller sidintervall för textextrahering.

Punkterna

Layoutmodellen extraherar alla identifierade textblock i paragraphs samlingen som ett objekt på översta nivån under analyzeResults. Varje post i den här samlingen representerar ett textblock och .. /innehåller den extraherade texten somcontentoch avgränsningskoordinaterna polygon . Informationen span pekar på textfragmentet i den översta egenskapen content som innehåller den fullständiga texten från dokumentet.


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

Styckeroller

Den nya maskininlärningsbaserade identifieringen av sidobjekt extraherar logiska roller som rubriker, avsnittsrubriker, sidhuvuden, sidfötter med mera. Layoutmodellen för dokumentinformation tilldelar vissa textblock i paragraphs samlingen med sin särskilda roll eller typ som förutsägs av modellen. Det är bäst att använda styckeroller med ostrukturerade dokument för att förstå layouten för det extraherade innehållet för en mer omfattande semantisk analys. Följande styckeroller stöds:

Förutsagd roll Beskrivning Filtyper som stöds
title Huvudrubrikerna på sidan pdf, image, docx, pptx, xlsx, html
sectionHeading Ett eller flera underrubriker på sidan pdf, image, docx, xlsx, html
footnote Text längst ned på sidan pdf, bild
pageHeader Text nära sidans övre kant pdf, image, docx
pageFooter Text nära sidans nederkant pdf, image, docx, pptx, html
pageNumber Sidnummer pdf, bild
{
    "paragraphs": [
                {
                    "spans": [],
                    "boundingRegions": [],
                    "role": "title",
                    "content": "NEWS TODAY"
                },
                {
                    "spans": [],
                    "boundingRegions": [],
                    "role": "sectionHeading",
                    "content": "Mirjam Nilsson"
                }
    ]
}

Text, rader och ord

Dokumentlayoutmodellen i Dokumentinformation extraherar utskrifts- och handskriven formatmallstext som lines och words. Samlingen styles .. /innehåller alla handskrivna formatmallar för rader om de identifieras tillsammans med intervallen som pekar på den associerade texten. Den här funktionen gäller för handskrivna språk som stöds.

För Microsoft Word, Excel, PowerPoint och HTML extraherar dokumentinformationsversionerna 2024-02-29-preview och 2023-10-31-preview layoutmodellen all inbäddad text som den är. Texter extraheras som ord och stycken. Inbäddade bilder stöds inte.

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

Handskriven stil för textrader

Svaret .. /inkluderar klassificering av om varje textrad har handskriftsstil eller inte, tillsammans med en konfidenspoäng. Mer information. Se Stöd för handskrivna språk. I följande exempel visas ett exempel på JSON-kodfragment.

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

Om du aktiverar funktionen för teckensnitt/formattillägg får du även teckensnitts-/formatmallsresultatet styles som en del av objektet.

Markeringsmarkeringar

Layoutmodellen extraherar också markeringsmarkeringar från dokument. Extraherade markeringsmarkeringar visas i pages samlingen för varje sida. De inkluderar avgränsningen polygon, confidenceoch markeringen state (selected/unselected). Textrepresentationen (d.v.s :selected: . och :unselected) ingår också som startindex (offset) och length som refererar till egenskapen på den översta nivån content som innehåller den fullständiga texten från dokumentet.

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

Tabeller

Att extrahera tabeller är ett viktigt krav för att bearbeta dokument som innehåller stora mängder data som vanligtvis formateras som tabeller. Layoutmodellen extraherar tabeller i pageResults avsnittet i JSON-utdata. Extraherad tabellinformation .. /innehåller antalet kolumner och rader, radintervall och kolumnintervall. Varje cell med sin avgränsningspolygon matas ut tillsammans med information om området identifieras som en columnHeader eller inte. Modellen stöder extrahering av tabeller som roteras. Varje tabellcell innehåller rad- och kolumnindex och avgränsningspolygonkoordinater. För celltexten matar modellen ut informationen span som innehåller startindexet (offset). Modellen matar också ut length innehållet på den översta nivån som innehåller den fullständiga texten från dokumentet.

Här följer några faktorer att tänka på när du använder funktionen för extrahering av dokumentinformationsbalar:

  • Är de data som du vill extrahera presenterade som en tabell och är tabellstrukturen meningsfull?

  • Kan data få plats i ett tvådimensionellt rutnät om data inte är i tabellformat?

  • Sträcker sig tabellerna över flera sidor? Om så är fallet, för att undvika att behöva märka alla sidor, delar du upp PDF-filen i sidor innan du skickar den till Dokumentinformation. Efter analysen bearbetar du sidorna till en enda tabell.

  • Se Tabellfält om du skapar anpassade modeller. Dynamiska tabeller har ett variabelt antal rader för varje kolumn. Fasta tabeller har ett konstant antal rader för varje kolumn.

Kommentar

  • Tabellanalys stöds inte om indatafilen är XLSX.
  • Från och med 2024-07-31-preview täcker avgränsningsregionerna för siffror och tabeller endast kärninnehållet och exkluderar tillhörande bildtexter och fotnoter.
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}'")

Utdata till markdown-format

Layout-API:et kan mata ut den extraherade texten i markdown-format. outputContentFormat=markdown Använd för att ange utdataformatet i markdown. Markdown-innehållet är utdata som en del av avsnittet content .

Kommentar

Från och med 2024-07-31-preview ändras representationen av tabeller till HTML-tabeller för att möjliggöra återgivning av sammanfogade celler, rubriker med flera rader osv. En annan relaterad ändring är att använda unicode-kryssrutor ☒ och ☐ för markeringsmarkeringar i stället för :selected: och :unselected:. Observera att det innebär att innehållet i markeringsmarkeringsfälten innehåller :selected: även om deras intervall refererar till Unicode-tecken i det översta intervallet.

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,
)

Siffror

Siffror (diagram, bilder) i dokument spelar en avgörande roll när det gäller att komplettera och förbättra textinnehållet, vilket ger visuella representationer som underlättar förståelsen av komplex information. Figurobjektet som identifieras av layoutmodellen har nyckelegenskaper som boundingRegions (figurens rumsliga platser på dokumentsidorna, inklusive sidnumret och polygonkoordinaterna som beskriver figurens gräns), spans (beskriver textintervallen som är relaterade till figuren och anger deras förskjutningar och längder i dokumentets text. Den här anslutningen hjälper till att associera figuren med dess relevanta textkontext), elements (identifierarna för textelement eller stycken i dokumentet som är relaterade till eller beskriver figuren) och caption om det finns några.

När output=figures anges under den inledande analysåtgärden genererar tjänsten beskurna bilder för alla identifierade siffror som kan nås via /analyeResults/{resultId}/figures/{figureId}. FigureId ingår i varje figurobjekt, enligt en odokumenterad konvention om {pageNumber}.{figureIndex} var figureIndex återställs till en per sida.

Kommentar

Från och med 2024-07-31-preview täcker avgränsningsregionerna för siffror och tabeller endast kärninnehållet och exkluderar tillhörande bildtexter och fotnoter.

# 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}'")

Avsnitt

Hierarkisk dokumentstrukturanalys är avgörande för att organisera, förstå och bearbeta omfattande dokument. Den här metoden är viktig för att semantiskt segmentera långa dokument för att öka förståelsen, underlätta navigeringen och förbättra informationshämtningen. Tillkomsten av RAG (Retrieval Augmented Generation) i dokumentgenerativ AI understryker betydelsen av hierarkisk dokumentstrukturanalys. Layoutmodellen stöder avsnitt och underavsnitt i utdata, som identifierar relationen mellan avsnitt och objekt i varje avsnitt. Den hierarkiska strukturen underhålls i elements varje avsnitt. Du kan använda utdata till markdown-format för att enkelt hämta avsnitten och underavsnitten i markdown.

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,
)

Det här innehållet gäller för: Bockmarkering v3.1 (GA) | Senaste version:lila bockmarkering v4.0 (förhandsversion) | Tidigare versioner: blå bockmarkering v3.0blå bockmarkering v2.1

Det här innehållet gäller för: Bockmarkering v3.0 (GA) | Senaste versioner: lila bockmarkering v4.0 (förhandsversion) lila bockmarkeringv3.1 | Tidigare version: blå bockmarkering v2.1

Det här innehållet gäller för: Bockmarkering v2.1 | Senaste version: blå bockmarkering v4.0 (förhandsversion)

Layoutmodellen för dokumentinformation är ett avancerat maskininlärningsbaserat dokumentanalys-API som är tillgängligt i document intelligence-molnet. Det gör att du kan ta dokument i olika format och returnera strukturerade datarepresentationer av dokumenten. Den kombinerar en förbättrad version av våra kraftfulla OCR-funktioner (Optisk teckenigenkänning) med djupinlärningsmodeller för att extrahera text, tabeller, urvalsmarkeringar och dokumentstruktur.

Analys av dokumentlayout

Layoutanalys av dokumentstruktur är en process för att analysera ett dokument för att extrahera intressanta regioner och deras relationer. Målet är att extrahera text och strukturella element från sidan för att skapa bättre semantiska förståelsemodeller. Det finns två typer av roller i en dokumentlayout:

  • Geometriska roller: Text, tabeller, siffror och urvalsmarkeringar är exempel på geometriska roller.
  • Logiska roller: Rubriker, rubriker och sidfötter är exempel på logiska roller i texter.

Följande bild visar de typiska komponenterna i en bild av en exempelsida.

Bild av dokumentlayoutexempel.

Utvecklingsalternativ

Document Intelligence v3.1 stöder följande verktyg, program och bibliotek:

Funktion Resurser Model ID
Layoutmodell Document Intelligence Studio
REST API
C# SDK
Python SDK
Java SDK
JavaScript SDK
fördefinierad layout

Document Intelligence v3.0 stöder följande verktyg, program och bibliotek:

Funktion Resurser Model ID
Layoutmodell Document Intelligence Studio
REST API
C# SDK
Python SDK
Java SDK
JavaScript SDK
fördefinierad layout

Document Intelligence v2.1 stöder följande verktyg, program och bibliotek:

Funktion Resurser
Layoutmodell Etikettverktyg
för dokumentinformation• REST API
Klientbiblioteks-SDK
Docker-container för dokumentinformation

Indatakrav

  • Filformat som stöds:

    Modell PDF Bild:
    JPEG/JPG, PNG, BMP, , TIFFHEIF
    Microsoft Office:
    Word (DOCX), Excel (XLSX), PowerPoint (PPTX), HTML
    Lästa
    Layout ✔ (2024-07-31-preview, 2024-02-29-preview, 2023-10-31-preview)
    Allmänt dokument
    Inbyggda
    Anpassad extrahering
    Anpassad klassificering ✔ (2024-07-31-preview, 2024-02-29-preview)
  • För bästa resultat anger du ett tydligt foto eller en genomsökning av hög kvalitet per dokument.

  • För PDF och TIFF kan upp till 2 000 sidor bearbetas (med en prenumeration på den kostnadsfria nivån bearbetas endast de två första sidorna).

  • Filstorleken för att analysera dokument är 500 MB för betald (S0) nivå och 4 MB för den kostnadsfria nivån (F0).

  • Bilddimensioner måste vara mellan 50 bildpunkter x 50 bildpunkter och 10 000 bildpunkter x 10 000 bildpunkter.

  • Om dina PDF-filer är låsta med lösenord måste du ta bort låset innan du skickar filerna.

  • Den minsta höjden på texten som ska extraheras är 12 bildpunkter för en bild på 1 024 x 768 bildpunkter. Den här dimensionen motsvarar om 8 punkttext vid 150 punkter per tum (DPI).

  • För anpassad modellträning är det maximala antalet sidor för träningsdata 500 för den anpassade mallmodellen och 50 000 för den anpassade neurala modellen.

    • För anpassad extraheringsmodellträning är den totala storleken på träningsdata 50 MB för mallmodellen och 1 GB för den neurala modellen.

    • För anpassad klassificeringsmodellträning är 1 den totala storleken på träningsdata GB med högst 10 000 sidor. För förhandsversionen 2024-07-31 och senare är 2 den totala storleken på träningsdata GB med högst 10 000 sidor.

  • Filformat som stöds: JPEG, PNG, PDF och TIFF.
  • Antal sidor som stöds: För PDF och TIFF bearbetas upp till 2 000 sidor. För prenumeranter på den kostnadsfria nivån bearbetas endast de två första sidorna.
  • Filstorlek som stöds: filstorleken måste vara mindre än 50 MB och dimensionerna minst 50 x 50 bildpunkter och högst 10 000 x 10 000 bildpunkter.

Kom igång med layoutmodell

Se hur data, inklusive text, tabeller, tabellrubriker, markeringsmarkeringar och strukturinformation extraheras från dokument med hjälp av dokumentinformation. Du behöver följande resurser:

  • En Azure-prenumeration – du kan skapa en kostnadsfritt.

  • En instans av dokumentinformation i Azure Portal. Du kan använda den kostnadsfria prisnivån (F0) för att prova tjänsten. När resursen har distribuerats väljer du Gå till resurs för att hämta din nyckel och slutpunkt.

Skärmbild av nycklar och slutpunktsplats i Azure Portal.

Kommentar

Document Intelligence Studio är tillgängligt med v3.0 API:er och senare versioner.

Exempeldokument som bearbetas med Document Intelligence Studio

Skärmbild av

  1. På startsidan för Document Intelligence Studio väljer du Layout.

  2. Du kan analysera exempeldokumentet eller ladda upp dina egna filer.

  3. Välj knappen Kör analys och konfigurera vid behov alternativen Analysera:

    Skärmbild av knapparna Kör analys och Analysera alternativ i Document Intelligence Studio.

Exempeletikettverktyg för dokumentinformation

  1. Gå till exempelverktyget för dokumentinformation.

  2. På exempelverktygets startsida väljer du Använd layout för att hämta text, tabeller och markeringsmarkeringar.

    Skärmbild av anslutningsinställningar för layoutprocessen för dokumentinformation.

  3. I fältet För dokumentinformationstjänstens slutpunkt klistrar du in slutpunkten som du fick med din Document Intelligence-prenumeration.

  4. I nyckelfältet klistrar du in den nyckel som du fick från dokumentinformationsresursen.

  5. I fältet Källa väljer du URL på den nedrullningsbara menyn Du kan använda vårt exempeldokument:

  6. Välj Kör layout. Verktyget Exempeletiketter för dokumentinformation anropar API:et Analyze Layout för att analysera dokumentet.

    Skärmbild av listrutan Layout.

  7. Visa resultatet – se den markerade extraherade texten, identifierade markeringsmarkeringar och identifierade tabeller.

    Skärmbild av anslutningsinställningar för exempeletiketteringsverktyget för dokumentinformation.

Språk och nationella inställningar som stöds

Se sidan Språkstöd – modeller för dokumentanalys för en fullständig lista över språk som stöds.

Document Intelligence v2.1 stöder följande verktyg, program och bibliotek:

Funktion Resurser
Layout-API Etikettverktyg
för dokumentinformation• REST API
Klientbiblioteks-SDK
Docker-container för dokumentinformation

Extrahering av data

Layoutmodellen extraherar text, markeringsmarkeringar, tabeller, stycken och stycketyper (roles) från dina dokument.

Kommentar

Versioner 2024-02-29-preview, 2023-10-31-previewoch senare stöder Microsoft Office (DOCX-, XLSX-, PPTX- och HTML-filer). Följande funktioner stöds inte:

  • Det finns ingen vinkel, bredd/höjd och enhet för varje sidobjekt.
  • För varje objekt som identifieras finns det ingen avgränsande polygon eller avgränsningsregion.
  • Sidintervall (pages) stöds inte som en parameter.
  • Inget lines objekt.

Sidor

Sidsamlingen är en lista över sidor i dokumentet. Varje sida representeras sekventiellt i dokumentet och .. /innehåller orienteringsvinkeln som anger om sidan roteras och bredden och höjden (dimensioner i bildpunkter). Sidenheterna i modellutdata beräknas enligt följande:

Filformat Beräknad sidenhet Totalt antal sidor
Bilder (JPEG/JPG, PNG, BMP, HEIF) Varje bild = 1 sidenhet Totalt antal bilder
PDF Varje sida i PDF = 1 sidenhet Totalt antal sidor i PDF-filen
TIFF Varje bild i enheten TIFF = 1 sida Totalt antal bilder i TIFF
Word (DOCX) Upp till 3 000 tecken = en sidenhet, inbäddade eller länkade bilder stöds inte Totalt antal sidor på upp till 3 000 tecken vardera
Excel (XLSX) Varje kalkylblad = 1 sidenhet, inbäddade eller länkade bilder stöds inte Totalt antal kalkylblad
PowerPoint (PPTX) Varje bild = 1 sidenhet, inbäddade eller länkade bilder stöds inte Totalt antal bilder
HTML Upp till 3 000 tecken = en sidenhet, inbäddade eller länkade bilder stöds inte Totalt antal sidor på upp till 3 000 tecken vardera
"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}"
    )

Extrahera markerade sidor från dokument

För stora dokument med flera sidor använder du pages frågeparametern för att ange specifika sidnummer eller sidintervall för textextrahering.

Punkterna

Layoutmodellen extraherar alla identifierade textblock i paragraphs samlingen som ett objekt på översta nivån under analyzeResults. Varje post i den här samlingen representerar ett textblock och .. /innehåller den extraherade texten somcontentoch avgränsningskoordinaterna polygon . Informationen span pekar på textfragmentet i den översta egenskapen content som innehåller den fullständiga texten från dokumentet.


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

Styckeroller

Den nya maskininlärningsbaserade identifieringen av sidobjekt extraherar logiska roller som rubriker, avsnittsrubriker, sidhuvuden, sidfötter med mera. Layoutmodellen för dokumentinformation tilldelar vissa textblock i paragraphs samlingen med sin särskilda roll eller typ som förutsägs av modellen. Det är bäst att använda styckeroller med ostrukturerade dokument för att förstå layouten för det extraherade innehållet för en mer omfattande semantisk analys. Följande styckeroller stöds:

Förutsagd roll Beskrivning Filtyper som stöds
title Huvudrubrikerna på sidan pdf, image, docx, pptx, xlsx, html
sectionHeading Ett eller flera underrubriker på sidan pdf, image, docx, xlsx, html
footnote Text längst ned på sidan pdf, bild
pageHeader Text nära sidans övre kant pdf, image, docx
pageFooter Text nära sidans nederkant pdf, image, docx, pptx, html
pageNumber Sidnummer pdf, bild
{
    "paragraphs": [
                {
                    "spans": [],
                    "boundingRegions": [],
                    "role": "title",
                    "content": "NEWS TODAY"
                },
                {
                    "spans": [],
                    "boundingRegions": [],
                    "role": "sectionHeading",
                    "content": "Mirjam Nilsson"
                }
    ]
}

Text, rader och ord

Dokumentlayoutmodellen i Dokumentinformation extraherar utskrifts- och handskriven formatmallstext som lines och words. Samlingen styles .. /innehåller alla handskrivna formatmallar för rader om de identifieras tillsammans med intervallen som pekar på den associerade texten. Den här funktionen gäller för handskrivna språk som stöds.

För Microsoft Word, Excel, PowerPoint och HTML extraherar dokumentinformationsversionerna 2024-02-29-preview och 2023-10-31-preview layoutmodellen all inbäddad text som den är. Texter extraheras som ord och stycken. Inbäddade bilder stöds inte.

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

Handskriven stil för textrader

Svaret .. /inkluderar klassificering av om varje textrad har handskriftsstil eller inte, tillsammans med en konfidenspoäng. Mer information. Se Stöd för handskrivna språk. I följande exempel visas ett exempel på JSON-kodfragment.

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

Om du aktiverar funktionen för teckensnitt/formattillägg får du även teckensnitts-/formatmallsresultatet styles som en del av objektet.

Markeringsmarkeringar

Layoutmodellen extraherar också markeringsmarkeringar från dokument. Extraherade markeringsmarkeringar visas i pages samlingen för varje sida. De inkluderar avgränsningen polygon, confidenceoch markeringen state (selected/unselected). Textrepresentationen (d.v.s :selected: . och :unselected) ingår också som startindex (offset) och length som refererar till egenskapen på den översta nivån content som innehåller den fullständiga texten från dokumentet.

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

Tabeller

Att extrahera tabeller är ett viktigt krav för att bearbeta dokument som innehåller stora mängder data som vanligtvis formateras som tabeller. Layoutmodellen extraherar tabeller i pageResults avsnittet i JSON-utdata. Extraherad tabellinformation .. /innehåller antalet kolumner och rader, radintervall och kolumnintervall. Varje cell med sin avgränsningspolygon matas ut tillsammans med information om området identifieras som en columnHeader eller inte. Modellen stöder extrahering av tabeller som roteras. Varje tabellcell innehåller rad- och kolumnindex och avgränsningspolygonkoordinater. För celltexten matar modellen ut informationen span som innehåller startindexet (offset). Modellen matar också ut length innehållet på den översta nivån som innehåller den fullständiga texten från dokumentet.

Här följer några faktorer att tänka på när du använder funktionen för extrahering av dokumentinformationsbalar:

  • Är de data som du vill extrahera presenterade som en tabell och är tabellstrukturen meningsfull?

  • Kan data få plats i ett tvådimensionellt rutnät om data inte är i tabellformat?

  • Sträcker sig tabellerna över flera sidor? Om så är fallet, för att undvika att behöva märka alla sidor, delar du upp PDF-filen i sidor innan du skickar den till Dokumentinformation. Efter analysen bearbetar du sidorna till en enda tabell.

  • Se Tabellfält om du skapar anpassade modeller. Dynamiska tabeller har ett variabelt antal rader för varje kolumn. Fasta tabeller har ett konstant antal rader för varje kolumn.

Kommentar

  • Tabellanalys stöds inte om indatafilen är XLSX.
  • Från och med 2024-07-31-preview täcker avgränsningsregionerna för siffror och tabeller endast kärninnehållet och exkluderar tillhörande bildtexter och fotnoter.
{
    "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)}'"
            )

Anteckningar (endast tillgängliga i 2023-02-28-preview API.)

Layoutmodellen extraherar anteckningar i dokument, till exempel kontroller och korsningar. Svaret .. /inkluderar den typ av anteckning, tillsammans med en konfidenspoäng och avgränsningspolygon.

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

Naturliga avläsningsordningsutdata (endast latinsk)

Du kan ange i vilken ordning textraderna ska matas ut med frågeparametern readingOrder . Använd natural för ett mer människovänligt läsordningsutdata som visas i följande exempel. Den här funktionen stöds endast för latinska språk.

Skärmbild av

Välj sidnummer eller intervall för textextrahering

För stora dokument med flera sidor använder du pages frågeparametern för att ange specifika sidnummer eller sidintervall för textextrahering. I följande exempel visas ett dokument med 10 sidor, med text extraherad för båda fallen – alla sidor (1–10) och valda sidor (3–6).

Skärmbild av layoutmodellens valda sidors utdata.

Åtgärden Hämta analyslayoutresultat

Det andra steget är att anropa åtgärden Hämta analysera layoutresultat . Den här åtgärden tar som indata det resultat-ID som Analyze Layout åtgärden skapade. Det returnerar ett JSON-svar som innehåller ett statusfält med följande möjliga värden.

Fält Typ Möjliga värden
status sträng notStarted: Analysåtgärden har inte startats.
running
: Analysåtgärden pågår.

failed: Analysåtgärden misslyckades.

succeeded: Analysåtgärden lyckades.

Anropa den här åtgärden iterativt tills den succeeded returnerar värdet. Om du vill undvika att överskrida antalet förfrågningar per sekund (RPS) använder du ett intervall på 3 till 5 sekunder.

När statusfältet har succeeded värdet, JSON-svaret .. /innehåller den extraherade layouten, texten, tabellerna och markeringsmarkeringarna. Extraherade data .. /includes extracted text lines and words, bounding boxes, text appearance with handwritten indication, tables, and selection marks with selected/unselected indicated.

Handskriven klassificering för textrader (endast latinsk)

Svaret .. /inkluderar klassificering av om varje textrad har handskriftsstil eller inte, tillsammans med en konfidenspoäng. Den här funktionen stöds endast för latinska språk. I följande exempel visas den handskrivna klassificeringen för texten i bilden.

Skärmbild av klassificeringsprocessen för handskrift av

Exempel på JSON-utdata

Svaret på åtgärden Hämta analysera layoutresultat är en strukturerad representation av dokumentet med all information som extraheras. Här finns en exempeldokumentfil och dess strukturerade utdataexempellayoututdata.

JSON-utdata har två delar:

  • readResults noden innehåller all igenkänd text och markeringsmarkering. Textpresentationshierarkin är sida, rad och sedan enskilda ord.
  • pageResults noden innehåller tabeller och celler som extraherats med sina avgränsningsrutor, konfidens och en referens till raderna och orden i fältet "readResults".

Exempel på utdata

Text

Layout-API extraherar text från dokument och bilder med flera textvinklar och färger. Den accepterar foton av dokument, fax, tryckt och/eller handskriven text (endast engelska) och blandade lägen. Text extraheras med information om rader, ord, avgränsningsrutor, konfidenspoäng och format (handskriven eller annan). All textinformation ingår i readResults avsnittet i JSON-utdata.

Tabeller med rubriker

Layout-API extraherar tabeller i pageResults avsnittet i JSON-utdata. Dokument kan skannas, fotograferas eller digitaliseras. Tabeller kan vara komplexa med sammanfogade celler eller kolumner, med eller utan kantlinjer och med udda vinklar. Extraherad tabellinformation .. /innehåller antalet kolumner och rader, radintervall och kolumnintervall. Varje cell med sin avgränsningsruta matas ut tillsammans med om området känns igen som en del av en rubrik eller inte. Modellen förutsagda rubrikceller kan sträcka sig över flera rader och är inte nödvändigtvis de första raderna i en tabell. De fungerar också med roterade tabeller. Varje tabellcell också .. /innehåller den fullständiga texten med referenser till de enskilda orden i readResults avsnittet.

Exempel på tabeller

Markeringsmarkeringar

Layout-API extraherar också urvalsmarkeringar från dokument. Extraherade markeringsmarkeringar inkluderar avgränsningsrutan, konfidens och tillstånd (markerad/avmarkerad). Markeringsmarkeringsinformation extraheras i readResults avsnittet i JSON-utdata.

Migreringsguide

  • Följ migreringsguiden för Document Intelligence v3.1 för att lära dig hur du använder v3.1-versionen i dina program och arbetsflöden.

Nästa steg