九游平台/ ai开发平台modelarts/ 常见问题/ standard推理部署/ modelarts在线服务处于运行中时,如何填写request header和request body?
更新时间:2025-02-08 gmt 08:00

modelarts在线服务处于运行中时,如何填写request header和request body?-九游平台

问题现象

部署在线服务完成且在线服务处于“运行中”状态时,通过modelarts console的调用指南tab页签可以获取到推理请求的地址,但是不知道如何填写推理请求的header及body。

原因分析

在线服务部署完成且服务处于运行中状态后,可以通过调用指南页签的调用地址对模型发起预测请求,出于安全考虑,modelarts会通过相关的认证鉴权机制避免在线服务被无关人员非法调用。所以在预测请求的header信息中包含的是调用者的身份信息,在body部分是需要进行预测的内容。

header的部分需要按照华为云的相关机制进行认证,body部分需要根据模型的要求如前处理脚本的要求,如自定义镜像的要求进行输入。

处理方法

  • header:

    在调用指南页签上最多可以获取到两个api地址,分别是支持iam/aksk认证的地址以及支持app认证的地址,对于支持不同认证方式的地址, 对header的组织也不同,具体如下:

    • iam/aksk认证方式:需要在header的x-auth-token字段上填入该租户在该region的domain级别的token。具体指导参见链接:获取iam用户token
    • app认证的方式:app认证方式又可以细分为appcode认证和app签名认证。
      • appcode认证需要在header的x-apig-appcode字段上填入绑定给该在线服务的app的appcode。
      • app签名认证需要在header的x-sdk-date和authorization字段中填入通过sdk或者工具使用该在线服务绑定的app的appkey和appsecret所生产的这两个字段的值,以完成对该请求的签名认证。具体指导参见链接:访问在线服务(app认证)
  • body:

    body的组装和模型强相关,不同来源的模型body的组装方式不同。

    • 模型为从容器镜像中导入的:需要按照自定义镜像的要求组织,请咨询该镜像的制作人。
    • 模型为从对象存储(obs)导入的:此时对body的要求会在推理代码中体现,具体在推理代码的_preprocess方法中,该方法将输入的http body转换成模型期望的输入,具体的指导可以查看文档:模型推理代码编写说明
    • 模型从ai gallery中获取的:请查看ai gallery中的调用说明或者咨询该模型的提供方。

建议与总结

相关文档

网站地图