自定义服务化配置预检规范
自定义服务化配置预检规范为.yaml格式文件,内容可分为如下五类:
- environment_variables:环境变量基线
- mindie_config:服务化配置基线
- ranktable:ranktable基线
- model_config:模型配置基线
- user_config:启动配置基线
五类配置中任何一类下均支持以下7种属性描述词:
- name:字段名
- value:基线取值
- reason:原因提示
- suggestions:场景描述部分
- condition:建议(或不建议)的具体场景
- suggested:建议场景部分
- not_suggested:不建议场景部分
以上suggestions、condition、suggested、not_suggested为拓展配置,用于说明value在不同场景下的取值reason。
name
支持嵌套,用于确定待配置的配置变量名,每向下一级就增加一个冒号,如:
1 | features:experimental:enabled
|
在ranktable、user_config基线配置中,由于server_list等为列表,因此也支持以数字作为一个级别,如:
1 | BackendConfig:ModelDeployConfig:ModelConfig:0:tp
|
对应的user_config配置文件如下(注意列表顺序用0、1、2...表示):
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 | BackendConfig" : { "interNodeTLSEnabled" : false, "ModelDeployConfig" : { "truncation" : false, "ModelConfig" : [ { "tp": 1, } ... ] ... } ... } ... |
value
一般value直接配置值,如:
1 | value: 'localhost' |
或
1 | value: false |
如有特殊需要也可以用计算符号配合比较符号进行限制或赋值。
value中支持的计算符号:
1 | "+", "-", "\*", "/", "//" |
value中支持的比较符号:
1 | '>=', '<=', '!=', '=', '>', '<' |
=开头可以接上自定义的规则,如
1 | value: = 1+1 |
1 | value: = 1 + server_list:0:device:0:rank_id(通过与其他name的value计算来确定取值) |
1 | value: = =1(与value: 1效果相同) |
1 | value: = >1 |
1 | value: = >=1 |
另外,value还支持分号;对多个表达式进行分割,如:
1 | value: = 1 + server_list:0:device:0:rank_id ; < 5 |
代表value在等于server_list:0:device:0:rank_id的前提下,还需要满足value < 5。
value也可以为空,为空时仅检查该配置项存在性。
value也支持列表形式
1 2 3 4 | value: - 2 - 3 - >9 |
父主题: 附录