从 Cloud Function 调用 Document AI v1beta3 时权限被拒绝

Permission denied when invoking Document AI v1beta3 from Cloud Function

我正在尝试使用如下代码片段从 Cloud Function 调用 DocumentAI v1beta3:

client = documentai.DocumentProcessorServiceClient()

input_doc = documentai.types.Document(
    content=file_to_be_extract,
    mime_type='application/pdf')

request = documentai.types.ProcessRequest(
    name='DocumentFieldExtract',
    document=input_doc)

processResponse = client.process_document(request=request)
document = processResponse.document

# All text extracted from the document
print('Document Text: {}'.format(document.text))

其中 file_to_be_extract 是字节类型,DocumentFieldExtract 是 DocumentAI 处理器名称。

我在 运行 上面的代码之后收到错误 资源项目 DocumentFieldExtract 的权限被拒绝。 仅供参考,我已尝试将 Cloud DocumentAI 管理员角色分配给 Cloud Function 服务帐户。

还有什么我需要做的才能授予吗?

如果可以的话,我也想知道v1beta2和v1beta3有什么区别

谢谢!

显然,处理器的名称参数应该采用 projects/{project_id}/locations/{location}/processors/{processor_id} 的格式,而不仅仅是我们在 Document AI 控制台中创建的处理器名称。

来源:https://cloud.google.com/blog/topics/developers-practitioners/using-document-ai-automate-procurement-workflows