[AI_IMS-MED] AI/ML media processing and task updating
This contribution proposes updates to AI/ML media processing procedures and task updating call flows for IMS Data Channel (DC) applications. It builds upon TR 26.927 and TS 23.228 Annex AC, incorporating agreements from SA4#134 (S4-252075) and addressing feedback from SA2's reply LS on AIML for Media.
The revised flow incorporates common call flows agreed in S4-252075:
Initial Setup (Steps 1-13):
- UE1 registers to IMS with AI/ML capability indication
- MMTel session establishment between UE1 and UE2
- Bootstrap Data Channel (BbDC) establishment between UE1 and MF
- DCSF creates DC application list based on:
- Subscription list filter
- UE static capabilities
- Application list includes AI service information (e.g., intelligent translation service)
- UE1 downloads application list and selects application
- Application Data Channel (AaDC) establishment between UE1 and DC AS
- Task selection and AI/ML model selection
Media Processing Execution (Steps 14-16):
- Media session runs over MMTel session
- UE1 executes selected task and transmits input media streams
- Network runs inference and forwards processed streams to UE2 (or UE1, or both depending on application)
- Different alternatives supported based on inference location (local/remote/split)
Update Procedure:
- Step 17: UE1 sends UPDATE Task request over ADC with:
- Task ID
- New parameters
- Start time (when to apply new parameters)
- Optional additional parameters
Alternative Execution Paths (Steps 20-22):
- Alt a - Local Inference:
- DC AS sends UPDATE Task response (including new models) to UE1 via MF
- UE1 runs updated inference task locally
Network runs inference and forwards processed streams to UE2
Step 23: Remote UE (UE2) informed when task updates impact it
Purpose: Request to start an inference task (for split or remote inference)
Message Content:
- id: Message identifier
- type: "urn:3gpp:aiml:start-task"
- task_id: Task identifier (e.g., "speech-to-speech-translation")
- parameters: Task-specific parameters (e.g., inputLanguage, outputLanguage)
- input: Protocol and media stream identifier (mid from SDP)
- output: Protocol and media stream identifier
- timestamp: Timestamp of request
Response Message:
- task_session_id: Unique identifier for specific task instance
- response_code: Status (e.g., "200 OK")
- Echoes task_id and parameters
Media Stream Identification: Uses "mid" identifier from RFC 8843 as included in SDP offer/answer. Multiple RTP streams identified by comma-separated mid values.
Purpose: Update existing task that has already been started (requires prior 200 OK response to START Task)
Use Cases:
- Update model, parameters, input or output of existing task
- Indicate new input/output stream (e.g., new UE added to call)
Message Content:
- id: Message identifier
- type: "urn:3gpp:aiml:update-task"
- task_id: Task identifier
- task_session_id: References task from START Task Response
- parameters: Updated parameters
- output: Updated output stream information
- timestamp: Timestamp of request
Response Message:
- task_session_id: Same as in request
- response_code: Status indication
- Confirms task_id
The specification supports three inference deployment models:
1. Local inference: AI model downloaded and executed in UE
2. Remote inference: Inference executed in network (MF)
3. Split inference: Inference split between UE and network