MCPcopy Create free account
hub / github.com/NVIDIA/nvcf / loadInvokeConfig

Function loadInvokeConfig

src/clis/nvcf-cli/cmd/function.go:1332–1391  ·  view source on GitHub ↗

loadInvokeConfig loads and merges configuration from JSON file and CLI flags

(cmd *cobra.Command)

Source from the content-addressed store, hash-verified

1330 ncaID = strings.TrimSpace(ncaID)
1331 priorityText = strings.TrimSpace(priorityText)
1332 if !found || ncaID == "" || priorityText == "" {
1333 return "", 0, fmt.Errorf("expected <nca-id>:<priority> with a non-empty NCA ID")
1334 }
1335
1336 priority, err := strconv.ParseUint(priorityText, 10, 32)
1337 if err != nil {
1338 return "", 0, fmt.Errorf("priority must be an integer from 0 to %d", uint64(^uint32(0)))
1339 }
1340 return ncaID, uint32(priority), nil
1341}
1342
1343func validateLLMInvocationConfig(config *LLMInvocationConfigInput) error {
1344 if config == nil || config.Priority == nil {
1345 return nil
1346 }
1347
1348 priority := config.Priority
1349 if len(priority.PerAccountPriority) > 64 {
1350 return fmt.Errorf("at most 64 distinct NCA ID priority overrides are allowed")
1351 }
1352 if len(priority.PerAccountPriority) > 0 && priority.DefaultPriority == nil {
1353 return fmt.Errorf("defaultPriority is required when perAccountPriority is configured")
1354 }
1355 for ncaID := range priority.PerAccountPriority {
1356 if strings.TrimSpace(ncaID) == "" {
1357 return fmt.Errorf("perAccountPriority NCA ID must not be empty")
1358 }
1359 }
1360 return nil
1361}
1362
1363func llmInvocationConfigToClient(config *LLMInvocationConfigInput) *client.LLMInvocationConfigDto {
1364 if config == nil {
1365 return nil
1366 }
1367
1368 result := &client.LLMInvocationConfigDto{}
1369 if config.Priority == nil {
1370 return result
1371 }
1372
1373 priority := &client.PriorityDto{DefaultPriority: config.Priority.DefaultPriority}
1374 if config.Priority.PerAccountPriority != nil {
1375 priority.PerAccountPriority = make(map[string]uint32, len(config.Priority.PerAccountPriority))
1376 for ncaID, value := range config.Priority.PerAccountPriority {
1377 priority.PerAccountPriority[ncaID] = value
1378 }
1379 }
1380 result.Priority = priority
1381 return result
1382}
1383
1384func applyCreateHelmFlagOverrides(cmd *cobra.Command, config *CreateConfig) {
1385 if cmd.Flags().Changed("helm-chart") {
1386 config.HelmChart = createFlags.helmChart
1387 }
1388 if cmd.Flags().Changed("helm-chart-service") {
1389 config.HelmChartServiceName = createFlags.helmChartServiceName

Calls 2

UnmarshalMethod · 0.80
ErrorfMethod · 0.45