Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
文档提取技能从扩充管道中的文件中提取内容。 默认情况下,内容提取或检索内置于扩充管道中。 但是,通过使用文档提取技能,可以控制参数的设置方式,以及如何在扩充树中命名提取的内容。
对于 矢量 和 多模式搜索,与文本拆分技能相结合的文档提取比其他 数据分块方法更实惠。
注意
此技能不受限于 Azure AI 服务,也没有 Azure AI 服务密钥要求。
此技能可提取文本和图像。 文本提取是免费的。 图像提取 由 Azure AI 搜索计费。 在免费搜索服务中,每个索引器每天 20 个事务的成本已豁免,因此你可以免费完成快速入门、教程和小型项目。 对于基本层和更高层,可计费图像提取。
@odata.type
Microsoft.Skills.Util.DocumentExtractionSkill
支持的文档格式
DocumentExtractionSkill 可从以下文档格式提取文本:
- CSV(请参阅为 CSV Blob 编制索引)
- EML
- EPUB
- GZ
- HTML
- JSON(请参阅为 JSON blob 编制索引)
- KML(用于地理表示形式的 XML)
- Markdown
- Microsoft Office 格式:DOCX/DOC/DOCM、XLSX/XLS/XLSM、PPTX/PPT/PPTM、MSG(Outlook 电子邮件)、XML(2003 和 2006 Word XML)
- 公开文档格式:ODT、ODS、ODP
- 纯文本文件(另请参阅为纯文本编制索引)
- 富文本格式(RTF)
- XML
- ZIP
技能参数
参数区分大小写。
| 输入 | 允许的值 | 说明 |
|---|---|---|
parsingMode |
defaulttextjson |
设置为 default 从非纯文本或 JSON 的文件提取文档。 对于包含标记的源文件(如 PDF、HTML、RTF 和 Microsoft Office 文件),请使用默认值来提取不包含标记语言或标记的文本。 如果未 parsingMode 显式定义,则值为 default.如果源文件是 TXT,请设置为 text。 此分析模式可提高纯文本文件的性能。 如果文件包含标记,此模式将保留最终输出中的标记。设置为 json 从 JSON 文件提取结构化内容。 |
dataToExtract |
contentAndMetadataallMetadata |
若要提取每个文件的所有元数据和文本内容,请设置为 contentAndMetadata。 如果未 dataToExtract 显式定义,则值为 contentAndMetadata.allMetadata设置为仅提取内容类型的元数据属性,例如 PNG 文件特有的元数据。 |
configuration |
请参阅下文。 | 可选参数的字典,这些参数用于调整文档提取执行方式。 有关支持的配置属性的说明,请参阅下表。 |
| 配置参数 | 允许的值 | 说明 |
|---|---|---|
imageAction |
nonegenerateNormalizedImagesgenerateNormalizedImagePerPage |
若要忽略数据集中的嵌入图像或图像文件,或者如果源数据不包含图像文件,请设置为 none。 此值为默认值。对于 OCR 和图像分析,设置为 generateNormalizedImages 可使技能在文档破解过程中创建规范化图像的数组。 此操作需要 parsingMode 设置为 default 和 dataToExtract 设置为 contentAndMetadata。 规范化图像具有调整大小和旋转的统一输出,以促进视觉搜索结果中的一致呈现。 技能为每个图像生成此信息。如果设置为 imageActiongenerateNormalizedImagePerPage,则每个 PDF 页面将呈现为图像并规范化,而不是提取嵌入的图像。 对待非 PDF 文件类型的方式与设置了 generateNormalizedImages 时相同。 |
normalizedImageMaxWidth |
一个介于 50 和 10000 之间的整数 | 生成的规范化图像的最大宽度(以像素为单位)。 默认为 2000。 |
normalizedImageMaxHeight |
一个介于 50 和 10000 之间的整数 | 生成的规范化图像的最大高度(以像素为单位)。 默认为 2000。 |
注意
将规范化图像的最大宽度和高度默认设置为 2000 像素是考虑到 OCR 技术所能够支持的最大大小以及图像分析技术。 OCR 技能支持非英语语言的最大宽度和高度为 4200,支持英语语言的最大宽度和高度为 10000。 如果增加最大限制,则根据技能组定义和文档语言,对较大的图像进行处理可能会失败。
技能输入
| 输入名称 | 说明 |
|---|---|
file_data |
应从其中提取内容的文件。 |
“file_data”必须是按如下所示定义的对象:
{
"$type": "file",
"data": "BASE64 encoded string of the file"
}
或者,可将其定义为:
{
"$type": "file",
"url": "URL to download file",
"sasToken": "OPTIONAL: SAS token for authentication if the URL provided is for a file in blob storage"
}
可通过以下三种方式之一生成文件引用对象:
在你的索引器定义中将
allowSkillsetToReadFileData参数设置为“true”。 这将创建路径/document/file_data,该路径是一个对象,表示从 blob 数据源下载的原始文件数据。 此参数仅适用于 Blob 存储中的文件。在你的索引器定义中将
imageAction参数设置为none之外的值。 这会创建一个图像数组,该数组将遵循此技能的输入在逐个传递的情况下所需的约定(即/document/normalized_images/*)。让自定义技能返回严格如上所述定义的 json 对象。
$type参数必须精确设置为file,data参数必须是文件内容的 Base64 编码字节数组数据,或者url参数必须是格式正确的 URL,有权在该位置下载文件。
技能输出
| 输出名称 | 说明 |
|---|---|
content |
文档的文本内容。 |
normalized_images |
如果 imageAction 设置为其他 none值,则新的 normalized_images 字段包含图像数组。 有关输出格式的详细信息,请参阅 从图像中提取文本和信息。 |
示例定义
{
"@odata.type": "#Microsoft.Skills.Util.DocumentExtractionSkill",
"parsingMode": "default",
"dataToExtract": "contentAndMetadata",
"configuration": {
"imageAction": "generateNormalizedImages",
"normalizedImageMaxWidth": 2000,
"normalizedImageMaxHeight": 2000
},
"context": "/document",
"inputs": [
{
"name": "file_data",
"source": "/document/file_data"
}
],
"outputs": [
{
"name": "content",
"targetName": "extracted_content"
},
{
"name": "normalized_images",
"targetName": "extracted_normalized_images"
}
]
}
示例输入
{
"values": [
{
"recordId": "1",
"data":
{
"file_data": {
"$type": "file",
"data": "aGVsbG8="
}
}
}
]
}
示例输出
{
"values": [
{
"recordId": "1",
"data": {
"content": "hello",
"normalized_images": []
}
}
]
}