CreateFaceSearchingTask接口Sources字段疑似未生效[阿里云人脸识别]

接口:CreateFaceSearchingTask
请求参数(敏感信息已隐去):

{
  "ProjectName": "projecttest",
  "DatasetName": "ds1",
  "TopK": 5,
  "Sources": [
    {
      "URI": "oss://***/test/immtest/wbq-single.jpg"
    }
  ],
  "MaxResult": "10",
  "Notification": {
    "MNS": {
      "TopicName": "***imm-facesearch-topic"
    }
  },
  "UserData": "{\"msg\":+\"why+source+array+is+empty?\"}",
  "SourceIp": "42.99.63.41"
}

响应主要内容
RequestId: 8717333D-F24C-5924-B747-94540C17F9F0
TaskID:CreateFacesSearchingTask-684e2bbb-347a-4ed1-9be7-bc25030c5167

问题内容:
请求中指定了Sources字段,但是通过GetTask接口查询的任务结果:
任务状态为Succeeded,但Progress为0,且请求参数中Sources字段为null,MNS中也没有收到结果。

GetTask响应内容:

{
  "Status": "Succeeded",
  "Progress": 0,
  "TaskId": "CreateFacesSearchingTask-684e2bbb-347a-4ed1-9be7-bc25030c5167",
  "RequestId": "031C70C4-15A4-5BA3-AE5C-FADF5C0A13C0",
  "EndTime": "2023-08-02T00:26:26.854Z",
  "ProjectName": "projecttest",
  "UserData": "{\"msg\":+\"why+source+array+is+empty?\"}",
  "StartTime": "2023-08-02T00:26:26.456Z",
  "TaskRequestDefinition": "{\"ProjectName\":\"projecttest\",\"UserData\":\"{\\"msg\\":+\\"why+source+array+is+empty?\\"}\",\"Notification\":{\"MNS\":{\"Endpoint\":\"http://16***********.mns.cn-beijing-internal.aliyuncs.com\",\"TopicName\":\"***imm-facesearch-topic\"}},\"CredentialConfig\":{\"Chain\":null,\"Policy\":null,\"ServiceRole\":null},\"DatasetName\":\"ds1\",\"Sources\":null}",
  "TaskType": "FacesSearching",
  "EventId": "2CE-1cg2bG62JNGHX4BK0wJB6oteVo6"
}

求助以上问题的原因,可能是什么问题导致的?

「点点赞赏,手留余香」

    还没有人赞赏,快来当第一个赞赏的人吧!
=====这是一个广告位,招租中,联系qq 78315851====
3 条回复 A 作者 M 管理员
  1. 楼主你好,可能是接口调用时出现了一些问题,建议检查以下几点:

    1. 确认请求参数中是否正确填写了Sources字段,并且URI的格式是否正确,例如是否正确填写了BucketName和ObjectName。

    2. 确认请求参数中是否正确填写了ProjectName、DatasetName,以及对应的项目和数据集是否存在。

    3. 确认接口调用时是否收到了正确的响应,包括TaskID是否正确返回。

    4. 确认是否正确调用了GetTask接口来查询任务的执行结果,以及是否正确解析了查询结果。

  2. 问题可能出现在请求中的 Sources 字段上。请求中的 Sources 字段只包含了一个元素,这个元素是一个带有 URI 属性的对象。根据阿里云文档,Sources 字段应该是一个数组,每个元素都应该包含一个 Type 属性和一个 Data 属性,而不是只有一个 URI 属性。

    因此,可能需要更改请求中的 Sources 字段,确保其包含正确的格式。

  3. 如果在使用CreateFaceSearchingTask接口时,发现Sources字段疑似未生效,可以尝试检查以下几个可能的原因:

    1. 检查Sources字段的格式:确保Sources字段的格式正确。该字段应该是一个数组,包含要进行人脸搜索的图片URL或者Base64编码的图片数据。

    2. 检查图片URL是否可访问:确认提供的图片URL是有效的,并且可以被访问到。可以尝试通过浏览器或其他方式来验证图片URL是否能够正常打开。

    3. 检查Base64编码的图片数据是否正确:如果使用Base64编码的图片数据作为Sources字段的值,请确保编码正确,并且图片数据没有被损坏。

    4. 检查传递给API的其他参数:除了Sources字段,还要确保其他参数(如GroupId、MaxFaceNum等)也正确设置,并与预期一致。

    5. 检查API调用返回结果:获取CreateFaceSearchingTask接口的调用返回结果,并仔细查看其中的错误信息或警告信息。这些信息可能会提供有关为何Sources字段未生效的线索。

  4. 如果是在普通表单提交时候使用,可以写完js保存后,再重新删掉原来的公式写一遍就是自动触发,但是相对的,我测试时也出现过子表单数据都替换成一样数据的情况。还是建议直接用js写完最佳,如果需要输入数据运算那应该会把数据刷新正确