Systems and Methods for AI / ML Workflow Services and Consumption by SMO Non-Real-Time RIC in O-RAN
The method and apparatus enable access to AI/ML services in the O-RAN Intelligent Controller by registering and subscribing to AI/ML workflow services, addressing the lack of specified procedures in current O-RAN specifications and enhancing network performance through AI/ML utilization.
Patent Information
- Application Number
- JP2024573550
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2022-10-12
- Publication Date
- 2025-07-15
- Estimated Expiration
- 2042-10-12
AI Technical Summary
Current O-RAN specifications do not specify procedures for participating in the various phases of the AI/ML life cycle as a service, restricting access to artificial intelligence machine learning services through Non-RT RIC or service producer applications.
A method and apparatus for registering and subscribing to AI/ML workflow services in an O-RAN Intelligent Controller (RIC) platform, enabling access to AI/ML services by sending application and service registration requests, and receiving corresponding responses, as well as discovering and subscribing to available services.
Facilitates access to various phases of the AI/ML life cycle as a service, allowing consumer applications to utilize AI/ML services through the Non-RT RIC framework, enhancing network performance and decision-making capabilities.
Smart Images

Figure 2025522441000001_ABST
Abstract
Description
Technical Field
[0001] Apparatuses and methods consistent with exemplary embodiments of the present disclosure relate to registration and participation in AI / ML workflow services in an Open Radio Access Network (O-RAN) Intelligent Controller (RIC) platform.
Background Art
[0002] Machine learning is a field of study that provides computers with the ability to learn without being explicitly programmed. O-RAN utilizes machine learning to learn useful information from input data and improve RAN or network performance. For example, the O-RAN architecture incorporates intelligent frameworks such as a near-real time O-RAN Intelligent Controller (Near-RT RIC) and a non-real time O-RAN Intelligent Controller (Non-RT RIC) for machine learning. These RICs include rApps and xApps that enable ML models and data-driven decision making.
[0003] However, access to artificial intelligence machine learning services is restricted. In particular, current O-RAN specifications do not specify procedures for participating in the various phases of the AI / ML life cycle as a service, either through the Non-RT RIC or through service producer applications (e.g., service producer rApps) that communicate with consumer applications (e.g., consumer rApps) via the R1 interface. Improvements are presented herein. These improvements may also be applicable to other multi-connection technologies and telecommunications standards that employ these technologies.
Summary of the Invention
[0004] The following presents a simplified summary of one or more embodiments of the present disclosure to provide a basic understanding of such embodiments. This summary is not an extensive overview of all contemplated embodiments, nor is it intended to identify key or critical elements of all embodiments or to delineate the scope of any or all embodiments. Its sole purpose is to present some concepts of one or more embodiments of the present disclosure in a simplified form as a prelude to the more detailed description that follows.
[0005] A method, apparatus, and non-transitory computer-readable medium for registering and subscribing to an AI / ML workflow service in an O-RAN Intelligent Controller (RIC) platform.
[0006] According to an exemplary embodiment, a method executed by a processor executing a first application includes sending an application registration request to a second application provided in an Open Radio Access Network (O-RAN) Intelligent Controller (RIC). The method further includes receiving, in response to the application registration request, a registration response from the second application that includes an application ID associated with the first application. The method further includes sending a service registration request to the second application that includes at least (i) the application ID associated with the first application, and (ii) a service profile of a service provided by an artificial intelligence (AI) framework that includes a plurality of learning models. The method further includes receiving, in response to the service registration request, a service registration response from the second application that includes a service identifier associated with the service provided by the AI framework.
[0007] According to an exemplary embodiment, a method executed by a processor that executes a first application external to an Open Random Access Network (O-RAN) Intelligent Controller (RIC) includes sending a service discovery request to a second application provided in the O-RAN Intelligent Controller (RIC). The method further includes receiving, in response to the service discovery request, from the second application, a service discovery response including a list of services provided by an artificial intelligence (AI) framework including a plurality of learning models. The method further includes sending a service subscription request that designates a service included in the list of services to a third application. The method further includes receiving, in response to the service subscription request, from the third application, a service subscription response that provides information that enables the first application to use the service designated in the service subscription request.
[0008] According to an exemplary embodiment, an apparatus for executing a first application includes at least one memory configured to store computer program code, and at least one processor configured to access the at least one memory and operate as instructed by the computer program code. The computer program code includes first transmission code configured to cause at least one of the at least one processors to send an application registration request to a second application provided in an Open Random Access Network (O-RAN) Intelligent Controller (RIC). The computer program code further includes first reception code configured to cause at least one of the at least one processors to receive, in response to the application registration request, a registration response including an application ID associated with the first application from the second application. The computer program code further includes second transmission code configured to cause at least one of the at least one processors to send a service registration request including at least (i) an application ID associated with the first application and (ii) a service profile of a service provided by an artificial intelligence (AI) framework including a plurality of learning models, to the second application. The computer program code further includes second reception code configured to cause at least one of the at least one processors to receive, in response to the service registration request, a service registration response including a service identifier associated with the service provided by the AI framework from the second application.
[0009] According to an exemplary embodiment, an apparatus for executing a first application external to an Open Random Access Network (O-RAN) Intelligent Controller (RIC) includes at least one memory configured to store computer program code, and at least one processor configured to access the at least one memory and operate as commanded by the computer program code. The computer program code further includes first transmission code configured to cause at least one of the at least one processors to send a service discovery request to a second application provided in an O-RAN Intelligent Controller (RIC). The computer program further includes first reception code configured to cause at least one of the at least one processors to receive, in response to the service discovery request, a service discovery response including a list of services provided by an artificial intelligence (AI) framework including a plurality of learning models, from the second application. The computer program code further includes second transmission code configured to cause at least one of the at least one processors to send a service subscriber request specifying a service included in the list of services to a third application. The computer program code further includes second reception code configured to cause at least one of the at least one processors to receive, in response to the service subscriber request, a service subscriber response providing information that enables the first application to use the service specified in the service subscriber request, from the third application.
[0010] Further embodiments are described in the following description, some of which will be apparent from the description and / or may be learned by practice of the presented embodiments of the disclosure.
[0011] The above and other aspects, features, and aspects of the embodiments of the disclosure will become apparent from the following description in conjunction with the accompanying drawings.
Brief Description of the Drawings
[0012]
Figure 1
[0013]
Figure 2
[0014]
Figure 3
[0015]
Figure 4
[0016]
Figure 5
[0017]
Figure 6
[0018]
Figure 7
[0019]
Figure 8
[0020]
Figure 9
[0021]
Figure 10
[0022]
Figure 11
[0023] The following detailed description of illustrative embodiments refers to the accompanying drawings. The same reference numerals in different drawings may identify the same or similar elements.
[0024] The foregoing disclosure provides examples and explanations, but is not intended to be exhaustive or to limit the disclosed implementation forms to the exact form disclosed. Modifications and variations are possible in light of the above disclosure or may be obtained from the practice of the implementation forms. Additionally, one or more features or components of one embodiment may be incorporated into or combined with another embodiment (or one or more features of another embodiment). Further, in the flowcharts and descriptions of operations provided below, it is understood that one or more operations may be omitted, one or more operations may be added, one or more operations may be (at least partially) executed simultaneously, and the order of one or more operations may be interchanged.
[0025] It will be apparent that the systems and / or methods described herein may be implemented in various forms of hardware, firmware, or a combination of hardware and software. The actual dedicated control hardware or software code used to implement these systems and / or methods does not limit the implementation form. Thus, the operations and behaviors of the systems and / or methods are described herein without reference to specific software code, and it is understood that software and hardware can be designed to implement the systems and / or methods based on the description herein.
[0026] Even if a particular combination of features is recited in the claims and / or disclosed herein, these combinations are not intended to limit the disclosure of possible implementations. In fact, many of these features can be combined in ways not specifically recited in the claims and / or not disclosed herein. Each of the dependent claims listed below may depend directly on only one claim, but in the disclosure of possible implementations, each dependent claim is included in combination with all other claims in the claim set.
[0027] Elements, acts, or instructions used in this specification should not be construed as important or essential unless explicitly described. Also, as used in this specification, the articles "a" and "an" are intended to include one or more items and may be used interchangeably with "one or more." When only one item is intended, the term "one" or similar language is used. Also, as used in this specification, terms such as "has," "have," "having," "include," "including," etc. are intended to be non-limiting terms. Further, the phrase "based on" shall mean "at least partially based on" unless otherwise specified. Additionally, expressions such as "at least one of [A] and [B]" or "at least one of [A] or [B]" should be understood to include only A, only B, or both A and B.
[0028] Throughout this specification, references to "one embodiment," "an embodiment," or similar terms mean that the particular feature, structure, or characteristic described in connection with the embodiment is included in at least one embodiment of the solution. Thus, the phrases "in one embodiment," "in an embodiment," and similar language throughout this specification may, but do not necessarily, all refer to the same embodiment.
[0029] Furthermore, the features, advantages, and characteristics described in this disclosure may be combined in any suitable manner in one or more embodiments. Those skilled in the art will recognize, in light of the description of this specification, that the disclosure may be practiced without one or more of the specific features or advantages of a particular embodiment. In other instances, additional features and advantages may be recognized in particular embodiments that are not present in all embodiments of the disclosure.
[0030] Embodiments of the present disclosure are directed to providing various phases of the AI / ML life cycle as a service. For example, embodiments of the present disclosure use AI / ML models in connection with specific ML-assisted solutions (e.g., use cases) to be executed by consumer applications, through a Non-RT (Non-Real-Time) RIC framework, through a service producer application (e.g., service producer rApp), or through both a service producer application and a consumer application (e.g., consumer rApp) communicating via an R1 interface to enable access to the AI / ML service. Embodiments of the present disclosure define procedures for accessing various phases of the AI / ML life cycle as a service through the Non-RT RIC framework or through a service producer rApp that communicates with the consumer rApp through the R1 interface. Thus, various phases of the AI / ML life cycle can be advantageously used in the O-RAN framework by the consumer rApp.
[0031] FIG. 1 is a diagram of an exemplary device 100 for implementing the method of the present disclosure. The device 100 can implement any of the rApps, O-RAN RIC, and AI / ML frameworks disclosed herein. The device 100 can correspond to any type of well-known computer, server, or data processing device. For example, the device 100 can include a processor, a personal computer (PC), a printed circuit board (PCB) with a computing device, a minicomputer, a mainframe computer, a microcomputer, a telephone computing device, a wired / wireless computing device (e.g., a smartphone, a personal digital assistant (PDA)), a laptop, a tablet, a smart device, or any other similar functional device.
[0032] In some embodiments, as shown in FIG. 1, device 100 may include a set of components such as processor 120, memory 130, storage component 140, input component 150, output component 160, and communication interface 170.
[0033] Bus 110 may comprise one or more components that enable communication between the set of components of device 100. For example, bus 110 may be a communication bus, crossover bar, network, etc. Although bus 110 is shown as a single line in FIG. 1, bus 110 may be implemented using a number (two or more) of connections between the set of components of device 100. The present disclosure is not limited in this regard.
[0034] Device 100 may include one or more processors such as processor 120. Processor 120 may be implemented in hardware, firmware, and / or a combination of hardware and software. For example, processor 120 may include a central processing unit (CPU), a graphics processing unit (GPU), an accelerated processing unit (APU), a microprocessor, a microcontroller, a digital signal processor (DSP), a field-programmable gate array (FPGA), an application-specific integrated circuit (ASIC), a general-purpose single-chip or multi-chip processor, or other programmable logic device, discrete gate or transistor logic, discrete hardware components, or any combination thereof designed to perform the functions described herein. A general-purpose processor may be a microprocessor, or any conventional processor, controller, microcontroller, or state machine. Processor 120 may also be implemented as a combination of computing devices, such as a combination of a DSP and a microprocessor, multiple microprocessors, one or more microprocessors cooperating with a DSP core, or any other such configuration. In some embodiments, certain processes and methods may be performed by circuitry specific to a given function.
[0035] Processor 120 can control the overall operation of device 100 and / or a set of components of device 100 (e.g., memory 130, storage component 140, input component 150, output component 160, communication interface 170).
[0036] Device 100 may further include a memory 130. In some embodiments, the memory 130 may include a random access memory (RAM), a read only memory (ROM), an electrically erasable programmable ROM (EEPROM), a flash memory, a magnetic memory, an optical memory, and / or another type of dynamic or static storage device. The memory 130 may store information and / or instructions for use (e.g., execution) by the processor 120.
[0037] The storage component 140 of the device 100 can store information related to the operation and use of the device 100 and / or computer-readable instructions and / or code. For example, the storage component 140, together with the corresponding drive, can include a hard disk (e.g., a magnetic disk, an optical disk, a magneto-optical disk, and / or a solid state disk), a compact disc (CD), a digital versatile disc (DVD), a universal serial bus (USB) flash drive, a Personal Computer Memory Card International Association (PCMCIA) card, a floppy disk, a cartridge, a magnetic tape, and / or another type of non-transitory computer-readable medium.
[0038] Device 100 may further include an input component 150. The input component 150 may include one or more components that enable Device 100 to receive information via user input (such as a touch screen, keyboard, keypad, mouse, stylus, button, switch, microphone, camera, etc.). Alternatively or additionally, the input component 150 may include sensors for sensing information (such as a global positioning system (GPS) component, accelerometer, gyroscope, actuator, etc.).
[0039] The output component 160 of Device 100 may include one or more components (such as a display, liquid crystal display (LCD), light-emitting diodes (LEDs), organic light-emitting diodes (OLEDs), tactile feedback device, speaker, etc.) that can provide output information from Device 100.
[0040] Device 100 may further include a communication interface 170. The communication interface 170 may include a receiver component, a transmitter component, and / or a transceiver component. The communication interface 170 may enable Device 100 to establish a connection with and / or transfer communications to other devices (e.g., a server, another device). The communication may be achieved via a wired connection, a wireless connection, or a combination of wired and wireless connections. The communication interface 170 may enable Device 100 to receive information from and / or provide information to another device. In some embodiments, the communication interface 170 may provide communication with another device via a local area network (LAN), a wide area network (WAN), a metropolitan area network (MAN), a private network, an ad hoc network, an intranet, the Internet, a fiber optic-based network, a cellular network (e.g., a fifth generation (5G) network, a long-term evolution (LTE) network, a third generation (3G) network, a code division multiple access (CDMA) network, etc.), a public land mobile network (PLMN), a telephone network (e.g., a Public Switched Telephone Network (PSTN)), and / or a combination of these or other types of networks.Alternatively or additionally, communication interface 170 can provide communication with another device via a device-to-device (D2D) communication link such as FlashLinQ, WiMedia, Bluetooth, ZigBee, Wi-Fi, LTE, 5G, etc. In other embodiments, communication interface 170 may include an Ethernet interface, an optical interface, a coaxial interface, an infrared interface, a radio frequency (RF) interface, and the like.
[0041] Device 100 is included in core network 240 and can execute one or more of the processes described herein. Device 100 can perform operations based on processor 120 that executes computer-readable instructions and / or code that can be stored by a non-transitory computer-readable medium such as memory 130 and / or storage component 140. The computer-readable medium can refer to a non-transitory memory device. The memory device can include memory space within a single physical memory device and / or memory space distributed across multiple physical memory devices.
[0042] The computer-readable instructions and / or code can be loaded into memory 130 and / or storage component 140 from another computer-readable medium or from another device via communication interface 170. The computer-readable instructions and / or code stored in memory 130 and / or storage component 140, when executed or upon execution by processor 120, can cause device 100 to execute one or more of the processes described herein.
[0043] Alternatively or additionally, a hardwired circuit can be used instead of or in combination with software instructions to execute one or more of the processes described herein. Thus, the embodiments described herein are not limited to any particular combination of hardware circuitry and software.
[0044] The number and arrangement of the components shown in FIG. 1 are provided as an example. In practice, there may be additional components, fewer components, different components, or components arranged differently compared to those shown in FIG. 1. Further, two or more components shown in FIG. 1 may be implemented within a single component, or a single component shown in FIG. 1 may be implemented as a number of distributed components. Additionally or alternatively, a set of (one or more) components shown in FIG. 1 can perform one or more functions described as being performed by another set of components shown in FIG. 1.
[0045] FIG. 2 is a diagram showing an exemplary O-RAN communication system 200 according to various embodiments of the present disclosure. The O-RAN communication system 200 may include one or more user equipments (UEs) 210, one or more O-RAN Radio Units (O-RUs) 220 including one or more base stations 220a, one or more O-RAN Distribution Units (O-DUs) 230, and one or more O-RAN Centralized Units (O-CUs) 240.
[0046] Examples of UE210 can include cellular phones, smartphones, session initiation protocol (SIP) phones, laptops, personal digital assistants (PDAs), satellite radios, global positioning systems (GPS), multimedia devices, video devices, digital audio players (e.g., MP3 players), cameras, game consoles, tablets, smart devices, wearable devices, vehicles, electric meters, gas pumps, large or small kitchen appliances, healthcare devices, implants, sensors / actuators, displays, or any other similarly functioning devices. Some of one or more UE210 may be referred to as Internet-of-Things (IoT) devices (e.g., parking meters, gas pumps, toasters, vehicles, heart monitors, etc.). One or more UE210 may also be referred to as a station, mobile station, subscriber station, mobile unit, subscriber unit, wireless unit, remote unit, mobile device, wireless device, wireless communication device, remote device, mobile subscriber station, access terminal, mobile terminal, wireless terminal, remote terminal, handset, user agent, mobile agent, client, or some other suitable term.
[0047] One or more base stations 220A of O-RU220 can communicate wirelessly with one or more UEs 210. Each base station of the one or more base stations 220A can provide communication coverage to one or more UEs 210 located within the geographical coverage area of that base station 220A. In some embodiments, as shown in FIG. 2, the base station 220A can transmit one or more beamformed signals to one or more UEs 210 in one or more transmission directions. One or more UEs 210 can receive the beamformed signals from the base station 220A in one or more reception directions. Alternatively or additionally, one or more UEs 210 can transmit beamformed signals to the base station 220 in one or more transmission directions. The base station 220A can receive the beamformed signals from one or more UEs 210 in one or more reception directions.
[0048] One or more base stations 220A can include a macro cell (e.g., a high-power cellular base station) and / or a small cell (e.g., a low-power cellular base station). Small cells can include femto cells, pico cells, and micro cells. The base station 220A can be a macro cell or a large cell, and can include an access point (AP), an evolved (or evolved universal terrestrial radio access network (E-UTRAN)) Node B (eNB), a next-generation Node B (gNB), or any other type of base station known to those skilled in the art and / or can be referred to as such.
[0049] In some embodiments, the O-RU 220 may be connected to the O-DU 230 via the FH link 224. The FH link 224 may be a 25Gbps line through which user plane (U-plane) and control plane (C-Plane) packets are downloaded from the O-DU 230 to the O-RU 220. In some embodiments, the O-DU 230 may be connected to the O-CU 240 via the midhaul link 234. The O-CU 240 may include an O-CU control plane (O-CU-CP) packet generator 240A and an O-CU user plane (O-CU-UP) packet generator 240B. C-plane and U-plane packets may be generated from the O-CU-CP packet generator 240A and the O-CU-UP packet generator 240B, respectively.
[0050] Figure 3 shows an exemplary mapping relationship between machine learning (ML) components at various stages of the AI / ML life cycle and O-RAN network functions and interfaces. The O-RU, O-DU, and O-CU referred to in Figure 3 may correspond to the O-RU 220, O-DU 230, and O-CU 240 (Figure 2), respectively.
[0051] In some embodiments, the data collection function 302 can collect data for training an ML model as the first step in the ML pipeline. This process can avoid some issues related to data, such as irrelevant data, missing data, data bias, and imbalance. In some embodiments, the data preparation function 304 can transform raw data to enable the data to be run through a machine learning algorithm to find insights or make predictions. Real-world raw data is incomplete, inconsistent, and may lack certain behaviors or trends. Real-world raw data can also contain many errors. Therefore, after the data collection function 302 is executed, the data preparation function 304 can preprocess the collected raw data into a format usable by a machine learning algorithm.
[0052] In some embodiments, the AI / ML learning function 306 can include training an ML model using the available data. The learning process can be monitored to determine whether the process has converged or to collect important information such as memory used, loss, accuracy, etc. In some embodiments, the AI / ML model management function 308 can manage a model directly onboarded from an ML training host or a model from an ML compilation host when model compilation is executed after training.
[0053] In some embodiments, the AI / ML inference function 310 can include a model inference engine that analyzes the model file, splits the operations, executes an inference instruction stream to complete the ML model inference calculation, and returns the inference result. The AI / ML continuous operation function 312 can provide a series of online functionality for the continuous improvement of the AI / ML model throughout the AI / ML life cycle. This functionality can include verification / monitoring / analysis / recommendation / continuous optimization.
[0054] In some embodiments, the AI / ML support solution function 314 can use machine learning algorithms during operation to address specific use cases. Traffic steering using ML is an example of an ML support solution. This function can perform configuration management via the O1 interface 316, control actions / guidance via the E2 interface 318, or control policies via the A1 or E2 interface 320.
[0055] FIG. 4 shows an exemplary Service Management Orchestration (SMO) framework 400 and a Non-RT (Non-Real-Time) RIC architecture 402. In some embodiments, as shown in FIG. 4, the AI / ML workflow service 404 can be part of the SMO / Non-RT RIC, indicating that the SMO / Non-RT RIC manages data collection and preparation, model construction, model training, model deployment, model execution, model validation, continuous model self-monitoring, and self-learning / re-training related to the ML support solution. The external AI / ML service 406 can correspond to an AI / ML service provided by an AI / ML framework external to the SMO framework 400. The E2 node 408 can include the O-DU 230, O-CU-CP 240A, and O-CU-UP 240B (FIG. 2).
[0056] The AI / ML workflow service can provide important phases or functionality of the AI / ML lifecycle to consumer rApps for using AI / ML for the purpose of analyzing or making decisions for consumer rApps. The AI / ML workflow service included in the O-RAN framework includes, but is not limited to, an ML model and inference hosting service, an AI / ML model training and hosting service, an AI / ML model repository service, and an AI / ML model management service.
[0057] In some embodiments, the rApp or Non-RT RIC framework or Near-RT RIC or any external entity shall provide model inference host information after discovery of the ML model. The AI / ML workflow service and exposer functionality can request inference host capability information from the rApp or Non-RT RIC framework or Near-RT RIC or any external entity (i.e., where the inference is hosted).
[0058] In some embodiments, the AI / ML model training and hosting service may include one or more services such as 1) checking the training host capabilities, 2) starting or ending model training, and 3) validating and publishing the trained model. The training host capabilities checking service may include the ML / DL framework (e.g., Pytorch, TensorFlow, Caffe, etc.), the data formats of the input and output, the requirements regarding model performance (e.g., accuracy, response time, real-time factor, etc.), the requirements regarding the model footprint and HW platform (e.g., ARM, GPU, CPU, FPGA, etc.), and the task requirements.
[0059] In some embodiments, the AI / ML model repository service may include discovery of the ML model, registration of the ML model, deletion of the ML model, deregistration of the ML model, and search for the ML model. ML model discovery can enable the rApp to request available ML models from the model inventory inside or outside the Non-RT RIC framework through an external endpoint or through another rApp (e.g., service producer rApp) via the R1 interface.
[0060] ML model registration can enable a service producer to register an ML model with metadata in a predetermined format, including 1) the version of the model, 2) the size of the model (e.g., in MB or GB), 3) the computing requirements (e.g., GFLOPs or TFLOPS), 4) training details such as the duration of training, the timestamp of the final training, 5) model training metrics (e.g., classification accuracy, log loss, confusion matrix, area under the curve, F1 score, mean absolute error, mean squared error), 6) hyperparameters used to train the model, predicted results, and 7) diagnostic charts (e.g., confusion matrix, ROC curve). Hyperparameters can include the learning rate in an optimization algorithm (e.g., gradient descent), the selection of the optimization algorithm (e.g., gradient descent, stochastic gradient descent, or Adam optimizer), the selection of the cost or loss function the model will use, the number of clusters in a clustering task, the pooling size, and the batch size.
[0061] ML model deletion can enable a service consumer application to delete the version of the stored ML model. ML model deregistration can enable a service consumer application to deregister the stored ML model (e.g., all stored versions of the model are removed).
[0062] In some embodiments, the AI / ML model management service can manage the ML models deployed on the inference host and provide services including 1) maintaining, exposing the health and status of the ML model during inference, 2) model certification (authentication) and onboarding, 3) model deployment, management, and termination, 4) model activation and inference, 5) ML model feedback such as the performance of the model, 6) ML model retraining updates, and 7) ML model reselection.
[0063] In some embodiments, to provide an AI / ML workflow service, the rApp, as a service producer, can register the provided service with Non-RT RIC platform functions (e.g., service management and exposure functions (SME: service management & exposure function)), and the consumer rApp can subscribe to the registered service. FIG. 5 shows an exemplary sequence diagram of a service registration process 500 according to various embodiments of the present disclosure. The process 500 can be executed between an AI / ML service producer rApp and an SME service producer application. As shown in FIG. 5, the AI / ML service producer rApp is external to the SMO framework, and the SME service producer rApp is located within the SMO framework and / or the Non-RT RIC platform. The process 500 can provide registration of the AI / ML rApp as a service producer. For example, the AI / ML service producer rApp can be an rApp provided on an AI / ML framework that is external to the SMO framework and the Non-RT RIC.
[0064] This process can start at step 502 where the AI / ML service producer rApp sends a bootstrap request to the SME service producer. In some embodiments, the bootstrap service can provide discovery of an rApp registration application programming interface (API) to enable the AI / ML service producer rApp to communicate with the SME service producer. At step 504, the SME service producer provides a bootstrap response that can include information about the rApp registration API.
[0065] In step 506, the AI / ML service producer rApp sends a registration request to the SME service producer. To register the rApp, the AI / ML service producer application can pass information including the rApp name, vendor, software version, and other information required by the Non-RT RIC / SMO framework. In step 508, the SME service producer authenticates the AI / ML service producer rApp. In step 510, in response to a successful authentication, the SME service producer sends a registration response that may include an application ID such as an rApp ID. The application ID can be an ID uniquely associated with the AI / ML service producer rApp such that the SME service producer can recognize any specific rApp that sends a message to the SME service producer. If the authentication fails, the registration response may include a message indicating that the authentication has failed.
[0066] In step 512, the AI / ML service producer rApp sends a service registration request to the SME service producer. The service registration request may include the application ID provided in step 510 and the service profile of one or more services to be registered with the SME service producer. The service profile of one or more services may correspond to the aforementioned AI / ML workflow service. In step 514, each service profile is authenticated. Step 514 may be a request from the rApp. In step 516, each service profile is verified for validity. For example, the framework can check the service profile along with the rApp ID. In step 518, each authenticated and verified service profile is registered with the SME service producer. In step 520, the SME service producer sends a service registration response, which may include the service identifier of each registered service profile, to the AI / ML service producer rApp. The service identifier can be used to discover the service endpoint.
[0067] Figure 6 shows an exemplary sequence diagram of a service discovery and enrollment process 600 according to various embodiments of the present disclosure. In some embodiments, process 600 shows a consumer rApp that communicates with an SME service producer and an AI / ML service producer rApp to enroll in an AI / ML service.
[0068] Process 600 can start at step 602 where the consumer rApp sends a service discovery request to the SME service producer. The service discovery request can be used to discover AI / ML services available at the SME. As an example, the available services can correspond to the services of the service profiles registered with the SME service producer in process 500 (Figure 5). The service discovery request can include an application ID such as an rApp ID. The service discovery request can include selection criteria information such as the name of the service (e.g., AI / ML service), service type, service capabilities (e.g., requirements for consuming those services).
[0069] In step S604, the SME service producer authenticates the service discovery request. In response to successful authentication, the SME service producer sends a service discovery response in step 606. The service discovery response can include a list of services. As an example, the list of services can include all the services registered with the SME service producer. As another example, the list of services can include services that match the selection criteria specified in the service discovery request. The service discovery response can include endpoint information and service identifiers for each service specified in the list of services.
[0070] In step 608, the consumer rApp sends a service subscription request to the AI / ML service producer rApp. The service subscription request may include the rApp ID and the service identifier of each service to which the consumer rApp subscribes. In step 610, the AI / ML service producer rApp authenticates the service subscription request. In response to a successful authentication, the AI / ML service producer rApp sends a service subscription response to the consumer rApp in step 612. The service subscription response may include the subscription ID of each subscribed service. The service subscription response may further include procedures and endpoints for using the subscribed services and sub-services of the subscribed services. The service subscription response may further include the capability information of each subscribed service. Accordingly, based on processes 500 and 600, the consumer rApp can advantageously subscribe to services provided by an AI / ML framework that cannot be accessed otherwise.
[0071] Figure 7 shows an exemplary sequence diagram of a service registration process 700 according to various embodiments of the present disclosure. Comparing the service registration process 500 where the AI / ML service producer rApp is external to the SMO framework and the Non-RT RIC, the process 700 is executed between two applications included within the SMO framework. For example, the process 700 may be executed between the AI / ML service and the exposer function application and the SME service producer application to register an AI / ML service provided by the AI / ML framework. Similar to step 512, in step 702, the AI / ML service and the exposer function application send a service registration request to the SME service producer. The SME service producer steps execute an authentication step 704, a validity confirmation step 706, and a service registration step 708, similar to steps 514, 516, and 518, respectively. Similar to step 520, in step 712, the SME service producer sends a service registration response.
[0072] Figure 8 shows an exemplary sequence diagram of a service discovery and enrollment process 800 according to various embodiments of the present disclosure. Process 800 can be based on the registration of services executed in process 700. Similar to step 602, at step 802, the consumer rApp sends a service discovery request to the SME service producer. Similar to step 804, at step 804, the SME service producer authenticates the service discovery request. Similar to step 606, at step 806, the SME service producer sends a service discovery response. Similar to step 608, at step 808, the consumer rApp sends a service enrollment request to the AI / ML service and the exposer function. Similar to step 610, at step 810, the AI / ML service and the exposer function authenticate the service enrollment request. Similar to step 612, at step 812, the AI / ML service and the exposer function send a service enrollment response.
[0073] Figure 9 shows an exemplary sequence diagram of a service discovery and enrollment process 900 according to various embodiments of the present disclosure. Process 900 can be executed between a consumer rApp communicating with an SME service producer and an AI / ML service and an exposer function, and an AI / ML service producer rApp. Process 900 can be executed based on the registration processes 500 and 700.
[0074] Process 900 can start at step 902 where, similar to step 602, the consumer rApp sends a service discovery request to the SME service producer. Similar to step 604, at step 904, the SME service producer can authenticate the service discovery request. Similar to step 606, at step 906, the SME service producer can send a service discovery response to the consumer rApp.
[0075] Similar to step 808, in step 908, the consumer rApp sends a service subscription request to the AI / ML service and the exposer function. Similar to step 810, in step 910, the AI / ML service and the exposer function authenticate the service subscription request. Similar to 812, in step 912, the AI / ML service and the exposer function send a service subscription response.
[0076] Similar to step 608, in step 914, the consumer rApp sends a service subscription request to the AI / ML service producer rApp 914. Similar to step 610, in step 916, the AI / ML service producer rApp authenticates the service subscription request. Similar to step 612, in step 918, the AI / ML service producer rApp sends a service subscription response. Process 600 is targeted at subscribing to services only from the producer rApp, process 800 is targeted at subscribing to services only from the AI / ML service and the exposer function, while process 900 is targeted at subscribing to services from both the rApp and the AI / ML and exposer functions.
[0077] Figure 10 shows an exemplary flowchart of an embodiment of a service registration process 1000. Process 1000 can be executed by an AI / ML service producer rApp or a device 100 (Figure 1) that executes the AI / ML service and the exposer function. Process 1000 can generally start at step S1002 where an application registration request is sent to the SME service producer. The process proceeds to step S1004 where a registration response is received from the SME service producer in response to the registration request. The registration response may include an application ID. The application ID can be an rApp ID.
[0078] The process proceeds to step S1006 where a service registration request is sent to the SME service producer. The service registration request may include a service profile of a service provided by an AI framework that includes at least an application ID and a plurality of learning models. The AI framework may correspond to an AI / ML framework. The process proceeds to step S1008 where a service registration response is received from the SME service producer in response to the service registration request. The service registration response may include a service identifier associated with the service provided by the AI framework. Process 1100 can end after step S1008.
[0079] FIG. 11 shows an exemplary flowchart of one embodiment of the service discovery and enrollment process 1100. Process 1100 may be executed by a device 100 that runs a consumer rApp. Process 1100 can generally start at step S1102 where a service discovery request is sent to the SME service producer. The service discovery request may include an application ID. The service discovery request may also include selection criteria that specify criteria for selecting a service. The process proceeds to step S1104 where a service discovery response is received from the SME service producer in response to the service discovery request. The service discovery response may include a list of services provided by an AI framework that includes a plurality of learning models. The list of services may be selected according to the selection criteria.
[0080] The process proceeds to step S1106 where the service subscriber request is sent to the service producer rApp. The service subscriber request can specify the services included in the list of services. The process proceeds to step S1108 where, in response to the service subscriber request, a service subscriber response is received from the service producer rApp. The service subscriber response may include information that enables the consumer rApp to use the service specified in the service subscriber request, such as a service endpoint. Process 1100 can end after step S1108.
[0081] The foregoing disclosure provides illustration and description, but is not intended to be exhaustive or to limit the implementation forms to the exact forms disclosed. Modifications and variations are possible in light of the above disclosure or may be obtained from the practice of the implementation forms.
[0082] It should be understood that the specific order or hierarchy of blocks in the processes / flowcharts disclosed herein is an example of exemplary approaches. Based on design preferences, it should be understood that the specific order or hierarchy of blocks in the processes / flowcharts can be rearranged. Further, some blocks may be combined or omitted. The appended method claims present the elements of the various blocks in an exemplary order and are not meant to be limited to the specific order or hierarchy presented.
[0083] Some embodiments can relate to systems, methods, and / or computer-readable media in any possible technical detail integration. Further, one or more of the above-described components can be implemented as instructions stored on a computer-readable medium and executable by at least one processor (and / or can include at least one processor). The computer-readable medium can include a computer-readable non-transitory storage medium (or multiple media) having computer-readable program instructions for causing a processor to execute operations.
[0084] A computer-readable storage medium can be a tangible device that can hold and store instructions for use by an instruction execution device. A computer-readable storage medium can be, for example, but is not limited to, an electronic storage device, a magnetic storage device, an optical storage device, an electromagnetic storage device, a semiconductor storage device, or any suitable combination of the foregoing. A non-exhaustive list of more specific examples of computer-readable storage media includes portable computer disks, hard disks, random access memory (RAM), read-only memory (ROM), erasable programmable read-only memory (EPROM or flash memory), static random access memory (SRAM), portable compact disk read-only memory (CD-ROM), digital versatile disks (DVDs), memory sticks, floppy disks, mechanically encoded devices such as punch cards or raised structures in grooves in which instructions are recorded, and any suitable combination of the foregoing. As used herein, a computer-readable storage medium should not be construed to be a transient signal per se, such as a radio wave or other freely propagating electromagnetic wave, an electromagnetic wave propagating through a waveguide or other transmission medium (e.g., an optical pulse passing through an optical fiber cable), or an electrical signal transmitted through a wire.
[0085] The computer-readable program instructions described herein can be downloaded from a computer-readable storage medium to respective computing / processing devices or to an external computer or external storage device via a network, such as, for example, the Internet, a local area network, a wide area network, and / or a wireless network. The network can include copper transmission cables, optical transmission fibers, wireless transmission, routers, firewalls, switches, gateway computers, and / or edge servers. A network adapter card or network interface in each computing / processing device receives the computer-readable program instructions from the network and transfers the computer-readable program instructions for storage on a computer-readable storage medium within each respective computing / processing device.
[0086] The computer-readable program code / instructions for performing the operations can be in any combination of one or more programming languages, including assembly instructions, instruction-set-architecture (ISA) instructions, machine instructions, machine-dependent instructions, microcode, firmware instructions, state-setting data, configuration data for integrated circuits, or source code or object code written in an object-oriented programming language such as Smalltalk, C++, and a procedural programming language such as the "C" programming language or similar programming languages. The computer-readable program instructions can be executed entirely on the user's computer, partly on the user's computer, as a stand-alone software package, partly on the user's computer and partly on a remote computer, or entirely on the remote computer or server. In the latter scenario, the remote computer may be connected to the user's computer through any type of network, including a local area network (LAN) or a wide area network (WAN), or may be connected to an external computer (e.g., through the Internet using an Internet service provider). In some embodiments, for example, an electronic circuit including a programmable logic circuit, a field-programmable gate array (FPGA), or a programmable logic array (PLA) can execute the computer-readable program instructions by personalizing the electronic circuit using the state information of the computer-readable program instructions to perform aspects or operations.
[0087] These computer-readable program instructions, when executed via the processor of a computer or other programmable data processing apparatus, may create means for implementing the functions / operations specified in one or more blocks of a flowchart and / or block diagram, thereby producing a machine, such as a general purpose computer, a special purpose computer, or other programmable data processing apparatus. These computer-readable program instructions may also be stored in a computer-readable storage medium that includes instructions for implementing the aspects of the functions / operations specified in one or more blocks of a flowchart and / or block diagram, and may be capable of instructing a computer, programmable data processing apparatus, and / or other devices to function in a particular manner.
[0088] These computer-readable program instructions may also be loaded onto a computer, other programmable apparatus, or other device to cause a series of operational steps to be performed on the computer, other programmable apparatus, or other device, implementing the functions / operations specified in one or more blocks of a flowchart and / or block diagram, thereby producing a computer-implemented process.
[0089] The flowcharts and block diagrams in the figures illustrate the architecture, functionality, and operation of possible implementations of systems, methods, and computer-readable media according to various embodiments. In this regard, each block in the flowchart or block diagram can represent a module, segment, or portion of one or more executable instructions for implementing the specified logical function(s). The method, computer system, and computer-readable media may include additional blocks, fewer blocks, different blocks, or differently arranged blocks compared to those shown in the figures. In some alternative implementations, the functions noted in the blocks may be performed in an order different from that noted in the figures. For example, two blocks shown in succession may actually be performed simultaneously or substantially simultaneously, or the blocks may sometimes be performed in the reverse order depending on the functionality involved. It should also be noted that each block of the block diagrams and / or flowchart diagrams, or combinations of blocks in the block diagrams and / or flowchart diagrams, or both, can be implemented by a dedicated hardware-based system that performs the specified function or action, or by a combination of dedicated hardware and computer instructions.
[0090] It will be apparent that the systems and / or methods described herein can be implemented in different forms of hardware, firmware, or a combination of hardware and software. It is understood that the actual dedicated control hardware or software code used to implement these systems and / or methods is not limiting of the implementations. Thus, the operation and behavior of the systems and / or methods are described herein without reference to specific software code, and it is understood that software and hardware can be designed based on the description herein to implement the systems and / or methods.
[0091] The above disclosure also encompasses the embodiments listed below.
[0092] (1) A method executed in a processor that executes a first application, the method comprising: sending an application registration request to a second application provided in an Open Random Access Network (O-RAN) Intelligent Controller (RIC); receiving, in response to the application registration request, a registration response including an application ID associated with the first application from the second application; sending a service registration request including at least (i) the application ID associated with the first application and (ii) a service profile of a service provided by an artificial intelligence (AI) framework including a plurality of learning models, to the second application; and receiving, in response to the service registration request, a service registration response including a service identifier associated with the service provided by the AI framework from the second application.
[0093] (2) The method according to feature (1), further comprising: receiving, from a third application external to the RIC, a subscription request including a service identifier associated with a service provided by the AI framework; and sending, in response to the subscription request, a subscription response including a service endpoint that enables at least the third application to use the service provided by the AI framework, to the third application.
[0094] (3) The method according to feature (1) or (2), wherein the first application is external to the RIC and the first application communicates with the second application via an O-RAN R1 interface.
[0095] (4) The method according to feature (3), further comprising: sending a bootstrap request to the second application before sending the application registration request; and receiving, from the second application, a bootstrap response including information about an application registration application programming interface (API).
[0096] (5) The method according to any one of features (1) to (4), wherein the service provided by the AI framework is one of (i) a model and inference hosting service, (ii) a model training and hosting service, (iii) a model repository service, or (iv) a model management service.
[0097] (6) A method executed by a processor that executes a first application external to an Open Random Access Network (O-RAN) Intelligent Controller (RIC), the method including: sending a service discovery request to a second application provided in the O-RAN Intelligent Controller (RIC); receiving, in response to the service discovery request, from the second application, a service discovery response including a list of services provided by an artificial intelligence (AI) framework including a plurality of learning models; sending a service subscription request specifying a service included in the list of services to a third application; and receiving, in response to the service subscription request, from the third application, a service subscription response providing information that enables the first application to use the service specified in the service subscription request.
[0098] (7) The method according to feature (6), wherein the list of services included in the service discovery response includes capability information of each service included in the list of services.
[0099] (8) The method according to feature (6) or (7), wherein the information that enables the first application to use the service specified in the service subscription request includes one or more procedures regarding the use of the service.
[0100] (9) The method according to any one of features (6) to (8), wherein information enabling a first application to use a service specified by a service subscriber request includes an endpoint of the service in the AI framework.
[0101] (10) The method according to any one of features (6) to (9), wherein a third application is external to the RIC and the first application communicates with the third application via an O-RAN R1 interface.
[0102] (11) The method according to any one of features (6) to (10), wherein a list of services provided by the AI framework specifies at least one of (i) a model and inference hosting service, (ii) a model training and hosting service, (iii) a model repository service, or (iv) a model management service.
[0103] An apparatus for executing a first application, comprising at least one memory configured to store computer program code, and at least one processor configured to access the at least one memory and operate as instructed by the computer program code, wherein the computer program code includes: a first transmission code configured to cause at least one of the at least one processors to send an application registration request to a second application provided in an Open Random Access Network (O-RAN) Intelligent Controller (RIC); a first reception code configured to cause at least one of the at least one processors to receive, in response to the application registration request, a registration response including an application ID associated with the first application from the second application; a second transmission code configured to cause at least one of the at least one processors to send a service registration request including at least (i) an application ID associated with the first application and (ii) a service profile of a service provided by an artificial intelligence (AI) framework including a plurality of learning models, to the second application; and a second reception code configured to cause at least one of the at least one processors to receive, in response to the service registration request, a service registration response including a service identifier associated with the service provided by the AI framework from the second application.
[0104] (13) Computer program code configured to cause at least one of the at least one processors to receive an access request including a service identifier associated with a service provided by an AI framework from a third application external to the RIC; and computer program code configured to cause at least one of the at least one processors to send an access response including a service endpoint that enables at least the third application to use the service provided by the AI framework to the third application in response to the access request, the apparatus according to feature (12).
[0105] (14) The apparatus according to feature (12) or (13), wherein a first application is external to the RIC and the first application communicates with a second application via an O-RAN R1 interface.
[0106] (15) Computer program code configured to cause at least one of the at least one processors to send a bootstrap request to a second application before sending an application registration request; and computer program code configured to cause at least one of the at least one processors to receive a bootstrap response including information about an application registration application programming interface (API) from the second application, the apparatus according to feature (14).
[0107] (16) The apparatus according to any one of features (12) to (15), wherein the service provided by the AI framework is one of (i) a model and inference hosting service, (ii) a model training and hosting service, (iii) a model repository service, or (iv) a model management service.
[0108] An apparatus for executing a first application external to an Open Random Access Network (O-RAN) Intelligent Controller (RIC), comprising at least one memory configured to store computer program code, and at least one processor configured to access the at least one memory and operate as instructed by the computer program code, wherein the computer program code comprises: a first transmission code configured to cause at least one of the at least one processor to send a service discovery request to a second application provided in an O-RAN Intelligent Controller (RIC); a first reception code configured to cause at least one of the at least one processor to receive, in response to the service discovery request, a service discovery response including a list of services provided by an artificial intelligence (AI) framework including a plurality of learning models, from the second application; a second transmission code configured to cause at least one of the at least one processor to send a service subscription request specifying a service included in the list of services to a third application; and a second reception code configured to cause at least one of the at least one processor to receive, in response to the service subscription request, a service subscription response providing information that enables the first application to use the service specified in the service subscription request, from the third application.
[0109] (18) The apparatus according to feature (17), wherein the list of services included in the service discovery response includes capability information for each service included in the list of services.
[0110] (19) The apparatus according to feature (17) or (18), wherein the information that enables the first application to use the service specified in the service subscription request includes one or more procedures regarding the use of the service.
[0111] The apparatus according to any one of features (17) to (19), wherein information enabling a first application to use a service specified by a service subscriber request includes an endpoint of the service in an AI framework.
Claims
1. A method executed in a processor that executes a first application, the method comprising: sending an application registration request to a second application provided in an Open Random Access Network (O-RAN) Intelligent Controller (RIC); receiving, in response to the application registration request, a registration response from the second application that includes an application ID associated with the first application; sending a service registration request to the second application that includes at least (i) the application ID associated with the first application and (ii) a service profile of a service provided by an artificial intelligence (AI) framework that includes a plurality of learning models; and receiving, in response to the service registration request, a service registration response from the second application that includes a service identifier associated with the service provided by the AI framework.
2. receiving a subscription request from a third application external to the RIC that includes the service identifier associated with the service provided by the AI framework; and sending, in response to the subscription request, a subscription response to the third application that includes a service endpoint that enables at least the third application to use the service provided by the AI framework. The method according to claim 1.
3. The method according to claim 1, wherein the first application is external to the RIC and the first application communicates with the second application via an O-RAN R1 interface.
4. sending a bootstrap request to the second application before sending the application registration request; and receiving, from the second application, a bootstrap response that includes information regarding an application registration application programming interface (API). The method according to claim 3.
5. The service provided by the AI framework is one of (i) a model and inference hosting service, (ii) a model training and hosting service, (iii) a model repository service, or (iv) a model management service. The method according to claim 1.
6. A method executed by a processor that executes a first application external to an Open Random Access Network (O-RAN) Intelligent Controller (RIC), the method comprising: sending a service discovery request to a second application provided in the O-RAN Intelligent Controller (RIC); receiving, in response to the service discovery request, from the second application, a service discovery response including a list of services provided by an artificial intelligence (AI) framework including a plurality of learning models; sending a service subscription request specifying the service included in the list of services to a third application; and receiving, in response to the service subscription request, from the third application, a service subscription response providing information that enables the first application to use the service specified in the service subscription request.
7. The list of services included in the service discovery response includes capability information of each service included in the list of services. The method according to claim 6.
8. The information that enables the first application to use the service specified in the service subscription request includes one or more procedures regarding the use of the service. The method according to claim 6.
9. The information that enables the first application to use the service specified in the service subscription request includes an endpoint of the service in the AI framework. The method according to claim 6.
10. The third application is external to the RIC, and the first application communicates with the third application via an O-RAN R1 interface. The method according to claim 6.
11. The list of services provided by the AI framework specifies at least one of: (i) a model and inference hosting service, (ii) a model training and hosting service, (iii) a model repository service, or (iv) a model management service. The method according to claim 6. Claim 12 At least one memory configured to store computer program code; An apparatus for executing a first application, comprising at least one processor configured to access the at least one memory and operate as commanded by the computer program code, the computer program code comprising: First transmission code configured to cause at least one of the at least one processor to send an application registration request to a second application provided in an Open Random Access Network (O-RAN) Intelligent Controller (RIC); First reception code configured to cause at least one of the at least one processor to receive, in response to the application registration request, a registration response from the second application that includes an application ID associated with the first application; Second transmission code configured to cause at least one of the at least one processor to send a service registration request to the second application, the service registration request including at least (i) the application ID associated with the first application, and (ii) a service profile of services provided by an artificial intelligence (AI) framework including a plurality of learning models; and Second reception code configured to cause at least one of the at least one processor to receive, in response to the service registration request, a service registration response from the second application that includes a service identifier associated with the service provided by the AI framework, An apparatus. Claim 13 The computer program code further comprises At least one of the at least one processors is configured to receive a subscription request including the service identifier associated with the service provided by the AI framework from a third application external to the RIC; and, At least one of the at least one processors is further configured to, in response to the subscription request, transmit a subscription response including at least a service endpoint that enables at least the third application to use the service provided by the AI framework to the third application, The apparatus according to claim 12.
14. The first application is external to the RIC, and the first application communicates with the second application via an O-RAN R1 interface. The apparatus according to claim 12.
15. The computer program code At least one of the at least one processors is further configured to transmit a bootstrap request to the second application before transmitting the application registration request; and, At least one of the at least one processors is further configured to receive a bootstrap response including information about an application registration application programming interface (API) from the second application. The apparatus according to claim 14.
16. The service provided by the AI framework is one of (i) a model and inference hosting service, (ii) a model training and hosting service, (iii) a model repository service, or (iv) a model management service. The apparatus according to claim 12.
17. At least one memory configured to store computer program code An apparatus for executing a first application external to an Open Random Access Network (O-RAN) Intelligent Controller (RIC) including at least one processor configured to access the at least one memory and operate as commanded by the computer program code, wherein the computer program code a first transmission code configured to cause at least one of the at least one processor to send a service discovery request to a second application provided in an O-RAN Intelligent Controller (RIC); a first reception code configured to cause at least one of the at least one processor to receive, in response to the service discovery request, a service discovery response including a list of services provided by an artificial intelligence (AI) framework including a plurality of learning models, from the second application; a second transmission code configured to cause at least one of the at least one processor to send a service subscriber request specifying a service included in the list of services to a third application; and a second reception code configured to cause at least one of the at least one processor to receive, in response to the service subscriber request, a service subscriber response providing information that enables the first application to use the service specified in the service subscriber request, from the third application, the apparatus. **Claim 18** The list of services included in the service discovery response includes capability information of each service included in the list of services. The apparatus according to claim 17. **Claim 19** The information that enables the first application to use the service specified in the service subscriber request includes one or more procedures regarding the use of the service. The apparatus according to claim 17. **Claim 20** The information that enables the first application to use the service specified in the service subscriber request includes an endpoint of the service in the AI framework. The apparatus according to claim 17.
Citation Information
Patent Citations
RIC SDK
JP2024513628A
Federated learning in o-ran
US20220012645A1
Method and apparatus for unique identification of individual users in the radio access network (RAN) intelligent controller
US20220232452A1
ATSC 3.0 multicast-broadcast intelligent ran topologies
US20220264525A1
Method and apparatus for use in communication networks having control and management planes
US20220272510A1