A method to inference LLMS in a distributive way in a wireless system

By deploying LLMs at the network edge and coordinating with edge devices, the method addresses computational limitations of IoT devices, reducing latency and enhancing privacy and security in LLM inference.

WO2025251393A1PCT designated stage Publication Date: 2025-12-11HUAWEI TECH CO LTD
View PDF 4 Cites 0 Cited by

Patent Information

Application Number
PCT/CN2024/107693
Authority / Receiving Office
WO · WO
Patent Type
Applications
Current Assignee / Owner
Priority Date
2024-06-04
Filing Date
2024-07-26
Publication Date
2025-12-11

AI Technical Summary

Technical Problem

The deployment of Large Language Models (LLMs) on IoT devices is impractical due to their limited computational capabilities, leading to latency, privacy, and security concerns, especially for real-time applications like autonomous driving and industrial automation.

Method used

Deploy LLMs at the network edge using edge devices coordinated by a base station, breaking inference tasks into sub-tasks and allocating them to user equipment (UEs) based on capability reports, ensuring efficient resource allocation and seamless handover.

Benefits of technology

This approach reduces latency, enhances privacy, and improves security by distributing computational workload across base stations and edge devices, optimizing resource utilization and adapting to device changes.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN2024107693_11122025_PF_FP_ABST
    Figure CN2024107693_11122025_PF_FP_ABST
Patent Text Reader

Abstract

A method at a base station including breaking the inference task into a plurality of sub-tasks; allocating each sub-task of a subset of the plurality of sub-tasks to at least one first user equipment (UE); receiving results for the each sub-task from the at least one first UE;and merging the results for each sub-task to an inference result.
Need to check novelty before this filing date? Find Prior Art

Description

A METHOD TO INFERENCE LLMS IN A DISTRIBUTIVE WAY IN A WIRELESS SYSTEM

[0001] CROSS-REFERENCE TO RELATED APPLICATIONS

[0002] The present application claims priority from U.S. Patent Application No. 63 / 656,037, filed June 4th, 2024 and incorporated herein by reference.

[0003] FIELD OF THE DISCLOSURE

[0004] The present disclosure is related to large language models, and in particular to the use of Large Language Models in wireless communications systems.BACKGROUND

[0005] Large language models (LLMs) are a type of artificial intelligence (AI) that have revolutionized the field of natural language processing (NLP) . These models are trained on massive amounts of text data, allowing them to learn complex patterns and relationships within human language. This enables LLMs to perform a wide range of tasks with remarkable proficiency, including generating human-quality text, translating languages, writing different kinds of creative content, and answering questions in an informative way.

[0006] The demand for utilizing LLMs is rapidly increasing, extending beyond human users to encompass a vast network of IoT devices. However, performing LLM inference directly on these devices is often impractical due to their limited computational capabilities.SUMMARY

[0007] The deployment of LLMs also presents challenges. Their large size and computational requirements often necessitate cloud-based processing, raising concerns about latency, privacy, security, and accessibility. Further, the demand for utilizing LLMs is rapidly increasing, extending beyond human users to encompass a vast network of IoT devices. However, performing LLM inference directly on these devices is often impractical due to their limited computational capabilities. This challenge has given rise to the need for online LLM inference facilitated by advanced wireless systems, particularly in the context of the upcoming era.

[0008] Unlike human users who may tolerate some latency, IoT devices often require real-time responsiveness with millisecond-level delays. This may be crucial for applications such as autonomous driving, industrial automation, and smart city infrastructure, where instantaneous decision-making may be essential. As a result, a significant portion of future data traffic is expected to be driven by AI-powered tasks, particularly online LLM inference for real-time applications.

[0009] This shift towards online LLM inference has profound implications for future LLM deployment strategies. Traditional cloud-based solutions may not be able to meet the stringent latency requirements of IoT devices. This necessitates exploring alternative approaches, such as deploying LLMs at the network edge, closer to the end devices. Additionally, efficient model partitioning and distributed computing techniques will be crucial for dividing the computational load among edge servers and user devices, ensuring scalability and low latency.

[0010] Therefore, embodiments of the present disclosure use edge devices to perform inference sub-tasks under the coordination of a base station.

[0011] According to a first aspect, a method at a base station or edge device is described. The method may be applied at a network device side, for example, a server, base station or a module in a network, a circuit or a chip (for example, a modem (modem) chip, also referred to as a baseband (baseband) chip, or a system on chip (system on chip, SoC) chip or a system in package (system in package, SIP) chip that includes a modem core) that is responsible for functions in a network node. In this method, the base station may break an inference task into a plurality of sub-tasks. The base station may further allocate each sub-task of a subset of the plurality of sub-tasks to at least one first user equipment (UE) , receive results for the each sub-task from the at least one first UE, and merge the results for each sub-task to an inference result.

[0012] In a possible design, the breaking the inference task into a plurality of sub-tasks may comprise at least one of layer portioning; tensor partitioning; and model parallelism.

[0013] In a possible design, the method of the first aspect may further comprise receiving a capability report from each UE of at least one UE, wherein the at least one UE includes the at least one first UE, the capability report indicating at least one of: an identifier of the at least one UE; computational resources available at the at least one UE; a battery life of the at least one UE; channel related information for communication with the at least one UE; or a preferred operating temperature range for the at least one UE.

[0014] In a possible design, the method of the first aspect may further comprise selecting the at least one first UE, based on at least one of: a capability of the at least one UE, a current load of the at least one UE, a proximity of the at least one UE to the base station, and channel conditions at the at least one UE.

[0015] In a possible design, the allocating may comprise at least one of: comparing the computational resources of the at least one UE with computational resources required for the sub-task; or estimating a time required for the at least one UE to complete a sub-task of the plurality of sub-tasks based on the capability of the at least one UE and a complexity of the sub-task.

[0016] In a possible design, the allocating may comprise sending allocation information to each of the at least one first UE, the allocation information comprising at least one of: an identifier of an allocated sub-task; a specific portion of a model required for the allocated sub-task; input data for the allocated sub-task; a required output format for the allocated sub-task; a deadline for completing the allocated sub-task; and a priority level for the allocated sub-task.

[0017] In a possible design, the allocation information may be transmitted via a dedicated downlink channel between the RAN node (for example, base station) and the at least one first UE.

[0018] In a possible design, the receiving results may comprise receiving result information from at least one of the at least one first UE, wherein the result information comprises at least one of: an identifier of a completed sub-task; processing time for the sub-task; energy consumed for the sub-task; a current status of the corresponding UE; and any errors or exceptions encountered for the sub-task.

[0019] In a possible design, the allocating may comprise: allocating the same sub-task to a plurality of third UEs, wherein the plurality of third UEs belong to the at least one first UE, and wherein the receiving results may comprise: comparing the results received from different UEs for the same sub-task; using a first result received for the same sub-task received from one of the plurality of third UEs; and notifying others of the plurality of third UEs that their results were not used to optimize resource utilization.

[0020] In a possible design, the method of the first aspect may further comprise determining that at least one second UE is moving to an area served by a second base station, wherein the at least one first UE includes the at least one second UE; providing handover information to the second base station, the handover information including information regarding the sub-task allocated to the at least one second UE; and / or transferring any partially processed data or intermediate results from the base station to the second base station.

[0021] In a possible design, the method of the first aspect may further comprise receiving a request for an inference task from a client device.

[0022] In a possible design, the method of the first aspect may further comprise transmitting the inference result to a client device.

[0023] In a possible design, the method of the first aspect may further comprise validating the received results for each sub-tasks.

[0024] According to a second aspect, a method at an edge device is described. The method may be applied at an edge side device, for example, a computer, user equipment, mobile device, or a terminal device, a circuit or a chip (for example, a modem (modem) chip, also referred to as a baseband (baseband) chip, or a system on chip (system on chip, SoC) chip or a system in package (system in package, SIP) chip that includes a modem core) that is responsible for a functions in a user equipment. In this method, the UE may receive, from a base station, a sub-task to process and verify feasibility of processing the sub-task based on current capabilities of the UE. When the processing of the sub-task is not feasible, the UE may notify the base station of the inability to process the sub-task. When the processing of the sub-task is feasible, the UE may acknowledge receipt of the sub-task to the base station, process the sub-task; and report results of the processing to the base station.

[0025] In a possible design, the method of the second aspect may further comprise registering the UE with the base station to perform processing of sub-tasks, the registration including transmitting registration information to the base station indicating willingness to participate in an inference task, wherein the inference task comprises the sub-tasks.

[0026] In a possible design, the method of the second aspect may further comprise, prior to the receiving, sending a capability report to the base station, the capability report providing at least one of: an identifier of the at least one UE; computational resources available at the at least one UE; a battery life of the at least one UE; channel related information for communication with the at least one UE; or a preferred operating temperature range for the at least one UE.

[0027] In a possible design, the reporting results may comprise sending a results message containing at least one of: an identifier of the completed sub-task; output data generated for the sub-task; a processing time taken by the UE; energy consumed by the UE during processing; a current status of the UE; and any errors or exceptions encountered during processing.

[0028] In a possible design, the receiving the sub-task may comprise receiving an allocation message, the allocation message comprising at least one of: an identifier of the sub-task; a portion or sub-tensor of the model; input data for the sub-task; a required output format for the sub-task; a deadline for completing the sub-task; and a priority level for the sub-task.

[0029] According to a third aspect, a method at a base station or edge device is described. The method may be applied at a network device side, for example, a server, base station or a module in a network, a circuit or a chip (for example, a modem (modem) chip, also referred to as a baseband (baseband) chip, or a system on chip (system on chip, SoC) chip or a system in package (system in package, SIP) chip that includes a modem core) that is responsible for a functions in a network node. In this method, the base station may receive a registration message from a first User Equipment (UE) , the registration message indicating the first UE is available to provide computing resources to the base station. The base station may further receive a capability message from the first UE, the capability message comprising capability information for the first UE, the capability information including at least one of: an identifier for the first UE; computational resources available at the first UE; a battery life of the first UE; channel related information for communication with the first UE; a preferred operating temperature range for the first UE; and a current power consumption and thermal state of the first UE; authenticating the UE; and storing the capability information for the first UE in a repository with capability information received from other UEs.

[0030] In a possible design, the method of the third aspect may further comprise breaking an inference task into a plurality of sub-tasks; and allocating each sub-task to at least one user equipment (UE) within the repository.

[0031] In a possible design, the allocating may comprise, for each sub-task: evaluating available UEs based on their reported capabilities, current load, proximity to the base station, channel condition, and trustworthiness; and selecting at least one UE based on the evaluation.

[0032] In a possible design, the method of the third aspect may further comprise receiving results for each sub-task from the at least one user equipment; validating the received results for each sub-task; merging the results for each sub-task to an inference result; and transmitting the inference result to a client device.

[0033] In a possible design, the registration message may include at least one of: UE location information; UE movement trajectory information; and a timestamp of the registration.

[0034] In a possible design, the method of the third aspect may further comprise periodically receiving updated capability reports from registered UEs, reflecting changes in their capabilities and availability.

[0035] In a possible design, the method of the third aspect may further comprise evaluating trustworthiness of received capability reports based on historical data and reputation scores for each UE; and removing UEs from the repository based on inactivity, unresponsiveness, or low trustworthiness.

[0036] According to a fourth aspect, a method at an edge device is described. The method may be applied at an edge side device, for example, a computer, user equipment, mobile device, or a terminal device, a circuit or a chip (for example, a modem (modem) chip, also referred to as a baseband (baseband) chip, or a system on chip (system on chip, SoC) chip or a system in package (system in package, SIP) chip that includes a modem core) that is responsible for a functions in a user equipment. In this method, the UE may detect a beacon signal from a base station advertising a model inference service and sending a registration message to the base station indicating the UE is available to provide processing capacity to an Artificial Intelligence system. The UE may further send a capability message to the base station, the capability message comprising capability information for the UE, including at least  one of: an identifier of the UE; computational resources available at the UE; a battery life of UE; channel related information for communication with the UE, or a preferred operating temperature range for the UE.

[0037] In a possible design, the registration message may comprise at least one of: UE location information; UE movement trajectory information; and a timestamp of the registration.

[0038] In a possible design, the method of the fourth aspect may further comprise periodically transmitting updated capability reports from the UE, reflecting changes in capabilities and availability of the UE.

[0039] In a possible design, the method of the fourth aspect may further comprise receiving, from the base station, a sub-task to process; verifying feasibility of processing the sub-task based on current capabilities of the UE; when the processing of the sub-task is not feasible: notifying the base station of the inability to process the sub-task; when the processing of the sub-task is feasible: acknowledging receipt of the sub-task to the base station; processing the sub-task; reporting results of the processing to the base station.

[0040] In a possible design, the reporting results may comprise sending a results message containing at least one of: an identifier of the completed sub-task; output data generated for the sub-task; a processing time taken by the UE; energy consumed by the UE during processing; a current status of the UE; and any errors or exceptions encountered during processing.

[0041] In a possible design, the receiving the sub-task may comprise receiving an allocation message, the allocation message comprising at least one of: an identifier of the sub-task; a portion or sub-tensor of the model; input data for the sub-task; a required output format for the sub-task; a deadline for completing the sub-task; and a priority level for the sub-task.

[0042] According to a fifth aspect, a communication apparatus is described. The communication apparatus has a function of implementing the first aspect, the second aspect, the third aspect or the fourth aspect. For example, the communication apparatus includes a corresponding module, unit, or means (means) for performing operations in the first aspect, the second aspect, the third aspect or the fourth aspect. The module, unit, or means may be specifically implemented by using software, may be implemented by using hardware, or may be implemented by using software in combination with hardware.

[0043] According to a sixth aspect, another a communication apparatus is described. The communication apparatus includes a memory and one or more processors. The memory is configured to store a part or all of a necessary computer program or instructions for implementing a function in the first aspect, the second aspect, the third aspect or the fourth aspect. The one or more processors may execute the computer program or the instructions, and when the computer program or the instructions is / are executed, the communication apparatus is enabled to implement the method in any possible design or implementation of the first aspect, the second aspect, the third aspect or the fourth aspect.

[0044] In some embodiments, the communication apparatus may further include an interface circuit, and the processor is configured to communicate with another apparatus or component through the interface circuit.

[0045] In some embodiments, the communication apparatus may further include the memory.

[0046] The communication apparatus may be a network element, a module in a network element, or a chip responsible for a communication function in a network element, for example, a modem chip (also referred to as a baseband chip) or an SoC chip or an SIP chip that includes a modem module.

[0047] According to a seventh aspect, a computer-readable storage medium is described. The computer-readable storage medium stores computer-readable instructions, and when a computer reads and executes the computer-readable instructions, the computer is enabled to perform the method in any one of the possible designs of the first aspect, the second aspect, the third aspect or the fourth aspect.

[0048] According to an eight aspect, this disclosure provides a computer program product. When a computer reads and executes the computer program product, the computer is enabled to perform the method in any one of the possible designs of the first aspect, the second aspect, the third aspect or the fourth aspect.

[0049] According to a ninth aspect, this disclosure provides a system comprising at least one of an apparatus in (or at) a UE of the present application, or an apparatus in (or at) a network device of the present application.

[0050] According to a tenth aspect, this disclosure provides a method performed by a system comprising at least one of an apparatus in (or at) a UE of the present application, and an apparatus in (or at) a network device of the present application.

[0051] This application encompasses various embodiments, including not only method embodiments, but also other embodiments such as apparatus embodiments and embodiments related to non-transitory computer readable storage media. Embodiments may incorporate, individually or in combinations, the features disclosed herein.BRIEF DESCRIPTION OF THE DRAWINGS

[0052] The present disclosure will be better understood with reference to the drawings, in which:

[0053] FIG. 1 is a block diagram showing an example communication system.

[0054] FIG. 2 is a block diagram showing another example communication system.

[0055] FIG. 3 is a block diagram showing two apparatuses communicating with each other in a communication system.

[0056] FIG. 4 is a block diagram showing an example apparatus.

[0057] FIG. 5 is a block diagram showing an example apparatus with various logical units.

[0058] FIG. 6 is a block diagram showing a generic architecture of an LLM.

[0059] FIG. 7 is a block diagram showing a generic architecture of a Transformer.

[0060] FIG. 8 is a block diagram showing a pre-filling and decoding phase for LLM inference.

[0061] FIG. 9 is a block diagram showing Transformer attention variants.

[0062] FIG. 10 is a block diagram showing a Mixture of Experts architecture.

[0063] FIG. 11 is a dataflow diagram showing a process for integrating UEs as edge inference resources for assisting a base station with inference tasks.

[0064] FIG. 12 is a block diagram showing UEs moving between base stations.

[0065] FIG. 13 is a dataflow diagram showing a process for integrating moving UEs as edge inference resources for assisting a base station with inference tasks.

[0066] FIG. 14 is a block diagram showing a role of a base station in scheduling inference tasks over multiple UE edge devices. FIG. 15 is a block diagram showing edge devices assisting in calculating multiple head attentions.

[0067] FIG. 16 is a block diagram showing two edge device groups assist in calculating multiple head attentions and FFN modules.

[0068] FIG. 17 is a block diagram showing edge devices assist a base station for an inference task with an MoE structure.

[0069] FIG. 18 is a block diagram showing edge device groups assisting in calculating attentions, FFN and normalization modules.DETAILED DESCRIPTION

[0070] The present disclosure will now be described in detail by describing various illustrative, non-limiting embodiments thereof with reference to the accompanying drawings and exhibits. The disclosure may, however, be embodied in many different forms and should not be construed as being limited to the illustrative embodiments set forth herein. Rather, the embodiments are provided so that this disclosure will be thorough and will fully convey the concept of the disclosure to those skilled in the art.

[0071] The present disclosure provides methods for deploying Large Language Models (LLMs) directly at a base station, such as a next generation Node B (gNB) , utilizing collaboration with nearby edge devices to overcome the limitations of traditional cloud-based inference. By distributing the computational workload across base station and edge devices, the methods herein aim to significantly reduce latency, enhance privacy, and improve security while accommodating LLMs of varying sizes and complexities. This departure from conventional cloud-based paradigms advocates for adaptive selection and utilization of nearby edge devices, ensuring efficient resource allocation by considering only idle or available devices. The integration of intelligent control signaling and protocols within future wireless systems is crucial for dynamic allocation processes, encompassing reporting, scheduling, and task distribution.

[0072] In the embodiments herein, UEs identified as edge devices, such as idle smartphones or laptops, serve as readily available resources to assist gNBs with inference tasks. While the present disclosure is described below using gNBs, it will be appreciated by those in the art that other base stations or edge devices could equally be used instead of a gNB, and the examples using gNBs are merely provided for illustration.

[0073] The proposed protocol involves continuous scanning for nearby gNB signals, registration, capability reporting, task allocation, execution, and result reporting. Additionally, a redesigned protocol facilitates seamless handover of UE edge devices between gNBs, ensuring continuous connectivity and efficient utilization of edge resources even for moving UEs. Incorporating edge computing capabilities into the handover process optimizes overall system performance and efficiency.

[0074] In the dynamic edge inference ecosystem, the gNB orchestrates inference tasks by profiling UE edge devices'capabilities, segmenting the model, allocating tasks, managing inputs / outputs, and dynamically adapting to changes. The proposed protocol and signaling flow ensure efficient utilization of edge resources through careful resource profiling, model segmentation, task allocation, and dynamic adaptation strategies. Moreover, incorporating dedicated downlink channels and redundancy mechanisms tailored for edge inference further enhances the reliability and robustness of the system.

[0075] Referring to FIG. 1, is a schematic illustration of an example communication system according to an implementation of the present disclosure, there is shown the communication system 100 that includes a radio access network (RAN) 120, one or more communication electronic devices (EDs) 110a, 110b, 110c, 110d, 110e, 110f, 110g, 110h, 110i, 110j (collectively referred to as 110) , a core network 130, a Public Switched Telephone Network (PSTN) 140, the Internet 150, and other networks 160. The RAN 120 may include, but is not limited to, a future generation RAN, or a legacy RAN such as, but not limited to, 5th generation (5G) , 4th generation (4G) , 3rd generation (3G) or 2nd generation (2G) radio access network. The RAN 120 may be, for example, an Evolved Universal Mobile Telecommunications System (UMTS) Terrestrial Radio Access Network (E-UTRAN) , a NextGen RAN (NG RAN) , or some other type of RAN. Examples of RAN 120 based on the evolution of telecommunications standards include, but is not limited to, GSM (Global System for Mobile Communications) and CDMA (Code Division Multiple Access) for 2G, UMTS (Universal Mobile Telecommunications System) based on WCDMA (Wideband Code Division Multiple Access) and CDMA2000 for 3G, LTE (Long-Term Evolution) and WiMAX (Worldwide Interoperability for Microwave Access) for 4G, and NR (New Radio) for 5G. In some implementations, The RAN 120 may use any radio access technology (RAT) in the wireless interface between the one or more EDs 110 and the RAN 120. In some implementations, the term “radio access” may refer to the future generation air interface standards which may include both terrestrial networks (TNs) and non-terrestrial networks (NTNs) . These networks will be described in greater detail below in conjunction with various implementations. The one or more communication EDs 110 (also referred to as “user equipment” ) are configured to connect (e.g., communicatively couple) with each other to one or more network nodes 170a, 170b (collectively referred to as 170) in the RAN 120. The core network (CN) 130 is a part of the communication system 100 and consists of network nodes (e.g., 170a, 170b) which provide support for the network features and telecommunication services. In some implementations, the CN 130 may be dependent on the RAT used in the communication system 100. In other implementations, the CN 130 may be access-agnostic, i.e., the CN 130 may be independent of the RAT used in the communication system 100. There are different types of CN 130, for different 3GPP system generations. For example, the CN 130 is the Evolved Packet Core (EPC) in 4G, also known as the Evolved Packet System (EPS) . In another example, the CN 130 is the 5G Core (5GC) which was developed as part of the 5G System (5GS) . The CN 130 also enables integration of different 3GPP and non-3GPP access types. In some implementations and referring to FIG. 2, the CN 130 also provides the interface towards external networks that may include the PSTN 140, the Internet 150, and other networks 160 in the communication system 100.

[0076] In general, the communication system 100 facilitates interaction between multiple wireless or wired elements. The communication system 100 may transmit different types of content, such as voice, data, video, and / or text, through different transmission methods such as, but not limited to broadcast, multicast, groupcast, and unicast. Additionally, the communication system 100 operates by allocating and / or by sharing resources, such as carrier spectrum bandwidth, among its constituent elements.

[0077] The communication system 100 may provide a wide range of communication services and applications including, but not limited to, Enhanced Mobile Broadband (eMBB) services, Ultra-Reliable Low-Latency Communication (URLLC) services, Massive Machine Type Communication (mMTC) services, Integrated Sensing And Communication (ISAC) , immersive communication, Ultra-massive Machine-Type Communication (uMTC) , hyper reliable and low-latency communication, ubiquitous connectivity, integrated AI and communication, and other services that can be provided by a future generation communication system. The communication system 100 may provide other services and applications such as, but not limited to, earth monitoring, remote sensing, passive sensing and positioning, navigation and tracking, autonomous delivery and mobility, and the like.

[0078] The communication system 100 may include a terrestrial communication system (or network) and / or a non-terrestrial communication system (or network) . The communication system 100 may provide a high degree of availability and robustness through a joint operation of the terrestrial communication system and the non-terrestrial communication system. For example, integrating a non-terrestrial communication system (or components thereof) into a terrestrial communication system can result in a heterogeneous network comprising multiple layers. The heterogeneous network may achieve better overall performance through efficient multi-link joint operation, more flexible functionality sharing, and faster physical layer link switching between terrestrial networks and non-terrestrial networks. The terrestrial communication system and the non-terrestrial communication system could be considered as sub-systems of the communication system 100.

[0079] FIG. 2 illustrates another example for communication system 100 according to an implementation of the present disclosure, there is shown the communication system 100 includes EDs 110a, 110b, 110c, 110d (collectively referred to as ED 110) , RANs 120a, 120b, one or more of CNs 130, a PSTN 140, the Internet 150, and other networks 160. Additionally, the communication system 100 may also include a non-terrestrial network (NTN) 120c. The RANs 120a and 120b may include network nodes 170a and 170b respectively. Examples of network nodes 107a, 107b include base stations, which can be generally referred to as terrestrial network (TN) devices or terrestrial transmit and receive points (T-TRPs) 170a and 170b (collectively referred to as 170) . In this context, the terms TRP” and “base station” are used interchangeably unless otherwise specified. For simplicity, this disclosure primarily refers to network nodes as base stations; however, unless explicitly stated otherwise, references to TRP are considered non-limiting and interchangeable. The T-TRPs 170a, 170b may be base stations mounted on a building or tower. In one implementation, the NTN 120c includes a RAN node such as a base station 172, which may be generally referred to as an NTN device, a non-terrestrial node, a non-terrestrial network device, a non-terrestrial base station, or a non-terrestrial transmit and receive point (NT-TRP) 172.

[0080] In some implementations, the NT-TRP 172 is not attached to the ground, for example, as in the case of an airborne base station. An airborne base station may be implemented using communication equipment supported or carried by a flying device. For example, a flying device may include, but is not limited to, an airborne platform (such as a blimp or an airship) , balloon, drone (such as quadcopter) , and other types of aerial vehicles. In some implementations, an airborne base station may be supported or carried by an unmanned aerial system (UAS) or an unmanned aerial vehicle (UAV) , such as a drone. An airborne base station may be a moveable or mobile base station that can be flexibly deployed in different locations to meet network demand. A satellite base station is another example of a non-terrestrial base station. A satellite base station may be implemented using communication equipment supported or carried by a satellite. A satellite base station may also be referred to as an orbiting base station. High altitude platforms are yet another example of non-terrestrial base stations, including international mobile telecommunication base stations.

[0081] As referred to herein, and unless specified otherwise, a “TRP” may also refer to a T-TRP or an NT-TRP, a “T-TRP” may also refer to a “TN TRP” , and an “NT-TRP” may also refer to an “NTN TRP” . The NTN 120c may be considered a RAN, sharing operational aspects with RANs 120a, 120b. The NTN 120c may include at least one NTN device and at least one corresponding terrestrial network device. The at least one NTN device may function as a transport layer device and the at least one corresponding terrestrial network device may function as a RAN node, communicating with the ED 110 via the NTN device. Additionally, there may be an NTN gateway on the ground (referred to as a terrestrial network device) that also functions as a transport layer device facilitating communication with both the NTN device and the RAN node. The RAN node may communicate with the ED 110 via the NTN device and the NTN gateway. In some implementations, the NTN gateway and the RAN node may be located within the same device.

[0082] A base station 170 (also referred to as a TRP as stated above) is a network element within a radio access network responsible for radio transmission and reception in one or more cells to or from the ED (such as a user equipment) . In different implementations, base station 170 may also be known as a base transceiver station (BTS) , a radio base station, a network node, a network device, a device on the network side, a transmit / receive node, a Node B, an evolved NodeB (eNodeB or eNB) , a Home eNodeB, a next Generation NodeB (gNB) , a transmission point (TP) , a site controller, an access point (AP) , a wireless router, a relay station, a terrestrial node, a terrestrial network device, a terrestrial base station, a non-terrestrial node, a non-terrestrial network device, a non-terrestrial base station, and a positioning node, among other possibilities. The base station 170 may be a macro base station (BS) , a pico BS, a relay node, a donor node, or combinations thereof. When the base station 170 performs (or is configured  to perform) a method described herein, it may be interpreted as the base station itself, one or more modules (or units) in the base station, a circuit or chip, or a combination thereof, performing the method. For example, the circuit or chip may include a modem chip, also referred to as a baseband chip, a system on chip (SoC) including a modem core, system in package (SIP) ) , and the like, and may be responsible for one or more communication functions within the base station.

[0083] The EDs 110a-110d and TRPs 170a-170b, 172 are examples of communication equipment that can be configured to implement some or all of the operations and / or implementations described herein. The T-TRP 170a forms part of the RAN 120a, which may include other TRPs, and / or other devices. Also, the TRP 170b forms part of the RAN 120b, which may include other TRPs, and / or devices. Each TRP 170a, 170b may transmit and / or receive wireless signals within a particular geographic region or area, sometimes referred to as a “cell” or a “coverage area” . The TRPs 170a-170b may be responsible for allocating and  / or configuring resources and transmission and / or reception in a set of cell (s) . A cell is a radio network object that can be uniquely identified by a cell identification that is broadcasted over a geographical region or area from base stations associated with the cell. A cell can work in either FDD or TDD mode. A cell may be further divided into cell sectors, and a base station 170a-170b may, for example, employ one or more transceivers to provide services to one or more sectors. Some implementations may include pico or femto cells if supported by the radio access technology. In some implementations, one or more transceivers could be used for each cell, such as with Multiple-Input Multiple-Output (MIMO) technology. The number of RANs 120a-120b shown is merely an example. Any number of RANs may be contemplated when designing the communication system 100.

[0084] A base station may be a single element, as shown in the figures, or multiple elements, distributed throughout the corresponding RAN, or otherwise configured. In some implementations, a plurality of RAN nodes coordinate to assist the ED 110 in implementing radio access, and different RAN nodes separately implement and handle different functions of the base station. For example, the RAN node may be a central unit (CU) , a distributed unit (DU) , a CU-control plane (CP) , a CU-user plane (UP) , or a radio unit (RU) etc. The CU and the DU may be separately deployed, or included within the same element (i.e., a baseband unit (BBU) ) . The RU may be included in a radio frequency device or a radio frequency unit (i.e., a remote radio unit (RRU) , an active antenna unit (AAU) , or a remote radio head (RRH) ) . In different systems, the CU (or the CU-CP and the CU-UP) , the DU, or the RU may be known by different names, but their functions are understood by a person skilled in the art. For example, in an open radio access network (ORAN) system, a CU may be referred to as an open CU (O-CU) , a DU may be referred to as an open DU (O-DU) , and a CU-CP may also be referred to as an open CU-CP (O-CU-CP) . The CU-UP may also be referred to as an open CU-UP (O-CU-UP) , and the RU may also be referred to as an open RU (O-RU) . Any one of the CU (or the CU-CP, the CU-UP) , the DU, and the RU may be implemented using a software module, a hardware module, or a combination of a software module and a hardware module.

[0085] Furthermore, communication between different devices / apparatuses in various implementations of this disclosure may refer to direct communication (that is, without the need of forwarding by another device / apparatus) , or may refer to communication (s) between different devices / apparatuses via another device / apparatus (that is, requiring forwarding by another device / apparatus) . Alternatively, such communication (s) may involve one functional unit inside a device / apparatus using another functional unit within the device / apparatus to communicate with another device / apparatus. In other words, phrases such as "sending (or transmitting) information to. . . (an ED or a base station) " in this disclosure may be understood as a destination endpoint of the information being an ED or a base station including sending / transmitting information directly or indirectly to an ED or a base station. Similarly, phrases like "receiving information from. . . (an ED or a base station) " may be understood as a source endpoint of the information being an ED or a base station, including directly or indirectly receiving information from an ED or a base station. Between the source endpoint that sends the information and the destination endpoint, necessary processing such as, but not limited to, format conversion, digital-to-analog conversion, amplification, and filtering may be performed on the information. However, the destination endpoint may understand valid information from the source endpoint. A similar understanding applies to other descriptions in this disclosure without reiterating details already described. In the present disclosure, the terms "send" and "transmit" may be used interchangeably in different implementations of this disclosure.

[0086] The ED 110 is used to connect people, objects, machines, and other entities. The ED 110 may be widely used in various scenarios including, but not limited to, cellular communications, device-to-device (D2D) , vehicle to everything (V2X) , peer-to-peer (P2P) , machine-to-machine (M2M) , MTC, internet of things (IoT) , virtual reality (VR) , augmented reality (AR) , mixed reality (MR) , metaverse, digital twin, industrial control, self-driving, remote medical, smart grid, smart furniture, smart office, smart  wearable, smart transportation, smart city, drones, robots, remote sensing, passive sensing, positioning, navigation and tracking, and autonomous delivery and mobility.

[0087] Each ED 110 represents any suitable end user device for wireless operation and may include such devices (or may be referred to as, but not limited to) a user equipment (UE) or a user device or a terminal device, a wireless transmit / receive unit (WTRU) , a mobile station, a fixed or mobile subscriber unit, a cellular telephone, a station (STA) , an MTC device, a personal digital assistant (PDA) , a smartphone, a laptop, a computer, a tablet, a wireless sensor, a consumer electronics device, a smart book, a vehicle, a car, a truck, a bus, a train, or an IoT device, wearable devices (such as a watch, a pair of glasses, head mounted equipment, etc. ) , an industrial device, or an apparatus (such as module, modem, or chip) in the forgoing devices, among other possibilities. Future generation EDs 110 may be referred to using other terms. When an ED 110 performs (or is configured to perform) a method described herein, it may be interpreted as the ED itself, one or more modules (or units) in the ED, a circuit or chip, or a combination thereof, performing the method. For example, the circuit or chip may include a modem chip, also referred to as a baseband chip, a system on chip (SoC) including a modem core, or system in package (SIP) ) , and the like, and may be responsible for one or more communication functions in the ED.

[0088] Each ED 110 connected to TRPs 170a-170b, and / or TRPs 172 can be dynamically or semi-statically turned-on (i.e., established, activated, or enabled) , turned-off (i.e., released, deactivated, or disabled) and / or configured in response to one of more of: connection availability and connection necessity.

[0089] Any ED 110 may be alternatively or additionally configured to interface, access, or communicate with any of the TRPs 170a, 170b and 172, the Internet 150, the CN 130, the PSTN 140, the other networks 160, or any combination thereof. In some examples, the ED 110a may communicate an uplink (UL) and / or downlink (DL) transmission over a terrestrial air interface 190a with station-TRP 170a. In some examples, the EDs 110a, 110b, 110c, and 110d may also communicate directly with one another via one or more sidelink (SL) air interfaces 190b. In some examples, the EDs 110a, 110d may communicate using an UL and / or DL transmission over a non-terrestrial air interface 190c with NT-TRP 172.

[0090] An air interface (such as, for example, 190a, 190b, 190c) generally includes a number of components and associated parameters that collectively specify how a transmission is to be sent and / or received over a wireless communications link between two or more communicating devices such as EDs and base station (s) . For example, an air interface may include one or more components defining the waveform (s) , frame structure (s) , multiple access scheme (s) , protocol (s) , coding scheme (s) and / or modulation scheme (s) for conveying information (such as, data) over a wireless communications link. The air interfaces 190a and 190b may use similar communication technology, that may include any suitable radio access technology.

[0091] The non-terrestrial air interface 190c can enable communication between the EDs 110a, 110d and one or more NT-TRPs 172 via a wireless link or simply a link. For some examples, the link is a dedicated connection for unicast transmission, a connection for broadcast transmission, or a connection between a group of EDs 110 and one or more NT-TRPs 172 for multicast transmission.

[0092] The TRPs 170a-170b, 172 may communicate with one another over one or more air interfaces 190e, 190f using wireless communication links (such as radio frequency (RF) , microwave, infrared (IR) , etc. ) or wired communication links. The air interfaces 190e, 190f may utilize any suitable radio access technology, and may be substantially similar to the air interfaces 190a, 190c over which the EDs 110a-110d communicate with one or more of the TRP 170a-170b, 172 or they may be substantially different. For example, the communication system 100 may implement one or more channel access methods, such as Time Division Multiple Access (TDMA) , Frequency Division Multiple Access (FDMA) , Code Division Multiple Access (CDMA) , Single Carrier Frequency Division Multiple Access (SC-FDMA) , Low Density Signature Multicarrier Code Division Multiple Access (LDS-MC-CDMA) , Non-Orthogonal Multiple Access (NOMA) , Pattern Division Multiple Access (PDMA) , Lattice Partition Multiple Access (LPMA) , Resource Spread Multiple Access (RSMA) , and Sparse Code Multiple Access (SCMA) .

[0093] The RANs 120a and 120b are in communication with the CN 130 to provide the EDs 110a 110b, and 110c with various services such as voice, data, multimedia, and other services. The RANs 120a and 120b and / or the CN 130 may be in direct or indirect communication with one or more other RANs (not shown) , which may or may not be directly served by the CN 130, and may employ different radio access technologies from RAN 120a and / or RAN 120b. The CN 130 may also serve as a gateway access between (i) the RANs 120a and 120b and / or EDs 110a, 110b, and 110c, and (ii) other networks (such as the PSTN 140, the Internet 150, and the other networks 160) . In addition, some or all of the EDs 110a 110b, and 110c may include functionality for communicating with different wireless networks over different wireless links using different wireless technologies and / or protocols.  For example, the EDs 110a, 110b, and 110c communicate using different cellular communications protocols, such as, but not limited to, a Global System for Mobile Communications (GSM) protocol, a code-division multiple access (CDMA) network protocol, a Push-to-Talk (PTT) protocol, a PTT over Cellular (POC) protocol, a Universal Mobile Telecommunications System (UMTS) protocol, a 3GPP Long Term Evolution (LTE) protocol, a fifth generation (5G) protocol, a New Radio (NR) protocol, and the like. Instead of wireless communication (or in addition thereto) , the EDs 110a 110b, and 110c may communicate using wired communication channels to a service provider or switch (not shown) , and / or to the Internet 150. The PSTN 140 may include circuit switched telephone networks for providing plain old telephone service (POTS) . The Internet 150 may include a network of computers and subnets (intranets) or both, and incorporate protocols, such as internet protocol (IP) , transmission control protocol (TCP) , user datagram protocol (UDP) . EDs 110a, 110b, and 110c may be multimode devices capable of operation according to multiple radio access technologies, and may incorporate one or multiple transceivers necessary to support such.

[0094] In addition, the communication system 100 may comprise a sensing agent (not shown) to manage the sensed data from ED 110 and / or any one of TRPs 170a, 170b, 172. In one implementation, the sensing agent may be part of any one of TRPs 170a, 170b, 172. In another implementation, the sensing agent is a separate node that can communicate with the CN 130 and / or the RAN 120 (such as any one of TRPs 170a, 170b, 172) .

[0095] FIG. 3 is a schematic illustration showing an apparatus 310 wirelessly communicating with another apparatus 320 within a communication system (e.g., the communication system 100) according to an implementation of the present disclosure. The apparatus 310 may be an electronic device (such as ED 110) . The apparatus 320 may be a network node (e.g., the network node 170) such as T-TRP 170 or an NT-TRP 172. Although only one apparatus 310, and one apparatus 320 are shown in the figure, the number of apparatus 310 and / or number of apparatus 320 can vary, potentially including one or more of each. For example, a single ED 110 may be served by a single T-TRP 170 (or a single NT-TRP 172) , or by multiple T-TRPs 170 (or multiple NT-TRPs 172) . Similarly, a single ED 110 may be served by one or more T-TRPs 170 and one or more NT-TRPs 172. Similarly, a single T-TRP 170 (or a single NT-TRP 172) may serve one or more EDs 110.

[0096] The apparatus 310 may include one or more processors 210. For clarity and to avoid overcrowding the illustration, only a single processor 210 is illustrated. The apparatus 310 may further include a transmitter 201 and a receiver 203 coupled to one or more antennas 204. For clarity, only a single antenna 204 is illustrated. One, some, or all of the antennas 204 may alternatively be panels. In some implementations, the transmitter 201 and the receiver 203 are separate from each other. In other implementations, the transmitter 201 and the receiver 203 may be integrated into a single unit, for example, as a transceiver. The transceiver is configured to modulate data or other content for transmission by the one or more antennas 204 or a network interface controller (NIC) . The transceiver may also be configured to demodulate data or other content received by the one or more antennas 204. A transceiver may include any suitable structure for generating signals for wireless or wired transmission and / or for processing signals received through wireless or wired communication. Each antenna 204 includes any suitable structure for transmitting and / or receiving wireless or wired signals. The apparatus 310 may include a memory 208. In some implementations, the apparatus 310 may include multiple memories 208. Only a single transmitter 201, receiver 203, processor 210, memory 208, and antenna 204 is illustrated for simplicity, but the apparatus 310 may include one or more other components. In some implementations of the present disclosure, the transceiver (or transmitter 201 and / or receiver 203) may be viewed as an interface circuit.

[0097] The memory 208 is configured to store instructions used to perform operations described herein. The memory 208 may also be configured to store data that is used, generated, or collected by the apparatus 310. For example, the memory 208 can store software instructions or modules configured to implement some or all of the functionalities and / or operations described herein and that which are executed by the one or more processors 210.

[0098] The apparatus 310 may further include one or more input / output devices (not shown) or interfaces. The input / output devices or interfaces facilitate interaction with a user or other devices in the network. Each input / output device or interface includes suitable components for facilitating transmission of information to a user and reception of information from a user, and for various network interface communications. Such components may include, but are not limited to, a speaker, microphone, keypad, keyboard, display, touch screen, and the like.

[0099] The processor 210 may be configured to perform (or control the apparatus 310 to perform) operations (or methods) described herein as being performed by the apparatus 310. For example, the processor 210 performs or controls the apparatus 310 to perform the operations of: a) receiving one or more transport blocks (TBs) , b) using a resource for decoding at least one of the  received TBs, c) releasing the resource for decoding another of the received TBs, and / or d) receiving configuration information configuring a resource. Specifically, the operations may include tasks related to: preparing a transmission for UL transmission to the apparatus 320, processing DL transmissions received from the apparatus 320, and handling SL transmission to and from another apparatus 310. Processing operations related to preparing a transmission for UL transmission may include operations such as, but not limited to, encoding, modulating, transmit beamforming, and generating symbols for transmission. Processing operations related to processing DL transmissions may include operations such as, but not limited to, receive beamforming, demodulating and decoding received symbols. Processing operations related to processing SL transmissions may include operations such as, but not limited to, transmit / receive beamforming, modulating / demodulating and encoding / decoding symbols. Depending upon the implementation, a DL transmission may be received by the receiver 203, possibly using receive beamforming, and the processor 210 may extract signaling from the DL transmission (such as by detecting and / or decoding the signaling) . An example of signaling may be a reference signal transmitted by the apparatus 320. In some implementations, the processor 210 implements the transmit beamforming and / or the receive beamforming based on the indication of beam direction, such as beam angle information (BAI) , received from the apparatus 320. In some implementations, the processor 210 may be configured to perform operations relating to network access (such as initial access) and / or downlink synchronization, which includes operations for detecting a synchronization sequence, decoding and obtaining the system information, and the like. In some implementations, the processor 210 may perform channel estimation, such as using a reference signal received from the apparatus 320.

[0100] Although not illustrated, in some implementations, the processor 210 may either be a part of the transmitter 201 or a part of the receiver 203 or a part of both the transmitter 201 and the receiver 203. Although not illustrated, in some implementations the memory 208 may be a part of the processor 210.

[0101] The processor 210, along with the processing components of the transmitter 201 and the receiver 203 may each be implemented by one or more processors that may be the same or different. These processors are configured to execute instructions stored in a memory (such as in the memory 208) .

[0102] The apparatus 320 includes one or more processors 260 (only one processor 260 is illustrated) . The apparatus 320 may further include one or more transmitters 252 and one or more receivers 254 coupled to one or more antennas 256. Only a single antenna 256 is illustrated to avoid clutter in the illustration. One, some, or all of the antennas 256 may alternatively be panels. In some implementations, the transmitter 252 and the receiver 254 are separate from each other. In other implementations, the transmitter 252 and the receiver 254 may be integrated into a single unit such as, for example, as a transceiver. The apparatus 320 may further include a memory 258. In some implementations, the apparatus 320 may include multiple memories 258. The apparatus 320 may further include a scheduler 253. Only a single transmitter 252, receiver 254, processor 260, memory 258, antenna 256 and scheduler 253 are illustrated for simplicity, however the apparatus 320 may include one or more other components. In the present disclosure, in some implementations, the transceiver (or transmitter 252 and / or receiver 254) may be viewed as an interface circuit.

[0103] In some implementations, various components of the apparatus 320 may be distributed. For example, some of the modules of the apparatus 320 may be located remotely from the equipment housing the antennas 256 for the apparatus 320 (and therefore also can be viewed as one or more nodes) . These modules, which can be considered as one or more nodes, and may be coupled to the equipment that houses the antennas 256 over a communication link (not shown) , sometimes referred to as front haul, such as the Common Public Radio Interface (CPRI) . Therefore, in some implementations, the term apparatus 320 may also refer to network-side nodes that perform processing operations such as, but not limited to, determining the location of the apparatus 310, resource allocation (scheduling) , message generation, and encoding / decoding, and that are not necessarily part of the equipment that houses the antennas 256 of the apparatus 320. The nodes may also be coupled to other apparatuses 320. In some implementations, the apparatus 320 may actually be a plurality of nodes that are operating together to serve the apparatus 310, such as through the use of coordinated multipoint transmissions, or through the use of ORAN system as described above in the disclosure.

[0104] The processor 260 is configured to perform operations including those related to: preparing a transmission for DL transmission to the apparatus 310, processing an UL transmission received from the apparatus 310, preparing a transmission for backhaul transmission to another apparatus 320, and processing a transmission received over backhaul from another apparatus 320. Processing operations related to preparing a transmission for DL or backhaul transmission may include operations such as, but not limited to, encoding, modulating, precoding (such as MIMO precoding) , transmit beamforming, and generating symbols for transmission. Processing operations related to processing received transmissions in the UL or over backhaul may include operations  such as, but not limited to, receive beamforming, demodulating received symbols, and decoding received symbols. The processor 260 may also be configured to perform operations relating to network access (such as initial access) and / or DL synchronization, such as generating the content of synchronization signal blocks (SSBs) , generating the system information, and the like. In some implementations, the processor 260 is further configured to generate an indication of beam direction, such as BAI, which may be scheduled for transmission by the scheduler 253 which will be described below. In some implementations, the processor 260 implements the transmit beamforming and / or receive beamforming based on beam direction information (such as BAI) received from another apparatus 320. The processor 260 is configured to perform other network side processing operations described herein, such as, but not limited to, determining the location of the apparatus 310, determining where to deploy another apparatus 320, and the like. In some implementations, the processor 260 may generate signaling data, to configure one or more parameters of the apparatus 310 and / or one or more parameters of another apparatus 320. Any signaling data generated by the processor 260 is sent by the transmitter 252. In some implementations, the apparatus 320 implements physical layer processing. In some implementations, the apparatus 320 may perform higher layer functions such as those at the Medium Access Control (MAC) or Radio Link Control (RLC) layers in addition to physical layer processing. In the apparatus 320 the scheduler 253 may be coupled to the processor 260 or integrated within the processor 260. In some implementations, the scheduler 253 may be integrated within the apparatus 320 or may be operated separately from the apparatus 320. The scheduler 253 may schedule UL, DL, SL, and / or backhaul transmissions, including issuing scheduling grants and / or configuring scheduling-free (such as “configured grant” ) resources.

[0105] The apparatus 320 may further include a memory 258 that is configured to store instructions for performing the operations described herein. The memory 258 may also store data that is used, generated, or collected by the apparatus 320. For example, the memory 258 can store software instructions or modules configured to implement some or all of the functionalities and / or implementations described herein and that which are executed by the processor 260.

[0106] Although not illustrated, the processor 260 may be implemented as part of the transmitter 252 and / or a part of the receiver 254. Although not illustrated, in some implementations, the processor 260 may implement the scheduler 253 and the memory 258 may be implemented as part of the processor 260.

[0107] The processor 260, the scheduler 253, the processing components of the transmitter 252, and the processing components of the receiver 254 may each be implemented by the same or different processors that are configured to execute instructions stored in a memory, such as in the memory 258.

[0108] The apparatus 320 and / or the apparatus 310 may include other components, not shown or described herein for the sake of clarity.

[0109] Note that the term “signaling” , as used herein, may alternatively be referred to as control signaling, control message, control information, or message for simplicity. Signaling between a base station (such as the TRP 170a, 170b, 172) and a UE or sensing device (such as ED 110) , or signaling between a different UE or sensing device (such as between ED 110a and ED 110b) may be carried in physical layer signaling (also called as dynamic signaling) , which is transmitted in a physical layer control channel. For DL, the physical layer signaling may be known as downlink control information (DCI) which is transmitted in a physical downlink control channel (PDCCH) . For UL, the physical layer signaling may be known as uplink control information (UCI) which is transmitted in a physical uplink control channel (PUCCH) . For SL, signaling between different UEs or sensing devices (such as between ED 110a and ED 110b) may be known as SL control information (SCI) which is transmitted in a physical sidelink control channel (PSCCH) . Signaling may be carried in a higher layer (such as higher than physical layer) signaling, which is transmitted in a physical layer data channel, such as in a physical downlink shared channel (PDSCH) for downlink signaling, in a physical uplink shared channel (PUSCH) for uplink signaling, and in a physical sidelink shared channel (PSSCH) for SL signaling. Higher layer signaling may also be called static signaling, or semi-static signaling. The higher layer signaling may include radio resource control (RRC) protocol signaling or media access control -control element (MAC-CE) signaling. Signaling may be included in a combination of physical layer signaling and higher layer signaling.

[0110] It should be noted that in the present disclosure, “information” , when different from “message” , may be carried within a single message, or may be carried in multiple separate messages.

[0111] FIG. 4 illustrates an example apparatus 410 according to an implementation of the present disclosure. The apparatus 410 may be a communication device or an apparatus implemented in a communication device such as the ED 110 or the TRPs 170a, 170b, 172. For example, the apparatus 410 implemented in an ED may be an integrated circuit, which in some instances may be  referred to as a chip, a modem, a modem chip, a baseband chip, or a baseband processor. In some implementations, one or more integrated circuits can be packaged into a system-on-chip, a system-in-package, or a multi-chip module. The apparatus 410 can include one or more integrated circuits and other discrete components. In some implementations, the apparatus 410 may be a module within the ED 110, or within the apparatus 310. In some implementations, the apparatus 410 may be a module within one of the TRPs 170a, 170b, 172, or the apparatus 320.

[0112] In an example, the apparatus 410 may include one or more processors 411, and an interface circuit 412. The apparatus 410 may further include a memory 413. The one or more processors 411 are configured to process signals and execute one or more communication protocols. The memory 413 is configured to store at least a part of corresponding computer program instructions and / or data. In an example, the one or more processors 411 execute the computer program instructions stored in the memory 413 to implement related operations (for example, inputting, outputting, receiving, and transmitting) in the method embodiments disclosed herein. In some implementations, the memory 413 being configured to store the corresponding computer program instructions and / or data may mean that the memory 413 is configured to store all of the corresponding computer program instructions and / or data for execution by the one or more processors 411. In some implementations, the memory 413 being configured to store the corresponding computer program instructions and / or data may mean that the memory 413 is configured to store a part of the corresponding computer program instructions and / or data. For example, the part of the corresponding computer program instructions and / or data may include computer program instructions and / or data that need to be currently executed by the one or more processors 411. Thus, the memory 413 may store different parts of computer program instructions and / or data for a plurality of times for the one or more processors 411 to perform related operations in the method embodiments disclosed herein. As a communication interface, the interface circuit 412 is configured to implement communication with another component. For example, the interface circuit 412 may communicate a signal with other apparatus / system such as a radio frequency processing apparatus, or processor system. The communication includes transmitting signal (or data, information) to another component or device, or receives signal from another component or device. “transmitting” includes outputting the signal to a component or device that is directly or indirectly coupled to the interface circuit (transmitting unit) . “receiving” includes inputting or obtaining a signal from a component or device that is directly or indirectly coupled to the interface circuit (receiving unit) . Optionally, to reduce a load of the one or more processors, a baseband signal processing circuit 414 may be also disposed to implement processing of at least a part of baseband signals, including signal demodulation, modulation, encoding, decoding, or the like.

[0113] The apparatus 410 may be the processor 210 (or 260) within the apparatus 310 (or 320) , in some scenarios, or may be included within the processor 210 (or 260) within the apparatus 310 (or 320) in some scenarios. The apparatus 410 may be a baseband chip or may include a baseband chip. In some implementations, the apparatus 410 may be independently packaged into a chip. In some implementations, the apparatus 310 (or 320) includes different types of chips. The apparatus 410 may be packaged into a processor chip (for example, an SoC chip or an SIP chip) with the different types of chips. In some implementations, the apparatus 410 may be packaged into a chip with some or all of circuits of a radio frequency processing system that may further be included in the apparatus 310 (or 320) .

[0114] FIG. 5 illustrates example apparatus 510 according to an implementation of the present disclosure. The apparatus 510 may include corresponding modules or units configured to implement methods and / or implementations described herein. In some implementations, the apparatus 510 includes a processing unit 512 and a communication unit 513. Optionally, the apparatus 510 may further include a storage unit 511 configured to store apparatus program code (or instructions) and / or data.

[0115] The apparatus 510 may be an ED side apparatus, for example, an ED or a module in an ED, or a circuit or a chip responsible for a communication function in an ED. In some implementations, apparatus 510 may be the apparatus 310. The processing unit 512 may be the processor 210. The communication unit 513 may comprise a receiving unit and / or a transmitting unit. The receiving unit and / or the transmitting unit may be the transmitter 201 and / or the receiver 203 respectively. The storage unit 511 may be the memory 208.

[0116] The apparatus 510 may be a base station side apparatus, for example, a base station or a module in a base station, or a circuit or a chip responsible for a communication function in a base station. In some implementations, apparatus 510 may be apparatus 320. The processing unit 512 may be the processor 260 (the scheduler 253 may also be included) . The communication unit 513 may comprise a receiving unit and / or a transmitting unit. The receiving unit and / or the transmitting unit may be the transmitter 252 and / or the receiver 254 respectively. The storage unit 511 may be memory 258.

[0117] In some implementations, when the apparatus 510 is an ED 110 or a module in an ED 110, a function of the apparatus 510 may be implemented by one or more processors. Specifically, the processor may include a modem chip, or a system on chip (SoC) chip or an SIP chip that includes a modem core. A function of the communication unit 513 may be implemented by a transceiver circuit.

[0118] In some implementations, when the apparatus 510 is a circuit or a chip that is responsible for a communication function in an ED 110, such as a modem chip, a system on chip (SoC) chip or an SIP chip that includes a modem core -a function of the processing unit 512 may be implemented by a circuit system within the chip which includes one or more processors. A function of the communication unit 513 may be implemented by an interface circuit or a data transceiver circuit on the chip.

[0119] It may be understood that the units in the apparatus 510 may be logical or functional. Each function may correspond to one functional unit, or two or more functions may be integrated into a single functional unit. In actual implementation, all or some of the units may be integrated into a single physical entity, or may be distributed across different physical entities. In addition, the functional units may be implemented in the form of hardware, software, or a combination of hardware and software. Whether a function is implemented in the form of hardware or software depends on particular applications and design constraint conditions of the technical solutions. A person skilled in the art may use different methods to implement the described functions specific applications, but it should not be considered that the implementation goes beyond the scope of this disclosure.

[0120] In an example, a functional unit in any one of the apparatuses may be configured as one or more integrated circuits for implementing the methods disclosed herein, for example, as one or more application-specific integrated circuits (application-specific integrated circuits, ASICs) , one or more central processing units (CPUs) , one or more microprocessors or microprocessor units (MPUs) , one or more microcontrollers or microcontroller units (MCUs) , one or more digital signal processors (DSPs) , one or more field programmable gate arrays (FPGAs) , or a combination of these.

[0121] In an example, the storage unit 511 may include a random access memory, a flash memory, a read-only memory, a programmable read-only memory, an electrically erasable programmable memory, and / or a register.

[0122] A processor may be referred to as a processor system, an application processor, a baseband processor, a processor circuit, or a processor core. The processor may include one or a combination of one or more central processing units (CPUs) , one or more digital signal processors (DSPs) , one or more microprocessors (microprocessor units, MPUs) , one or more microcontrollers (microcontroller units, MCUs) , one or more graphics processing units (GPUs) , one or more field programmable gate arrays (FPGAs) , one or more artificial intelligence processors (AI processors) , or one or more neural network processing units (NPUs) .

[0123] Memory or a storage unit may include one or more of the following storage media: a random access memory (RAM) , a static random access memory (static RAM, SRAM) , a dynamic random access memory (dynamic RAM, DRAM) , a phase-change memory (PCM) , a resistive random access memory (resistive RAM, ReRAM) , a magnetoresistive random access memory (magnetoresistive RAM, MRAM) , a ferroelectric random access memory (ferroelectric RAM, FRAM) , a cache, a register, a read-only memory (ROM) , a flash memory (flash memory) , an erasable programmable read-only memory (erasable programmable ROM, EPROM) , a hard disk, and the like. In an example, computer program instructions used to execute embodiments may be stored in a non-volatile memory, for example, at least a part of a memory or storage unit (for example, one or more of a ROM, a flash memory, an EPROM, or a hard disk) . When a terminal runs, a part or all of corresponding computer program instructions may be loaded to a memory that has a higher transmission speed with the processor, for example, at least a part of a memory or a storage unit (for example, one or more of a RAM, an SRAM, a DRAM, a PCM, a RERAM, an MRAM, a FRAM, a cache, or a register) , so that the processor executes the computer program instructions to perform the steps in the method embodiments disclosed herein.

[0124] Large Language Models

[0125] As provided above, Large Language Models (LLMs) are a type of artificial intelligence (AI) that have revolutionized the field of natural language processing (NLP) . These models are trained on massive amounts of text data, allowing them to learn complex patterns and relationships within human language. This enables LLMs to perform a wide range of tasks with remarkable proficiency, including generating human-quality text, translating languages, writing different kinds of creative content, and answering questions in an informative way.

[0126] The power of LLMs lies in their ability to understand and process information within the context of the surrounding text. This contextual awareness allows them to generate coherent and meaningful responses, mimicking human-like communication.  Unlike traditional NLP models that rely on predefined rules or limited datasets, LLMs learn directly from the data, continuously improving their abilities as they are exposed to more information.

[0127] The development of LLMs has opened doors to exciting possibilities across various industries. They are enhancing communication by powering translation tools and improving the accuracy of speech recognition systems. LLMs are also transforming information retrieval, enabling users to find relevant information quickly and efficiently. In healthcare, LLMs are assisting with tasks such as medical diagnosis and summarizing patient records.

[0128] However, the deployment of LLMs also presents challenges. Their large size and computational requirements often necessitate cloud-based processing, raising concerns about latency, privacy, security, and accessibility.

[0129] Further, the demand for utilizing LLMs is rapidly increasing, extending beyond human users to encompass a vast network of IoT devices. However, performing LLM inference directly on these devices is often impractical due to their limited computational capabilities. This challenge has given rise to the need for online LLM inference facilitated by advanced wireless systems, particularly in the context of the upcoming era.

[0130] Unlike human users who may tolerate some latency, IoT devices often require real-time responsiveness with millisecond-level delays. This may be crucial for applications such as autonomous driving, industrial automation, and smart city infrastructure, where instantaneous decision-making may be essential. As a result, a significant portion of future data traffic is expected to be driven by AI-powered tasks, particularly online LLM inference for real-time applications.

[0131] This shift towards online LLM inference has profound implications for future LLM deployment strategies. Traditional cloud-based solutions may not be able to meet the stringent latency requirements of IoT devices. This necessitates exploring alternative approaches, such as deploying LLMs at the network edge, closer to the end devices. Additionally, efficient model partitioning and distributed computing techniques may be crucial for dividing the computational load among edge servers and user devices, ensuring scalability and low latency.

[0132] Furthermore, the massive data exchange involved in online LLM inference raises concerns about privacy and security. Developing privacy-preserving techniques, such as federated learning and differential privacy, may be needed to protect sensitive user data while enabling collaborative inference. As technology moves towards the era, addressing these challenges may facilitate unlocking the full potential of online LLM inference and enabling a new generation of intelligent, interconnected applications.

[0133] Problem with Cloud-based LLM Deployment

[0134] The current paradigm for commercial LLM inference relies heavily on remote data centers equipped with powerful GPUs. Users, whether through chat interfaces or APIs, send their input data over the internet to these data centers. The LLMs process the information and return the results, again via the internet. While this approach offers scalability and centralized management, it suffers from several drawbacks.

[0135] One major concern is latency. The round-trip communication between users and distant data centers introduces significant delays, hindering real-time applications that demand immediate responses. This is particularly problematic for time-sensitive tasks such as autonomous driving or industrial control, where milliseconds matter. Additionally, transmitting sensitive data over long distances raises privacy and security risks, making the system vulnerable to potential breaches and unauthorized access.

[0136] To address the latency issue, some propose deploying dedicated GPUs for inference at the base station level, closer to the users. While this approach reduces communication delays, it introduces new challenges. Packing a large number of GPUs at base stations significantly increases energy consumption, not only for computation but also for cooling purposes. This leads to higher operational costs and environmental concerns. Moreover, concentrating expensive GPU resources at base stations raises infrastructure costs and creates potential bottlenecks, as the demand for LLM inference continues to grow.

[0137] Overview of LLM Architecture

[0138] LLMs are typically built upon a Transformer-based architecture, consisting of multiple layers of neural networks that process and generate text. Referring to FIG. 6, the journey begins with an Embedding layer 610, which transforms input tokens (words) into numerical vectors capturing semantic and syntactic information. These embeddings are then fed into a series of transformer layers 612, 614, each containing a self-attention mechanism to analyze relationships between words and a feed-forward network to extract deeper contextual meaning.

[0139] Finally, a prediction layer 620 generates a probability distribution across the vocabulary, predicting the likelihood of each word appearing next in the sequence. Decoding strategies 630, such as beam search or sampling techniques like top-p sampling, are then employed to select the most probable word and construct coherent text sequences for various applications like text generation, machine translation, and dialogue systems.

[0140] Reference is now made to FIG. 7, which shows an example Transformer architecture. Such Transformer architecture may be fundamental to many LLMs, and may operate through two key components: the encoder and decoder. The encoder serves as the initial processing unit, taking the input sequence and transforming it into rich, contextualized representations for each word. This is achieved through a series of identical layers, each employing a self-attention mechanism to analyze relationships between words within the sequence and a feed-forward network to extract deeper meaning and identify complex patterns. These enriched representations are then passed on to the decoder, which utilizes them alongside its own self-attention mechanism to generate the output sequence.

[0141] However, the decoder's self-attention mechanism operates with a crucial difference: it employs masked self-attention. This means that at each step of the sequence generation process, the model is only allowed to access information from previous positions, effectively preventing it from "peeking" at future tokens. This constraint ensures the model's autoregressive nature, meaning it generates text sequentially, one token at a time, based on the preceding context. This characteristic produces coherent and contextually relevant text, allowing the model to build upon the information it has already generated.

[0142] While the full encoder-decoder architecture offers versatility for tasks like machine translation, pure decoder architectures, like those employed in models such as generative pre-trained transformer (GPT) and large language model meta ai (LLaMA) , have gained prominence in recent LLM development. These models focus solely on the generation aspect, leveraging the power of masked self-attention to produce high-quality text. Their efficiency and ease of implementation further contribute to their popularity. Research findings and implementation techniques often translate well between encoder and decoder structures. This allows for a focused discussion on the pure decoder architecture in the context of LLMs, understanding that the insights gleaned can often be applied to the broader Transformer framework.

[0143] FIG. 7 illustrates the structure of the Transformer, with its core being the multi-head attention (MHA) layer 710 and the feed-forward network (FFN) layer 720.

[0144] The MHA layer 710 is a component of the Transformer architecture that allows the model to efficiently capture intricate relationships and dependencies within the input sequence. It achieves this by employing multiple attention heads, each focusing on different aspects of the input. Each head operates through a set 712 of query, key, and value matrices (Wq, Wk, Wv) , which are used to transform the input embeddings into representations that facilitate the attention mechanism.

[0145] The attention calculation involves computing the dot product between the query and key vectors for each pair of tokens, scaled by the square root of the key dimension (dk) for stability. This is followed by a softmax operation 714 to obtain a probability distribution, representing the attention weights assigned to each token in the context of the current token. These weights are then used to create a weighted sum of the value vectors, resulting in a contextually enriched representation of the current token.

[0146] The use of multiple heads allows the model to attend to different aspects of the input simultaneously. For example, one head might focus on syntactic relationships between words, while another might focus on semantic similarity or long-range dependencies. The outputs of these individual heads are then concatenated and projected back into the original embedding space, creating a final representation that integrates information from all heads.

[0147] In the case of self-attention, where the model attends to the same sequence, a causal mask 716 is applied to ensure that each token only attends to previous tokens, preventing information leakage from the future and maintaining the autoregressive nature of the model. This may be important for tasks like text generation, where the model needs to predict the next word based on the preceding context.

[0148] The FFN layer 720 in the Transformer architecture plays a role in capturing complex patterns and relationships within the data. It operates independently on each position in the sequence, applying a simple neural network structure to further process the information obtained from the MHA layer 710. This network typically consists of one or more fully connected linear projections (e.g., up-projection layer 722 and down projection layer 724) , followed by element-wise activation functions 726 that introduce non-linearity, enabling the model to learn more intricate representations. Common activation functions 726 include rectified linear  unit (ReLU) , sigmoid linear unit (SiLU) , and gaussian error linear units (GELU) , each with its own characteristics and impact on the model's behavior.

[0149] The dimension of the FFN layer 720, referred to as the hidden dimension, is typically much larger than that of the attention layer. This increased dimensionality allows the model to learn and represent complex features, leading to more robust and nuanced understanding of the input data. Additionally, the FFN layers, like the MHA layers, incorporate normalization and residual connections. For example, the implementation of FIG. 7 uses a Root Mean Squared (RMS) Normalization Layer 728. Normalization helps stabilize training by standardizing the activations within each layer, while residual connections mitigate the vanishing gradient problem, enabling the training of deeper models with improved performance.

[0150] While the MHA and FFN layers are crucial components of the Transformer, understanding the structure and meaning of language also heavily relies on positional information. Unlike traditional Recurrent Neural Networks (RNNs) that process sequences sequentially, Transformers handle all words in a sentence simultaneously. This parallel processing, while efficient, can lead to a loss of information about the order of words. To address this, positional encoding techniques may be employed, providing the model with knowledge of token positions within the sequence. Two common methods are sinusoidal and rotary positional encoding. Sinusoidal encoding relies on fixed, predefined positional embeddings for each position, while rotary encoding focuses on the relative relationships between positions. This is achieved by representing positional embeddings as complex vectors and applying rotational transformations, allowing the model to capture positional information more dynamically and effectively.

[0151] Linear bias is a technique used in Transformer models to introduce a preference towards specific word groups or positions within the input sequence. This is achieved by adding an extra learnable parameter to the model's architecture, allowing it to adapt its behavior based on the specific characteristics of the data. The application of linear bias varies depending on the model and its intended purpose. For instance, in the GPT model, it is added to the output of the attention layer, refining the representation of different positions and enhancing the model's ability to capture long-range dependencies within the text. In contrast, the Qwen model applies linear bias to the query-key attention scores, enabling it to effectively infer sequences longer than those encountered during training, ultimately improving performance and adaptability to diverse input lengths. This strategic placement of linear bias allows models to learn nuanced patterns and biases present in the data, leading to more accurate and contextually aware predictions.

[0152] Overview of LLM inference

[0153] LLM inference involves two key stages: pre-filling 810 and decoding 820, each with distinct methods for calculating attention, as shown in FIG. 8.

[0154] During pre-filling 810, the entire prompt input 812 is processed at once, using matrix operations to generate initial output tokens. These calculations involve creating query, key, and value vectors 814 from the embedded prompt (represented as Xpre) and applying attention mechanisms to capture relationships between words. To improve efficiency, intermediate key and value results are stored in a key-value (K-V) cache for later use.

[0155] The decoding 820 phase then takes over, generating text one token at a time in an autoregressive manner. This means each new token is predicted based on the previously generated tokens, building the sequence step-by-step. During this process, only the most recent token's embedding (Xdec) is used to compute the query vector. However, the K-V cache (s) 822 and 824 from the pre-filling stage, along with the current key and value calculations 826, provide the context from the entire prompt. This allows the model to generate coherent and relevant text that takes into account both the initial prompt and the evolving generated sequence. Transformer Variants

[0156] While the standard Transformer architecture has proven effective, various modifications have been explored to improve efficiency and performance. One area of focus is the attention mechanism, specifically addressing the memory demands of the K-V cache during the decoding stage. Reference is made to FIG. 9, which shows attention variants, including:

[0157] a. Grouped Query Attention (GQA) 910: This technique aims to reduce the K-V cache size by grouping attention heads together. Instead of each head having its own set of key and value matrices, multiple heads share a single pair, significantly decreasing the memory footprint. FIG. 9 illustrates this concept, showing how two heads share one key and value matrix in GQA, compared to the standard MHA 920 where each head has its own set.

[0158] b. Multi-Query Attention (MQA) 930: Taking the idea further, MQA proposes that all attention heads share a single key and value matrix. This extreme reduction in parameters offers substantial memory savings, making it suitable for resource-constrained environments or models with a large number of heads.

[0159] These attention variants demonstrate the ongoing efforts to optimize the Transformer architecture, balancing computational efficiency with model performance. By strategically sharing parameters, these techniques allow for more efficient utilization of resources without compromising the model's ability to capture complex relationships within the data.

[0160] As the limitations of current hardware become apparent in training large-scale dense models, Mixture of Experts (MoE) has emerged as a promising architectural alternative. MoE models offer significant reductions in training and inference costs compared to dense models with similar performance. This is achieved by constructing the model from multiple expert networks (i.e., multiple FFNs) , each specializing in different aspects of the data, leading to superior performance. Reference is made to FIG. 10.

[0161] Figure 10 showcases the MoE architecture 1010 within the Transformer framework. Here, the traditional single FFN layer 1020 is replaced by a switched FFN layer 1030, consisting of a gating network 1032 and a set of expert FFNs 1034. During inference, input embeddings are routed to a sparse set of experts chosen by the gating network. The outputs of the selected FFNs are then combined, and the result is fed into the residual network, similar to the process in a standard Transformer. This expert selection mechanism allows the model to dynamically adapt its processing based on the specific input, leveraging the expertise of the most relevant networks for each token.

[0162] Deploying LLM on the edge Devices

[0163] The embodiments herein provide a novel approach for deploying LLMs directly at gNB (base stations) , leveraging collaboration with nearby edge devices to overcome the limitations of traditional cloud-based inference. This method aims to significantly reduce latency, enhance privacy, and improve security, all while remaining adaptable to LLMs of varying sizes and complexities. By distributing the computational workload across the gNB and edge devices, efficient and responsive LLM inference may be achieved, paving the way for real-time applications and improved user experiences.

[0164] The present approach for deploying LLMs at base stations diverges significantly from the conventional cloud-based paradigm. Instead of relying on distant data centers, adaptive selection and utilization of nearby edge devices is used to assist with inference tasks. Only devices that are idle or have available computational resources are considered for participation, ensuring efficient resource allocation. These edge devices proactively report their potential contributions, allowing the base station to assess their inherent capabilities and strategically assign portions of the inference workload. This dynamic allocation process, encompassing reporting, scheduling, and task distribution, integrates intelligent control signaling and protocols within future wireless systems. By leveraging the capabilities of the physical and MAC layers, collaboration between the base station and edge devices can be coordinated, ensuring seamless and responsive LLM inference.

[0165] UE Edge Devices

[0166] Some UEs are identified as edge devices. These UEs, such as idle smartphones or laptops located in homes or offices, serve as readily available resources to assist the gNB with inference tasks as needed.

[0167] Referring to FIG. 11, a UE 1110 may proactively scan for nearby base station 1112 signals, as shown at block 1120. Such signals may, in some cases, advertise a model inference service. Upon identifying the closest one, the UE 1110 may initiate a registration process. This involves sending a registration request, shown with message 1122, to the selected gNB, to indicate the UE 1110 is available to provide processing capacity to the artificial intelligence system. After sending message 1122, the UE 1110 may report its inherent capabilities, including computational power or resources, memory capacity, power consumption, and other relevant metrics, shown with message 1130. Message 1130 may include various information such as processing power or resources, battery life, temperature range, signal strength, signal-to-noise ratio, channel quality indicators, among other factors, at the UE 1110.

[0168] The gNB maintains a registry 1132 of these parameters, allowing for efficient task allocation. To ensure the registry remains up-to-date, the UEs are responsible for notifying the gNB of any changes in their capabilities or availability status, shown as message 1140.

[0169] The base station 1112 can employ a centralized scheduling algorithm to assign inference tasks to edge devices based on their reported capabilities, the requirements of the task, and current channel conditions. The scheduling decisions can be communicated through dedicated control messages or embedded within data packets. The task allocation is shown with message 1150.

[0170] An exemplary protocol and signaling design for integrating these UEs as edge inference resources for assisting the gNB with inference tasks is provided below:

[0171] a. UE Discovery and Registration: UEs continuously scan 1120 for nearby gNB signals and identify the strongest one. For example, a base station may broadcast a beacon advertising the availability of a distributed inference service. Upon detecting a suitable gNB, the UE sends a "Registration Request" message 1122 to the gNB, including its unique identifier (e.g., UE-ID) . The gNB responds with a "Registration Acknowledge" message 1124, confirming the registration process.

[0172] b. UE Capability Reporting: After successful registration, the UE sends a "Capability Report" message 1130 to the gNB, containing information about its computational resources, battery life, and network connectivity such as channel-related information like CQI, CSI feedback. The gNB maintains a registry 1132 of registered UEs and their reported capabilities.

[0173] c. Capability Update: If there is a change in the UE's capabilities or availability status, for example as determined at block 1142, the UE sends a "Capability Update" message 1140 to the gNB, providing the updated information. By default, channel conditions between the UE and the gNB are kept updated. The gNB updates the corresponding entry, as shown at block 1144 in its registry accordingly.

[0174] d. Task Allocation: When the gNB has an inference task 1152 to offload, it selects a suitable UE (or a set of UEs) from its registry based on the task requirements and the reported capabilities. The gNB sends a "Task Allocation" message 1150 to the selected UE (s) , including the task details, input data, and any necessary parameters or configurations. Considering real-time inference task, the gNB may include latency requirement into the “Task Allocation” message to inform the UE how long it has to finish the assigned task (s) . The selection of the suitable UE can prioritize UEs based on any of processing power, battery life, temperature range, stronger signal strength, higher signal-to-noise ratios, better channel quality indicators, among other factors. In some cases, the Task Allocation message 1150 can be compressed using a suitable compression algorithm to reduce transmission overhead. While not shown in FIG. 11, in some cases the UE, upon receiving the Task Allocation message 1150, may notify the base station of the inability to process the sub-task. Such notification may include reasons the UE is unable to process the sub-task.

[0175] e. Task Execution: Upon receiving the "Task Allocation" message 1150, the UE 1110 processes the inference task using its computational resources, as shown at block 1154, within the required latency. The UE can optionally send periodic "Progress Updates" 1156 to the gNB, indicating the task's current status or progress.

[0176] f. Result Reporting: After completing the inference task, the UE sends a "Result Report" message 1160 to the gNB, containing the output or inference results. The gNB can then process the results further or coordinate with other network components as needed, as shown at block 1162. For example, the gNB can validate the results for each of the subtasks to ensure the quality of the results in some cases.

[0177] g. Deregistration: If a UE 1110 wants to deregister from the gNB's registry (e.g., due to user preference, power constraints, or mobility) , as shown at block 1170, it sends a "Deregistration Request" message 1172 to the gNB. The gNB removes the UE's entry from its registry, shown at block 1174, and sends a "Deregistration Acknowledge" message 1176 to confirm the deregistration.

[0178] The protocol and signaling design of FIG. 11 allow UEs to register with the gNB, report their capabilities, and receive inference tasks for execution. The gNB can maintain an up-to-date registry of available UEs and allocate tasks based on their reported capabilities.

[0179] The messages of FIG. 11 may have various fields. For example, the registration message 1122 may include one or more of:

[0180] a. UE location information;

[0181] b. UE movement trajectory information; and

[0182] c. a timestamp of the registration.

[0183] The capability report message 1130 may include one or more of the following:

[0184] a. UE Identifier / Edge Credit Account No.

[0185] b. GPU info and its availability  / CPU info and its availability / Available RAM Size

[0186] c. Battery Level

[0187] d. Timestamp

[0188] e. Channel Condition

[0189] In the Capability Report message 1130, the UE may provide information about its hardware capabilities, such as CPU cores, RAM size, GPU availability, clock speed, battery level (e.g. remaining battery percentage or estimated time to depletion) , an operating temperature range, and / or channel conditions (e.g. signal strength, signal-to-noise (SNR) , and channel quality indication) , among other information. This information helps the gNB determine the UE's suitability for different inference tasks. Furthermore, the UE identifier is linked to an edge device credit account number, creating a relationship where the UE can accrue credits by performing edge computation services for other devices.

[0190] The Capability Update message 1140 may include one or more of the following:

[0191] a. UE Identifier / Edge Credit Account No.

[0192] b. Updated Capability Fields (e.g., CPU / GPU, RAM Size, Battery Level, etc. )

[0193] c. Timestamp

[0194] d. Channel Condition

[0195] The Capability Update message 1140 allows the UE to send updated capability information to the gNB if there are any changes, such as battery level or power source or channel condition, among other options.

[0196] The Task Allocation message 1150 may include one or more of the following:

[0197] a. UE Identifier

[0198] b. Task ID

[0199] c. Task Credit (e.g. How much credit earned by conducting this task)

[0200] d. Input Data (or reference to input data location in DL data channels)

[0201] e. Model ID (identifier of the model)

[0202] f. Task Parameters (e.g., batch size, confidence threshold)

[0203] g. Task Latency Requirement

[0204] The Task Allocation message 1150 from the gNB contains the necessary details for the UE to execute the inference task, including the task type, input data, model information, credit earned, and any specific parameters or requirements especially for the latency requirement, among other options. The input data may in some cases be pre-processed and formatted according to requirements of the allocated sub-task.

[0205] In further cases, the Task Allocation message 1150 may include an output format that may be specified using a standardized data representation formal, for example.

[0206] In further cases, the Task Allocation message 1150 could include a priority level for the allocated sub-task, indicating the relative importance of the allocated sub-task compared to other tasks being processed by the UE.

[0207] The Result Report message 1160 may include one or more of the following:

[0208] a. UE Identifier

[0209] b. Task ID

[0210] c. Output Data (or reference to output data location in UL data channels)

[0211] d. Execution Time

[0212] e. Timestamp

[0213] Thus, after completing the task, the UE sends a Result Report message 1160 with the output data, along with the execution time and a timestamp, among other information. In some cases, the message 1160 may be formatted according to a specific output format.

[0214] In some cases, the execution time may be measured from the time the sub-task was received to the time the result was generated.

[0215] In some cases, the Results Report message 1160 may include the energy consumed by the UE to create the result. This may, for example, be calculated using the UE’s internal power monitoring capabilities.

[0216] In some cases, the Results Report message 1160 may include a current status of the corresponding UE, such as, but not limited to, a battery level, available resources, among other data. Such status may then be used to facilitate dynamic task allocation in subsequent inference requests.

[0217] In some cases, the Results Report message 1160 may include any error or exceptions encountered for the sub-task. These error reports may be used to enable error handling and fault tolerance in the inference process.

[0218] The Deregistration Acknowledge message 1176 may include one or more of the following:

[0219] a. UE Identifier

[0220] b. Deregistration Status (Success or Failure)

[0221] c. Timestamp

[0222] Finally, the Deregistration Acknowledge message 1176 confirms the successful deregistration of the UE from the gNB's registry, allowing the UE to leave the edge computing pool.

[0223] Other fields may equally be included in the above messages, and the present disclosure is not limited to particular fields in the various messages. Further, in some embodiments, other messages may also be used.

[0224] In some cases, registry 1132 may be updated based on responses from UEs. For example, the base station may evaluate responses from UEs and determine trustworthiness of the UE in some cases. In particular, the gNB may evaluate the trustworthiness of received capability reports based on historical data and reputation scores for each UE. The base station may thereafter remove the UE from registry 1132 based on inactivity, unresponsiveness, or low trustworthiness, among other factors.

[0225] Moving Edge Devices

[0226] Referring to Figure 12, this diagram shows the possibility of edge devices, such as UEs, moving between base stations. In particular, a UE 1210 may move from a base station 1220 to a base station 1230, for example.

[0227] In such cases, a redesigned protocol and signaling flow for a moving UE edge device from a serving gNB to a target gNB may be provided. Reference is made to Figure 13.

[0228] Signal Degradation and Measurement Reporting: The UE 1310 continuously monitors the signal strength from the serving gNB 1312 and neighboring gNBs 1314, as shown at block 1320. When the signal quality falls below a threshold or a better neighboring gNB is detected, as detected at block 1322, the UE 1310 sends a "Measurement Report" message 1324 to the serving gNB 1312, including information about potential handover candidates and their signal strengths.

[0229] Edge Computing Capability Exchange: Along with the "Measurement Report" message 1324, the UE 1310 includes its edge computing capabilities (e.g., CPU, RAM, GPU, battery level) in an additional "UE Capability" message 1330. The serving gNB 1312 and potential target gNBs 1314 exchange the UE's edge computing capabilities through the X2 interface (for intra-gNB handover) or via the core network (for inter-gNB handover) , as shown at block 1332.

[0230] Target Selection and Preparation: The serving gNB 1312 may select the most suitable target gNB based on signal strength, load, and edge computing requirements, as shown at block 1340. The serving gNB may prepare the necessary information for handover, including radio resource configuration, security context, and edge computing task allocation (if applicable) , as shown at block 1342.

[0231] Handover Command with Task Allocation: The serving gNB 1312 may send an "RRCReconfiguration" message 1350 to the UE 1310, acting as a handover command. If the target gNB 1314 requires edge computing assistance, the "RRCReconfiguration" message 1350 may include a "Task Allocation" field with details of the inference task, model information, and input data.

[0232] Synchronization, Access, and Task Execution: The UE 1310 may synchronize with the target gNB 1314, shown with signals 1360, for example for time and frequency alignment, and may perform a random access procedure 1362 to gain access to the new cell. If a task was allocated, the UE executes the inference task using its edge computing capabilities, shown with block 1370, and may send a "Result Report" message 1372 to the target gNB 1314 upon completion.

[0233] Data Forwarding and Path Switch: The serving gNB 1312 may forward buffered data to the target gNB 1314 to ensure a seamless transition, shown with message 1352. The UE 1310 may switch its radio link from the serving gNB 1312 to the target gNB 1314 and communication may resume on the new path.

[0234] Edge Computing Resource Management: The target gNB 1314 may maintain a registry 1380 of UEs and their edge computing capabilities within its coverage area. If additional edge computing resources are needed, the target gNB 1314 can  allocate tasks to registered UEs using the "Task Allocation" message, as seen in FIG. 11. UEs can update their capabilities using the "Capability Update" message or deregister using the "Deregistration Request" message.

[0235] By incorporating edge computing capabilities into the handover protocol, the network can leverage the computational resources of moving UEs to offload inference tasks, improving overall system performance and efficiency. The exchange of edge computing capabilities between gNBs ensures that the target gNB can effectively utilize the UE's resources after the handover.

[0236] This redesigned protocol and signaling flow seamlessly integrate edge computing with the handover process, enabling continuous connectivity and efficient utilization of edge resources, even for moving UEs.

[0237] Base Station Scheduling Inference Tasks over Multiple UE Edge Devices

[0238] In the dynamic edge inference ecosystem, the gNB acts as an orchestrator, intelligently matching inference tasks with available resources from associated UE edge devices. This process may unfold through several generic but intricate stages. Reference is now made to FIG. 14.

[0239] In a Resource Profiling and Matching stage 1410, the gNB may maintain a comprehensive registry profiling the capabilities of UE edge devices, including computational resources (CPU, GPU, memory) , latency metrics, channel conditions, and mobility patterns.

[0240] Further, in Resource Profiling and Matching stage 1410, upon receiving an inference task request, the gNB may perform a thorough analysis, mapping the task requirements against the collective resources of the registered UE edge devices.

[0241] The gNB may further evaluate factors such as model complexity, input data dimensions, desired accuracy, and latency constraints are carefully evaluated to determine the optimal resource allocation strategy.

[0242] In a Model Segmentation and Partitioning stage 1420, based on the inference task requirements and the aggregated edge resources, the gNB may employ various techniques to dynamically segment the inference model into multiple components or layers. The segmentation strategy accounts for the heterogeneous computational capabilities of individual UE edge devices, aiming to distribute the workload evenly or prioritize critical components based on latency requirements. Advanced techniques like layer partitioning, tensor partitioning, or model parallelism may be employed to divide the inference model effectively, enabling collaborative execution across multiple devices.

[0243] In a Task Allocation and Distribution stage 1430, the gNB may allocate the segmented model components to the appropriate UE edge devices, considering their computational resources, channel conditions, mobility patterns, and latency requirements. "Task Allocation" messages may be sent to the selected UE edge devices, including the respective model segment, input data, and necessary configuration parameters. For collaborative tasks, the gNB may coordinate the workflow by specifying the order of execution and dependencies between model segments, ensuring efficient pipelining and data flow.

[0244] In an Input / Output Management and Fusion stage 1440, the gNB may orchestrate the distribution of input data to the respective UE edge devices executing the initial model segments. As intermediate results are produced, the gNB may collect and fuse them according to the defined workflow, leveraging techniques like tensor concatenation or ensemble methods. The gNB may perform additional post-processing, such as ensembling or pruning, to combine the intermediate results and generate the final inference output, optimizing for accuracy and performance. The gNB may perform some part of the inference task as well, such as FFN (Feed-Forward Network) , normalization, or max-pooling etc.

[0245] In a Dynamic Adaptation and Monitoring stage 1450, the gNB may continuously monitor the status of distributed computations, communication channels, and the dynamic state of UE edge devices, including mobility patterns, battery levels, and user activities. If any issues arise, such as device failure, connection loss, or performance degradation, the gNB may dynamically adapt by reallocating tasks, adjusting the segmentation strategy, or incorporating backup resources. Real-time channel conditions, device mobility, and resource availability may be constantly evaluated, enabling the gNB to proactively optimize task allocation, load balancing, and fault tolerance strategies.

[0246] Dedicated DL Channel to Task Allocation and Distribution

[0247] In some cases, dedicated downlink channels for task allocation and model weight transmission in the context of edge inference may be used as technology evolves towards future networks.

[0248] Specifically, as the complexity and size of AI models continue to grow, the reliability and efficiency of transmitting model weights to edge devices may become significant factors. In some embodiments, the physical layer architecture in future networks may incorporate dedicated physical channels, sub-carriers, or sub-bands specifically designed for transmitting model  weights and task allocation data. These dedicated resources would be isolated from other data streams, providing a robust and interference-free and multicast (for grouped transmission mechanism for these payloads) .

[0249] The rationale behind this dedicated approach stems from the diverse capabilities and channel conditions of edge devices. The gNB may need to employ different modulation and coding schemes (MCS) when transmitting model segment weights to different edge devices, depending on their computational resources and channel quality. Or the gNB may need to employ different MCS to different segment weights, depending on the property of the segment weights. Additionally, the same model segment weights may require different MCS at different times or when transmitted to different devices, due to fluctuating channel conditions or device mobility.

[0250] To accommodate these dynamic requirements, in some embodiments the communication systems may introduce novel protocols and advanced transmission techniques. These may include some or all of:

[0251] a. Extended Modulation Schemes: Higher-order modulation techniques, such as 1024-QAM or beyond, could be employed to increase spectral efficiency and data rates for model weight transmission. Additionally, shaped constellation techniques could be explored to optimize the trade-off between transmit power and error rates, ensuring reliable delivery of model weights to edge devices.

[0252] b. Non-binary Channel Coding: Traditional binary channel codes may not be sufficient for the efficient transmission of large model weights. Future networks could leverage non-binary channel codes, which operate on higher-order finite fields, enabling better error correction capabilities and improved throughput for model weight delivery.

[0253] c. Hybrid Automatic Repeat Request (HARQ) : Advanced HARQ mechanisms with adaptive techniques could be implemented to ensure reliable and efficient transmission of model weights. These mechanisms would dynamically adjust the retransmission strategies based on channel conditions, device capabilities, and the importance of specific model segments, minimizing latency and maximizing throughput.

[0254] d. Intelligent Resource Allocation: The gNB could employ intelligent resource allocation algorithms that consider factors such as device mobility, channel quality, and computational capabilities when assigning dedicated resources for model weight transmission. This would optimize the utilization of available resources while ensuring reliable and efficient delivery of model weights to edge devices.

[0255] e. Rate-Matching-Free MCS: The gNB may use rate-matching-free transmission techniques for the UE to minimize latency by avoiding the need for rate-dematching, which consumes buffer resources.

[0256] By incorporating dedicated downlink channels and advanced transmission techniques tailored for model weight delivery, future networks can facilitate seamless and reliable edge inference capabilities.

[0257] Redundancy in Task Allocation and Distribution

[0258] Redundancy can be an effective mechanism to enhance the reliability and robustness of the system during task allocation and distribution. This redundancy can be achieved through the various approaches.

[0259] In a first case, Task Replication may be used. In this case, the gNB can replicate the same task (corresponding to the same model segment) and send it to multiple edge devices. Due to the inherent unreliability of wireless channels and edge devices, this approach can improve the robustness of task execution. As long as one edge device returns the result within the specified time, the entire inference pipeline can continue, avoiding interruptions caused by single-point failures.

[0260] In a second case, Coded Inference can be used. Instead of simply replicating tasks, the gNB can leverage the concept of coded inference. This technique involves encoding the original task using specific coding mechanisms to generate multiple different versions, which are then distributed to multiple edge devices. When the edge devices complete the computations and return their results, the gNB can decode and fuse these results to obtain the final inference output. This approach not only provides redundancy but can also achieve coding gains, improving the accuracy and reliability of the inference process.

[0261] In a third case, Dynamic Redundancy Adjustment can be used. The gNB can dynamically adjust the level of redundancy based on real-time network conditions, edge device states, and task criticality. For critical tasks or unreliable edge devices, the redundancy level can be increased to ensure higher reliability guarantees. For non-critical tasks or reliable edge devices, the redundancy level can be reduced to optimize resource utilization.

[0262] In a fourth case, Result Verification and Retransmission can be used. The gNB can verify the correctness and completeness of the results received from edge devices. If errors or missing data are detected, the gNB can request retransmissions from the corresponding edge devices to ensure the correct results are obtained. This mechanism provides an additional layer of protection for task execution and contributes to the overall system reliability.

[0263] By introducing these redundancy mechanisms, the gNB can effectively handle the uncertainties of wireless channels, dynamic changes in edge devices, and potential failure scenarios, thereby enhancing the overall reliability and robustness of the edge inference system. Furthermore, these mechanisms can be combined with other optimization strategies, such as intelligent resource allocation and dynamic scheduling, to further improve the system's performance and efficiency.

[0264] Device Groupings

[0265] According to the structure of the Transformer, its main layers can be roughly divided into four categories: Embedding layer, Prediction layer, Multi-head Attention layer, and FFN (Feed-Forward Network) layer. Both the Multi-head Attention layer and the FFN layer introduce Normalization and Add modules with residual connections to alleviate the gradient vanishing problem. To better demonstrate the model splitting algorithm, the Multi-head Attention module and the FFN module mentioned below do not include the Normalization and Add modules. The term "module" is used to distinguish from "layer" . Additionally, according to the structure of the Multi-head Attention, the aggregation matrix Woof all head attentions is not included in the Multi-head Attention module.

[0266] To reduce data transmission and thus mitigate the risk of information leakage, the calculation of the Embedding layer and Prediction layer, which store dictionary information, is handled by the gNB by default, but can be handled by edge devices with some configurations in some cases.

[0267] Additionally, since all auxiliary computation results are reported to the gNB, and the residual connection directly adds the input to the output of the corresponding layer, the Add module for performing residual connections may also be managed by the gNB.

[0268] The remaining Multi-head Attention module, FFN module, and Normalization module may be handled by edge devices. Specifically, edge devices may be divided into three groups, each corresponding to one of these modules. Devices within each group may coordinate and complete the calculation tasks of the respective module through gNB scheduling.

[0269] It should be noted that, if the computational capability of the gNB is sufficiently strong, the calculation of the Normalization module or FFN module, or both, can also be completed by the gNB to reduce latency and error risks caused by data transmission. Additionally, due to the highly parallel nature of the multi-head attention calculation within the Multi-head Attention module, the computation of each head attention in this module may mostly be completed by edge devices within the group in most cases. Due to the large memory and computational requirements of this module, edge devices may primarily be considered for the multi-head attention module calculation during device grouping in some cases.

[0270] Specifically, depending on the capabilities of the edge devices, one device may correspond to the calculation of one head attention; several devices may jointly complete the calculation of one head attention; or one device may complete the calculation of multiple head attentions. Additionally, if the computational capability of the base station is sufficient or considering comprehensive requirements such as latency, the base station may also participate in or be responsible for the calculation of one or more head attentions, while the remaining edge devices in the group may handle other head attentions in cooperation with the base station.

[0271] FIGs. 15-18 illustrate the collaboration between different edge device groups and the gNB, with h heads in the multi-head attention module. They assume that the gNB has split the model based on the inherent parameters of each edge device and sent the corresponding weights to the divided edge device groups. When dispatching sub-tasks (weights) to each edge device, the gNB may attach a unique identifiable ID number to ensure that both the gNB and edge devices know the specific calculation tasks they are responsible for. The gNB uses this ID number to merge the calculation results returned by the edge devices.

[0272] Specifically, FIG. 15 shows the situation where edge devices assist in calculating multiple head attentions, with each edge device in the group responsible for one head attention. It is noteworthy that, according to the principle of the Multi-head Attention mechanism, the input of head attention calculated by devices within the same group is the same and can be obtained through gNB broadcasting. After the calculation of head attention is completed, the results are sent back to the gNB individually. The gNB merges the results based on the ID number and then sequentially feeds them into the Wo projection, Normalization, and  FFN modules. This process may be repeated serially multiple times, with the specific number of times determined by the number of layers in the Transformer.

[0273] Specifically, as seen in FIG. 15, after an embedding layer 1510 and an attention normalization layer 1512, the multiple head attentions are provided to group client devices 1520. Results can then be fed into the Wo projection 1530.

[0274] Output from the Wo projection 1530 can then be provided to an addition layer 1540, an FFN normalization layer 1542, an FFN layer 1544, and an addition layer 1546.

[0275] Output from addition layer 1546 may be provided back to attention normalization layer 1512 and further be provided to a final normalization layer 1550. From the final normalization layer 1550, a prediction layer 1552 may provide the prediction as an output.

[0276] FIG. 16 illustrates the division of edge devices into two groups, each responsible for assisting in the calculation of the multi-head attention and FFN modules. To improve the inference speed, the FFN module can also be collaboratively completed by multiple edge devices within the group.

[0277] Specifically, as seen in FIG. 16, after an embedding layer 1610 and an attention normalization layer 1612, the multiple head attentions are provided to group client devices 1620. Results can then be fed into the Wo projection 1630.

[0278] Output from the Wo projection 1630 can then be provided to an addition layer 1640, and an FFN normalization layer 1642.

[0279] Output from the FFN normalization layer 1642 may be provided to a group client device 1650 having an FFN layer 1652. Output from FFN layer 1652 is provided back to the base station, and in particular to an addition layer 1660.

[0280] Output from addition layer 1660 may be provided back to attention normalization layer 1612 and further be provided to a final normalization layer 1670. From the final normalization layer 1670, a prediction layer 1672 may provide the prediction as an output.

[0281] Collaboration strategies can be divided into:

[0282] a. Partitioning the weight matrix by column blocks, where each column block may contain a different number of columns. In this case, the input of devices within the same group is the same and can be obtained through gNB broadcasting. After the devices within each group complete their calculations, the results are returned to the gNB for merging. x [A1 … AN] = [xA1 … xAN]           (1)

[0283] b. Partitioning the weight matrix into row blocks, where the number of rows in each block can vary. In this case, the inputs of individual devices differ and can be distributed by the gNB in two ways:

[0284] i. Unicasting to each device, containing only the input xi required by each device.

[0285] ii. Broadcasting the output x of the Normalization module to all devices within the group, allowing devices to decode and extract their respective inputs xi. Each device determines its specific input xi based on the number of weight rows and identifiable ID numbers distributed by the gNB.

[0286] c. Partitioning the weight matrix into multiple sub-matrix blocks, where the size of each sub-matrix can vary. In this scenario, the inputs of some devices within the group are identical and can be obtained through gNB broadcasting. For devices with different inputs, two methods from the second option can be utilized.

[0287] According to the specific structure of the LLM model, there may be multiple FFN expert modules, such as the MoE structure. In this case, each edge device in the group may correspond to an FFN expert module, and there is an additional Gating module inside the gNB to determine which devices will be activated to participate in the inference operation at that time. After each FFN module completes its calculation, the results are returned to the gNB for merging, as shown in Figure 17.

[0288] When performing single-user single-forward computations, some FFN expert modules may not be activated. Therefore, to increase utilization, in some cases multi-user inference may be considered. In this case, there may be FFNi expert modules that need to handle multiple user inputs simultaneously. If an FFNi expert module reaches its capacity limit, the gNB may  add new edge devices to perform calculations for the FFNi module to ensure continuous processing and maintain throughput. It is worth noting that a single FFNi expert module can also be collaboratively completed by multiple edge devices within the group.

[0289] To further increase throughput and enable pipelined processing, the Normalization module can also be managed by the edge device group. Specifically, as shown in Figure 18, the parameters of the Normalization module are different in different layers and can be sequentially completed by multiple edge devices within the group or can be switched by one device through gNB scheduling. After the calculation is completed, the result can be returned to the gNB, which will then forward the result to the multi-head attention module and FFN module, or the result can be directly broadcast to the multi-head attention module and FFN module.

[0290] Due to the serial computation of the Multi-head Attention module, Normalization module, and FFN module, when the number of edge devices is insufficient, there may be a scenario where a single edge device simultaneously participates in multiple layer groups, meaning a particular edge device may engage in computations for multiple different modules. Specifically, certain devices may handle FFN module computations after completing head-attention calculations.

[0291] When the number of edge devices changes, or an edge device changes states from idle to busy, new edge devices may join their respective groups to replace their computations. Alternatively, existing edge devices within the same or different groups may be replaced by other devices. This implies that various modules of different Transformer layers may be executed by distinct edge devices.

[0292] Of particular note, due to the extensive K-V cache involved in multi-head attention computations, to accommodate sudden device state changes and save inference time, edge devices within the group may need to periodically, semi-periodically, or aperiodically, or at appropriate intervals, return their K-V cache values to the gNB. This ensures timely updates of K-V cache values to new devices for head attention computations.

[0293] Thus, as seen in FIG. 18, after an embedding layer 1810, a normalization task can be provided to an attention normalization module 1822 within group client device 1820.

[0294] The normalized data can be provided to a group client device 1830 for the multiple head attentions. Results can then be fed into the Wo projection 1840.

[0295] Output from the Wo projection 1840 can then be provided to an addition layer 1842.

[0296] Normalization can then occur by providing the output to an FFN normalization layer 1850 within group client device 1820.

[0297] Output from the FFN normalization layer 1850 may be provided to a group client device 1860 having an FFN layer 1862. Output from FFN layer 1862 is provided back to the base station, and in particular to an addition layer 1864.

[0298] Output from addition layer 1864 may be provided to a final normalization layer 1870 within group client device 1820. From the final normalization layer 1870, results may be provided back to the base station, and in particular to a prediction layer 1880, which may provide the prediction as an output.

[0299] Weight Distribution Strategy

[0300] After completing registration of a device with the gNB, the gNB may divide devices into groups based on the model's partitioning, and may assign each device a unique identifiable ID. This ID may correspond to a sub-task that includes the device group number, intra-group order, and the rows and columns involved in matrix computation. According to the grouping of devices, the gNB may broadcast the weights within the same device group, and devices may extract their respective weights based on their unique identifiable IDs.

[0301] For instance, in the multi-head attention, the weight matrices and are concatenated from h matrices. The gNB broadcasts Wq, Wk and Wv, and devices within the attention group extract and Especially for variants of the multi-head attention mechanism (GQA) and (MQA) LLM models, several heads may share one and and broadcasting by the gNB may significantly improve efficiency.

[0302] Further, according to the model's partitioning, weights may be selectively sent to each device within the device group. Two scenarios arise:

[0303] a. When there are sufficient edge devices, after device registration with the gNB, the gNB may send weights and IDs to each device simultaneously; and / or

[0304] b. When edge devices are insufficient, such as when the Normalization module is handled by only one device, weights can be sent along with input to that device. Since weights accompany the data, the device does not need to distinguish whether it is responsible for attention norm or FFN norm, it may only need to perform calculations and return them to the gNB for subsequent merging or forwarding. This weight-sending method is particularly suitable for newly added edge devices.

[0305] Splitting Strategy

[0306] When grouping devices, priority may be given to the computation of the multi-head attention module, followed by the FFN module, and finally the Normalization module. The model's partitioning may correspond to the auxiliary edge device requirements for these modules. However, model partitioning may also need to consider the inherent parameters of edge devices. Assuming the gNB is aware of the minimum computational power, storage, and maximum runtime requirements for the multi-head attention module, FFN module, and Normalization module in LLM, specific partitioning criteria may involve several aspects. Computational power, storage, and other requirements may be considered for each module. Each module can be comprehensively considered based on multiple requirements, and different criteria can be applied to each module. In some cases, to improve computational efficiency, weaker edge devices may not be utilized according to certain criteria.

[0307] A first criterion may be based on computational power requirements. For example, edge devices may report their computational capabilities (floating-point operations per second (flop) ) , and the gNB may groups edge devices based on the computational power requirements of each module. The modules may then be partitioned based on the number of edge devices in each group and their specific computational capabilities. If edge devices lack computational power, sub-tasks within each module, such as query vector computation in head attention, can be further divided and allocated to edge devices with lower computational power. Additionally, several edge devices can handle partial computations within the same module, meaning very low-power edge devices can assist low-power edge devices. If there are sufficient edge devices, the gNB may prioritize selecting edge devices with strong computational power and may ensure parallel computation of h heads in the head attention module.

[0308] A second criterion may be based on storage requirements. For example, edge devices may report their memory capacities, and the gNB may prioritize grouping devices with larger memory capacities into groups corresponding to the multi-head attention module. If the number of edge devices is limited and storage capacity is insufficient, several edge devices can handle partial computations within the same module to reduce the storage requirements of each device. If storage remains insufficient, the UE can continuously reload and unload weights, while the gNB forwards intermediate results to complete module computation. If there are sufficient edge devices, the gNB may prioritize selecting edge devices with larger storage capacities and ensures parallel computation of h heads in the head attention module.

[0309] A third criterion may be according to power consumption requirements. For example, edge devices may report their power consumption status, and selections may be made to ensure that the total power consumption of selected devices is less than the maximum required. Modules may be partitioned based on the number of edge devices used.

[0310] A fourth criterion may be according to inference time requirements. For example, considering the computational power and quantity of edge devices, transmission time (gNB transmission and merging) may comprehensively be considered to split modules as much as possible, ensuring highly parallelized computation of each module to meet inference time requirements.

[0311] A fifth criterion may be according to error rate. For example, due to inevitable errors in each transmission, smaller module partitions may lead to more interactions and increased error rates. Additionally, since modules operate sequentially, error propagation may be more likely. Therefore, when partitioning modules, the upper limit of Frame Error Rate (FER) may need to be considered. For example, the sensitivity of the final result to errors occurring before the FFN module may be higher than errors occurring after it. Therefore, the Normalization module before the FFN module may be retained for computation at the gNB, or additional error protection measures may be adopted to meet the upper limit requirements during the FER period.

[0312] A sixth criterion may be according to weight-sharing group situations. For example, for LLM models based on variants of the multi-head attention mechanism, such as Grouped Query Attention (GQA) and Multiple Query Attention (MQA) , where several heads share one and the corresponding K-V cache may be greatly reduced. In this case, one edge device can  perform computations for several head-attention calculations, and partitioning based on their weight-sharing situation can save memory.

[0313] A seventh criterion may be according to gNB data merging capability. For example, if the gNB has sufficient capability, the Normalization module and FFN module can be computed at the gNB to reduce transmission latency and minimize error propagation. If the gNB lacks the capability to perform large-scale matrix multiplication in fully connected layers, it can participate in partial module computations based on its capability, such as participating in partial FFN module computations and merging the results obtained by other edge devices for the remaining parts of FFN module computations.

[0314] In some cases, after allocating to multiple UEs, the base station may provide feedback or an acknowledgement to the UEs whose results were used (and / or to the UEs whose results were not used) .

[0315] Unequal Error Protection Mechanism

[0316] Due to the varying importance and size of data (weights > K-V cache) , the system may employ unequal error protection / different code rates of error correction codes to enhance the reliability of data transmission.

[0317] The elements described and depicted herein, including in flow charts and block diagrams throughout the figures, imply logical boundaries between the elements. However, according to software or hardware engineering practices, the depicted elements and the functions thereof may be implemented on machines through computer executable media having a processor capable of executing program instructions stored thereon as a monolithic software structure, as standalone software modules, or as modules that employ external routines, code, services, and so forth, or any combination of these, and all such implementations may be within the scope of the present disclosure. Examples of such machines may include, but may not be limited to, personal digital assistants, laptops, personal computers, mobile phones, other handheld computing devices, medical equipment, wired or wireless communication devices, transducers, chips, calculators, satellites, tablet PCs, electronic books, gadgets, electronic devices, devices having artificial intelligence, computing devices, networking equipment, servers, routers and the like. Furthermore, the elements depicted in the flow chart and block diagrams or any other logical component may be implemented on a machine capable of executing program instructions. Thus, while the foregoing drawings and descriptions set forth functional aspects of the disclosed systems, no particular arrangement of software for implementing these functional aspects should be inferred from these descriptions unless explicitly stated or otherwise clear from the context. Similarly, it will be appreciated that the various steps identified and described above may be varied, and that the order of steps may be adapted to particular applications of the techniques disclosed herein. All such variations and modifications are intended to fall within the scope of this disclosure. As such, the depiction and / or description of an order for various steps should not be understood to require a particular order of execution for those steps, unless required by a particular application, or explicitly stated or otherwise clear from the context.

[0318] The methods and / or processes described above, and steps thereof, may be realized in hardware, software or any combination of hardware and software suitable for a particular application. The hardware may include a general-purpose computer and / or dedicated computing device or specific computing device or particular aspect or component of a specific computing device. The processes may be realized in one or more microprocessors, microcontrollers, embedded microcontrollers, programmable digital signal processors or other programmable device, along with internal and / or external memory. The processes may also, or instead, be embodied in an application specific integrated circuit, a programmable gate array, programmable array logic, or any other device or combination of devices that may be configured to process electronic signals. It will further be appreciated that one or more of the processes may be realized as a computer executable code capable of being executed on a machine readable medium.

[0319] The computer executable code may be created using a structured programming language such as C, an object oriented programming language such as C++, or any other high-level or low-level programming language (including assembly languages, hardware description languages, and database programming languages and technologies) that may be stored, compiled or interpreted to run on one of the above devices, as well as heterogeneous combinations of processors, processor architectures, or combinations of different hardware and software, or any other machine capable of executing program instructions.

[0320] Thus, in one aspect, each method described above, and combinations thereof may be embodied in computer executable code that, when executing on one or more computing devices, performs the steps thereof. In another aspect, the methods may be embodied in systems that perform the steps thereof and may be distributed across devices in a number of ways, or all of the functionality may be integrated into a dedicated, standalone device or other hardware. In another aspect, the means for performing  the steps associated with the processes described above may include any of the hardware and / or software described above. All such permutations and combinations are intended to fall within the scope of the present disclosure.

[0321] In the present disclosure, the terms “a” , “an” and “one” are defined to mean “at least one” , that is, these terms do not exclude a plural number of items, unless stated otherwise.

[0322] In the present disclosure, terms such as “substantially” , “generally” and “about” , which modify a value, condition or characteristic of a feature of an exemplary embodiment, should be understood to mean that the value, condition or characteristic is defined within tolerances that are acceptable for the proper operation of this exemplary embodiment for its intended application.

[0323] In the present disclosure, unless stated otherwise, the terms “connected” and “coupled” , and derivatives and variants thereof, refer herein to any structural or functional connection or coupling, either direct or indirect, between two or more elements. For example, the connection or coupling between the elements can be acoustical, mechanical, optical, electrical, thermal, logical, or any combinations thereof.

[0324] In the present disclosure, expressions such as “match” , “matching” and “matched” , including variants and derivatives thereof, are intended to refer herein to a condition in which two or more elements are either the same or within some predetermined tolerance of each other. That is, these terms are meant to encompass not only “exactly” or “identically” matching the two elements but also “substantially” , “approximately” or “subjectively” matching the two or more elements, as well as providing a higher or best match among a plurality of matching possibilities.

[0325] In the present disclosure, the expression “based on” is intended to mean “based at least partly on” , that is, this expression can mean “based solely on” or “based partially on” , and so should not be interpreted in a limited manner. More particularly, the expression “based on” could also be understood as meaning “depending on” , “representative of” , “indicative of” , “associated with” or similar expressions.

[0326] In the present disclosure, the terms "system" and "network" may be used interchangeably in embodiments of this application. "At least one" means one or more, and "aplurality of" means two or more. The term "and / or" describes an association relationship of associated objects, and indicates that three relationships may exist. For example, A and / or B may indicate the following three cases: Only A exists, both A and B exist, and only B exists, where A and B may be singular or plural. The character " / " usually indicates an "or" relationship between associated objects. "At least one of the following items (pieces) " or a similar expression thereof indicates any combination of these items, including a single item (piece) or any combination of a plurality of items (pieces) . For example, "at least one of A, B, or C" includes A, B, C, A and B, A and C, B and C, or A, B, and C, and "at least one of A, B, and C" may also be understood as including A, B, C, A and B, A and C, B and C, or A, B, and C. In addition, unless otherwise specified, ordinal numbers such as "first" and "second" in embodiments of this application are used to distinguish between a plurality of objects, and are not used to limit a sequence, a time sequence, priorities, or importance of the plurality of objects.

[0327] A person skilled in the art should understand that embodiments of this application may be provided as a method, an apparatus (or system) , computer-readable storage medium, or a computer program product. Therefore, this application may use a form of a hardware-only embodiment, a software-only embodiment, or an embodiment with a combination of software and hardware. Moreover, this application may use a form of a computer program product that is implemented on one or more computer-usable storage media (including but not limited to a disk memory, an optical memory, and the like) that include computer-usable program code.

[0328] This application is described with reference to the flowcharts and / or block diagrams of the method, the device (system) , and the computer program product according to this application. It should be understood that computer program instructions may be used to implement each process and / or each block in the flowcharts and / or the block diagrams and a combination of a process and / or a block in the flowcharts and / or the block diagrams. The computer program instructions may be provided for a general-purpose computer, a dedicated computer, an embedded processor, or a processor of another programmable data processing device to generate a machine, so that the instructions executed by the computer or the processor of the another programmable data processing device generate an apparatus for implementing a specific function in one or more procedures in the flowcharts and / or in one or more blocks in the block diagrams.

[0329] The computer program instructions may alternatively be stored in a computer-readable memory that can indicate a computer or another programmable data processing device to work in a specific manner, so that the instructions stored in the  computer-readable memory generate an artifact that includes an instruction apparatus. The instruction apparatus implements a specific function in one or more procedures in the flowcharts and / or in one or more blocks in the block diagrams.

[0330] The computer program instructions may alternatively be loaded onto a computer or another programmable data processing device, so that a series of operations and steps are performed on the computer or the another programmable device, so that computer-implemented processing is generated. Therefore, the instructions executed on the computer or the another programmable device provide steps for implementing a specific function in one or more procedures in the flowcharts and / or in one or more blocks in the block diagrams.

[0331] Although this disclosure refers to illustrative embodiments, this is not intended to be construed in a limiting sense. Various modifications and combinations of the illustrative embodiments, as well as other embodiments of the disclosure, will be apparent to persons skilled in the art upon reference to the description.

[0332] Features disclosed herein in the context of any particular embodiments may also or instead be implemented in other embodiments. Method embodiments, for example, may also or instead be implemented in apparatus, system, and / or computer program product embodiments. In addition, although embodiments are described primarily in the context of methods and apparatus, other implementations are also contemplated, as instructions stored on one or more non-transitory computer-readable media, for example. Such media could store programming or instructions to perform any of various methods consistent with the present disclosure.

[0333] It is clearly that a person skilled in the art can make various modifications and variations to this application without departing from the scope of this application. This application is intended to cover these modifications and variations of this application provided that they fall within the scope of protection defined by the following claims and their equivalent technologies.

Claims

1.A method at a base station comprising:breaking an inference task into a plurality of sub-tasks;allocating each sub-task of a subset of the plurality of sub-tasks to at least one first user equipment (UE) ;receiving results for the each sub-task from one or more of the at least one first UE; andmerging the results for the each sub-task to an inference result.2.The method of claim 1, wherein the breaking the inference task into a plurality of sub-tasks comprises at least one of layer portioning;tensor partitioning;and model parallelism.3.The method of claim 1 or 2, further comprising, receiving a capability report from each UE of at least one UE, wherein the at least one UE includes the at least one first UE, the capability report indicating at least one of:an identifier of the at least one UE;computational resources available at the at least one UE;a battery life of the at least one UE;channel related information for communication with the at least one UE; ora preferred operating temperature range for the at least one UE.4.The method of claim 3, further comprising:selecting the at least one first UE, based on at least one of: a capability of the at least one UE, a current load of the at least one UE, a proximity of the at least one UE to the base station, and channel conditions at the at least one UE.5.The method of claim 4, wherein the allocating comprises at least one of:comparing the computational resources of the at least one UE with computational resources required for the sub-task; orestimating a time required for the at least one UE to complete a sub-task of the plurality of sub-tasks based on the capability of the at least one UE and a complexity of the sub-task.6.The method of any one of claims 1 to 5, wherein the allocating comprises sending allocation information to each of the at least one first UE, the allocation information comprising at least one of:an identifier of an allocated sub-task;a specific portion of a model required for the allocated sub-task;input data for the allocated sub-task;a required output format for the allocated sub-task;a deadline for completing the allocated sub-task; anda priority level for the allocated sub-task.7.The method of claim 6, wherein the allocation information is transmitted via a dedicated downlink channel between the base station and the at least one first UE.8.The method of any one of claims 1 to 7, wherein the receiving results comprises receiving result information from the one or more of the at least one first UE, wherein the result information comprises at least one of:an identifier of a completed sub-task;processing time for the sub-task;energy consumed for the sub-task;a current status of the corresponding UE; andany errors or exceptions encountered for the sub-task.9.The method of any one of claims 1 to 8, wherein the allocating comprising:allocating the same sub-task to a plurality of third UEs, wherein the plurality of third UEs belong to the at least one first UE, andwherein the receiving results comprises:comparing the results received from different UEs for the same sub-task;using a first result received for the same sub-task received from one of the plurality of third UEs; andnotifying others of the plurality of third UEs that their results were not used to optimize resource utilization.10.The method of any one of claims 1 to 9, further comprising:determining that at least one second UE is moving to an area served by a second base station, wherein the at least one first UE includes the at least one second UE;providing handover information to the second base station, the handover information including information regarding the sub-task allocated to the at least one second UE; andtransferring any partially processed data or intermediate results from the base station to the second base station.11.The method of any one of claims 1 to 10, further comprising:receiving a request for an inference task from a client device.12.The method of any one of claims 1 to 11, further comprisingtransmitting the inference result to a client device.13.The method of any one of claims 1 to 12, further comprising validating the received results for each sub-tasks.14.A method at a user equipment (UE) comprising:receiving, from a base station, a sub-task to process;verifying feasibility of processing the sub-task based on current capabilities of the UE;when the processing of the sub-task is not feasible:notifying the base station of the inability to process the sub-task;when the processing of the sub-task is feasible:acknowledging receipt of the sub-task to the base station;processing the sub-task; andreporting results of the processing to the base station.15.The method of claim 14, further comprising, registering the UE with the base station to perform processing of sub-tasks, the registration including:transmitting registration information to the base station indicating willingness to participate in an inference task, wherein the inference task comprises the sub-tasks.16.The method of claim 14 or 15, further comprising, sending a capability report to the base station, the capability report providing at least one of:an identifier of the at least one UE;computational resources available at the at least one UE;a battery life of the at least one UE;channel related information for communication with the at least one UE; ora preferred operating temperature range for the at least one UE.17.The method of any one of claims 14 to 16, wherein the reporting results comprises sending a results message containing at least one of:an identifier of the completed sub-task;output data generated for the sub-task;a processing time taken by the UE;energy consumed by the UE during processing;a current status of the UE; andany errors or exceptions encountered during processing.18.The method of any one of claims 14 to 17, wherein the receiving the sub-task comprises receiving an allocation message, the allocation message comprising at least one of:an identifier of the sub-task;a portion or sub-tensor of the model;input data for the sub-task;a required output format for the sub-task;a deadline for completing the sub-task; anda priority level for the sub-task.19.A method at a base station comprising:receiving a registration message from a first user equipment (UE) , the registration message indicating the first UE is available to provide computing resources to the base station;receiving a capability message from the first UE, the capability message comprising capability information for the first UE, the capability information including at least one of:an identifier for the first UE;computational resources available at the first UE;a battery life of the first UE;channel related information for communication with the first UE;a preferred operating temperature range for the first UE; anda current power consumption and thermal state of the first UE;authenticating the UE; andstoring the capability information for the first UE in a repository with capability information received from other UEs.20.The method of claim 19, further comprising:breaking an inference task into a plurality of sub-tasks; andallocating each sub-task to at least one UE within the repository.21.The method of claim 20, wherein the allocating comprises, for each sub-task:evaluating available UEs based on their reported capabilities, current load, proximity to the base station, channel condition, and trustworthiness; andselecting at least one UE based on the evaluation.22.The method of claim 20 or 21, further comprising:receiving results for each sub-task from the at least one UE;validating the received results for each sub-task;merging the results for each sub-task to an inference result; andtransmitting the inference result to a client device.23.The method of any one of claims 19 to 22, wherein the registration message includes at least one of:UE location information;UE movement trajectory information; anda timestamp of the registration.24.The method of any one of claims 19 to 23, further comprising: periodically receiving updated capability reports from registered UEs, reflecting changes in their capabilities and availability.25.The method of any one of claims 19 to 24, further comprising:evaluating trustworthiness of received capability reports based on historical data and reputation scores for each UE; andremoving UEs from the repository based on inactivity, unresponsiveness, or low trustworthiness.26.A method at a user equipment (UE) , the method comprising:detecting a beacon signal from a base station advertising a model inference service;sending a registration message to the base station indicating the UE is available to provide processing capacity to an artificial intelligence system;sending a capability message to the base station, the capability message comprising capability information for the UE, including at least one of:an identifier of the UE;computational resources available at the UE;a battery life of UE;channel related information for communication with the UE; ora preferred operating temperature range for the UE.27.The method of claim 26, wherein the registration message comprises at least one of:UE location information;UE movement trajectory information; anda timestamp of the registration.28.The method of claim 26 or 27, further comprising:periodically transmitting updated capability reports from the UE, reflecting changes in capabilities and availability of the UE.29.The method of any one of claims 26 to 28, further comprising:receiving, from the base station, a sub-task to processverifying feasibility of processing the sub-task based on current capabilities of the UE;when the processing of the sub-task is not feasible:notifying the base station of the inability to process the sub-task;when the processing of the sub-task is feasible:acknowledging receipt of the sub-task to the base station;processing the sub-task;reporting results of the processing to the base station.30.The method of claim 29, wherein the reporting results comprises sending a results message containing at least one of:an identifier of the completed sub-task;output data generated for the sub-task;a processing time taken by the UE;energy consumed by the UE during processing;a current status of the UE; andany errors or exceptions encountered during processing.31.The method of claim 29, wherein the receiving the sub-task comprises receiving an allocation message, the allocation message comprising at least one of:an identifier of the sub-task;a portion or sub-tensor of the model;input data for the sub-task;a required output format for the sub-task;a deadline for completing the sub-task; anda priority level for the sub-task.32.A communication apparatus, configured to perform the method according to any one of claims 1 to 13; 14 to 18; 19 to 25;or 26 to 31.33.The communication apparatus of claim 32, comprising:one more processors; anda communications subsystem.34.An apparatus comprising:one or more processors; andmemory storing instructions, which, when executed by the one or more processors, cause the apparatus to perform the method of any one of claims 1 to 13; 14 to 18; 19 to 25; or 26 to 31.35.A computer-readable storage medium having instructions stored thereon which, when executed by a computing device cause the computing device to perform the method of any one of claims 1 to 13; 14 to 18; 19 to 25; or 26 to 31.36.A computer program product storing instructions which, when executed, cause an apparatus to perform the method of any one of claims 1 to 13;14 to 18;19 to 25;or 26 to 31.

Citation Information

Patent Citations

  • Multi-granularity and multi-level computing power scheduling method in end-side computing power network

    CN116647875A

  • Multi-model cooperation method based on large-scale language model

    CN116976306A

  • Multi-table question answering system and method thereof

    US20240143584A1

  • Computing power request method, computing power allocation method, computing power execution method, and terminal and network-side device

    WO2023020432A1