(Google AutoML) 错误:3 INVALID_ARGUMENT:不支持的有效负载类型“行”

Posted

技术标签:

【中文标题】(Google AutoML) 错误:3 INVALID_ARGUMENT:不支持的有效负载类型“行”【英文标题】:(Google AutoML) Error: 3 INVALID_ARGUMENT: Unsupported payload type `row` 【发布时间】:2021-12-23 11:22:09 【问题描述】:

我正在尝试将 Python 函数移植到运行在 Google Cloud 上创建的预测模型的 javascript

一切正常,直到调用 .predict() 方法,因为它总是抛出 Unsupported payload type row 错误消息。

payload的格式很简单:

const data = [  key1: value1, key2: value2, key3: value3 ...  ];

如果有帮助,这里是代码的一部分:

const PredictionServiceClient = require('@google-cloud/automl').v1beta1;

const ai = new PredictionServiceClient(
    projectId: projectId
);
const payload = 
    row: 
        values: data
    
;
const request = 
    name: ai.modelPath(projectId, computeRegion, modelId),
    payload: payload,
    params: feature_importance: true
;
const [result] = await ai.predict(request);

这是 js 版本所基于的原始 Python 代码:

from google.cloud import aiplatform

aiplatform.init(project=PROJECT_ID, location=compute_region)
endpoint = aiplatform.Endpoint(ENDPOINT_ID)
response = endpoint.predict(instances=data)

如果我需要提供任何其他信息,请告诉我。 任何提示将不胜感激!

【问题讨论】:

我想我已经弄明白了...在 js 版本中我使用来自automlPredictionServiceClient,但在 Python 版本中,客户端应该来自aiplatform 您好,在official documented files 中显示的是用于预测的客户端。更改后您可以移植吗? 是的...在切换到apiplatform 包并将有效负载重新格式化为structValue 后一切正常! 【参考方案1】:

很高兴知道您能够解决您的问题。我将把当前使用的 aiplatform 库的这个答案留作 2021 年 11 月供社区使用。

Python AIPlatform NodeJs AIPlatform

【讨论】:

以上是关于(Google AutoML) 错误:3 INVALID_ARGUMENT:不支持的有效负载类型“行”的主要内容,如果未能解决你的问题,请参考以下文章

Google AutoML 训练错误/无法部署模型

在 Cloud AutoML Vision 中将图像导入 Google 存储时出错

如何杀死正在运行的 google AUTOML 训练作业

如何使用 Web GUI 停止 Google Cloud AutoML(现为 Vertex AI)批量预测作业?

AutoML VISION Google SingleLabel 分类输出 TopK 结果

如何使用 Google 的 AutoML 进行 OCR