Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
Tento obsah platí pro:🟩v4.0 (GA) | Předchozí verze:🟦v3.1 (GA)🟥v3.0 (vyřazení)🟥v2.1 (vyřazení)
Model rozložení Azure Document Intelligence in Foundry Tools je pokročilé rozhraní API pro analýzu dokumentů založené na strojovém učení. Model je k dispozici v cloudu Document Intelligence. Můžete ho použít k pořizování dokumentů v různých formátech a vracení strukturovaných datových reprezentací dokumentů. Model kombinuje vylepšenou verzi výkonných funkcí optického rozpoznávání znaků (OCR) s modely hloubkového učení k extrakci textu, tabulek, značek výběru a struktury dokumentu.
Analýza rozložení struktury dokumentu
Analýza rozložení struktury dokumentů je proces analýzy dokumentu pro extrakci 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.
Možnosti vývoje
Document Intelligence v4.0: 2024-11-30 (GA) podporuje následující nástroje, aplikace a knihovny.
| Funkce | Zdroje | ID modelu |
|---|---|---|
| Model rozložení | • Document Intelligence Studio • REST API • C# SDK • Python SDK • Java SDK• |
prebuilt-layout |
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 | soubor PDF | Obrázek: JPEG/JPG, PNG, BMP, TIFF, HEIF |
Office: Word (DOCX), Excel (XLS), PowerPoint (PPTX), HTML |
|---|---|---|---|
| Rozložení | ✔ | ✔ | ✔ |
Požadavky na vstup
- Fotky a skenování: Nejlepších výsledků dosáhnete tak, že poskytnete jednu jasnou fotku nebo vysoce kvalitní skenování na dokument.
- SOUBORY PDF a TIFF: U souborů PDF a TIFF je možné zpracovat až 2 000 stránek. (S předplatným úrovně Free se zpracovávají pouze první dvě stránky.)
- Zámky hesel: Pokud jsou soubory PDF uzamčené heslem, musíte zámek před odesláním odebrat.
- Velikost souboru: Velikost souboru pro analýzu dokumentů je 500 MB pro placenou úroveň (S0) a 4 MB pro bezplatnou úroveň (F0).
- Rozměry obrázku: Rozměry obrázku musí být mezi 50 pixely x 50 pixelů a 10 000 pixelů x 10 000 pixelů.
- Výška textu: Minimální výška extrahovaného textu je 12 pixelů pro obrázek 1024 x 768 pixelů. Tento rozměr odpovídá přibližně 8bodovému textu při 150 bodech na palec.
- Trénování vlastního modelu: Maximální počet stránek pro trénovací data je 500 pro vlastní model šablony a 50 000 pro vlastní neurální model.
- Trénování modelu vlastní extrakce: Celková velikost trénovacích dat je 50 MB pro model šablony a 1 GB pro neurální model.
- Trénování modelu vlastní klasifikace: Celková velikost trénovacích dat je 1 GB s maximálně 10 000 stránkami. V případě 2024-11-30 (GA) je celková velikost trénovacích dat 2 GB s maximálně 10 000 stránkami.
- Typy souborů Office (DOCX, XLSX, PPTX):: Maximální limit délky řetězce je 8 milionů znaků.
Další informace o využití, kvótách a omezeních služeb modelu najdete v tématu Omezení služby.
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 na portálu Azure. Službu můžete vyzkoušet pomocí cenové úrovně Free (F0). Po nasazení prostředku vyberte Přejít k prostředku a získejte klíč a koncový bod.
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ů. Ve zbývající části tohoto článku jsou popsány následující strukturální prvky spolu s pokyny, jak je extrahovat ze vstupu dokumentu:
- Stránky
- Odstavce
- Text, řádky a slova
- Značky výběru
- Tabulky
- Odpověď na výstup do Markdownu
- Čísla
- Oddíly
Spusťte ukázkovou analýzu dokumentu rozložení v nástroji Document Intelligence Studio. Pak přejděte na kartu výsledků a přejděte k úplnému výstupu JSON.
Stránky
Kolekce pages je seznam stránek v dokumentu. Každá stránka je reprezentována postupně v dokumentu a zahrnuje úhel orientace, který označuje, 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 v následující tabulce.
| 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ů |
| soubor PDF | Každá stránka v PDF = 1 jednotka stránky. | Celkový počet stran v PDF |
| formát 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 podporované. | Celkový počet stránek až 3 000 znaků |
| Excel (XLSX) | Každý list = 1 jednotka stránky. Vložené nebo propojené obrázky nejsou podporované. | Celkový počet listů |
| PowerPoint (PPTX) | Každý snímek = 1 jednotka stránky. Vložené nebo propojené obrázky nejsou podporované. | Celkový počet snímků |
| jazyk HTML | Až 3 000 znaků = 1 jednotka stránky. Vložené nebo propojené obrázky nejsou podporované. | Celkový počet stránek 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ánkový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 blok textu a zahrnuje extrahovaný text jako content a ohraničující polygon souřadnice. Informace spans 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 na základě strojového 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í 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, Obrázek, DOCX, PPTX, XLSX, HTML |
sectionHeading |
Jedna nebo více podnadpisů na stránce | PDF, Obrázek, 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, Obrázek, 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 tisk a rukou psaný text jako lines a words. Kolekce styles obsahuje všechny ručně psané styly čar, pokud jsou zjištěny, 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é.
# 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, jestli je každý řádek textu v rukou psaném stylu nebo ne, spolu s skóre spolehlivosti. Další informace najdete v tématu 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 font/style, získáte také výsledek písma a stylu jako součást objektu 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ů, které obsahují 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 zahrnují počet sloupců a řádků, rozsah řádků a rozsah sloupců.
Každá buňka s ohraničujícím mnohoúhelníkem je výstupem společně s informací, 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, které obsahují počáteční index (offset). Model také vypíše length obsah nejvyšší úrovně, který obsahuje celý text z dokumentu.
Tady je několik faktorů, které je potřeba vzít v úvahu při použití funkce extrakce balíků Document Intelligence:
- 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, podívejte se 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. K datu 30. 11. 2024 (GA) ohraničující regiony pro obrázky a tabulky pokrývají pouze základní obsah a vylučují přidružené titulky a 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í API rozložení může text vyvést ve formátu Markdown.
outputContentFormat=markdown Použijte k určení výstupního formátu v Markdownu. Obsah Markdownu je výstupem v rámci 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 položky, jako jsou sloučené buňky a záhlaví s více řádků. 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 výběrových polí obsahuje :selected:, i když jejich rozsahy odkazují na znaky Unicode v rozsahu nejvyšší úrovně. Úplnou definici elementů Markdownu najdete ve výstupním formátu 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,
)
Čísla
Obrázky (grafy a obrázky) v dokumentech hrají zásadní roli při doplňování a vylepšování textového obsahu. Poskytují vizuální reprezentace, které pomáhají porozumět složitým informacím. Objekt figures zjištěný modelem rozložení má klíčové vlastnosti, jako jsou:
-
boundingRegions: Prostorová umístění obrázku na stránkách dokumentu, včetně čísla stránky a mnohoúhelníku, které znázorňují hranice obrázku. -
spans: Textové úseky související s obrázkem, které určí jejich posuny a délky 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í nebo popisují obrázek. -
caption: Popis, pokud existuje.
Je-li output=figures zadán během počáteční operace analýzy, služba generuje oříznuté obrázky pro všechny zjištěné objekty, ke kterým lze přistupovat prostřednictvím /analyeResults/{resultId}/figures/{figureId}. Hodnota FigureId je ID zahrnuté v každém objektu obrázku podle nezdokumentované konvence {pageNumber}.{figureIndex}, kde se figureIndex resetuje na každé stránce.
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 vyloučí 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 sémantické segmentace dlouhých dokumentů, aby se zlepšilo porozumění, a usnadnila navigace a zlepšilo vyhledávání informací. Nástup technologie generace s doplněním načítání (RAG) v AI pro generování dokumentů zdůrazňuje význam hierarchické analýzy struktury dokumentu.
Model rozložení podporuje oddíly a dílčí oddíly ve výstupu, které identifikují vztah oddílů a objektů v jednotlivých oddílech. Hierarchická struktura je udržována v elements pro každou část.
Výstupní odpověď na formát Markdownu můžete použít k snadnému získání oddílů a pododdílů 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 platí pro:🟥v3.0 (vyřazení) | Nejnovější verze:🟪v4.0 (GA)🟪v3.1 (GA) | Předchozí verze:🟥v2.1 (vyřazení)
Important
Azure rozhraní API Document Intelligence v3.0 (2022-08-31) dosáhne konce podpory 30. března 2029. Abyste se vyhnuli přerušení provozu, použijte Azure Document Intelligence 2024-11-30 v4.0 pro všechny nové vývojové funkce a migrujte stávající úlohy do Azure Document Intelligence 2024-11-30 v4.0 před tímto datem. Pokyny k migraci najdete v průvodci migrací funkce Document Intelligence.
Tento obsah platí pro:🟥v2.1 | Nejnovější verze:🟪v4.0 (GA)
Model rozložení Document Intelligence je pokročilé rozhraní API pro analýzu dokumentů. Model je založený na strojovém učení a je k dispozici v cloudu Document Intelligence. Můžete ho použít k pořizování dokumentů v různých formátech a vracení strukturovaných datových reprezentací dokumentů. Kombinuje vylepšenou verzi výkonných funkcí OCR s modely hlubokého učení. Můžete ho použít k extrakci textu, tabulek, značek výběru a struktury dokumentu.
Analýza rozložení dokumentu
Analýza rozložení struktury dokumentů je proces analýzy dokumentu pro extrakci 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.
Podporované jazyky a národní prostředí
Úplný seznam podporovaných jazyků najdete v tématu Podpora jazyků: Modely analýzy dokumentů.
Document Intelligence v2.1 podporuje následující nástroje, aplikace a knihovny.
| Funkce | Zdroje |
|---|---|
| Model rozložení | • Nástroj pro označování dokumentové inteligence • REST API • SDK klientské knihovny • Kontejner Docker pro dokumentovou inteligenci |
Pokyny pro vstup
Podporované formáty souborů:
| Model | soubor PDF | Obrázek: JPEG/JPG, PNG, BMP, TIFF, HEIF |
Office: Word (DOCX), Excel (XLSX), PowerPoint (PPTX), HTML |
|---|---|---|---|
| Číst | ✔ | ✔ | ✔ |
| Rozložení | ✔ | ✔ | |
| Obecný dokument | ✔ | ✔ | |
| Předem sestavené | ✔ | ✔ | |
| Vlastní extrakce | ✔ | ✔ | |
| Vlastní klasifikace | ✔ | ✔ | ✔ |
- Fotky a skenování: Nejlepších výsledků dosáhnete tak, že poskytnete jednu jasnou fotku nebo vysoce kvalitní skenování na dokument.
- Soubory PDF a TIFF: U souborů PDF a TIFF je možné zpracovat až 2 000 stránek s předplatným na úrovni Free. Zpracovávají se pouze první dvě stránky.
- Velikost souboru: Velikost souboru pro analýzu dokumentů je 500 MB pro placenou úroveň (S0) a 4 MB pro bezplatnou úroveň (F0).
- Rozměry obrázku: Rozměry obrázku musí být mezi 50 pixely x 50 pixelů a 10 000 pixelů x 10 000 pixelů.
- Zámky hesel: Pokud jsou soubory PDF uzamčené heslem, musíte zámek před odesláním odebrat.
- Výška textu: Minimální výška extrahovaného textu je 12 pixelů pro obrázek 1024 x 768 pixelů. Tento rozměr odpovídá přibližně 8bodovému textu při 150 bodech na palec.
- Trénování vlastního modelu: Maximální počet stránek pro trénovací data je 500 pro vlastní model šablony a 50 000 pro vlastní neurální model.
- Trénování modelu vlastní extrakce: Celková velikost trénovacích dat je 50 MB pro model šablony a 1 GB pro neurální model.
- Trénování modelu vlastní klasifikace: Celková velikost trénovacích dat je 1 GB s maximálně 10 000 stránkami. V případě 2024-11-30 (GA) je celková velikost trénovacích dat 2 GB s maximálně 10 000 stránkami.
- Typy souborů Office (DOCX, XLSX, PPTX):: Maximální limit délky řetězce je 8 milionů znaků.
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 musí být nejméně 50 × 50 pixelů a maximálně 10 000 × 10 000 pixelů.
Začínáme
Pomocí funkce Document Intelligence můžete extrahovat data, jako je text, tabulky, záhlaví tabulky, značky výběru a informace o struktuře z dokumentů. Potřebujete následující zdroje informací:
- Předplatné Azure. Můžete si ho zdarma vytvořit.
- Instance Document Intelligence na portálu Azure. Službu můžete vyzkoušet pomocí cenové úrovně Free (F0). Po nasazení prostředku vyberte Přejít k prostředku a získejte klíč a koncový bod.
Po načtení klíče a koncového bodu můžete k sestavení a nasazení aplikací Document Intelligence použít následující možnosti vývoje.
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
Přejděte k nástroji Popisování ukázek funkce Document Intelligence.
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.
Do pole koncový bod služby Document Intelligence vložte koncový bod, který jste získali s předplatným Document Intelligence.
Do pole s klíčem vložte klíč, který jste získali z prostředku Document Intelligence.
V poli Zdroj vyberte adresu URL z rozevírací nabídky. Můžete použít ukázkový dokument:
Vyberte Načíst.
Vyberte Spustit rozložení. Nástroj Document Intelligence Sample Labeling volá Analyze Layout API pro analýzu rozložení dokumentu.
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.
Document Intelligence v2.1 podporuje následující nástroje, aplikace a knihovny.
| Funkce | Zdroje |
|---|---|
| API rozhraní rozložení | • Nástroj pro označování dokumentové inteligence • REST API • SDK klientské knihovny • Kontejner Docker pro dokumentovou inteligenci |
Extrahovat data
Model rozložení extrahuje strukturální prvky z dokumentů. Zde jsou popsány strukturální prvky a následující doprovodné materiály ukazují, jak je extrahovat ze vstupu dokumentu.
Extrahovat data
Model rozložení extrahuje strukturální prvky z dokumentů. Zde jsou popsány strukturální prvky a následující doprovodné materiály ukazují, jak je extrahovat ze vstupu dokumentu.
Stránka
Kolekce pages je seznam stránek v dokumentu. Každá stránka je reprezentována postupně v dokumentu a obsahuje úhel orientace, který označuje, jestli 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 v následující tabulce.
| 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ů |
| soubor PDF | Každá stránka v PDF = 1 jednotka stránky. | Celkový počet stran v PDF |
| formát 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 podporované. | Celkový počet stránek až 3 000 znaků |
| Excel (XLSX) | Každý list = 1 jednotka stránky. Vložené nebo propojené obrázky nejsou podporované. | Celkový počet listů |
| PowerPoint (PPTX) | Každý snímek = 1 jednotka stránky. Vložené nebo propojené obrázky nejsou podporované. | Celkový počet snímků |
| jazyk HTML | Až 3 000 znaků = 1 jednotka stránky. Vložené nebo propojené obrázky nejsou podporované. | Celkový počet stránek až 3 000 znaků |
"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ánkový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 blok textu a zahrnuje extrahovaný text jako contenta 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 na základě strojového 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í 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, Obrázek, DOCX, PPTX, XLSX, HTML |
sectionHeading |
Jedna nebo více podnadpisů na stránce | PDF, Obrázek, 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, Obrázek, 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 v podobě řádků a slov v ručním stylu. Kolekce styles obsahuje všechny ručně psané styly pro čáry, jsou-li zjištěny, spolu s rozsahy, které odkazují na přidružený text. Tato funkce se vztahuje na podporované ručně psané jazyky.
Pro 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, jestli je každý řádek textu ve stylu rukopisu nebo ne, spolu se skóre spolehlivosti. Další informace najdete v tématu 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 font/style, získáte také výsledek písma a stylu jako součást objektu 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, 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.
{
"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}"
)
Tabulka
Extrakce tabulek je klíčovým požadavkem pro zpracování dokumentů, které obsahují 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 zahrnují počet sloupců a řádků, rozsah řádků a rozsah sloupců. Každá buňka s ohraničujícím mnohoúhelníkem je výstupem společně s informací, 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, které obsahují počáteční index (offset). Model také vypíše length obsah nejvyšší úrovně, který obsahuje celý text z dokumentu.
Tady je několik faktorů, které je potřeba vzít v úvahu při použití funkce extrakce balíků Document Intelligence:
- 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, podívejte se 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. 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čuje související titulek 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 zaškrtávací značky a křížky. Odpověď obsahuje typ anotace spolu se skóre spolehlivosti a ohraničující polygon.
{
"pages": [
{
"annotations": [
{
"kind": "cross",
"polygon": [...],
"confidence": 1
}
]
}
]
}
Výstup přirozeného pořadí čtení (pouze latinka)
Pomocí parametru dotazu readingOrder můžete zadat pořadí, ve kterém jsou textové řádky generovány. Použijte natural pro výstup, který je čitelnější pro člověka, jak je znázorněno v následujícím příkladu. Tato funkce je podporovaná jenom pro jazyky latinky.
Výběr čísla nebo rozsahu stránky pro extrakci textu
U velkých vícestránkový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šemi stránkami (1–10) a vybranými stránkami (3–6).
Operace Získání výsledku analýzy rozložení
Druhým krokem je volání Get Analyze Layout Result operace. Tato operace přebírá jako vstup ID výsledku Analyze Layout , které operace vytvořila. 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 požadavků za sekundu, použijte interval 3 až pět 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í rámečky, vzhled textu s indikací rukopisného písma, tabulky a značky výběru s indikací vybráno/nevybráno.
Ručně psaná klasifikace pro textové řádky (jenom latinka)
Odpověď zahrnuje klasifikaci, zda je každý řádek textu rukou psaný nebo ne, spolu s skóre spolehlivosti. Tato funkce je podporovaná jenom pro jazyky latinky. Následující příklad ukazuje rukou psanou klasifikaci textu na obrázku.
Ukázkový výstup JSON
Odpověď na Get Analyze Layout Result operaci je strukturovaná reprezentace dokumentu se všemi extrahovanými informacemi.
Viz soubor dokumentu sample a jeho strukturovaný výstup sample layout output.
Výstup JSON má dvě části:
- Uzel
readResultsobsahuje veškerý rozpoznaný text a značku výběru. Hierarchie textových prezentací je stránka, potom řádek a potom jednotlivá slova. - Uzel
pageResultsobsahuje tabulky a buňky extrahované s jejich ohraničujícími boxy, úrovněmi důvěry a odkazem na slova a řádky v polireadResults.
Příklad výstupu
Text
API rozvržení extrahuje text z dokumentů a obrázků s různými úhly a barvami. Přijímá fotky dokumentů, faxů, tištěného a/nebo rukou psaného textu (pouze v angličtině) a smíšených režimů. Text se extrahuje s informacemi zadanými na řádcích, slovech, ohraničujících polích, skóre spolehlivosti a stylu (ručně psané nebo jiné). Všechny textové informace jsou součástí readResults části výstupu JSON.
Tabulky se záhlavími
Rozhraní API rozložení extrahuje tabulky v pageResults části výstupu JSON. Dokumenty můžete naskenovat, fotografovat nebo digitalizovat. Tabulky můžou být složité se sloučenými buňkami nebo sloupci, s ohraničeními nebo bez ohraničení a s netypickými úhly.
Extrahované informace o tabulce zahrnují počet sloupců a řádků, rozsah řádků a rozsah sloupců. Každá buňka s ohraničujícím rámečkem je uvedena spolu s tím, zda je oblast identifikována jako součást záhlaví nebo ne. Buňky záhlaví předpovězené modelem 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 obsahuje také celý text s odkazy na jednotlivá slova v oddílu readResults .
Značky výběru (dokumenty)
Rozhraní API rozložení také extrahuje značky výběru z dokumentů. Z extrahovaných značek výběru jsou zahrnuty ohraničující rámeček, důvěryhodnost a stav (vybrané/nevybrané). Informace o značce výběru se extrahují v readResults části výstupu JSON.
Průvodce migrací
- Pokud chcete zjistit, jak používat verzi v3.1 ve vašich aplikacích a pracovních postupech, postupujte podle kroků v průvodci migrací Document Intelligence v3.1.
- Pokud používáte verzi 3.0, proveďte migraci na verzi 4.0 před 30. březnem 2029. Použijte průvodce migrací document intelligence a rychlý start k verzi 4.0.
Související obsah
- Naučte se zpracovávat vlastní formuláře a dokumenty pomocí nástroje Document Intelligence Studio.
- Dokončete rychlý start s funkcí Document Intelligence a vytvořte aplikaci pro zpracování dokumentů ve zvoleném vývojovém jazyce.
- Naučte se zpracovávat vlastní formuláře a dokumenty pomocí ukázkového nástroje pro označování Document Intelligence.
- Dokončete rychlý start s funkcí Document Intelligence a vytvořte aplikaci pro zpracování dokumentů ve zvoleném vývojovém jazyce.