(src []aghconfig.ProviderModelConfig)
| 272 | } |
| 273 | |
| 274 | func cloneProviderModelConfigs(src []aghconfig.ProviderModelConfig) []aghconfig.ProviderModelConfig { |
| 275 | if src == nil { |
| 276 | return nil |
| 277 | } |
| 278 | cloned := make([]aghconfig.ProviderModelConfig, len(src)) |
| 279 | for idx, model := range src { |
| 280 | cloned[idx] = aghconfig.ProviderModelConfig{ |
| 281 | ID: model.ID, |
| 282 | DisplayName: model.DisplayName, |
| 283 | ContextWindow: cloneInt64Ptr(model.ContextWindow), |
| 284 | MaxInputTokens: cloneInt64Ptr(model.MaxInputTokens), |
| 285 | MaxOutputTokens: cloneInt64Ptr(model.MaxOutputTokens), |
| 286 | SupportsTools: cloneBoolPtr(model.SupportsTools), |
| 287 | SupportsReasoning: cloneBoolPtr(model.SupportsReasoning), |
| 288 | ReasoningEfforts: append([]string(nil), model.ReasoningEfforts...), |
| 289 | DefaultReasoningEffort: model.DefaultReasoningEffort, |
| 290 | CostInputPerMillion: cloneFloat64Ptr(model.CostInputPerMillion), |
| 291 | CostOutputPerMillion: cloneFloat64Ptr(model.CostOutputPerMillion), |
| 292 | } |
| 293 | } |
| 294 | return cloned |
| 295 | } |
| 296 | |
| 297 | func cloneModelCatalogConfig(src aghconfig.ModelCatalogConfig) aghconfig.ModelCatalogConfig { |
| 298 | return aghconfig.ModelCatalogConfig{ |
no test coverage detected