0

我使用 GCP 上的 Automl 服务为命名实体识别训练了一个自定义模型。这是我使用 python 运行它的代码:

from google.cloud import automl

# TODO(developer): Uncomment and set the following variables
# project_id = "YOUR_PROJECT_ID"
# model_id = "YOUR_MODEL_ID"
# content = "text to predict"

prediction_client = automl.PredictionServiceClient()

# Get the full path of the model.
model_full_id = automl.AutoMlClient.model_path(
    project_id, "us-central1", model_id
)


text_snippet = automl.TextSnippet(
    content=text_content, mime_type="text/plain"
)
payload = automl.ExamplePayload(text_snippet=text_snippet)

response = prediction_client.predict(name=model_full_id, payload=payload)

for annotation_payload in response.payload:
    print(
        "Text Extract Entity Types: {}".format(
            annotation_payload.display_name
        )
    )
    print(
        "Text Score: {}".format(annotation_payload.text_extraction.score)
    )
    text_segment = annotation_payload.text_extraction.text_segment
    print("Text Extract Entity Content: {}".format(text_segment.content))
    print("Text Start Offset: {}".format(text_segment.start_offset))
    print("Text End Offset: {}".format(text_segment.end_offset))

我在函数中得到这个内部错误predict

六.raise_from(exceptions.from_grpc_error(exc),exc)文件“”,第3行,在raise_from google.api_core.exceptions.InternalServerError:500遇到内部错误。

GCP 的人可以解释错误的来源以及如何解决它吗?

4

2 回答 2

0

text_content变量有问题。在定义 text_snippet 之前未定义它。

结果是当您调用 predict 时,您的有效负载为空(设置为 None):

text_snippet = { content: None, mime_type='text/plain'}

请记住取消注释并设置project_idandmodel_id变量,因为您需要它们来获取 AutoML 期望的完整模型 ID。

于 2021-02-08T22:34:05.443 回答
0

由于您收到此内部错误,我们需要确保您没有达到任何配额和限制,然后再将您的问题提交给问题跟踪器上的产品团队

于 2021-02-08T19:34:53.913 回答