diff --git a/OpenAPI/TS28105_AiMlNrm.yaml b/OpenAPI/TS28105_AiMlNrm.yaml index f76a2a4919d3b30599e9b6c757551b55e85b0737..576ced0a068ce398a9ba3604f00e53d95298d146 100644 --- a/OpenAPI/TS28105_AiMlNrm.yaml +++ b/OpenAPI/TS28105_AiMlNrm.yaml @@ -76,7 +76,6 @@ components: managedActivationScope: $ref: '#/components/schemas/ManagedActivationScope' - SupportedPerfIndicator: type: object properties: @@ -167,7 +166,12 @@ components: $ref: 'TS28623_ComDefs.yaml#/components/schemas/DateTimeRo' # FIXME, isOrder/isUnique both as True inferencePerformance: - $ref: '#/components/schemas/ModelPerformance' + $ref: '#/components/schemas/ModelPerformance' + inferenceExplanationInfo: + type: array + uniqueItems: true + items: + type: string outputResult: description: A map (list of key-value pairs) for Inference result name and it's value $ref: 'TS28623_ComDefs.yaml#/components/schemas/AttributeNameValuePairSet' @@ -187,7 +191,250 @@ components: - NG_RAN_MOBILITY_OPTIMIZATION VSExtensionType: type: string - + DataStatisticalProperties: + type: object + properties: + uniformlyDistributedTrainingData: + type: boolean + default: FALSE + trainingDataWithOrWithoutOutliers: + type: boolean + default: FALSE + DistributedTrainingExpectation: + type: object + properties: + expectedTrainingTime: + type: integer + dataSplitIndication: + type: boolean + default: FALSE + suggestedTrainingNodeList: + $ref: 'TS28623_ComDefs.yaml#/components/schemas/DnList' + PotentialImpactInfo: + type: object + properties: + impactedScope: + $ref: '#/components/schemas/ManagedActivationScope' + impactedPM: + type: array + uniqueItems: true + items: + $ref: '#/components/schemas/ImpactedPM' + ImpactedPM: + type: object + properties: + pMIdentifier: + type: string + readOnly: true + + MLKnowledge: + type: object + properties: + mLKnowledgeName: + type: string + readOnly: true + knowledgeType: + type: string + enum: + - TABLE + - STATISTIC + - REGRESSION + readOnly: true + predictorResponseArray: + # array of pair + type: array + description: Array of pair + uniqueItems: true + items: + type: array + description: Array of pair + minItems: 2 + maxItems: 2 + items: + type: string + + EnvironmentScope: + oneOf: + #Choice_1.1 managedEntitiesScope + - type: object + properties: + managedEntitiesScope: + $ref: 'TS28623_ComDefs.yaml#/components/schemas/DnList' + #Choice_1.2 areaScope + - type: object + properties: + areaScope: + $ref: 'TS28623_ComDefs.yaml#/components/schemas/GeoArea' + #Choice 2 timeWindow + - type: object + properties: + timeWindow: + $ref: 'TS28623_ComDefs.yaml#/components/schemas/TimeWindow' + #todo: stage 2 attribute definition missing + + SupportedLearningTechnology: + type: object + properties: + learningTechnologyName: + type: array + uniqueItems: true + items: + type: string + enum: + - RL + - FL + - DL + readOnly: true + supportedRLEnvironment: + description: Included when RL is supported. + type: array + uniqueItems: true + items: + type: string + enum: + - SIMULATION_ENVIRONMENTS + - REAL_NETWORK_ENVIRONMENTS + readOnly: true + supportedFLRole: + description: Included when FL is supported. + type: array + uniqueItems: true + items: + type: string + enum: [FL_SERVER, FL_CLIENT] + minItems: 1 + maxItems: 2 + readOnly: true + supportedInferenceNameList: + description: Types of inference the training technologies can be applied to. + type: array + uniqueItems: true + items: + $ref: '#/components/schemas/AIMLInferenceName' + minItems: 1 + readOnly: true + + RLRequirement: + type: object + properties: + rLEnvironmentType: + type: array + uniqueItems: true + items: + type: string + enum: + - SIMULATION_ENVIRONMENTS + - REAL_NETWORK_ENVIRONMENTS + + rLEnvironmentScope: + type: array + uniqueItems: true + items: + $ref: '#/components/schemas/EnvironmentScope' + minItems: 1 + + rLImpactedScope: + type: array + uniqueItems: true + items: + $ref: '#/components/schemas/EnvironmentScope' + minItems: 1 + + rLPerformanceRequirements: + type: array + uniqueItems: true + items: + $ref: 'TS28623_ThresholdMonitorNrm.yaml#/components/schemas/ThresholdInfo' + + ClusteringCriteria: + type: object + properties: + performanceMetric: + type: string + taskType: + type: string + allowedClusterTrainingTime: + $ref: 'TS28623_ComDefs.yaml#/components/schemas/TimeWindow' + minItems: 1 + maxItems: 1 + preferredModelDiversity: + type: string + + FLParticipationInfo: + type: object + additionalProperties: false + properties: + fLRole: + type: string + enum: [FL_SERVER, FL_CLIENT] + readOnly: true + isAvailableForFLTraining: + type: boolean + default: FALSE + readOnly: true + candidateFLClientRefList: + description: > + List of MLTrainingFunction DNs capable of acting as FL clients. + Applicable when fLRole = FL_SERVER. + $ref: 'TS28623_ComDefs.yaml#/components/schemas/DnList' + + FLRequirement: + type: object + additionalProperties: false + properties: + fLClientSelectionCriteria: + type: array + uniqueItems: true + items: + $ref: '#/components/schemas/FLClientSelectionCriteria' + minItems: 1 + + FLClientSelectionCriteria: + type: object + additionalProperties: false + properties: + minimumAvailableDataSamples: + type: integer + minimumAvailableTimeDuration: + type: integer + description: Minutes + minimumInterimModelPerformance: + type: array + uniqueItems: true + items: + $ref: '#/components/schemas/ModelPerformance' + servingGeoArea: + type: array + uniqueItems: true + items: + $ref: 'TS28623_ComDefs.yaml#/components/schemas/GeoArea' + clientRedundancy: + type: boolean + trainingDataWithOrWithoutOutliers: + type: boolean + default: FALSE + uniformlyDistributedTrainingData: + type: boolean + default: FALSE + required: + - minimumAvailableDataSamples + - minimumAvailableTimeDuration + + FLReportPerClient: + type: object + additionalProperties: false + properties: + clientRef: + $ref: 'TS28623_ComDefs.yaml#/components/schemas/Dn' + numberOfDataSamplesUsed: + type: integer + trainingTimeDuration: + $ref: 'TS28623_ComDefs.yaml#/components/schemas/TimeWindow' + modelPerformanceOnClient: + type: array + items: + $ref: '#/components/schemas/ModelPerformance' + #-------- Definition of types for name-containments ------ SubNetwork-ncO-AiMlNrm: type: object @@ -233,6 +480,20 @@ components: - $ref: 'TS28623_GenericNrm.yaml#/components/schemas/ManagedFunction-Attr' - type: object properties: + supportedLearningTechnology: + $ref: '#/components/schemas/SupportedLearningTechnology' + fLParticipationInfo: + $ref: '#/components/schemas/FLParticipationInfo' + mLKnowledge: + $ref: '#/components/schemas/MLKnowledge' + mLTrainingType: + type: string + enum: + - INITIAL_TRAINING + - PRE_SPECIALISED_TRAINING + - RE_TRAINING + - FINE_TUNING + readOnly: true mLModelRepositoryRef: $ref: 'TS28623_ComDefs.yaml#/components/schemas/DnRo' - $ref: 'TS28623_GenericNrm.yaml#/components/schemas/ManagedFunction-ncO' @@ -262,6 +523,8 @@ components: properties: aIMLInferenceName: $ref: '#/components/schemas/AIMLInferenceName' + fLRequirement: + $ref: '#/components/schemas/FLRequirement' candidateTrainingDataSource: type: array uniqueItems: true @@ -282,14 +545,39 @@ components: uniqueItems: true items: $ref: '#/components/schemas/ModelPerformance' + rLRequirement: + $ref: '#/components/schemas/RLRequirement' cancelRequest: type: boolean suspendRequest: - type: boolean + type: boolean + trainingDataStatisticalProperties: + $ref: '#/components/schemas/DataStatisticalProperties' + distributedTrainingExpectation: + $ref: '#/components/schemas/DistributedTrainingExpectation' + mLKnowledgeName: + type: string + mLTrainingType: + type: string + enum: + - INITIAL_TRAINING + - PRE_SPECIALISED_TRAINING + - RE_TRAINING + - FINE_TUNING + expectedInferenceScope: + type: array + uniqueItems: true + items: + $ref: '#/components/schemas/AIMLInferenceName' + clusteringInfo: + type: array + uniqueItems: true + items: + $ref: '#/components/schemas/ClusteringCriteria' mLModelRef: - $ref: 'TS28623_ComDefs.yaml#/components/schemas/DnRo' + $ref: 'TS28623_ComDefs.yaml#/components/schemas/Dn' mLModelCoordinationGroupRef: - $ref: 'TS28623_ComDefs.yaml#/components/schemas/DnRo' + $ref: 'TS28623_ComDefs.yaml#/components/schemas/Dn' MLTrainingProcess-Single: allOf: @@ -315,6 +603,8 @@ components: default: FALSE trainingRequestRef: ## Figure 7.3a.1.1.1-1 has no such pointer $ref: 'TS28623_ComDefs.yaml#/components/schemas/DnListRo' + participatingFLClientRefList: + $ref: 'TS28623_ComDefs.yaml#/components/schemas/DnList' trainingReportRef: $ref: 'TS28623_ComDefs.yaml#/components/schemas/DnRo' mLModelGeneratedRef: @@ -357,6 +647,12 @@ components: readOnly: true trainingRequestRef: $ref: 'TS28623_ComDefs.yaml#/components/schemas/DnListRo' + fLReportPerClient: + type: array + uniqueItems: true + items: + $ref: '#/components/schemas/FLReportPerClient' + trainingProcessRef: $ref: 'TS28623_ComDefs.yaml#/components/schemas/DnRo' lastTrainingRef: @@ -448,7 +744,7 @@ components: type: boolean default: FALSE mLModelToLoadRef: - $ref: 'TS28623_ComDefs.yaml#/components/schemas/DnRo' + $ref: 'TS28623_ComDefs.yaml#/components/schemas/DnListRo' MLModelLoadingPolicy-Single: allOf: @@ -484,11 +780,12 @@ components: type: boolean default: FALSE mLModelLoadingRequestRef: - $ref: 'TS28623_ComDefs.yaml#/components/schemas/DnRo' + $ref: 'TS28623_ComDefs.yaml#/components/schemas/DnListRo' mLModelLoadingPolicyRef: - $ref: 'TS28623_ComDefs.yaml#/components/schemas/DnRo' + $ref: 'TS28623_ComDefs.yaml#/components/schemas/DnListRo' loadedMLModelRef: - $ref: 'TS28623_ComDefs.yaml#/components/schemas/DnRo' + $ref: 'TS28623_ComDefs.yaml#/components/schemas/DnListRo' + uniqueItems: true MLModel-Single: allOf: @@ -524,6 +821,18 @@ components: items: $ref: '#/components/schemas/MLCapabilityInfo' minItems: 1 + mLTrainingType: + type: string + enum: + - INITIAL_TRAINING + - PRE_SPECIALISED_TRAINING + - RE_TRAINING + - FINE_TUNING + readOnly: true + inferenceScope: + type: array + items: + $ref: '#/components/schemas/AIMLInferenceName' retrainingEventsMonitorRef: $ref: 'TS28623_ComDefs.yaml#/components/schemas/Dn' sourceTrainedMLModelRef: @@ -688,8 +997,6 @@ components: $ref: '#/components/schemas/MLModelLoadingProcess-Multiple' MLModelLoadingPolicy: $ref: '#/components/schemas/MLModelLoadingPolicy-Multiple' - MLModel: - $ref: '#/components/schemas/MLModel-Multiple' AIMLInferenceReport-Single: allOf: @@ -706,6 +1013,8 @@ components: items: $ref: '#/components/schemas/InferenceOutput' minItems: 1 + potentialImpactInfo: + $ref: '#/components/schemas/PotentialImpactInfo' mLModelRefList: $ref: 'TS28623_ComDefs.yaml#/components/schemas/DnListRo'