Sdílet prostřednictvím


Co je model rozložení Document Intelligence?

Tento obsah se vztahuje na:zaškrtnutív4.0 (GA) | Předchozí verze:modré zaškrtnutív3.1 (GA)modré zaškrtnutív3.0 (GA)modré zaškrtnutív2.1 (GA)

Model rozložení Document Intelligence je pokročilé rozhraní API pro analýzu dokumentů založené na strojovém učení dostupné v cloudu Document Intelligence. Umožňuje přijímat dokumenty v různých formátech a vracet strukturované datové reprezentace dokumentů. Kombinuje vylepšenou verzi našich výkonných funkcí optického rozpoznávání znaků (OCR) s modely hloubkového učení k extrakci textu, tabulek, výběrových značek a struktury dokumentu.

Analýza rozložení struktury dokumentu

Analýza rozložení struktury dokumentů je proces analýzy dokumentu za účelem extrakce oblastí zájmu a jejich vzájemných vztahů. Cílem je extrahovat text a strukturální prvky ze stránky, aby se vytvořily lepší sémantické modely porozumění. Rozložení dokumentu má dva typy rolí:

  • Geometrické role: Příklady geometrických rolí jsou text, tabulky, obrázky a značky výběru.
  • Logické role: Názvy, nadpisy a zápatí jsou příklady logických rolí textu.

Následující obrázek znázorňuje typické součásti na obrázku ukázkové stránky.

Obrázek příkladu rozložení dokumentu

Možnosti vývoje

Document Intelligence v4.0: 2024-11-30 (GA) podporuje následující nástroje, aplikace a knihovny:

Funkce Zdroje informací ID modelu
Model rozložení Document Intelligence Studio
REST API
C# SDK
Python SDK
Java SDK
JavaScript SDK
předem připravené rozložení

Podporované jazyky

Úplný seznam podporovaných jazyků najdete v tématu Podpora jazyků – modely analýzy dokumentů.

Podporované typy souborů

Model rozložení Document Intelligence v4.0: 2024-11-30 (GA) podporuje následující formáty souborů:

Model PDF Obrázek:
JPEG/JPG, PNG, BMP, TIFF, HEIF
systém Microsoft Office:
Word (DOCX), Excel (XLSX), PowerPoint (PPTX), HTML
Rozložení

Požadavky na vstup

  • Pro dosažení nejlepších výsledků poskytněte jednu jasnou fotografii nebo kvalitní sken každého dokumentu.

  • U SOUBORŮ PDF a TIFF je možné zpracovat až 2 000 stránek (s předplatným úrovně Free se zpracuje pouze první dvě stránky).

  • Pokud jsou soubory PDF uzamčené heslem, musíte před odesláním toto uzamčení odebrat.

  • Velikost souboru pro analýzu dokumentů je 500 MB pro placenou úroveň (S0) a 4 MB pro bezplatnou úroveň (F0).

  • Rozměry obrázku musí být mezi 50 pixely x 50 pixelů a 10 000 pixelů x 10 000 pixelů.

  • Minimální výška extrahovaného textu je 12 pixelů pro obrázek o velikosti 1024 x 768 pixelů. Tento rozměr odpovídá zhruba 8 bodovému textu při rozlišení 150 bodů na palec (DPI).

  • Pro trénování vlastního modelu je maximální počet stránek pro trénovací data 500 pro vlastní model šablony a 50 000 pro vlastní neurální model.

    • Pro trénování vlastního modelu extrakce je celková velikost trénovacích dat 50 MB pro model šablony a 1 GB pro neurální model.

    • Pro trénování modelu vlastní klasifikace je celková velikost trénovacích dat 1 GB s maximálně 10 000 stránkami. Pro 2024-11-30 GA je celková velikost trénovacích dat 2 GB s maximálně 10 000 stránkami.

Další informace o využití, kvótách a omezeních služeb modelu najdete v tématuOmezení služeb.

Začínáme s modelem rozložení

Podívejte se, jak se data, včetně textu, tabulek, záhlaví tabulky, značek výběru a informací o struktuře extrahují z dokumentů pomocí funkce Document Intelligence. Potřebujete následující zdroje informací:

  • Předplatné Azure – můžete si ho zdarma vytvořit.

  • Instance Document Intelligence v portálu Azure. K vyzkoušení služby můžete použít cenovou úroveň Free (F0). Po nasazení prostředku vyberte Přejít k prostředku a získejte klíč a koncový bod.

    Snímek obrazovky s klíči a umístěním koncového bodu na webu Azure Portal

Po načtení klíče a koncového bodu použijte následující možnosti vývoje k sestavení a nasazení aplikací Document Intelligence:

Extrakce dat

Model rozložení extrahuje strukturální prvky z dokumentů. Popisy těchto strukturálních prvků najdete v pokynech k jejich extrahování ze vstupu dokumentu:

Spusťte analýzu dokumentu s ukázkovým rozložením v nástroji Document Intelligence Studio a přejděte na kartu s výsledky a získejte přístup k úplnému výstupu JSON.

Snímek obrazovky s kartou výstupu JSON výsledků v nástroji Document Intelligence Studio

Stránky

Kolekce stránek je seznam stránek v dokumentu. Každá stránka je v dokumentu reprezentována postupně a zahrnuje úhel orientace označující, jestli je stránka otočena, a šířku a výšku (rozměry v pixelech). Jednotky stránky ve výstupu modelu se počítají, jak je znázorněno níže:

Formát souboru Vypočítaná jednotka stránky Celkový počet stránek
Obrázky (JPEG/JPG, PNG, BMP, HEIF) Každý obrázek = 1 jednotka stránky Celkový počet obrázků
PDF Každá stránka v PDF = 1 jednotka stránky Celkový počet stran v PDF
TIFF Každý obrázek v jednotce TIFF = 1 stránka Celkový počet obrázků ve formátu TIFF
Word (DOCX) Až 3 000 znaků = 1 jednotka stránky, vložené nebo propojené obrázky nejsou podporovány. Celkový počet stránek, z nichž každá má až 3 000 znaků
Excel (XLSX) Každý list = 1 jednotka stránky, vložené nebo propojené obrázky nejsou podporovány. Celkový počet listů
PowerPoint (PPTX) Každý snímek = 1 jednotka stránky, vložené nebo propojené obrázky se nepodporují. Celkový počet snímků
HTML Až 3 000 znaků = 1 jednotka stránky, vložené nebo propojené obrázky nejsou podporovány. Celkový počet stránek, každá až 3 000 znaků
# 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}")

Extrahování vybraných stránek

U velkých vícestrákových dokumentů použijte pages parametr dotazu k označení konkrétních čísel stránek nebo rozsahů stránek pro extrakci textu.

Odstavce

Model rozložení extrahuje všechny identifikované bloky textu v paragraphs kolekci jako objekt nejvyšší úrovně v části analyzeResults. Každá položka v této kolekci představuje textový blok a .. /obsahuje extrahovaný text jakocontenta ohraničující polygon souřadnice. Informace span ukazují na fragment textu v rámci vlastnosti nejvyšší úrovně content , která obsahuje celý text z dokumentu.


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

Role odstavců

Nová detekce objektů stránky založená na strojovém učení extrahuje logické role, jako jsou názvy, nadpisy oddílů, záhlaví stránek, zápatí stránek a další. Model rozložení funkce Document Intelligence přiřazuje určité textové bloky v paragraphs kolekci se speciální rolí nebo typem předpověděným modelem. Nejlepší je použít role odstavců s nestrukturovanými dokumenty, které vám pomůžou pochopit rozložení extrahovaného obsahu pro bohatší sémantickou analýzu. Podporují se následující role odstavců:

Předpovězená role Popis Podporované typy souborů
title Hlavní nadpisy na stránce pdf, image, docx, pptx, xlsx, html
sectionHeading Jedna nebo více podnadpisů na stránce pdf, image, docx, xlsx, html
footnote Text v dolní části stránky pdf, obrázek
pageHeader Text poblíž horního okraje stránky pdf, obrázek, docx
pageFooter Text poblíž dolního okraje stránky pdf, image, docx, pptx, html
pageNumber Číslo stránky pdf, obrázek
{
    "paragraphs": [
                {
                    "spans": [],
                    "boundingRegions": [],
                    "role": "title",
                    "content": "NEWS TODAY"
                },
                {
                    "spans": [],
                    "boundingRegions": [],
                    "role": "sectionHeading",
                    "content": "Mirjam Nilsson"
                }
    ]
}

Text, řádky a slova

Model rozložení dokumentu v nástroji Document Intelligence extrahuje text tištěného a rukou psaného stylu jako lines a words. Kolekce styles obsahuje jakékoli ručně psané styly pro čáry, pokud jsou detekovány, spolu s úseky odkazujícími na přidružený text. Tato funkce se vztahuje na podporované ručně psané jazyky.

Pro Microsoft Word, Excel, PowerPoint a HTML, model rozložení Document Intelligence v4.0 2024-11-30 (GA) extrahuje veškerý vložený text tak, jak je. Texty se extrahují jako slova a odstavce. Vložené obrázky nejsou podporované.

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

Ručně psaný styl pro řádky textu

Odpověď .. /zahrnuje klasifikaci, zda je každý řádek textu ve stylu rukopisu nebo ne, spolu s skóre spolehlivosti. Další informace. Viz podpora ručně psaného jazyka. Následující příklad ukazuje příklad fragmentu kódu JSON.

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

Pokud povolíte funkci doplňku styles

Značky výběru

Model rozložení také extrahuje značky výběru z dokumentů. Extrahované značky výběru se zobrazí v kolekci pages pro každou stránku. Zahrnují ohraničující polygon, confidencea výběr state (selected/unselected). Textová reprezentace (tj :selected: . a :unselected) je také zahrnuta jako počáteční index (offset) a length odkazuje na vlastnost nejvyšší úrovně content , která obsahuje celý text z dokumentu.

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

Tabulky

Extrakce tabulek je klíčovým požadavkem pro zpracování dokumentů obsahujících velké objemy dat, které jsou obvykle formátované jako tabulky. Model rozložení extrahuje tabulky v pageResults části výstupu JSON. Extrahované informace o tabulce .. /zahrnuje počet sloupců a řádků, rozsah řádků a rozsah sloupců. Každá buňka s ohraničujícím mnohoúhelníkem je uvedena spolu s informacemi, jestli je oblast rozpoznána jako columnHeader nebo ne. Model podporuje extrakci tabulek, které jsou otočené. Každá buňka tabulky obsahuje index řádků a sloupců a ohraničující souřadnice mnohoúhelníku. Pro text buňky model vypíše span informace obsahující počáteční index (offset). Model také vypíše length obsah nejvyšší úrovně, který obsahuje celý text z dokumentu.

Při použití funkce extrakce balíků Document Intelligence je třeba zvážit několik faktorů:

  • Jsou data, která chcete extrahovat jako tabulku, a je struktura tabulky smysluplná?

  • Dají se data vejít do dvojrozměrné mřížky, pokud data nejsou ve formátu tabulky?

  • Pokrývají vaše tabulky více stránek? Pokud ano, abyste nemuseli všechny stránky označovat, rozdělte soubor PDF na stránky před odesláním do funkce Document Intelligence. Po analýze zpracujte stránky do jedné tabulky.

  • Pokud vytváříte vlastní modely, odkažte na tabulková pole. Dynamické tabulky mají pro každý sloupec proměnlivý počet řádků. Pevné tabulky mají konstantní počet řádků pro každý sloupec.

Poznámka:

  • Analýza tabulky není podporovaná, pokud je vstupní soubor XLSX.
  • V případě 2024-11-30 (GA) ohraničující oblasti pro obrázky a tabulky pokrývají pouze základní obsah a nezahrnují přidružené titulky ani poznámky pod čarou.
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}'")

Výstupní odpověď na formát Markdownu

Rozhraní Layout API může výstupovat vyextrahovaný text ve formátu markdown. outputContentFormat=markdown Použijte k určení výstupního formátu v markdownu. Obsah Markdownu je zobrazen jako součást oddílu content.

Poznámka:

U verze 4.0 2024-11-30 (GA) se reprezentace tabulek změní na tabulky HTML, aby bylo možné vykreslovat sloučené buňky, záhlaví s více řádky atd. Další související změnou je použití znaků ☒ zaškrtávacího políčka Unicode a ☐ pro značky výběru místo :selected: a :unselected:. Tato aktualizace znamená, že obsah polí značky výběru obsahuje :selected: , i když jejich rozsahy odkazují na znaky Unicode v rozsahu nejvyšší úrovně.

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

Čísla

Obrázky (grafy, obrázky) v dokumentech hrají zásadní roli při doplňování a vylepšování textového obsahu a poskytují vizuální reprezentace, které pomáhají porozumět složitým informacím. Objekt obrázků zjištěný modelem rozložení má klíčové vlastnosti, jako boundingRegions jsou (prostorová umístění obrázku na stránkách dokumentu, včetně čísla stránky a mnohoúhelníku, které znázorňují hranici obrázku), spans (podrobnosti o rozsahu textu souvisejícího s obrázkem, určení jejich posunů a délek v textu dokumentu. Toto připojení pomáhá při přidružování obrázku k příslušnému textovému kontextu) elements (identifikátory textových prvků nebo odstavců v dokumentu, které souvisejí s obrázkem nebo popisují) a caption pokud nějaké existují.

Pokud je při počáteční operaci analýzy zadáno output=figures, služba generuje oříznuté obrázky pro všechna zjištěná čísla, ke kterým lze přistupovat přes /analyeResults/{resultId}/figures/{figureId}. FigureId je součástí každého objektu obrázku, který následuje nezdokumentovanou konvenci {pageNumber}.{figureIndex}, kde se figureIndex obnoví na jednu jednotku na stránce.

Poznámka:

V případě verze 4.0 2024-11-30 (GA) pokrývají ohraničující oblasti pro obrázky a tabulky pouze základní obsah a vylučují přidružené titulky a poznámky pod čarou.

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

Oddíly

Hierarchická analýza struktury dokumentů je klíčová při uspořádání, pochopení a zpracování rozsáhlých dokumentů. Tento přístup je nezbytný pro semantické segmentování dlouhých dokumentů, aby se zvýšilo porozumění, usnadnila navigace a zlepšilo vyhledávání informací. Nástup generace rozšířené o načítání (RAG) v generativní AI pro dokumenty zdůrazňuje význam analýzy hierarchické struktury dokumentů. Model rozložení podporuje oddíly a pododdíly ve výstupu, které identifikují vztah oddílů a objektů v jednotlivých oddílech. Hierarchická struktura se udržuje v elements každé části. Můžete použít odpověď jako výstup do formátu markdown, abyste snadno získali sekce a podsekce v markdownu.

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

Tento obsah se vztahuje na:zaškrtnutív3.1 (GA) | Nejnovější verze:purpurová zaškrtnutá značkav4.0 (GA) | Předchozí verze:modrá zaškrtnutá značkav3.0modrá zaškrtnutá značkav2.1

Tento obsah se vztahuje na:checkmarkv3.0 (GA) | Nejnovější verze:purple-checkmarkv4.0 (GA)purple-checkmarkv3.1 | Předchozí verze:blue-checkmarkv2.1

Tento obsah se vztahuje na:Zaškrtnutí v2.1 | Nejnovější verze:modrá značka zaškrtnutív4.0 (GA)

Model rozložení Document Intelligence je pokročilé rozhraní API pro analýzu dokumentů založené na strojovém učení dostupné v cloudu Document Intelligence. Umožňuje přijímat dokumenty v různých formátech a vracet strukturované datové reprezentace dokumentů. Kombinuje vylepšenou verzi našich výkonných funkcí optického rozpoznávání znaků (OCR) s modely hloubkového učení k extrakci textu, tabulek, výběrových značek a struktury dokumentu.

Analýza rozložení dokumentu

Analýza rozložení struktury dokumentů je proces analýzy dokumentu za účelem extrakce oblastí zájmu a jejich vzájemných vztahů. Cílem je extrahovat text a strukturální prvky ze stránky, aby se vytvořily lepší sémantické modely porozumění. Rozložení dokumentu má dva typy rolí:

  • Geometrické role: Příklady geometrických rolí jsou text, tabulky, obrázky a značky výběru.
  • Logické role: Názvy, nadpisy a zápatí jsou příklady logických rolí textu.

Následující obrázek znázorňuje typické součásti na obrázku ukázkové stránky.

Obrázek příkladu rozložení dokumentu

Podporované jazyky a národní prostředí

Úplný seznam podporovaných jazyků najdete na stránce s modely analýzy dokumentů.

Document Intelligence v2.1 podporuje následující nástroje, aplikace a knihovny:

Funkce Zdroje informací
Model rozložení Nástroj pro označování Document Intelligence
REST API
Klientská knihovna SDK
Document Intelligence Docker kontejner

Pokyny pro zadávání

Podporované formáty souborů:

Model PDF Obrázek:
JPEG/JPG, PNG, BMP, TIFF, HEIF
systém Microsoft Office:
Word (DOCX), Excel (XLSX), PowerPoint (PPTX), HTML
Přečíst
Rozložení
Obecný dokument
Předem postavený
Vlastní extrakce
Vlastní klasifikace
  • Pro dosažení nejlepších výsledků poskytněte jednu jasnou fotografii nebo kvalitní sken na jeden dokument.

  • U SOUBORŮ PDF a TIFF je možné zpracovat až 2 000 stránek (s předplatným úrovně Free se zpracuje pouze první dvě stránky).

  • Velikost souboru pro analýzu dokumentů je 500 MB pro placenou úroveň (S0) a 4 MB pro bezplatnou úroveň (F0).

  • Rozměry obrázku musí být mezi 50 pixely x 50 pixelů a 10 000 pixelů x 10 000 pixelů.

  • Pokud jsou soubory PDF uzamčené heslem, musíte před odesláním toto uzamčení odebrat.

  • Minimální výška extrahovaného textu je 12 pixelů pro obrázek o velikosti 1024 x 768 pixelů. Tento rozměr odpovídá přibližně 8 bodům textu při 150 bodech na palec (DPI).

  • Pro trénování vlastního modelu je maximální počet stránek pro trénovací data 500 pro vlastní model šablony a 50 000 pro vlastní neurální model.

    • Pro trénování vlastního modelu extrakce je celková velikost trénovacích dat 50 MB pro model šablony a 1 GB pro neurální model.

    • Pro trénování modelu vlastní klasifikace je 1 celková velikost trénovacích dat GB s maximálně 10 000 stránkami. Pro 2024-11-30 (GA) je celková velikost trénovacích dat 2 GB s maximálně 10 000 stránkami.

Průvodce vstupem

  • Podporované formáty souborů: JPEG, PNG, PDF a TIFF.
  • Podporovaný počet stránek: Pro PDF a TIFF se zpracovává až 2 000 stránek. Pro předplatitele úrovně Free se zpracovávají pouze první dvě stránky.
  • Podporovaná velikost souboru: Velikost souboru musí být menší než 50 MB a rozměry nejméně 50 × 50 pixelů a maximálně 10 000 × 10 000 pixelů.

Začínáme

Podívejte se, jak se data, včetně textu, tabulek, záhlaví tabulky, značek výběru a informací o struktuře extrahují z dokumentů pomocí funkce Document Intelligence. Potřebujete následující zdroje informací:

  • Předplatné Azure – můžete si ho zdarma vytvořit.

  • Instance Document Intelligence v Azure portálu K vyzkoušení služby můžete použít cenovou úroveň Free (F0). Po nasazení prostředku vyberte Přejít k prostředku a získejte klíč a koncový bod.

Snímek obrazovky s klíči a umístěním koncového bodu na webu Azure Portal

Po načtení klíče a koncového bodu můžete pomocí následujících možností vývoje sestavovat a nasazovat aplikace Document Intelligence:

Poznámka:

Document Intelligence Studio je k dispozici s rozhraními API verze 3.0 a novějšími verzemi.

REST API

Nástroj pro označování vzorků Document Intelligence

  1. Přejděte k ukázkovém nástroji Document Intelligence.

  2. Na domovské stránce ukázkového nástroje vyberte Použít rozložení k získání textu, tabulek a značek výběru.

    Snímek obrazovky s nastavením připojení pro proces rozložení Document Intelligence.

  3. Do pole koncový bod služby Document Intelligence vložte koncový bod, který jste získali s předplatným Document Intelligence.

  4. Do pole s klíčem vložte klíč, který jste získali z prostředku Document Intelligence.

  5. V poli Zdroj vyberte adresu URL z rozevírací nabídky. Můžete použít náš ukázkový dokument:

  6. Vyberte Spustit rozložení. Nástroj "Document Intelligence Sample Labeling" volá rozhraní API Analyze Layout k analýze dokumentu.

    Snímek obrazovky s rozevíracím oknem Rozložení

  7. Prohlédněte si výsledky – podívejte se na zvýrazněný extrahovaný text, zjištěné značky výběru a zjištěné tabulky.

    Snímek obrazovky s nastavením připojení pro nástroj Document Intelligence Sample Labeling

Document Intelligence v2.1 podporuje následující nástroje, aplikace a knihovny:

Funkce Zdroje informací
Rozhraní API rozložení Nástroj pro popisování Document Intelligence
REST API
Klientská knihovna SDK
Docker kontejner Document Intelligence

Extrahovat data

Model rozložení extrahuje strukturální prvky z dokumentů. Popisy těchto strukturálních prvků najdete v pokynech k jejich extrahování ze vstupu dokumentu:

Extrahujte data

Model rozložení extrahuje strukturální prvky z dokumentů. Popisy těchto strukturálních prvků najdete v pokynech k jejich extrahování ze vstupu dokumentu:

Stránka

Kolekce stránek je seznam stránek v dokumentu. Každá stránka je reprezentována postupně v dokumentu a .. /zahrnuje úhel orientace označující, zda je stránka otočena a šířka a výška (rozměry v pixelech). Jednotky stránky ve výstupu modelu se počítají, jak je znázorněno níže:

Formát souboru Vypočítaná jednotka stránky Celkový počet stránek
Obrázky (JPEG/JPG, PNG, BMP, HEIF) Každý obrázek = 1 jednotka stránky Celkový počet obrázků
PDF Každá stránka v PDF = 1 jednotka stránky Celkový počet stránek v PDF
TIFF Každý obrázek v jednotce TIFF = 1 stránka Celkový počet obrázků ve formátu TIFF
Word (DOCX) Až 3 000 znaků = 1 jednotka stránky, vložené nebo propojené obrázky nejsou podporovány. Celkový počet stránek, přičemž každá má až 3 000 znaků
Excel (XLSX) Každý list = 1 jednotka stránky, vložené nebo propojené obrázky nejsou podporovány. Celkový počet pracovních listů
PowerPoint (PPTX) Každý snímek = 1 jednotka stránky, vložené nebo propojené obrázky se nepodporují. Celkový počet snímků
HTML Až 3 000 znaků = 1 jednotka stránky, vložené nebo propojené obrázky nejsou podporovány. Celkový počet stránek s až 3 000 znaky na každé straně
"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}"
    )

Extrahování vybraných stránek z dokumentů

U velkých vícestrákových dokumentů použijte pages parametr dotazu k označení konkrétních čísel stránek nebo rozsahů stránek pro extrakci textu.

Odstavec

Model rozložení extrahuje všechny identifikované bloky textu v paragraphs kolekci jako objekt nejvyšší úrovně v části analyzeResults. Každá položka v této kolekci představuje textový blok a .. /obsahuje extrahovaný text jakocontenta ohraničující polygon souřadnice. Informace span ukazují na fragment textu v rámci vlastnosti nejvyšší úrovně content , která obsahuje celý text z dokumentu.


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

Role odstavce

Nová detekce objektů stránky založená na strojovém učení extrahuje logické role, jako jsou názvy, nadpisy oddílů, záhlaví stránek, zápatí stránek a další. Model rozložení funkce Document Intelligence přiřazuje určité textové bloky v paragraphs kolekci se speciální rolí nebo typem předpověděným modelem. Nejlepší je použít role odstavců s nestrukturovanými dokumenty, které vám pomůžou pochopit rozložení extrahovaného obsahu pro bohatší sémantickou analýzu. Podporují se následující role odstavců:

Předpovězená role Popis Podporované typy souborů
title Hlavní nadpisy na stránce pdf, image, docx, pptx, xlsx, html
sectionHeading Jedna nebo více podnadpisů na stránce pdf, image, docx, xlsx, html
footnote Text v dolní části stránky pdf, obrázek
pageHeader Text poblíž horního okraje stránky pdf, obrázek, docx
pageFooter Text poblíž dolního okraje stránky pdf, image, docx, pptx, html
pageNumber Číslo stránky pdf, obrázek
{
    "paragraphs": [
                {
                    "spans": [],
                    "boundingRegions": [],
                    "role": "title",
                    "content": "NEWS TODAY"
                },
                {
                    "spans": [],
                    "boundingRegions": [],
                    "role": "sectionHeading",
                    "content": "Mirjam Nilsson"
                }
    ]
}

Text, řádek a slovo

Model rozložení dokumentu v nástroji Document Intelligence extrahuje text tištěného a rukou psaného stylu jako lines a words. Kolekce styles obsahuje jakýkoli styl čar ručně psaného typu, pokud je detekován, spolu s rozsahy, které odkazují na přidružený text. Tato funkce se vztahuje na podporované ručně psané jazyky.

Pro Microsoft Word, Excel, PowerPoint a HTML, model rozložení Document Intelligence v4.0 2024-11-30 (GA) extrahuje veškerý vložený text tak, jak je. Texty se extrahují jako slova a odstavce. Vložené obrázky nejsou podporované.

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

Ručně psaný styl

Odpověď .. /zahrnuje klasifikaci, zda je každý řádek textu ve stylu rukopisu nebo ne, spolu s skóre spolehlivosti. Další informace. Viz podpora ručně psaného jazyka. Následující příklad ukazuje příklad fragmentu kódu JSON.

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

Pokud povolíte funkci doplňku styles

Značka výběru

Model rozložení také extrahuje značky výběru z dokumentů. Extrahované značky výběru se zobrazí v kolekci pages pro každou stránku. Zahrnují ohraničující polygon, confidence, a výběrové objekty state (selected/unselected). Textová reprezentace (tj :selected: . a :unselected) je také zahrnuta jako počáteční index (offset) a length odkazuje na vlastnost nejvyšší úrovně content , která obsahuje celý text z dokumentu.

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

Table

Extrakce tabulek je klíčovým požadavkem pro zpracování dokumentů obsahujících velké objemy dat, které jsou obvykle formátované jako tabulky. Model rozložení extrahuje tabulky v pageResults části výstupu JSON. Extrahované informace o tabulce .. /zahrnuje počet sloupců a řádků, rozsah řádků a rozsah sloupců. Každá buňka s ohraničujícím mnohoúhelníkem je vyvedena včetně informace, jestli je oblast rozpoznána jako columnHeader nebo ne. Model podporuje extrakci tabulek, které jsou otočené. Každá buňka tabulky obsahuje index řádků a sloupců a ohraničující souřadnice mnohoúhelníku. Pro text buňky model vypíše span informace obsahující počáteční index (offset). Model také vypíše obsah na nejvyšší úrovni, který obsahuje celý text z dokumentu, ve formátu length.

Při použití schopnosti extrakce balíků Document Intelligence je potřeba vzít v úvahu několik faktorů:

  • Jsou data, která chcete extrahovat jako tabulku, a je struktura tabulky smysluplná?

  • Dají se data vejít do dvojrozměrné mřížky, pokud data nejsou ve formátu tabulky?

  • Pokrývají vaše tabulky více stránek? Pokud ano, abyste nemuseli všechny stránky označovat, rozdělte soubor PDF na stránky před odesláním do funkce Document Intelligence. Po analýze zpracujte stránky do jedné tabulky.

  • Pokud vytváříte vlastní modely, nahlédněte do tabulkových polí. Dynamické tabulky mají pro každý sloupec proměnlivý počet řádků. Pevné tabulky mají konstantní počet řádků pro každý sloupec.

Poznámka:

  • Analýza tabulky není podporovaná, pokud je vstupní soubor XLSX.
  • Funkce Document Intelligence v4.0 2024-11-30 (GA) podporuje ohraničující oblasti pro obrázky a tabulky, které pokrývají pouze základní obsah a vylučují přidružené titulky a poznámky pod čarou.
{
    "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)}'"
            )

Poznámky

Model rozložení extrahuje poznámky v dokumentech, jako jsou kontroly a křížky. Odpověď zahrnuje druh anotace spolu se skóre spolehlivosti a ohraničující polygon.

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

Výstup v přirozeném pořadí čtení (pouze latinské písmo)

Pomocí parametru dotazu readingOrder můžete zadat pořadí, ve kterém jsou textové řádky výstupem. Použijte natural pro výstup čtení ve více přívětivém pořadí, jak je znázorněno v následujícím příkladu. Tato funkce je podporována pouze pro jazyky latinky.

Snímek obrazovky se zpracováním pořadí čtení modelu rozložení

Výběr čísla nebo rozsahu stránky pro extrakci textu

U velkých vícestrákových dokumentů použijte pages parametr dotazu k označení konkrétních čísel stránek nebo rozsahů stránek pro extrakci textu. Následující příklad ukazuje dokument s 10 stránkami s textem extrahovaným pro oba případy – všechny stránky (1–10) a vybrané stránky (3–6).

Snímek obrazovky výstupu vybraných stránek modelu rozložení

Operace Získání výsledku analýzy rozložení

Druhým krokem je volání operace Výsledek analýzy rozložení. Tato operace bere jako vstup ID výsledku vytvořené operací Analyze Layout. Vrátí odpověď JSON, která obsahuje pole stavu s následujícími možnými hodnotami.

Pole Typ Možné hodnoty
stav řetězec notStarted: Operace analýzy není spuštěna.

running: Probíhá operace analýzy.

failed: Operace analýzy selhala.

succeeded: Operace analýzy byla úspěšná.

Tuto operaci volejte iterativním způsobem, dokud nevrátí succeeded hodnotu. Pokud se chcete vyhnout překročení rychlosti žádostí za sekundu (RPS), použijte interval 3 až 5 sekund.

Pokud pole stavu obsahuje succeeded hodnotu, odpověď JSON .. /zahrnuje extrahované rozložení, text, tabulky a značky výběru. Extrahovaná data zahrnují extrahované textové řádky a slova, ohraničující pole, vzhled textu s indikací ručně psaného textu, tabulky a značky výběru označující vybrané/nevybrané.

Ručně psaná klasifikace pro textové řádky (jenom latinka)

Odpověď .. /zahrnuje klasifikaci, zda je každý řádek textu ve stylu rukopisu nebo ne, spolu s skóre spolehlivosti. Tato funkce je podporována pouze pro jazyky latinky. Následující příklad ukazuje rukou psanou klasifikaci textu na obrázku.

Snímek obrazovky procesu klasifikace rukopisu u modelu rozložení

Ukázkový výstup JSON

Odpověď na operaci Get Analyze Layout Result je strukturovaná reprezentace dokumentu se všemi extrahovanými informacemi. Tady najdete ukázkový dokument a jeho ukázkový rozložený výstup.

Výstup JSON má dvě části:

  • readResults uzel obsahuje veškerý rozpoznaný text a značku výběru. Hierarchie textových prezentací je stránka, potom řádek a potom jednotlivá slova.
  • pageResults Uzel obsahuje tabulky a buňky extrahované s jejich ohraničujícími rámečky, s jistotou a odkazem na řádky a slova v poli "readResults".

Příklad výstupu

Text

Rozhraní API pro rozvržení extrahuje text z dokumentů a obrázků s různými úhly a barvami textu. Přijímá fotky dokumentů, faxů, tištěné a/nebo rukou psané texty (pouze v angličtině) a kombinované režimy. Text se extrahuje s informacemi poskytovanými na řádcích, slovech, ohraničujících rámečcích, skóre spolehlivosti a stylu (ručně psaném nebo jiném). Všechny textové informace jsou součástí readResults části výstupu JSON.

Tabulky se záhlavími

Rozhraní API pro rozložení extrahuje tabulky v pageResults části výstupu ve formátu JSON. Dokumenty lze naskenovat, fotografovat nebo digitalizovat. Tabulky mohou být složité se sloučenými buňkami nebo sloupci, s ohraničením nebo bez něj a s lichými úhly. Extrahované informace o tabulce .. /zahrnuje počet sloupců a řádků, rozsah řádků a rozsah sloupců. Každá buňka s ohraničujícím rámečkem je výstupem spolu s informací o tom, jestli je oblast rozpoznána jako součást záhlaví nebo ne. Předpovězené buňky záhlaví modelu můžou zahrnovat více řádků a nemusí být nutně prvními řádky v tabulce. Pracují také s otočenými tabulkami. Každá buňka tabulky také .. /obsahuje celý text s odkazy na jednotlivá slova v oddílu readResults .

Příklad tabulek

Značky výběru (dokumenty)

Rozhraní API Layout také extrahuje značky výběru z dokumentů. Extrahované značky výběru zahrnují ohraničující rámeček, spolehlivost a stav (vybraný/nevybraný). Informace o značce výběru se extrahují v readResults části výstupu JSON.

Průvodce migrací

  • Postupujte podle našeho průvodce migrací Document Intelligence v3.1 a zjistěte, jak používat verzi v3.1 ve vašich aplikacích a pracovních postupech.

Další kroky