PHP 中的 Rest API:{'error':“缺少 'inputs' }

对于UBUNTU 终端中的此功能,它非常适合我的 dockerized 容器(使用 Tensorflow Serving 制作):


curl -d '{"instances": [[ 1.18730158, -0.70909592,  1.21082918, -0.15897608, -0.87693017],

       [-0.3015204 , -0.44457891,  0.67090776,  1.1188499 , -0.87693017],

       [-0.52579254, -0.05989349,  0.40094705,  1.62998029,  1.13982729],

       [ 0.13322252,  0.58198159, -0.94885648,  1.1188499 , -0.87693017],

       [ 0.77441082, -0.68638116, -0.13897436,  0.35215431,  1.13982729],

       [ 0.69102759,  1.49057189, -0.13897436, -0.67010647,  1.13982729],

       [-0.25436574, -0.58819479,  0.13098635, -0.15897608,  1.13982729],

       [ 1.54671206,  2.58088026,  2.0207113 , -1.56458465,  1.13982729],

       [-0.97261165, -0.6292279 ,  0.40094705, -1.56458465, -0.87693017],

       [-0.36190136,  0.14893573,  0.40094705,  0.09658912,  1.13982729]]}'     -X POST http://localhost:8501/v1/models/model:predict

我在PHP中创建了一个curl函数:


    <?php 

        $endpoint = "http://localhost:8501/v1/models/model:predict";

$inputData = array(

    "instances" => 

       [[ 1.18730158, -0.70909592,  1.21082918, -0.15897608, -0.87693017],

       [-0.3015204 , -0.44457891,  0.67090776,  1.1188499 , -0.87693017],

       [-0.52579254, -0.05989349,  0.40094705,  1.62998029,  1.13982729],

       [ 0.13322252,  0.58198159, -0.94885648,  1.1188499 , -0.87693017],

       [ 0.77441082, -0.68638116, -0.13897436,  0.35215431,  1.13982729],

       [ 0.69102759,  1.49057189, -0.13897436, -0.67010647,  1.13982729],

       [-0.25436574, -0.58819479,  0.13098635, -0.15897608,  1.13982729],

       [ 1.54671206,  2.58088026,  2.0207113 , -1.56458465,  1.13982729],

       [-0.97261165, -0.6292279 ,  0.40094705, -1.56458465, -0.87693017],

       [-0.36190136,  0.14893573,  0.40094705,  0.09658912,  1.13982729]]

)

        

但我不断收到错误:


{'error': "Missing 'inputs' or 'instances' key"}

我确信我没有正确提供输入,但我不知道在哪里进行更改。任何帮助将不胜感激。


湖上湖
浏览 98回答 1
1回答

九州编程

我认为您正在将额外的"data" => $inputData密钥传递到您的$jsonData. 在没有数据的情况下尝试这种方式,$ch = curl_init();curl_setopt($ch, CURLOPT_URL, 'http://localhost:8501/v1/models/model:predict');curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);curl_setopt($ch, CURLOPT_POST, 1);curl_setopt($ch, CURLOPT_POSTFIELDS, "{\"instances\": [[ 1.18730158, -0.70909592,&nbsp; 1.21082918, -0.15897608, -0.87693017],\n&nbsp; &nbsp; &nbsp; &nbsp;[-0.3015204 , -0.44457891,&nbsp; 0.67090776,&nbsp; 1.1188499 , -0.87693017],\n&nbsp; &nbsp; &nbsp; &nbsp;[-0.52579254, -0.05989349,&nbsp; 0.40094705,&nbsp; 1.62998029,&nbsp; 1.13982729],\n&nbsp; &nbsp; &nbsp; &nbsp;[ 0.13322252,&nbsp; 0.58198159, -0.94885648,&nbsp; 1.1188499 , -0.87693017],\n&nbsp; &nbsp; &nbsp; &nbsp;[ 0.77441082, -0.68638116, -0.13897436,&nbsp; 0.35215431,&nbsp; 1.13982729],\n&nbsp; &nbsp; &nbsp; &nbsp;[ 0.69102759,&nbsp; 1.49057189, -0.13897436, -0.67010647,&nbsp; 1.13982729],\n&nbsp; &nbsp; &nbsp; &nbsp;[-0.25436574, -0.58819479,&nbsp; 0.13098635, -0.15897608,&nbsp; 1.13982729],\n&nbsp; &nbsp; &nbsp; &nbsp;[ 1.54671206,&nbsp; 2.58088026,&nbsp; 2.0207113 , -1.56458465,&nbsp; 1.13982729],\n&nbsp; &nbsp; &nbsp; &nbsp;[-0.97261165, -0.6292279 ,&nbsp; 0.40094705, -1.56458465, -0.87693017],\n&nbsp; &nbsp; &nbsp; &nbsp;[-0.36190136,&nbsp; 0.14893573,&nbsp; 0.40094705,&nbsp; 0.09658912,&nbsp; 1.13982729]]}");$headers = array();$headers[] = 'Content-Type: application/x-www-form-urlencoded';curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);$result = curl_exec($ch);if (curl_errno($ch)) {&nbsp; &nbsp; echo 'Error:' . curl_error($ch);}curl_close($ch);编辑:您可以直接传递$inputData如下在哪里$inputData = [&nbsp; &nbsp; "instances" => [&nbsp; &nbsp; &nbsp; &nbsp;[1.18730158, -0.70909592,&nbsp; 1.21082918, -0.15897608, -0.87693017],&nbsp; &nbsp; &nbsp; &nbsp;[-0.3015204 , -0.44457891,&nbsp; 0.67090776,&nbsp; 1.1188499 , -0.87693017],&nbsp; &nbsp; &nbsp; &nbsp;[-0.52579254, -0.05989349,&nbsp; 0.40094705,&nbsp; 1.62998029,&nbsp; 1.13982729],&nbsp; &nbsp; &nbsp; &nbsp;[ 0.13322252,&nbsp; 0.58198159, -0.94885648,&nbsp; 1.1188499 , -0.87693017],&nbsp; &nbsp; &nbsp; &nbsp;[ 0.77441082, -0.68638116, -0.13897436,&nbsp; 0.35215431,&nbsp; 1.13982729],&nbsp; &nbsp; &nbsp; &nbsp;[ 0.69102759,&nbsp; 1.49057189, -0.13897436, -0.67010647,&nbsp; 1.13982729],&nbsp; &nbsp; &nbsp; &nbsp;[-0.25436574, -0.58819479,&nbsp; 0.13098635, -0.15897608,&nbsp; 1.13982729],&nbsp; &nbsp; &nbsp; &nbsp;[ 1.54671206,&nbsp; 2.58088026,&nbsp; 2.0207113 , -1.56458465,&nbsp; 1.13982729],&nbsp; &nbsp; &nbsp; &nbsp;[-0.97261165, -0.6292279 ,&nbsp; 0.40094705, -1.56458465, -0.87693017],&nbsp; &nbsp; &nbsp; &nbsp;[-0.36190136,&nbsp; 0.14893573,&nbsp; 0.40094705,&nbsp; 0.09658912,&nbsp; 1.13982729]&nbsp; &nbsp; &nbsp;]&nbsp; &nbsp; ];进而CURLOPT_POSTFIELDS => json_encode($inputData)
打开App,查看更多内容
随时随地看视频慕课网APP