从 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 控制台中创建的处理器名称。
我正在尝试使用如下代码片段从 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 控制台中创建的处理器名称。