remote-task-excutor-cli/pkg/models/params.go

41 lines
1009 B
Go

package models
import (
"fmt"
"strings"
)
// RunConfig 包含所有运行参数
type RunConfig struct {
CodeConfig CodeConfig `json:"code_config"`
Resource ResourceConfig `json:"resource"`
Image int `json:"image"`
Command string `json:"command"`
RunArgs []string `json:"run_args"`
Dataset DataResourceConfig `json:"dataset"`
ModelName DataResourceConfig `json:"model_name"`
TaskOutput string `json:"task_output"`
}
// ParseRunArgs 解析运行参数字符串为键值对
func ParseRunArgs(input string) (map[string]string, error) {
result := make(map[string]string)
if input == "" {
return result, nil
}
pairs := strings.Split(input, ",")
for _, pair := range pairs {
kv := strings.SplitN(pair, "=", 2)
if len(kv) != 2 {
return nil, fmt.Errorf("invalid key-value pair: %s", pair)
}
key := strings.TrimSpace(kv[0])
value := strings.TrimSpace(kv[1])
result[key] = value
}
return result, nil
}