- 类别:
:doc:`/sql-reference/functions-string`(大型语言模型)
PARSE_DOCUMENT (SNOWFLAKE.CORTEX)¶
返回从 Snowflake 暂存区上文档中提取的内容,作为 OBJECT,包含作为字符串的 JSON 编码对象。此功能支持两种提取类型,光学字符识别 (OCR) 和布局。要了解更多信息,请参阅 Cortex PARSE_DOCUMENT。
语法¶
SNOWFLAKE.CORTEX.PARSE_DOCUMENT( '@<stage>', '<path>', [ { 'mode': '<mode>' }, ] )
实参¶
必填:
stage
Snowflake 暂存区的名称。
path
Snowflake 暂存区上文档的相对路径。
可选:
mode
返回类型 OBJECT 的值。在对象中,键
content
的值包含提取的数据作为 JSON 编码的字符串。数据可以根据调用中指定的模式以格式化或纯文本的形式存在。如果
mode
是LAYOUT
,那么数据是包含表的结构化内容的 Markdown。如果
mode
是OCR
,那么数据是文本内容。
默认:
'OCR'
返回¶
包含提取的数据的 OBJECT 数据类型。内容取决于调用中使用的模式:
OCR 模式(默认):JSON(以字符串形式),包含如下所述的键。
"content"
:从文档中提取的文本。"errorInformation"
:如果提取失败,则包含错误信息。
LAYOUT 模式(预览版):JSON(以字符串形式),包含如下所述的键。
"content"
:Markdown 格式的文本,其中包含从文档中提取的表。"errorInformation"
:如果提取失败,则包含错误信息。
示例¶
OCR 模式¶
SELECT TO_VARCHAR(
SNOWFLAKE.CORTEX.PARSE_DOCUMENT(
'@PARSE_DOCUMENT.DEMO.documents',
'document_1.pdf',
{'mode': 'OCR'})
) AS OCR;
输出:
{
"content": "content of the document"
}
LAYOUT 模式¶
此示例解析了一个文档,其中包含以下截图所示的表:

SELECT
TO_VARCHAR (
SNOWFLAKE.CORTEX.PARSE_DOCUMENT (
'@PARSE_DOCUMENT.DEMO.documents',
'document_1.pdf',
{'mode': 'LAYOUT'} ) ) AS LAYOUT;
输出:
{
"content": "# This is PARSE DOCUMENT example
Example table:
|Header|Second header|Third Header|
|:---:|:---:|:---:|
|First row header|Data in first row|Data in first row|
|Second row header|Data in second row|Data in second row|
Some more text."
}
限制¶
Snowflake Cortex 函数不支持动态表增量刷新。