<model_build_name> !PREDICT¶
Extrai informações de documentos em um estágio e fornece respostas em um objeto JSON. Se você especificar um único documento, o método retornará resultados para esse documento. Caso contrário, o método retorna resultados para cada documento no estágio.
Sintaxe¶
<model_build_name>!PREDICT(<presigned_url>,
[ <model_build_version> ]
)
Argumentos¶
Obrigatório:
presigned_urlURL pré-assinado dos documentos preparados.
Para obter o URL pré-assinado para passar como argumento, chame a função GET_PRESIGNED_URL. Consulte GET_PRESIGNED_URL.
Para obter mais informações, consulte Exemplo.
Nota
A função GET_PRESIGNED_URL tem um tempo de expiração padrão (60 minutos). Para obter mais informações sobre como estender o prazo de expiração, consulte GET_PRESIGNED_URL.
Opcional:
model_build_versionVersão do modelo Document AI.
Se não for especificado, a versão mais recente do modelo disponível será usada por padrão.
Retornos¶
Retorna um objeto JSON com os seguintes campos:
ocrScoreEspecifica a pontuação de confiança para o processo de reconhecimento óptico de caracteres (OCR).
scoreEspecifica a pontuação de confiança para um valor específico.
valueEspecifica a resposta extraída para a pergunta.
Extração de entidades¶
{
"__documentMetadata": {
"ocrScore": 0.918
},
"invoice_number": [
{
"score": 0.925,
"value": "123/20"
}
],
"invoice_items": [
{
"score": 0.839,
"value": "NEW CRUSHED VELVET DIVAN BED"
},
{
"score": 0.839,
"value": "Vintage Radiator"
},
{
"score": 0.839,
"value": "Solid Wooden Worktop"
},
{
"score": 0.839,
"value": "Sienna Crushed Velvet Curtains"
}
],
"tax_amount": [
{
"score": 0.879,
"value": "77.57"
}
],
"total_amount": [
{
"score": 0.809,
"value": "465.43 GBP"
}
],
"buyer_name": [
{
"score": 0.925
}
]
"vendor_name": [
{
"score": 0.9,
"value": "UK Exports & Imports Ltd"
}
]
}
Extração de tabelas¶
{
"__documentMetadata": {
"ocrScore": 0.887
},
"table1|gross": [
{
"score": 0.961,
"value": "10"
},
{
"score": 0.961,
"value": "31"
},
{
"score": 0.961,
"value": "10"
}
],
"table1|item": [
{
"score": 0.961,
"value": "apples"
},
{
"score": 0.961,
"value": "bananas"
},
{
"score": 0.961,
"value": "pears"
}
],
"table1|net": [
{
"score": 0.961,
"value": "9"
},
{
"score": 0.961,
"value": "30"
},
{
"score": 0.961,
"value": "10"
}
],
"table1|tax": [
{
"score": 0.961,
"value": "1"
},
{
"score": 0.961,
"value": "1"
},
{
"score": 0.961
}
],
"table2|age": [
{
"score": 0.894,
"value": "23"
},
{
"score": 0.894,
"value": "56"
},
{
"score": 0.894,
"value": "76"
},
{
"score": 0.894,
"value": "98"
}
],
"table2|date": [
{
"score": 0.894
},
{
"score": 0.894
},
{
"score": 0.894
},
{
"score": 0.894
}
],
"table2|name": [
{
"score": 0.894,
"value": "John"
},
{
"score": 0.894,
"value": "Ana"
},
{
"score": 0.894,
"value": "Lisa"
},
{
"score": 0.894,
"value": "Jerome"
}
],
"table2|surname": [
{
"score": 0.894,
"value": "Smith"
},
{
"score": 0.894,
"value": "Nixon"
},
{
"score": 0.894,
"value": "Gonzales"
},
{
"score": 0.894,
"value": "Tate"
}
],
"table3|column1": [
{
"score": 0.855
}
],
"table3|column2": [
{
"score": 0.855
}
],
"table3|column3": [
{
"score": 0.855
}
]
}
Requisitos de controle de acesso¶
Para extrair informações com Document AI, você deve usar uma função de conta que tenha a função de banco de dados SNOWFLAKE.DOCUMENT_INTELLIGENCE_CREATOR. Para obter mais informações, consulte Controle de acesso da Document AI.
Notas de uso¶
Certifique-se de atender aos pré-requisitos para usar este método. Para obter mais informações, consulte Pré-requisitos.
Document AI tem uma limite para o número de documentos processados em uma consulta. Para obter mais informações, consulte Limitações conhecidas da Document AI.
Todos os documentos devem estar no mesmo diretório do estágio.
Document AI usa tabelas de diretório. Para obter mais informações, consulte Consulta de tabelas de diretório.
O modelo Document AI pode retornar listas. Veja o campo
invoice_itemscomo exemplo.Se o modelo Document AI não encontrar uma resposta no documento, o modelo não retornará uma chave
value. No entanto, ele retorna a chavescore, que indica o quão confiante o modelo está de que o documento não contém a resposta. Veja o campobuyer_namecomo exemplo.Na extração de tabelas, se uma célula estiver vazia, o modelo Document AI não retornará uma chave
value. No entanto, ele retorna a chavescore, que indica o grau de confiança do modelo de que a célula está vazia. Por exemplo,table1contém uma célula vazia na colunaage,table2contém uma coluna completamente vaziadateetable3é uma tabela vazia que consiste apenas de cabeçalhos.Na extração de tabelas, os valores na saída do JSON são fornecidos na mesma ordem das linhas da tabela, de modo que as colunas podem ser facilmente unidas.
Exemplo¶
O exemplo a seguir extrai informações de todos os documentos no estágio pdf_inspections_stage para versão 1 da versão do modelo inspections:
SELECT inspections!PREDICT(
GET_PRESIGNED_URL(@pdf_inspections_stage, RELATIVE_PATH), 1)
FROM DIRECTORY(@pdf_inspections_stage);
O exemplo a seguir extrai informações do documento 'paystubs/paystub01.pdf' no estágio pdf_paystubs_stage para versão 1 da versão do modelo paystubs:
SELECT paystubs!PREDICT(
GET_PRESIGNED_URL(@pdf_paystubs_stage, 'paystubs/paystub01.pdf'), 1);