Remarque
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
Ce contenu s’applique à :
v4.0 (GA) | Versions précédentes :
v3.1 (GA)
v3.0 (GA)
v2.1 (GA)
Le modèle de disposition Azure Document Intelligence dans Foundry Tools est une API d’analyse avancée des documents basée sur le Machine Learning. Le modèle est disponible dans le cloud Intelligence documentaire. Vous pouvez l’utiliser pour prendre des documents dans différents formats et retourner des représentations de données structurées des documents. Le modèle combine une version améliorée de nos puissantes capacités de reconnaissance optique de caractères (OCR) avec des modèles de Deep Learning (apprentissage approfondi) pour extraire du texte, des tableaux, des marques de sélection et la structure du document.
Analyse de la structure de document
L’analyse de la disposition structurelle d’un document est le processus consistant à analyser un document pour en extraire les parties intéressantes et leurs interrelations. L’objectif est d’extraire le texte et les éléments structurels de la page pour créer de meilleurs modèles de compréhension sémantique. Il existe deux types de rôles dans une mise en page de document :
- Rôles géométriques : Le texte, les tableaux, les figures et les marques de sélection sont des exemples de rôles géométriques.
- Rôles logiques : Les titres, les en-têtes et les pieds de page sont des exemples de rôles logiques des textes.
L’illustration suivante montre les composants typiques dans une image d’un exemple de page.
Options de développement
Intelligence documentaire v4.0: 2024-11-30 (GA) prend en charge les outils, applications et bibliothèques suivants.
| Fonctionnalité | Ressources | ID de modèle |
|---|---|---|
| Modèle de disposition | • Document Intelligence Studio • API REST • SDK C# • SDK Python • SDK Java • SDK JavaScript |
prebuilt-layout |
Langues prises en charge
Pour obtenir la liste complète des langues prises en charge, consultez Support linguistique : modèles d’analyse de documents.
Types de fichiers pris en charge
Document Intelligence v4.0 : 2024-11-30 (GA) prend en charge les formats de fichier suivants :
| Modèle | Image : JPEG/JPG, PNG, BMP, TIFF, HEIF |
Office : Word (DOCX), Excel (XLS), PowerPoint (PPTX), HTML |
|
|---|---|---|---|
| Mise en page | ✔ | ✔ | ✔ |
Critères des entrées
- Photos et analyses : pour obtenir de meilleurs résultats, fournissez une photo claire ou une analyse de haute qualité par document.
- PDF et TIFF : pour les fichiers PDF et les TIFF, jusqu’à 2 000 pages peuvent être traitées. (Avec un abonnement de niveau gratuit, seules les deux premières pages sont traitées.)
- Verrous de mot de passe : si vos fichiers PDF sont verrouillés par mot de passe, vous devez supprimer le verrou avant la soumission.
- Taille du fichier : la taille de fichier pour l’analyse des documents est de 500 Mo pour le niveau payant (S0) et de 4 Mo pour le niveau gratuit (F0).
- Dimensions de l’image : les dimensions de l’image doivent être comprises entre 50 x 50 pixels et 10 000 x 10 000 pixels.
- Hauteur du texte : la hauteur minimale du texte à extraire est de 12 pixels pour une image de 1024 x 768 pixels. Cette dimension correspond à environ 8 points de texte à 150 points par pouce.
- Entraînement de modèle personnalisé : le nombre maximal de pages pour les données d’apprentissage est de 500 pour le modèle personnalisé et de 50 000 pour le modèle neuronal personnalisé.
- Entraînement du modèle d’extraction personnalisé : la taille totale des données d’entraînement est de 50 Mo pour le modèle et de 1 Go pour le modèle neuronal.
- Entraînement du modèle de classification personnalisé : la taille totale des données d’apprentissage est de 1 Go avec un maximum de 10 000 pages. Pour 2024-11-30 (GA), la taille totale des données d’apprentissage est de 2 Go avec un maximum de 10 000 pages.
- Types de fichiers Office (DOCX, XLSX, PPTX) : la limite maximale de longueur de chaîne est de 8 millions de caractères.
Pour plus d’informations sur l’utilisation du modèle, les quotas et les limites de service, consultez Limites de service.
Bien démarrer avec le modèle de disposition
Découvrez comment les données, y compris le texte, les tableaux, les en-têtes de tableau, les marques de sélection et les informations de structure, sont extraites des documents avec Intelligence documentaire. Vous avez besoin des ressources suivantes :
Un abonnement Azure. Vous pouvez en créer un gratuitement.
Une instance Intelligence documentaire dans le Portail Azure. Vous pouvez utiliser le niveau tarifaire gratuit (F0) pour tester le service. Une fois votre ressource déployée, sélectionnez Accéder à la ressource pour accéder à la clé et au point de terminaison.
Après avoir récupéré la clé et le point de terminaison, utilisez les options de développement suivantes pour générer et déployer vos applications Intelligence documentaire.
- REST API
- Fournisseurs de données pour la connexion à Azure Analysis Services
- Document Intelligence Studio
Extraction de données
Le modèle de disposition extrait les éléments structurels de vos documents. Les éléments structurels suivants sont décrits dans le reste de cet article, ainsi que des conseils sur la façon de les extraire de votre entrée de document :
- Pages
- Paragraphes
- Texte, lignes et mots
- Marques de sélection
- Tables
- Réponse de sortie à Markdown
- Figures
- Sections
Exécutez l’exemple d’analyse de la disposition du document dans Document Intelligence Studio. Accédez ensuite à l’onglet résultats et accédez à la sortie JSON complète.
Pages
La collection pages est une liste de pages dans le document. Chaque page est représentée séquentiellement dans le document et inclut l’angle d’orientation qui indique si la page est tournée ainsi que la largeur et la hauteur (dimensions en pixels). Les unités de page dans la sortie du modèle sont calculées comme indiqué dans le tableau suivant.
| Format de fichier | Unité de page calculée | Nombre total de pages |
|---|---|---|
| Images (JPEG/JPG, PNG, BMP, HEIF) | Chaque image = 1 unité de page. | Nombre total d'images |
| Chaque page du PDF = 1 unité de page. | Nombre total de pages dans le fichier PDF | |
| TIFF | Chaque image dans le fichier TIFF = 1 unité de page. | Nombre total d’images dans le fichier TIFF |
| Word (DOCX) | Jusqu’à 3 000 caractères = 1 unité de page. Les images incorporées ou liées ne sont pas prises en charge. | Nombre total de pages allant jusqu’à 3 000 caractères chacune |
| Excel (XLSX) | Chaque feuille de calcul = 1 unité de page. Les images incorporées ou liées ne sont pas prises en charge. | Nombre total de feuilles de calcul |
| PowerPoint (PPTX) | Chaque diapositive = 1 unité de page. Les images incorporées ou liées ne sont pas prises en charge. | Nombre total de diapositives |
| HTML | Jusqu’à 3 000 caractères = 1 unité de page. Les images incorporées ou liées ne sont pas prises en charge. | Nombre total de pages allant jusqu’à 3 000 caractères chacune |
# 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}")
Extraire les pages sélectionnées
Pour les documents volumineux comportant plusieurs pages, utilisez le paramètre de requête pages pour indiquer des numéros de page ou des plages de pages spécifiques pour l’extraction de texte.
Paragraphes
Le modèle de disposition extrait tous les blocs de texte identifiés dans la collection paragraphs en tant qu’objet de niveau supérieur sous analyzeResults. Chaque entrée de cette collection représente un bloc de texte et inclut le texte extrait sous la forme content et les coordonnées polygon limitrophes. Les informations de spans pointent vers le fragment de texte de la propriété content de premier niveau contenant le texte intégral du document.
"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"
}
]
Rôles de paragraphe
La nouvelle détection d’objet de page basée sur l’apprentissage automatique extrait les rôles logiques tels que les titres, les en-têtes de section, les en-têtes de page, les pieds de page, etc. Le modèle de disposition d’Intelligence documentaire affecte certains blocs de texte de la collection paragraphs avec leur rôle ou type spécialisé prédit par le modèle.
Il est préférable d’utiliser les rôles de paragraphe avec des documents non structurés pour mieux comprendre la disposition du contenu extrait pour une analyse sémantique plus riche. Les rôles de paragraphe suivants sont pris en charge.
| Rôle prédit | Descriptif | Types de fichiers pris en charge |
|---|---|---|
title |
Les titres principaux de la page | PDF, Image, DOCX, PPTX, XLSX, HTML |
sectionHeading |
Un ou plusieurs sous-titres sur la page | PDF, Image, DOCX, XLSX, HTML |
footnote |
Texte près du bas de la page | PDF, image |
pageHeader |
Texte près du bord supérieur de la page | PDF, Image, DOCX |
pageFooter |
Texte près du bord inférieur de la page | PDF, Image, DOCX, PPTX, HTML |
pageNumber |
Nombre de pages | PDF, image |
{
"paragraphs": [
{
"spans": [],
"boundingRegions": [],
"role": "title",
"content": "NEWS TODAY"
},
{
"spans": [],
"boundingRegions": [],
"role": "sectionHeading",
"content": "Mirjam Nilsson"
}
]
}
Texte, lignes et mots
Le modèle de disposition de documents dans Intelligence documentaire extrait le texte de style imprimé et manuscrit en tant que lines et words. La collection styles inclut tout style manuscrit détecté pour les lignes ainsi que les étendues pointant vers le texte associé. Cette fonctionnalité s’applique aux langues manuscrites prises en charge.
Pour Microsoft Word, Excel, PowerPoint et HTML, Intelligence documentaire v4.0 2024-11-30 (GA), le modèle de disposition extrait tout le texte incorporé tel quel. Les textes sont extraits sous forme de mots et de paragraphes. Les images incorporées ne sont pas prises en charge.
# 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}")
Style manuscrit des lignes de texte
La réponse indique si chaque ligne de texte est dans un style manuscrit ou non, ainsi qu’un score de confiance. Pour plus d’informations, consultez Prises en charge des langues manuscrites. L’exemple suivant montre un exemple d’extrait JSON.
"styles": [
{
"confidence": 0.95,
"spans": [
{
"offset": 509,
"length": 24
}
"isHandwritten": true
]
}
Si vous activez la fonctionnalité de complément de police/style, vous obtenez également le résultat de police/style dans le cadre de l’objet styles.
Marques de sélection
Le modèle de disposition extrait aussi les marques de sélection des documents. Les marques de sélection extraites apparaissent dans la collection pages pour chaque page. Elles incluent le polygon limitrophe, confidence et la sélection state (selected/unselected). La représentation sous forme de texte (autrement dit, :selected: et :unselected) est également incluse comme index de départ (offset) et length qui référence la propriété content de niveau supérieur contenant le texte intégral du document.
# 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}"
)
Tableaux
L’extraction de tableaux est une condition essentielle pour le traitement de documents contenant de grands volumes de données généralement mis en forme en tant que tableaux. Le modèle de disposition extrait des tableaux dans la section pageResults de la sortie JSON. Les informations extraites d’un tableau comprennent le nombre de colonnes et de lignes, la portée des lignes et la portée des colonnes.
Chaque cellule avec son polygone limitrophe est une sortie avec des informations que la zone soit reconnue comme columnHeader ou non. Le modèle prend en charge l’extraction de tableaux pivotés. Chaque cellule de tableau contient l’index de ligne et de colonne et les coordonnées du polygone limitrophe. Pour le texte de cellule, le modèle génère les informations span contenant l’index de démarrage (offset). Le modèle génère également la length du contenu supérieur qui contient le texte intégral du document.
Voici quelques facteurs à prendre en compte lorsque vous utilisez la fonctionnalité d’extraction de balles Intelligence documentaire :
- Les données que vous voulez extraire sont-elles présentées sous forme de tableau ? La structure du tableau est-elle significative ?
- Si les données ne sont pas au format tableau, peuvent-elles être contenues dans une grille à deux dimensions ?
- Vos tableaux s’étendent-ils sur plusieurs pages ? Si tel est le cas, pour éviter d’avoir à étiqueter toutes les pages, divisez le PDF en pages avant de l’envoyer à Intelligence documentaire. Après l’analyse, effectuez un post-traitement des pages dans un tableau unique.
- Consultez Champs tabulaires si vous créez des modèles personnalisés. Les tableaux dynamiques contiennent un nombre variable de lignes pour chaque colonne. Les tableaux fixes, eux, contiennent un nombre constant de lignes pour chaque colonne.
Remarque
L’analyse de table n’est pas prise en charge si le fichier d’entrée est XLSX. Pour 2024-11-30 (GA), les zones englobantes pour les figures et les tableaux couvrent seulement le contenu principal, et excluent les légendes et les notes de bas de page associées.
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}'")
Réponse de sortie au format Markdown
L’API de disposition peut générer le texte extrait au format Markdown. Utilisez le outputContentFormat=markdown pour spécifier le format de sortie en Markdown. Le contenu markdown est généré dans le cadre de la section content.
Remarque
Pour v4.0 2024-11-30 (GA), la représentation des tableaux est changée en tableaux HTML pour permettre le rendu des éléments, tels que les cellules fusionnées et les en-têtes multilignes. Une autre modification associée consiste à utiliser des caractères ☒ de case à cocher Unicode et ☐ à des marques de sélection au lieu de :selected: et :unselected:. Cette mise à jour signifie que le contenu des champs de marques de sélection contient :selected:, même si leurs étendues font référence à des caractères Unicode dans l’étendue de niveau supérieur. Pour obtenir une définition complète des éléments Markdown, consultez Format de sortie 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,
)
Figures
Les figures (graphiques et images) dans les documents jouent un rôle essentiel dans le complément et l’amélioration du contenu textuel. Elles fournissent des représentations visuelles qui facilitent la compréhension des informations complexes. L’objet figures détecté par le modèle de disposition a des propriétés clés comme :
-
boundingRegions: emplacements spatiaux de la figure sur les pages du document, y compris le numéro de page et les coordonnées de polygones qui décrivent la limite de la figure. -
spans: le texte s’étend en fonction de la figure qui spécifie leurs décalages et longueurs dans le texte du document. Cette connexion permet d’associer la figure à son contexte textuel pertinent. -
elements: identificateurs pour les éléments de texte ou les paragraphes du document qui sont liés ou décrivent la figure. -
caption: description s’il en existe une.
Lorsque output=figures est spécifiée lors de l’opération d’analyse initiale, le service génère des images rognées pour toutes les figures détectées accessibles via /analyeResults/{resultId}/figures/{figureId}. La valeur FigureId est l’ID inclus dans chaque objet figure, suivant une convention non documentée de {pageNumber}.{figureIndex} où figureIndex réinitialise à une par page.
Pour v4.0 2024-11-30 (GA), les zones englobantes pour les figures et les tableaux couvrent seulement le contenu principal, et excluent les légendes et les notes de bas de page associées.
# 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}'")
Rubriques
L'analyse de la structure hiérarchique des documents est essentielle à l'organisation, à la compréhension et au traitement de documents volumineux. Cette approche est vitale pour segmenter sémantiquement de longs documents afin d'améliorer la compréhension, de faciliter la navigation et d'améliorer la récupération d'informations. L’avènement de la génération augmentée de récupération (RAG) dans l’IA générative de documents souligne l’importance de l’analyse hiérarchique de la structure des documents.
Le modèle de disposition prend en charge les sections et les sous-sections dans la sortie, ce qui identifie la relation entre les sections et l'objet au sein de chaque section. La structure hiérarchique est conservée dans elements pour chaque section. Vous pouvez utiliser la réponse de sortie au format Markdown pour obtenir facilement les sections et sous-sections en 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,
)
Ce contenu s’applique à la version :
v3.1 (GA) | Dernière version :
v4.0 (GA) | Versions précédentes :
v3.0
v2.1
Ce contenu s’applique à :
v2.1 | Dernière version :
v4.0 (GA)
Le modèle de disposition d’Intelligence documentaire est une API d’analyse de document avancée. Le modèle est basé sur le Machine Learning et est disponible dans le cloud d’Intelligence documentaire. Vous pouvez l’utiliser pour prendre des documents dans différents formats et retourner des représentations de données structurées des documents. Il combine une version améliorée des puissantes fonctionnalités OCR avec des modèles d’apprentissage profond. Vous pouvez l’utiliser pour extraire du texte, des tableaux, des marques de sélection et une structure de document.
Analyse de la disposition de documents
L’analyse de la disposition structurelle d’un document est le processus consistant à analyser un document pour en extraire les parties intéressantes et leurs interrelations. L’objectif est d’extraire le texte et les éléments structurels de la page pour créer de meilleurs modèles de compréhension sémantique. Il existe deux types de rôles dans une mise en page de document :
- Rôles géométriques : Le texte, les tableaux, les figures et les marques de sélection sont des exemples de rôles géométriques.
- Rôles logiques : Les titres, les en-têtes et les pieds de page sont des exemples de rôles logiques des textes.
L’illustration suivante montre les composants typiques dans une image d’un exemple de page.
Langues et régions prises en charge
Pour obtenir la liste complète des langues prises en charge, consultez Support linguistique : modèles d’analyse de documents.
Intelligence documentaire v2.1 prend en charge les outils, applications et bibliothèques suivants.
| Fonctionnalité | Ressources |
|---|---|
| Modèle de disposition | • Outil d’étiquetage Intelligence Documentaire • API REST • Kit SDK Bibliothèque de client • Conteneur Docker Intelligence Documentaire |
Conseils d’entrée
Formats de fichiers pris en charge :
| Modèle | Image : JPEG/JPG, PNG, BMP, TIFF, HEIF |
Office : Word (DOCX), Excel (XLSX), PowerPoint (PPTX), HTML |
|
|---|---|---|---|
| Lire | ✔ | ✔ | ✔ |
| Mise en page | ✔ | ✔ | |
| Document général | ✔ | ✔ | |
| Prédéfini | ✔ | ✔ | |
| Extraction personnalisée | ✔ | ✔ | |
| Classification personnalisée | ✔ | ✔ | ✔ |
- Photos et analyses : pour obtenir de meilleurs résultats, fournissez une photo claire ou une analyse de haute qualité par document.
- PDF et TIFF : pour les PDF et les TIFF, jusqu’à 2 000 pages peuvent être traitées avec un abonnement de niveau gratuit. Seules les deux premières pages sont traitées.
- Taille du fichier : la taille de fichier pour l’analyse des documents est de 500 Mo pour le niveau payant (S0) et de 4 Mo pour le niveau gratuit (F0).
- Dimensions de l’image : les dimensions de l’image doivent être comprises entre 50 x 50 pixels et 10 000 x 10 000 pixels.
- Verrous de mot de passe : si vos fichiers PDF sont verrouillés par mot de passe, vous devez supprimer le verrou avant la soumission.
- Hauteur du texte : la hauteur minimale du texte à extraire est de 12 pixels pour une image de 1024 x 768 pixels. Cette dimension correspond à environ 8 points de texte à 150 points par pouce.
- Entraînement de modèle personnalisé : le nombre maximal de pages pour les données d’apprentissage est de 500 pour le modèle personnalisé et de 50 000 pour le modèle neuronal personnalisé.
- Entraînement du modèle d’extraction personnalisé : la taille totale des données d’entraînement est de 50 Mo pour le modèle et de 1 Go pour le modèle neuronal.
- Entraînement du modèle de classification personnalisé : la taille totale des données d’apprentissage est de 1 Go avec un maximum de 10 000 pages. Pour 2024-11-30 (GA), la taille totale des données d’apprentissage est de 2 Go avec un maximum de 10 000 pages.
- Types de fichiers Office (DOCX, XLSX, PPTX) : la limite maximale de longueur de chaîne est de 8 millions de caractères.
Guide d’entrée
- Formats de fichiers pris en charge : JPEG, PNG, PDF et TIFF.
- Nombre de pages pris en charge : pour PDF et TIFF, jusqu’à 2 000 pages sont traitées. Abonnés du niveau Gratuit : seules les deux premières pages sont traitées.
- Taille de fichier prise en charge : la taille de fichier doit être inférieure à 50 Mo, et les dimensions comprises entre 50 × 50 pixels et 10 000 × 10 000 pixels.
Bien démarrer
Vous pouvez utiliser Intelligence documentaire pour extraire des données telles que du texte, des tableaux, des en-têtes de tableau, des marques de sélection et des informations de structure à partir de documents. Vous avez besoin des ressources suivantes :
- Un abonnement Azure. Vous pouvez en créer un gratuitement.
- Une instance Intelligence documentaire dans le Portail Azure. Vous pouvez utiliser le niveau tarifaire gratuit (F0) pour tester le service. Une fois votre ressource déployée, sélectionnez Accéder à la ressource pour accéder à la clé et au point de terminaison.
Après avoir récupéré la clé et le point de terminaison, vous pouvez utiliser les options de développement suivantes pour générer et déployer vos applications Intelligence documentaire.
Remarque
Document Intelligence Studio est disponible avec les API v3.0 et versions ultérieures.
API REST
Outil d’étiquetage d’exemples d’Intelligence documentaire
Accédez à Outil d’étiquetage d’exemple Intelligence documentaire.
Dans la page d’accueil de l’outil d’étiquetage des exemples, sélectionnez Utiliser Disposition pour obtenir du texte, des tableaux et des marques de sélection.
Dans le champ Point de terminaison du service Document Intelligence, collez le point de terminaison que vous avez obtenu avec votre abonnement Document Intelligence.
Dans le champ Clé, collez la clé que vous avez obtenue de votre ressource Document Intelligence.
Dans le champ Source, sélectionnez URL dans le menu déroulant. Vous pouvez utiliser l’exemple de document :
Sélectionnez Récupérer.
Sélectionnez Exécuter la requête. L’outil d’étiquetage des exemples d’Intelligence Documentaire appelle l’API Analyze Layout pour analyser le document.
Affichez les résultats. Consultez le texte extrait mis en évidence, les marques de sélection détectées et les tableaux détectés.
Intelligence documentaire v2.1 prend en charge les outils, applications et bibliothèques suivants.
| Fonctionnalité | Ressources |
|---|---|
| API de disposition | • Outil d’étiquetage Intelligence Documentaire • API REST • Kit SDK Bibliothèque de client • Conteneur Docker Intelligence Documentaire |
Extraire des données
Le modèle de disposition extrait les éléments structurels de vos documents. Les éléments structurels sont décrits ici et les instructions suivantes vous montrent comment les extraire de votre entrée de document.
Extraire des données
Le modèle de disposition extrait les éléments structurels de vos documents. Les éléments structurels sont décrits ici et les instructions suivantes vous montrent comment les extraire de votre entrée de document.
Page
La collection pages est une liste de pages dans le document. Chaque page est représentée séquentiellement dans le document et inclut l’angle d’orientation qui indique si la page est tournée ainsi que la largeur et la hauteur (dimensions en pixels). Les unités de page dans la sortie du modèle sont calculées comme indiqué dans le tableau suivant.
| Format de fichier | Unité de page calculée | Nombre total de pages |
|---|---|---|
| Images (JPEG/JPG, PNG, BMP, HEIF) | Chaque image = 1 unité de page. | Nombre total d'images |
| Chaque page du PDF = 1 unité de page. | Nombre total de pages dans le fichier PDF | |
| TIFF | Chaque image dans le fichier TIFF = 1 unité de page. | Nombre total d’images dans le fichier TIFF |
| Word (DOCX) | Jusqu’à 3 000 caractères = 1 unité de page. Les images incorporées ou liées ne sont pas prises en charge. | Nombre total de pages allant jusqu’à 3 000 caractères chacune |
| Excel (XLSX) | Chaque feuille de calcul = 1 unité de page. Les images incorporées ou liées ne sont pas prises en charge. | Nombre total de feuilles de calcul |
| PowerPoint (PPTX) | Chaque diapositive = 1 unité de page. Les images incorporées ou liées ne sont pas prises en charge. | Nombre total de diapositives |
| HTML | Jusqu’à 3 000 caractères = 1 unité de page. Les images incorporées ou liées ne sont pas prises en charge. | Nombre total de pages allant jusqu’à 3 000 caractères chacune |
"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}"
)
Extraire les pages sélectionnées à partir de documents
Pour les documents volumineux comportant plusieurs pages, utilisez le paramètre de requête pages pour indiquer des numéros de page ou des plages de pages spécifiques pour l’extraction de texte.
Paragraph
Le modèle de disposition extrait tous les blocs de texte identifiés dans la collection paragraphs en tant qu’objet de niveau supérieur sous analyzeResults. Chaque entrée de cette collection représente un bloc de texte et inclut le texte extrait sous la forme content et les coordonnées polygon limitrophes. Les informations de span pointent vers le fragment de texte de la propriété content de premier niveau contenant le texte intégral du document.
"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"
}
]
Rôles de paragraphe
La nouvelle détection d’objet de page basée sur l’apprentissage automatique extrait les rôles logiques tels que les titres, les en-têtes de section, les en-têtes de page, les pieds de page, etc. Le modèle de disposition d’Intelligence documentaire affecte certains blocs de texte de la collection paragraphs avec leur rôle ou type spécialisé prédit par le modèle. Il est préférable d’utiliser les rôles de paragraphe avec des documents non structurés pour mieux comprendre la disposition du contenu extrait pour une analyse sémantique plus riche. Les rôles de paragraphe suivants sont pris en charge.
| Rôle prédit | Descriptif | Types de fichiers pris en charge |
|---|---|---|
title |
Les titres principaux de la page | PDF, Image, DOCX, PPTX, XLSX, HTML |
sectionHeading |
Un ou plusieurs sous-titres sur la page | PDF, Image, DOCX, XLSX, HTML |
footnote |
Texte près du bas de la page | PDF, image |
pageHeader |
Texte près du bord supérieur de la page | PDF, Image, DOCX |
pageFooter |
Texte près du bord inférieur de la page | PDF, Image, DOCX, PPTX, HTML |
pageNumber |
Nombre de pages | PDF, image |
{
"paragraphs": [
{
"spans": [],
"boundingRegions": [],
"role": "title",
"content": "NEWS TODAY"
},
{
"spans": [],
"boundingRegions": [],
"role": "sectionHeading",
"content": "Mirjam Nilsson"
}
]
}
Texte, ligne et mot
Le modèle de disposition de documents dans Intelligence documentaire extrait le texte de style imprimé et manuscrit en tant que lignes et mots. La collection styles inclut un style manuscrit pour les lignes si détectées, ainsi que les étendues qui pointent vers le texte associé. Cette fonctionnalité s’applique aux langues manuscrites prises en charge.
Pour Word, Excel, PowerPoint et HTML, Intelligence documentaire v4.0 2024-11-30 (GA), le modèle de disposition extrait tout le texte incorporé tel quel. Les textes sont extraits sous forme de mots et de paragraphes. Les images incorporées ne sont pas prises en charge.
"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}"
)
Style manuscrit
La réponse inclut le classement de chaque ligne de texte selon qu’elle est de style manuscrit ou non, avec un score de confiance. Pour plus d’informations, consultez Prises en charge des langues manuscrites. L’exemple suivant montre un exemple d’extrait JSON.
"styles": [
{
"confidence": 0.95,
"spans": [
{
"offset": 509,
"length": 24
}
"isHandwritten": true
]
}
Si vous activez la fonctionnalité de complément de police/style, vous obtenez également le résultat de police/style dans le cadre de l’objet styles.
Marque de sélection
Le modèle de disposition extrait aussi les marques de sélection des documents. Les marques de sélection extraites apparaissent dans la collection pages pour chaque page. Elles incluent le polygon limitrophe, confidence et la sélection state (selected/unselected). La représentation sous forme de texte (autrement dit, :selected: et :unselected) est également incluse comme index de départ (offset) et length qui référence la propriété content de niveau supérieur contenant le texte intégral du document.
{
"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}"
)
Tableau
L’extraction de tableaux est une condition essentielle pour le traitement de documents contenant de grands volumes de données généralement mis en forme en tant que tableaux. Le modèle de disposition extrait des tableaux dans la section pageResults de la sortie JSON. Les informations extraites d’un tableau comprennent le nombre de colonnes et de lignes, la portée des lignes et la portée des colonnes. Chaque cellule avec son polygone limitrophe est une sortie avec des informations que la zone soit reconnue comme columnHeader ou non.
Le modèle prend en charge l’extraction de tableaux pivotés. Chaque cellule de tableau contient l’index de ligne et de colonne et les coordonnées du polygone limitrophe. Pour le texte de cellule, le modèle génère les informations span contenant l’index de démarrage (offset). Le modèle génère également la length du contenu supérieur qui contient le texte intégral du document.
Voici quelques facteurs à prendre en compte lorsque vous utilisez la fonctionnalité d’extraction de balles Intelligence documentaire :
- Les données que vous voulez extraire sont-elles présentées sous forme de tableau ? La structure du tableau est-elle significative ?
- Si les données ne sont pas au format tableau, peuvent-elles être contenues dans une grille à deux dimensions ?
- Vos tableaux s’étendent-ils sur plusieurs pages ? Si tel est le cas, pour éviter d’avoir à étiqueter toutes les pages, divisez le PDF en pages avant de l’envoyer à Intelligence documentaire. Après l’analyse, effectuez un post-traitement des pages dans un tableau unique.
- Consultez Champs tabulaires si vous créez des modèles personnalisés. Les tableaux dynamiques contiennent un nombre variable de lignes pour chaque colonne. Les tableaux fixes, eux, contiennent un nombre constant de lignes pour chaque colonne.
Remarque
L’analyse de table n’est pas prise en charge si le fichier d’entrée est XLSX. Intelligence documentaire v4.0 2024-11-30 (GA) prend en charge les zones englobantes pour les figures et les tableaux qui couvrent seulement le contenu principal, et qui excluent les légendes et les notes de bas de page associées.
{
"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)}'"
)
Annotations
Le modèle de disposition extrait les annotations dans les documents, telles que les vérifications et les croisements. La réponse inclut le type d’annotation, ainsi qu’un score de confiance et un polygone englobant.
{
"pages": [
{
"annotations": [
{
"kind": "cross",
"polygon": [...],
"confidence": 1
}
]
}
]
}
Sortie de l’ordre de lecture naturel (langues latines uniquement)
Vous pouvez spécifier l’ordre dans lequel les lignes de texte sont générées avec le paramètre de requête readingOrder. Utilisez natural pour une sortie d’ordre de lecture plus conviviale, comme illustré dans l’exemple suivant. Cette fonctionnalité est prise en charge uniquement pour les langues latines.
Sélectionner un numéro de page ou une plage de pages pour l’extraction de texte
Pour les documents volumineux comportant plusieurs pages, utilisez le paramètre de requête pages pour indiquer des numéros de page ou des plages de pages spécifiques pour l’extraction de texte. L’exemple suivant montre un document de 10 pages, avec le texte extrait pour les deux cas : toutes les pages (1 à 10) et certaines pages (3 à 6).
Opération d’obtention du résultat de l’analyse de la disposition
La seconde étape consiste à appeler l’opération d’obtention du résultat de l’analyse de la disposition. Cette opération prend en entrée l’identifiant de résultat créé par l’opération Analyze Layout. Elle retourne une réponse JSON qui contient un champ État avec les possibles valeurs suivantes.
| Champ | Type | Valeurs possibles |
|---|---|---|
| statut | ficelle |
notStarted : l’opération d’analyse n’a pas commencé.running : l’opération d’analyse est en cours.failed : échec de l’opération d’analyse.succeeded : l’opération d’analyse a réussi. |
Appelez cette opération de façon itérative jusqu’à ce qu’elle renvoie la valeur succeeded. Pour éviter de dépasser le taux de requêtes par seconde, utilisez un intervalle de trois à cinq secondes.
Quand le champ status a la valeur succeeded, la réponse JSON inclut la mise en page, le texte, les tableaux et les marques de sélection extraits. Les données extraites comprennent les lignes de texte et les mots extraits, les cadres englobants, l’aspect du texte avec indication manuscrite, les tableaux et les marques de sélection avec indication de sélection/non sélection.
Classification manuscrite pour les lignes de texte (Latin uniquement)
La réponse inclut le classement de chaque ligne de texte selon qu’elle est de style manuscrit ou non, avec un score de confiance. Cette fonctionnalité est prise en charge uniquement pour les langues latines. L’exemple suivant illustre la classification manuscrite pour le texte de l’image.
Exemple de sortir JSON
La réponse à l’opération Get Analyze Layout Result est une représentation structurée du document avec toutes les informations extraites.
Reportez-vous à cet exemple de fichier de document et cet exemple de sortie de disposition structurée.
La sortie JSON comporte deux parties :
- Le nœud
readResultscontient tout le texte reconnu et toutes les marques de sélection. La hiérarchie de présentation de texte est page, ligne, puis mots individuels. - Le nœud
pageResultscontient les tables et les cellules extraites avec leurs cadres englobants, la confiance et une référence aux lignes et aux mots dans le champreadResults.
Exemple de sortie
Texte
L’API de disposition extrait du texte des documents et des images avec plusieurs angles et couleurs de texte. Elle accepte les photos de documents, les télécopies, les textes imprimés et/ou manuscrits (en anglais uniquement) et les modes mixtes. Le texte est extrait avec des informations fournies sur les lignes, les mots, les cadres englobants, les scores de confiance et le style (manuscrit ou autre). Toutes les informations textuelles sont incluses dans la section readResults de la sortie JSON.
Tableaux avec en-têtes
L’API de disposition extrait des tableaux dans la section pageResults de la sortie JSON. Vous pouvez scanner, photographier ou numériser des documents. Les tableaux peuvent être complexes avec des cellules ou des colonnes fusionnées, avec ou sans bordures et avec des angles irréguliers.
Les informations extraites d’un tableau comprennent le nombre de colonnes et de lignes, la portée des lignes et la portée des colonnes. Chaque cellule avec son cadre englobant est une sortie avec la zone qui est reconnue comme faisant partie, ou non, d’un en-tête. Les cellules d’en-tête prédites du modèle peuvent s’étendre sur plusieurs lignes et ne sont pas nécessairement les premières lignes d’un tableau. Elles fonctionnent également avec les tableaux pivotés. Chaque cellule de tableau comprend également le texte complet avec des références aux mots individuels de la section readResults.
Marques de sélection (documents)
L’API de disposition extrait aussi les marques de sélection des documents. Les marques de sélection extraites incluent le cadre englobant, la confiance et l’état (sélectionné/non sélectionné). Les informations sur les marques de sélection sont extraites dans la section readResults de la sortie JSON.
Guide de migration
- Suivez notre Guide de migration Intelligence documentaire v3.1 pour découvrir comment utiliser la version 3.1 dans vos applications et workflows.
Contenu connexe
- Découvrez comment traiter vos propres formulaires et documents avec Document Intelligence Studio.
- Terminez un démarrage rapide avec Intelligence documentaire et créez une application de traitement des documents dans le langage de développement de votre choix.
- Découvrez comment traiter vos propres formulaires et documents avec l’Outil d’étiquetage des exemples d’Intelligence documentaire.
- Terminez un démarrage rapide avec Intelligence documentaire et créez une application de traitement des documents dans le langage de développement de votre choix.