更新时间:2022-09-16 GMT+08:00
分享

查看服务详情

当AI应用部署为在线服务成功后,您可以进入“在线服务”页面,来查看服务详情。

  1. 登录ModelArts管理控制台,在左侧菜单栏中选择部署上线>在线服务,进入“在线服务”管理页面。
  2. 单击目标服务名称,进入服务详情页面。

    您可以查看服务的“名称”“状态”等信息,详情说明请参见表1

    表1 在线服务配置

    参数

    说明

    名称

    在线服务名称。

    状态

    在线服务当前状态。

    来源

    在线服务的来源。

    服务ID

    在线服务的ID。

    调用失败次数/总次数

    服务调用次数从创建后开始统计。

    如修改AI应用数量,或在AI应用处于“未就绪”时对服务发起调用,不计入统计。

    描述

    您可以单击编辑按钮,添加服务描述。

    个性化配置

    您可以为在线服务的不同版本设定不同配置条件,并支持携带自定义运行参数,丰富版本分流策略或同一版本内的不同运行配置。您可以打开个性化配置按钮,单击“查看配置”修改服务个性化配置

    服务流量限制

    服务流量限制是指每秒内一个服务能够被访问的次数上限。

  3. 您可以在在线服务的详情页面,通过切换页签查看更多详细信息,详情说明请参见表2
    表2 在线服务详情

    参数

    说明

    调用指南

    展示API接口地址、AI应用信息、输入参数、输出参数。您可以通过复制API接口地址,调用服务。如果您支持APP认证方式,可以在调用指南查看API接口地址和授权管理详情,包括“应用名称”“AppKey”“AppSecret”等信息。您也可以在此处对APP应用进行“添加授权”“解除授权”的操作。

    预测

    对在线服务进行预测。具体操作请参见测试服务

    配置更新记录

    展示“当前配置”详情和“历史更新记录”

    • “当前配置”:AI应用名称、版本、状态、分流、计算节点规格和计算节点个数。
    • “历史更新记录”:展示历史AI应用相关信息。

    监控信息

    展示当前服务的“资源统计信息”“AI应用调用次数统计”

    • “资源统计信息”:包括CPU、内存、GPU的可用和已用信息。
    • “AI应用调用次数统计”:当前AI应用的调用次数,从AI应用状态为“已就绪”后开始统计。

    事件

    展示当前服务使用过程中的关键操作,比如服务部署进度、部署异常的详细原因、服务被启动、停止、更新的时间点等。

    事件保存周期为1个月,1个月后自动清理数据。

    日志

    展示当前服务下每个AI应用的日志信息。包含最近5分钟、最近30分钟、最近1小时和自定义时间段。

    自定义时间段您可以选择开始时间和结束时间。

修改服务个性化配置

服务个性化配置规则由配置条件、访问版本、自定义运行参数(包括配置项名称和配置项值)组成。

您可以为在线服务的不同版本设定不同配置条件,并支持携带自定义运行参数。

个性化配置规则的优先级与顺序相对应,从高到低设置。您可以通过拖动个性化配置规则的顺序更换优先级。

当匹配了某一规则后就不再继续下一规则的判断,最多允许配置10个条件。

表3 个性化配置参数

参数

是否必选

说明

配置条件

必选

SPEL(Spring Expression Language)规则的表达式,当前仅支持字符型的“相等”、“matches”和hashCode函数计算。

访问版本

必选

服务个性化配置规则对应的访问版本。当匹配到规则时,请求该版本的在线服务。

配置项名称

可选

自定义运行参数的Key值,不超过128个字符。

当需要通过Header(http消息头)携带自定义运行参数至在线服务时,可以配置。

配置项值

可选

自定义运行参数的Value值,不超过256个字符。

当需要通过Header(http消息头)携带自定义运行参数至在线服务时,可以配置。

可以设置以下三种场景:

  • 如果在线服务部署多个版本用于灰度发布,可以使用个性化配置实现按用户分流。
    表4 按内置变量配置条件

    内置变量

    说明

    DOMAIN_NAME

    调用预测请求的帐号名。

    DOMAIN_ID

    调用预测请求的帐号ID。

    PROJECT_NAME

    调用预测请求的项目名。

    PROJECT_ID

    调用预测请求的项目ID。

    USER_NAME

    调用预测请求的用户名。

    USER_ID

    调用预测请求的用户ID。

    “#”表示引用变量,匹配的字符串需要用单引号。

    #{内置变量} == '字符串'
    #{内置变量} matches '正则表达式'
    • 示例一:

      当调用预测请求的帐号名为“zhangsan”时,匹配至指定版本。

      #DOMAIN_NAME == 'zhangsan'
    • 示例二:

      当调用预测请求的帐号名以“op”开头时,匹配至指定版本。

      #DOMAIN_NAME matches 'op.*'
      表5 常用的正则匹配表达式

      字符

      描述

      “.”

      匹配除“\n”之外的任何单个字符串。需匹配包括“\n”在内的任何字符,请使用“(.|\n)”的模式。

      “*”

      匹配前面的子表达式零次或多次。例如,“zo*”能匹配“z”以及“zoo”

      “+”

      匹配前面的子表达式一次或多次。例如,“zo+”能匹配“zo”以及“zoo”,但不能匹配“z”

      “?”

      匹配前面的子表达式零次或一次。例如,“do(es)?”可以匹配“does”“does”中的“do”

      “^”

      匹配输入字符串的开始位置。

      “$”

      匹配输入字符串的结束位置。

      “{n}”

      n是一个非负整数。匹配确定的n次。例如,“o{2}”不能匹配“Bob”中的“o”,但是能匹配“food”中的两个“o”

      “x|y”

      匹配x或y。例如,“z|food”能匹配“z”“food”“(z|f)ood”则匹配“zood”“food”

      “[xyz]”

      字符集合。匹配所包含的任意一个字符。例如,“[abc]”可以匹配“plain”中的“a”

      更多正则表达式请参考表达式全集

      图1 按用户分流
  • 如果在线服务部署多个版本用于灰度发布,可以使用个性化配置实现通过Header来访问不同版本。
    您需要通过"#HEADER_"开头说明引用header作为条件
    #HEADER_{key} == '{value}'
    #HEADER_{key} matches '{value}'
    • 示例一:

      当预测的http请求的header中存在version,且值为0.0.1则符合条件。不存在此header或者值不为0.0.1都不符合条件。

      #HEADER_version == '0.0.1'
    • 示例二:

      当预测的http请求的header中存在testheader且值符合正以mock开头时,可匹配到这条规则。

      #HEADER_testheader matches 'mock.*'
    • 示例三:

      当预测的http请求的header中存在uid且其哈希值符合指定的分桶算法时,可匹配到这条规则。

      #HEADER_uid.hashCode() % 100 < 10
      图2 通过Header访问不同版本
  • 如果在线服务部署的版本支持使用不同的运行配置,您可以通过“配置项名称”“配置项值”携带自定义运行参数至在线服务,实现不同用户使用不同运行配置。

    示例:

    用户zhangsan访问时,AI应用使用配置A;用户lisi访问时,AI应用使用配置B。当匹配到运行配置条件时,ModelArts会在请求里增加一个Header,传入自定义运行参数,其中Key是“配置项名称”,Value是“配置项值”
    图3 个性化配置规则支持传入自定义运行参数。
分享:

    相关文档

    相关产品

close