获取说明

本指南介绍如何从 Vertex AI 上的 Model 资源获取说明。您可以通过两种方式获得说明:

  • 在线解释:向 Vertex AI API 发出的同步请求,类似于通过特征归因返回推理结果的在线推理

  • 批量解释:向 Vertex AI API 发出的异步请求,通过特征归因返回推理结果。批量解释是批量推理请求的一个可选项。

准备工作

在获取说明之前,您必须完成以下操作:

  1. 这一步因您使用的机器学习模型类型而异:

  2. 如需获取在线说明,请将您在上一步中创建的 Model 部署到 Endpoint 资源

获取在线说明

如需获取在线解释,请按照获取在线推理结果的大部分步骤执行操作。但是,您无需向 Vertex AI API 发送 projects.locations.endpoints.predict 请求,只需发送 projects.locations.endpoints.explain 请求即可。

以下指南提供了有关准备和发送在线说明请求的详细说明:

获取批量说明

仅支持基于特征的批量说明;您无法获取基于样本的批量说明。

如需获取批量解释,请在创建批量推理作业时,将 generateExplanation 字段设置为 true

如需详细了解如何准备和创建批量预测作业,请参阅获取批量推理结果

获取并发说明

Explainable AI 支持并发说明。借助并发说明,您可以从同一已部署模型端点请求基于特征的说明和基于示例的说明,而无需针对每种说明方法单独部署模型。

如需获取并行说明,请上传模型并配置基于样本基于特征的说明。然后,照常部署模型。

部署模型后,您可以像往常一样请求已配置的说明。此外,您还可以通过指定 concurrent_explanation_spec_override 来请求并发说明。

使用并发说明时,请注意以下事项:

  • 并发说明仅适用于 v1beta1 API 版本。如果您使用的是 Vertex Python SDK,则需要使用 preview 模型来使用并发说明。
  • 在使用基于特征的说明进行部署后,无法请求基于示例的说明。如果您希望同时使用基于示例的说明和基于特征的说明,请使用基于示例的说明部署模型,并使用并发说明字段请求基于特征的说明。
  • 并发说明不支持批量说明。在线说明是使用此功能的唯一方式。

问题排查

本部分介绍您在获取说明期间遇到问题时的实用问题排查步骤。

错误:列表索引超出范围

如果您在请求说明时收到以下错误消息:

"error": "Explainability failed with exception: listindex out of range"

请确保您没有将空数组传递给需要对象数组的字段。例如,如果 field1 接受对象数组,则以下请求正文可能会导致错误:

{
  "instances": [
    {
      "field1": [],
    }
  ]
}

请确保数组不为空,例如:

{
  "instances": [
    {
      "field1": [
        {}
      ],
    }
  ]
}

后续步骤