Method and apparatus for function call based on communication system

The described communication system addresses limitations in existing systems by using a function database and network-assisted methods to dynamically integrate and invoke function calls, enhancing operational efficiency and versatility through LLM-Agents.

WO2026073474A1PCT designated stage Publication Date: 2026-04-09HUAWEI TECH CO LTD
View PDF 6 Cites 0 Cited by

Patent Information

Authority / Receiving Office
WO · WO
Patent Type
Applications
Current Assignee / Owner
Filing Date
2024-12-26
Publication Date
2026-04-09

AI Technical Summary

Technical Problem

Existing communication systems require explicit knowledge and details of function existence and invocation during system design, limiting dynamic addition or deletion of functions, changing execution order, and invoking functions without detailed knowledge.

Method used

A communication system that utilizes a function database and a network-assisted method to dynamically integrate and invoke function calls, leveraging LLM-Agents to convert human language into structured commands, supporting bidirectional, coordinated, and cross-domain function calls with spatiotemporal tags and caching mechanisms.

Benefits of technology

Enhances operational efficiency and versatility by enabling dynamic adaptation to different requests and scenarios, maximizing network computational power and extending LLM-Agent functionality.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN2024142692_09042026_PF_FP_ABST
    Figure CN2024142692_09042026_PF_FP_ABST
Patent Text Reader

Abstract

The present application relates to methods and apparatuses for function call based on communication systems. An example method includes receiving a request. The request can indicate a task. The method further includes determining a function call based on the request. In some implementations, the request can be associated with a machine learning model.
Need to check novelty before this filing date? Find Prior Art

Description

METHOD AND APPARATUS FOR FUNCTION CALL BASED ON COMMUNICATION SYSTEMCROSS-REFERENCE TO RELATED APPLICATIONS

[0001] This application claims the benefit of U.S. Provisional Application Serial No. 63 / 702,015 filed on October 1, 2024, the entire contents of which are hereby incorporated by reference in its entirety.TECHNICAL FIELD

[0002] The application relates generally to wireless communications, and more specifically to methods apparatuses and systems for function call based on communication systems.BACKGROUND

[0003] In the past, a system required the explicit knowledge and details of a function’s existence and invocation in the system design phase. This means that during the system design phase, the specifics of invoking a function have to be clearly written into the codes. For example, in one function, a base station needs to check data from a sensor and send the request information to the sensor using a pre-agreed method. Upon receiving the request, the sensor would parse it and return the requested data to the base station in a mutually agreed format.SUMMARY

[0004] One or more implementations of the present application provide communication methods and communication apparatuses. The techniques described in the application can improve the performance of function call based on communication systems.

[0005] According to a first aspect, a method is provided. The method includes receiving a request and determining a function call based on the request. The request can indicate a task.

[0006] With reference to the first aspect, in some implementations, the request is associated with a machine learning model.

[0007] With reference to the first aspect, in some implementations, the request includes an embedding data of the task or a natural language description of the task.

[0008] With reference to the first aspect, in some implementations, the request is carried in a higher layer signaling or a physical layer signaling.

[0009] With reference to the first aspect, in some implementations, determining the function call includes determining one or more functions based on the request. The function call includes a list of the one or more functions for accomplishing the task. Each of the one or more functions is from a function database of a serving base station or a function database of a neighboring base station.

[0010] With reference to the first aspect, in some implementations, the method further includes transmitting a function call service announcement; receiving a function registration request indicating a to-be-registered function; and adding the to-be-registered function to a function database.

[0011] With reference to the first aspect, in some implementations, adding the to-be-registered function to the function database includes adding information of the to-be-registered function to the function database. The information of the to-be-registered function includes at least one of the following parameters of the to-be-registered function: a function name; an identifier of a function owner; embedding data of a function description; embedding data of a description of at least one input parameter; or embedding data of a description of at least one output parameter.

[0012] With reference to the first aspect, in some implementations, the information of the to-be-registered function is included in formatted data in the function registration request or is generated by applying a machine learning model to raw data in the function registration request.

[0013] With reference to the first aspect, in some implementations, the method further includes receiving a function deregistration request indicating a to-be-deregistered function; and removing the to-be-deregistered function from the function database.

[0014] With reference to the first aspect, in some implementations, determining the one or more functions includes: starting a first function call match by applying a machine learning model to the request and a first list of functions; and obtaining a first output of the machine learning model when the first function call match succeeds, where the first output includes the one or more functions.

[0015] With reference to the first aspect, in some implementations, determining the one or more functions further includes: obtaining embedding data of the task, where the embedding data of the task is comprised in the request or is determined by embedding a natural language description of the task in the request; and determining the first list of functions based on similarity values between the embedding data of the task and embedding data of each function description in the function database of the serving base station.

[0016] With reference to the first aspect, in some implementations, the method further includes when the first function call match fails: transmitting the request to at least one neighboring base station; receiving a second list of functions from the at least one neighboring base station, where each function in the second list of functions is from a function database of one of the at least one neighboring base station; determining a third list of functions by combining the first list of functions and the second list of functions; starting a second function call match by applying the machine learning model to the request and the third list of functions; and obtaining a second output of the machine learning model when the second function call match succeeds, where the second output includes the one or more functions.

[0017] With reference to the first aspect, in some implementations, the method further includes calling each function of the one or more functions based on the list. Calling each function includes: determining a function call request based on the function, where when the function has a preceding function in the list, the function call request includes a result of the preceding function as an input parameter; processing the function call request to generate a result of the function; and transmitting a response when the function is the last in the list, where the response includes the result of the function.

[0018] With reference to the first aspect, in some implementations, processing the function call request includes: transmitting the function call request to a second device associated with an owner of the function; and receiving the result of the function from the second device.

[0019] With reference to the first aspect, in some implementations, processing the function call request includes executing the function to generate the result of the function.

[0020] With reference to the first aspect, in some implementations, processing the function call request includes: determining whether a function call cache includes the result of the function; and obtaining the result of the function from the function call cache when the function call cache includes the result of the function and the result of the function satisfies a spatiotemporal semantic requirement in the function call request.

[0021] According to a second aspect, a method is provided. The method includes transmitting a request and receiving a response. The request can indicate a task.

[0022] With reference to the second aspect, in some implementations, the task is associated with a machine learning model.

[0023] With reference to the second aspect, in some implementations, the request is carried in a higher layer signaling or a physical layer signaling.

[0024] With reference to the second aspect, in some implementations, the request includes a natural language description of the task.

[0025] With reference to the second aspect, in some implementations, the request further includes embedded data of the natural language description of the task.

[0026] With reference to the second aspect, in some implementations, the method further includes receiving a function call service announcement; transmitting a function registration request indicating a to-be-registered function; and receiving an acknowledgement of the function registration request.

[0027] With reference to the second aspect, in some implementations, the function registration request includes at least one of the following parameters of the to-be-registered function: a function name; an identifier of a function owner; embedding data of a function description; embedding data of a description of at least one input parameter; or embedding data of a description of at least one output parameter.

[0028] With reference to the second aspect, in some implementations, the method further includes transmitting a function deregistration request indicating a to-be-deregistered function; and receiving an acknowledgement of the function deregistration request.

[0029] With reference to the second aspect, in some implementations, the response includes a result of the task.

[0030] With reference to the second aspect, in some implementations, the response includes a sidelink configuration. The method further includes: establishing a sidelink between a first terminal device and a second terminal device based on the sidelink configuration; and transmitting the request to the second terminal device through the sidelink; and receiving a result of the task from the second terminal device through the sidelink.

[0031] According to a third aspect, an apparatus is provided. The apparatus is configured to perform the method according to the first aspect or one or more implementations of the first aspect, or the second aspect or one or more implementations of the second aspect.

[0032] According to a fourth aspect, an apparatus is provided. The apparatus includes: a receiving unit configured to receive a request, where the request indicates a task; and a processing unit configured to determine a function call based on the request.

[0033] According to a fifth aspect, an apparatus is provided. The apparatus includes: a transmitting unit configured to transmit a request, where the request indicates a task; and a receiving unit configured to receive a response.

[0034] According to a sixth aspect, an apparatus is provided. The apparatus includes: one or more processors; and an interface circuit configured to receive a request, where the request indicates a task.

[0035] According to a seventh aspect, an apparatus is provided. The apparatus includes: one or more processors; and an interface circuit configured: transmit a request, where the request indicates a task; and receive a response.

[0036] With reference to the sixth aspect or the seventh aspect, in some implementations, the interface circuit includes one or more transceivers.

[0037] According to an eighth aspect, an apparatus is provided. The apparatus includes one or more processors and one or more memories. The one or more memories store instructions which, when executed by the one or more processors, cause the apparatus to perform the method according to the first aspect or one or more implementations of the first aspect, or the second aspect or one or more implementations of the second aspect.

[0038] According to a ninth aspect, a communication system is provided. The communication system includes a first apparatus configured to perform the method according to the first aspect or one or more implementations of the first aspect. The communication system further includes a second apparatus configured to perform the method according to the second aspect or one or more implementations of the second aspect.

[0039] According to a tenth aspect, a non-transitory computer-readable storage medium is provided. The non-transitory computer-readable storage medium has instructions stored thereon which, when executed by an apparatus, cause the apparatus to perform the method according to the first aspect or one or more implementations of the first aspect, or the second aspect or one or more implementations of the second aspect.

[0040] According to an eleventh aspect, a computer program product is provided. The computer program product stores instructions which, when executed, cause an apparatus to perform the method according to the first aspect or one or more implementations of the first aspect, or the second aspect or one or more implementations of the second aspect.BRIEF DESCRIPTION OF THE DRAWINGS

[0041] FIG. 1 illustrates a schematic illustration of an example communication system.

[0042] FIG. 2 illustrates another example communication system.

[0043] FIG. 3 illustrates an example of an apparatus wirelessly communicating with another apparatus in a communication system.

[0044] FIG. 4 illustrates an example apparatus.

[0045] FIG. 5 illustrates another example apparatus.

[0046] FIG. 6 shows an example procedure for function database management.

[0047] FIG. 7 shows an example procedure for embedding based function selection.

[0048] FIGS. 8A-8D illustrate example procedures for user equipment (UE) initiated function calls.

[0049] FIG. 9 shows an example procedure for a UE invoking external function call.

[0050] FIG. 10 shows an example procedure for a next Generation NodeB (gNB) invoking UE function call.

[0051] FIG. 11 shows an example procedure for a gNB coordinated function call.

[0052] FIG. 12 shows an example procedure for a gNB cross-domain function call.DETAILED DESCRIPTION

[0053] In the past, a system required the explicit knowledge and details of a function’s existence and invocation in the system design phase. This means that during the system design phase, the specifics of invoking a function have to be clearly written into the codes. For example, in one function, a base station needs to check data from a sensor and send the request information to the sensor using a pre-agreed method. Upon receiving the request, the sensor would parse it and return the requested data to the base station in a mutually agreed format. This entire process requires a pre-design in terms of signaling and other aspects.

[0054] This predefine-everything approach has several limitations listed below.

[0055] 1. Dynamic Addition or Deletion of Functions: It may not be possible to dynamically add or delete functions during the operation of the system.

[0056] 2. Dynamic Change of Function Execution Order: The order of function execution may not be dynamically changed. For instance, if a system initially executed functions A, B, and C in sequence, it could not change to execute functions A, C, and then B without pre-designing this sequence.

[0057] 3. Invocation of Functions Without Detailed Knowledge: Functions may not be invoked without detailed knowledge of their specifics.

[0058] Large language model (LLM) has revolutionized the way of interacting with technology by transforming complex human language into structured instructions. This capability has given rise to LLM-Agents, which are now being effectively applied across various fields.

[0059] LLM-Agent is an advanced artificial intelligence (AI) system designed to understand and process tasks requested by human language. The LLM-Agent leverages the capabilities of LLM to convert complex linguistic inputs into structured, actionable commands. By doing so, it bridges the gap between human language and computer language.

[0060] LLM-Agent can understand and process intricate linguistic patterns, converting them into precise function calls that can execute. Function calls enhance the versatility of LLM-Agent by allowing it to interact with other systems and perform tasks beyond simple text generation. This capability is particularly useful in applications where real-time data retrieval or complex processing is required. When an LLM-Agent encounters a request that involves external resources or specific functions, it can trigger these function calls to fetch information, perform actions, or process data as needed. This dynamic interaction with external systems enables LLM-Agents to provide more accurate, context-aware responses and execute tasks that require integration with other technologies, thereby expanding their utility and effectiveness across various domains.

[0061] A communication system can be designed so that it can flexibly integrate and invoke various function calls. In a system described in the present disclosure, different requests and scenarios can be dynamically adapted.

[0062] In the described system, a network-assisted (for example, a base station-assisted) Function Call method is designed to realize function calls by utilizing a network as both an agent and coordinator. The method may include one or more of the following features.

[0063] 1. Create and maintain a function database. This function database can be a vector database, where the function description and other information can be in embedding format.

[0064] 2. User request can include embedding. By comparing the user request embedding and function description embedding, the network can select corresponding functions. Then the network prepares a prompt to input to LLM to generate a function calls list to perform the user request.

[0065] 3. Design different schemes to support function calls, including bidirectional function calls, coordinated function calls, and cross-domain function calls, with distinct roles assigned to a network and a user equipment (UE) :

[0066] - Bidirectional Function Call: Supports UE calling external functions as well as network calling functions on UE.

[0067] - Coordinated Function Call: The network can coordinate Function Calls between different UEs, enabling distributed collaborative computing. This can include two aspects: first, the network acts as a scheduling center responsible for coordinating and managing Function Calls among different UEs; second, the network can also assist UEs in establishing direct communication and Function Call relationships through sidelink, facilitating direct collaboration between UEs.

[0068] - Cross-Domain Function Call: Supports Function Calls between neighboring networks. This can include coordinating and managing Function Calls between local UEs and remote UEs through a network acting as a scheduling center.

[0069] 4. The proposed function call approach can accommodate a variety of input and output formats, significantly enhancing operational efficiency through the use of spatiotemporal tags and caching mechanisms. Additionally, interactions are secured by advanced signaling methods, allowing for the simultaneous management of multiple tasks.

[0070] In the present disclosure, unless otherwise specified, the terms “embedding, ” “embeddings, ” “embedding information, ” and “embedding data” can be used interchangeably.

[0071] By leveraging these features, the described techniques aim to maximize network computational power, extend LLM-Agent functionality, improve task execution efficiency, and enable more precise and intelligent management of wireless resources.

[0072] The details of one or more implementations of the subject matter of this present disclosure are set forth in the accompanying drawings and the description below. Other features, aspects, and advantages of the subject matter will become apparent from the description, the drawings, and the claims.

[0073] FIG. 1 is a schematic illustration of an example communication system according to an implementation of the present disclosure, there is shown a 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 or 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 comprises 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. 1, 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.

[0074] 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 sharing resources, such as carrier spectrum bandwidth, among its constituent elements.

[0075] 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.

[0076] 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.

[0077] FIG. 2 illustrates another example communication system 100 according to an implementation of the present disclosure. The communication system 100 includes EDs 110a, 110b, 110c, 110d (collectively referred to as ED 110) , RANs 120a, 120b, one or more 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 and120b may include network nodes 170a and 170b respectively. Examples of network nodes 170a, 170b 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.

[0078] 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.

[0079] 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.

[0080] 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, the 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, a system in package (SIP) chip, and the like, and may be responsible for one or more communication functions within the base station.

[0081] The EDs 110a-110d and TRPs 170a-170b, 172 are examples of communication equipment 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.

[0082] 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 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, or 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.

[0083] 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.

[0084] 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.

[0085] 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 a module, modem, or chip) in the foregoing devices, among other possibilities. Future generation EDs 110 may be referred to by 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 a system in package (SIP) chip, and the like, and may be responsible for one or more communication functions in the ED.

[0086] 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.

[0087] 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.

[0088] 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.

[0089] 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. In 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.

[0090] 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) .

[0091] 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 the 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 more transceivers necessary to support such technologies and / or functions.

[0092] 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) .

[0093] 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.

[0094] 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.

[0095] 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.

[0096] 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.

[0097] 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.

[0098] 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.

[0099] 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 the same or different. These processors are configured to execute instructions stored in a memory (such as in the memory 208) .

[0100] 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.

[0101] 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 can also be viewed as one or more nodes) . These modules, which can be considered as one or more nodes, 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 which 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 an ORAN system as described above in the disclosure.

[0102] The processor 260 is configured to perform operations including those related to: preparing a transmission for DL transmission to the apparatus 310, processing a 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.

[0103] 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.

[0104] 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.

[0105] 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.

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

[0107] 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.

[0108] 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.

[0109] 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.

[0110] In an example, the apparatus 410 may include one or more processors / processor cores 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 the 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 implementations 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 implementations 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 another apparatus or system, such as a radio frequency processing apparatus or another processor. The signal may include or carry information intended as a payload, such as user data, control information, etc. The signal may also include or carry information useful to a receiver, but not necessarily as a payload, such as a pilot signal or reference signal. Communicating the signal may include transmitting the signal to another component or device. Communicating the signal may additionally or alternatively include receiving the signal from another component or device. Transmitting the signal may include outputting the signal to a component or device that is directly or indirectly coupled to the interface circuit 412. Receiving the signal may include inputting or obtaining the signal from a component or device that is directly or indirectly coupled to the interface circuit 412. In some implementations, 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.

[0111] 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) .

[0112] FIG. 5 illustrates an 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. In some implementations, the apparatus 510 may further include a storage unit 511 configured to store apparatus program code (or instructions) and / or data.

[0113] 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.

[0114] 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 the memory 258.

[0115] 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.

[0116] 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.

[0117] 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 for specific applications, but it should not be considered that the implementation goes beyond the scope of this disclosure.

[0118] 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.

[0119] 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.

[0120] 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) .

[0121] 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 implementations 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 implementations disclosed herein.

[0122] Large language model (LLM) has revolutionized the field of natural language processing (NLP) by demonstrating remarkable abilities in understanding and generating human-like text. These models, such as generative pre-trained transformer (GPT) -4, are trained on vast amounts of textual data, enabling them to grasp the nuances of human language and provide coherent responses. However, recent advancements have taken these models a step further by incorporating code data into their training process, thereby enhancing their logical reasoning capabilities.

[0123] LLMs are deep learning models that utilize transformer architectures to process and generate text. They are trained on diverse datasets that include books, articles, websites, and more. This extensive training allows them to understand context, generate relevant responses, and even perform tasks such as translation and summarization.

[0124] In some implementations, LLMs are trained primarily on natural language data. However, researchers have recognized the potential of including code data in the training process. Code, by its nature, is highly structured and logical. It follows strict syntactical rules and requires precise logical reasoning to execute correctly. By exposing LLMs to code data, these models can learn to apply similar logical structures to natural language tasks.

[0125] Building on the capabilities of both understanding physical world and logical structure, LLM-Agents have emerged as a powerful tool. LLM-Agents can map complex human language to a limited set of function calls, effectively translating language into executable code.

[0126] The core components of an LLM-Agent may include:

[0127] 1. Agent core: the central part of the LLM-Agent, responsible for interpreting user inputs, generating responses, and managing the overall workflow. Usually, the agent core will use LLM to understand and process natural language queries.

[0128] 2. Memory: this component allows the LLM-Agent to retain information across interactions. It helps the LLM-Agent remember user preferences and context, enabling more coherent and contextually relevant responses.

[0129] 3. Agent tools: these are external resources and application programming interfaces (APIs) that the agent can use to perform specific tasks. For example, the agent might use a web search API to gather information or a calendar API to schedule events.

[0130] 4. Planning module: this module helps the agent breakdown complex tasks into manageable steps. It involves creating a plan, executing it, and adjusting as needed based on the outcomes.

[0131] When using the LLM-Agent, the typical approach involves providing the LLM with a prompt that includes:

[0132] 1. LLM role definition, output description and output format definition.

[0133] 2. A list of available function calls or APIs.

[0134] 3. Few shot examples of how to use these functions to finish tasks.

[0135] 4. Description of user’s task.

[0136] After inputting the prompt to an LLM, the LLM will generate a sequenced list of one or more function calls (or APIs) needed to complete the task. The planning module can then sequentially execute these function calls to accomplish the user’s task.

[0137] Retrieval-augmented generation (RAG) is an advanced AI technique that combines the strengths of retrieval-based and generation-based models to provide more accurate and contextually relevant responses. This approach is particularly effective in scenarios where the model needs to access a large corpus of information to generate precise answers. One of the key components of RAG is the use of embeddings for efficient and effective search.

[0138] RAG integrates two main components:

[0139] 1. Retriever: This component searches a large database to find relevant documents or pieces of information based on a given query.

[0140] 2. Generator: This component uses the retrieved information to generate a coherent and contextually appropriate response.

[0141] By combining these two components, RAG can provide more accurate and contextually relevant answers than either component could alone.

[0142] Embeddings are dense, continuous vectors that represent text in a high-dimensional space. These vectors capture the semantic meaning of the text, allowing for efficient comparison and retrieval of relevant information. The embeddings are used in RAG in the following ways:

[0143] 1. Generate embeddings: Both the user query and the documents in the database are converted into embeddings using a pre-trained embedding model.

[0144] 2. Vector search: Once the embeddings are generated, the system performs a vector search to find the most semantically similar documents to the user query. This involves calculating the distance between the query embedding and the document embeddings. The documents with the smallest distances (i.e., the highest similarity) are considered the most relevant.

[0145] 3. Retrieval and generation: The retrieved documents are then passed to the LLM, which uses them as a part of prompt to produce a final response. This ensures that the generated response is both accurate and contextually relevant.

[0146] However, as mentioned before, in some implementations, a system requires the explicit knowledge and details of a function’s existence and invocation at the system design phase. This means that during the system design phase, the specifics of invoking a function have to be clearly written into the codes. For example, in one function, a base station needs to check data from a sensor and send the request information to the sensor using a pre-agreed method. Upon receiving the request, the sensor would parse it and return the requested data to the base station in a mutually agreed format. This entire process requires a pre-design in terms of signaling and other aspects.

[0147] Accordingly, a new system and method are provided in this application.

[0148] Firstly, some terms are introduced below.

[0149] Function calls: In the system, function calls mean to use pre-packaged tools or invoke APIs to accomplish specific tasks. Some examples of function calls are:

[0150] 1. Finish Data processing tasks: such as image editing, performing complex calculation, etc. For example, for an image editing function, a user can provide an image with desired effect as input to call this function, the processed image will be returned to the user as a result of the function calls.

[0151] 2. LLM API invoke: in the system, different kinds of LLMs may be deployed. The user can generate their prompt to call LLM function to get the result.

[0152] 3. Sensor data retrieval: in the system, operations performed by sensors are packed in function calls. In the condition the user needs to check the data from a sensor, the user can call corresponding function calls provided by the sensor.

[0153] There are many other examples of function calls. Generally speaking, function calls are the interface to realize certain functions.

[0154] Base station: in the following description, a base station can be used to stand for a central control part for the function calls operation. The function calls in this application are based on a communication system, and the base station as the central for the communication system can also serve as the central controller or coordinator for function calls operation. The central control part for function calls operation could be a part of base station or in a cloud system where is easy to be accessed by the base station. The base station has large computation power and communication capability and can access to LLMs. The base station can provide functions, schedule, or coordinate function calls. In the following description, a gNB may be used as an example of a base station somewhere. The scope of a base station is not limited only to the gNB, instead, a base station in any communication system such as 3G, 4G, 5G and further networks may be applicable.

[0155] UE: in the following description, UE can be used to stand for a user part for the function calls operation. It could be user equipment, edge devices, sensors, IoT devices, applications, or other equipment in the system. They can serve as function providers and requesters.

[0156] In the Net4AI architecture, both the UE and the base station are expected to accomplish more complex tasks. Generally speaking, it is assumed that the requester of a function call is a resource-constrained UE, while the service provider is a powerful base station or a cloud server. As technology advances, the UE may also possess some very specialized functionalities, such as advanced signal processing capabilities, enhanced data analytics features image recognition, speech processing, special sensor, sensor data analysis, etc. These tools (i.e., functions or combinations of functions that enable capabilities like advanced signal processing, data analysis, image and speech recognition, and sensor data analysis. ) could be essential for base stations or other users and facilitate more complex tasks and enhance the overall service delivery within the Net4AI architecture. Base stations or other users can utilize these tools to enhance their own capabilities.

[0157] To fully utilize the various computing resources within the network, a more flexible and efficient function calls mechanism is required. This mechanism should not only allow edge devices like UEs to make requests but also enable base stations to schedule and coordinate the service providers. This implies that, in addition to supporting Function Calls from UEs to external functions, the mechanism should also support base stations invoking functions from UEs and even facilitate cross-region scheduling and function calls between different UEs and base stations, achieving distributed collaborative computing. Moreover, the functions provided by the wireless communication system itself can also be made available via APIs as Function Calls for the LLM-Agent, thereby enabling more flexible and intelligent management and control of wireless resources.

[0158] To complete this function call system, there exist the following challenges:

[0159] 1. Names, input parameters and output format of functions provided by different providers in the system can vary significantly. Even for the same functionality, different names, input parameters, and output format might be used.

[0160] 2. There is a big difference in function providers’ capabilities within the system. Even for the same task, the computational resources and response times can vary greatly.

[0161] 3. The situation of function providers in the system is unstable, function providers may leave the system and make its provided function unavailable, and new users can join at any time to provide new functions.

[0162] To address these problems, the design principals of LLM-Agent and RAG may be referred to.

[0163] The new system design approach is described in detail in the following sections.

[0164] In the system, there are many users providing a wide variety of functionalities, each with a different name, input parameters, output format, requirements, and other factors. To effectively utilize these functionalities, the system needs a centralized database that records all currently available functions. Understanding the details of all the functionalities the system can offer is the first step towards flexibly and efficiently leveraging these capabilities. The function database ensures that the system can quickly identify the available functions.

[0165] The function database may be located in the base station or other places which can be accessed by a base station.

[0166] In addition, to enable and simplify search and matching, the function database is designed as a vector database that contains both raw data (e.g., in original text format) and its embedding (s) . For example, for a given function, the function database may have an item called function description, where the content of the item will be stored in both the original text format and its embedding (s) . Storing content in its original format ensures that the exact wording is preserved, while the embedding (s) provide a semantic representation that facilitates efficient and accurate search and retrieval for the content. This dual storage approach enhances the system’s ability to understand and utilize the content effectively.

[0167] Embeddings are numerical representations of text data. They encode the semantics (meaning) of the text data. These representations are typically high-dimensional vectors that capture the contextual meaning of words or phrases.

[0168] The function database, for a given function, may include at least one or more of the following fields:

[0169] - Function name: what the function is called.

[0170] - Function type: which kind of task can the function perform, for example, image recognition, translation, etc.

[0171] - Function description (what this function performs) : in original text format and its embedding (s) .

[0172] - Function input parameter list (including parameter name and type) : each function input parameter in the list can include:

[0173] 1. Input parameter description (definition of input parameter) : in original text format and its embedding (s) .

[0174] 2. Input parameter format description: in original text and embedding format.

[0175] - Function output parameter list (including parameter name and type) : each function output parameter in the list can include:

[0176] 1. Output parameter description (definition of output parameter) : in original text format and embedding.

[0177] 2. Output parameter format description: in original text and embedding format.

[0178] - Function usage example (afew examples to show how to use this function) .

[0179] - Function requirements (definition of who can access this function, including a requirement to access this function, balancing or planning requirements to use this function) .

[0180] - Function execution cost (may include power assumption, storage, latency, how much money is needed to pay to use this function, etc. ) .

[0181] - Function owner information, such as UE identifier (ID) .

[0182] - Function location (where this function is physically located) .

[0183] - Function owner’s current effectiveness quality indicator (EQI) , channel quality indicator (CQI) , and other transmission related status.

[0184] - Function available period (during which time the function is available) .

[0185] - Function provider ranking (based on the past experience, give function provider a rank, for example, a high ranking means this function provider can always finish the job as mentioned and expected) .

[0186] If the owner (or the provider) of a function wishes to make it available for everyone to use, the owner can choose to report the function to the base station. The base station will then record the functions in the function database, where the fields to be recorded are shown above.

[0187] If the owner provides unformatted information regarding the functions, the system may use LLM to help parse the provided information and generate formatted record to enter the function database.

[0188] The system may select one or different embedding models to generate embedding information where embeddings are needed.

[0189] There is some information in the function database not provided by the owner, such as EQI, CQI, etc. The base station can collect this information and fill in the function database.

[0190] Please note the owner of a function may be a UE, a base station, or other network nodes in the network.

[0191] In the following, an example is provided on how the function database is used for a given function related to a radar sensor reporting its capabilities in autonomous driving systems.

[0192] In autonomous driving systems, a variety of sensors are used to perceive their environment and make driving decisions. Among them, there is a kind of sensor called a radar sensor. Radar sensors are used to detect objects around the vehicle and measure their speed and distance. They operate by emitting radio waves and analyzing the reflected signals to determine the position and velocity of objects. This capability is crucial for collision avoidance, adaptive cruise control, and other advanced driver-assistance systems (ADAS) . If a radar sensor wants to make its function available for users in the system to use, its information content in the function database is as follows:

[0193] - Function name: RadarSenor

[0194] - Function type: Single object detection in a specific direction

[0195] - Function description: ● Original text: Send a continuous stream of radio signals and measure their reflection. It can detect a single object in a specified  direction and measure its speed and distance from the vehicle. ● Embedding (vector of 512 dimension) : [8.02465063e-03, 2.87126563e-02, …, -2.86440011e-02, -1.38284545e-02]

[0196] -Function input parameter list (including parameter name and type) , where for each function input parameter: ● Parameter 1: Name: startDirection Type: ■ Original text: float ■ Embedding (vector of 512 dimension) : [-1.81017369e-02, 2.64154896e-02, …, 3.83439921e-02, 3.24662365e-02]  (corresponding to content “float type” ) Description: ■ Original text: Set the angle (in degrees) for the direction of single object detection. This parameter specifies the  orientation in which to focus the detection. ■ Embedding (vector of 512 dimension) : [5.71015850e-03, -2.58968733e-02, …, -7.79631063e-02, -6.37789667e-02]

[0197] - Function output parameter list (including parameter name and type) , where for each function output parameter: ● Parameter 1: Name: ObjectDistance Type: ■ Original text: float ■ Embedding (vector of 512 dimension) : [-1.81017369e-02, 2.64154896e-02, …, 3.83439921e-02, 3.24662365e-02]  (corresponding to content “float type” ) Description: ■ Original text: Numerical values in meters of the distance between the vehicle and detected objects. ■ Embedding (vector of 512 dimension) : [2.96692811e-02, 4.08295915e-02, …, -5.26319295e-02, -9.84123070e-03]  ● Parameter 2: Name: ObjectSpeed Type: ■ Original text: float ■ Embedding (vector of 512 dimension) : [-1.81017369e-02, 2.64154896e-02, …, 3.83439921e-02, 3.24662365e-02]  (corresponding to content “float type” ) Description: ■ Original text: Numerical values in meters per second (m / s) of the relative speed of detected objects with respect to the  vehicle. · Embedding (vector of 512 dimension) : [3.59790847e-02, 3.60235609e-02, …, 4.19601827e-04, -1.04040094e-02]

[0198] - Function usage example: ● Original text: Start to detect an object at 30.5 degrees around the vehicle and measure its speed and distance: RadarSenor (30.5) ● Embedding (vector of 512 dimension) : [1.01630371e-02, -1.82074849e-02, …, -3.86848510e-03, 4.06954922e-02]

[0199] FIG. 6 shows an example procedure 600 for function database management. The procedure 600 can be used for establishing, maintaining, or updating a function database. The procedure 600 can be performed by a UE 601 (e.g., the ED 110 of FIGS. 1-2) and a base station 602 (e.g., the network node 170 of FIGS. 1-2) . For example, as shown in FIG. 6, the UE is a function provider, and the base station is a central node who manages the function database. While the procedure in FIG. 6 is described with reference to a UE and a base station, this description is provided for illustrative purposes only and is not intended to be limiting. In practice, the procedure can be applied to other instances of network nodes and terminal devices or equivalents thereof. It is understood that steps or operations shown in the procedure are not exhaustive and that other operations can be performed as well before, after, or between any of the illustrated operations. Further, some of the steps or operations may be omitted, performed simultaneously, or performed in a different order than those shown in FIG. 6.

[0200] At 603, the base station (e.g., the base station 602) can transmit a function call service announcement (also referred to as function calls service announcement) to the UE (e.g., the UE 601) . Accordingly, the UE can receive the function call service announcement from the BS. In some implementations, the base station can tell the UEs (e.g., including the UE 601) in the cell that it provides a function call service (e.g., by using the function calls service announcement) .

[0201] The base station can periodically broadcast the function calls service announcement. This broadcast can be incorporated into existing system information or introduced as a dedicated function calls service announcement signaling.

[0202] Then the UEs inside the cell know that they could report to the base station the functions they can provide to others to use, and the UEs can request service from the base station or other UEs.

[0203] Operations related to function registration request and acknowledgement are described below.

[0204] In some implementations, if the function is provided by the base station, the base station can register the function directly into the function database.

[0205] The UE or other edge devices can act not only as function requesters but also as function providers. They can actively scan for nearby base station signals. Upon identifying the closest base station and receiving the function calls service announcement, they can initiate the function registration process. This function registration process is described below.

[0206] At 604, the UE can transmit a function registration request to the base station. Accordingly, the base station can receive the function registration request from the UE. The function registration request can indicate a to-be-registered function. In other words, the UE sends a function registration request to the selected base station to report functions to be registered. This request may include one or more pieces of the following information: function name, function type, function description, input / output parameter lists and their description, function requirements, function costs, etc.

[0207] The base station can add the to-be-registered function to a function database (e.g., by adding information of the to-be-registered function to the function database) . For example, the information of the to-be-registered function includes at least one of the following parameters of the to-be-registered function: a function name; an identifier of a function owner; embedding data of a function description; embedding data of a description of at least one input parameter; or embedding data of a description of at least one output parameter.

[0208] In some implementations, there are at least two possible cases in this application.

[0209] In one case, the base station or standard specification specifies the format for function reporting, such as requiring that all function reports include certain parameters. In this case, the UE needs to report the functions according to the specified format. When the base station receives the report, it only needs to extract the relevant parameters and write them into the database. For example, the information of the to-be-registered function is included in formatted data in the function registration request.

[0210] In another case, if there is no specification of a reporting format or the UE doesn’ t want to follow the specification, the UE can organize their function reports according to their own preferences. The UE can use data in JSON format or even use pure text to report the functions. When base station receives this kind of UE report, it can use AI (LLMs) to analyze the reports, format the information provided by the report, and then write the information into the function database. In other words, the information of the to-be-registered function can be generated by applying a machine learning model to raw data in the function registration request.

[0211] In some implementations, at 605, after the function is accepted by the base station and registered in the function database, the base station can send an acknowledgement of the function registration request (e.g., “function registration acknowledgement” as shown in FIG. 6) to the UE (e.g., the function provider UE. ) This step is optional.

[0212] Operations related to function deregistration request and acknowledgement are described below.

[0213] If a UE or other edge device wishes to stop providing functions for others to use (for example, user preferences, location mobility, power limitations, or no longer being idle) , it can request to remove its function from the function database.

[0214] At 606, the UE can send a function deregistration request to the base station. Accordingly, the base station can receive the function deregistration request from the UE. The function deregistration request can indicate a to-be-deregistered function. The function name, function unavailable time, or unavailable reason of the to-be-deregistered function can be included in this request. After receiving this request, the base station can remove the mentioned functions provided by that UE from the function database.

[0215] In some implementations, at 607, the base station then sends an acknowledgement of the function deregistration request (e.g., "function deregistration acknowledgement" as shown in FIG. 6) to the UE to confirm the deregistration action.

[0216] In some cases, when a UE goes offline or moves to another cell, its provided function information in the database can be deleted from current base station’s function database. In a handover case, the base station can help to transfer the UE related functions information to the target base station to help register this information in the target gNB’s function database.

[0217] After the function database is created, the UEs in the cell could request to use the functions in the function database. And accordingly, the base station could perform embedding based function selection.

[0218] The purpose of the embedding based function selection is to generate the function calls list (e.g., which function to call) and detailed function call methods including function name, input parameters, and other related parameters (e.g., how to call each function) .

[0219] In some implementations, when a UE wants to perform an operation that cannot be completed locally, and when the UE is unsure whether a nearby UE or the base station can accomplish such a task (i.e., the operation) , the UE can try to describe its request and send it to the base station for help. The request can indicate a task. The UE’s description of its request on an operation (i.e., task) can be a formatted request generated by its application or its own system, or it can be described in plain text human language. In some implementations, the request includes an embedding data of the task or a natural language description of the task. In some implementations, the request is associated with a machine learning model. For example, the request being associated with the machine learning model is equivalent to that the request needs to be processed by the machine learning model. In some implementations, the request is carried in a higher layer signaling or a physical layer signaling.

[0220] In some implementations, the base station can determine a function call based on the request. For example, the base station can determine the function call by determining one or more functions based on the request. The function call includes a list of the one or more functions for accomplishing the task. Each of the one or more functions is from a function database of a serving base station (e.g., the base station itself) or a function database of a neighboring base station.

[0221] In some cases, the base station receives the request and knows how to accomplish this request, such as which function (s) to call and the other information on how to call the function. For example, if the UE wants to use a certain LLM model to finish some task (s) , it is very easy for the base station to identify that LLM model and prepare the input parameters.

[0222] In some cases, the base station receives the request and doesn’ t know how to accomplish the request by simple analysis, the base station can perform the function call using the following procedure.

[0223] FIG. 7 shows an example procedure 700, which can be used to perform embedding based function selection. The procedure 700 can be performed by a base station (e.g., the base station 602 of FIG. 6) to determine a function call based on a request the base station received from a UE (e.g., the UE 601 of FIG. 6) .

[0224] At 702, the base station identifies one or more parts from the UE’s request, which can include a formatted request part and / or a textual request part from the UE request. In some implementations, the formatted request part may include one or more of embedding, another predefined request type, or formatted data recognized by the base station.

[0225] The base station can obtain embedding data of the task associated with the UE’s request. For example, the embedding data of the task is included in the request (e.g., embedding in the formatted request part) .

[0226] Alternatively, the embedding data of the task can be determined by embedding a natural language description of the task in the request. For example, at 704, the base station uses an embedding model (e.g., the same embedding model as used in function database) to embed the UE request, obtaining the UE’s request embedding.

[0227] At 706, the base station can determine a first list of functions based on similarity values between the embedding data of the task and embedding data of each function description in the function database of the base station. In other words, the base station can compare the similarity between the UE’s request embedding and the embeddings of all function descriptions stored in the function database to find the most related function (s) (e.g., the first list of functions) from the function database.

[0228] In some implementations, at 708, the base station can shorten the first list of functions by filtering it (e.g., filtering the selected most related functions) . This filtration can be done by using the following methods. For example, the base station can delete the functions that can’ t meet the UE’s requirement (for example, a function that cannot fulfill the latency, a function that is too expensive, etc. ) , and retain only a few functions of the same function type.

[0229] The base station can start a first function call match, for example, by applying a machine learning model (e.g., an LLM) to the request and the first list of functions. In some implementations, at 710, the base station organizes a prompt for calling the LLM to perform the first function call match. This prompt may include, but is not limited to, one or more of the following parts:

[0230] 1. Task description. The task description can in general refer to what LLM is expected to do and what kind of format LLM is expected to give output.

[0231] 2. Selected functions list. For example, the selected functions can be functions in the first list of functions. For each of the retaining functions after filtering, this part can include one or more of function name, function input parameters, function input parameter description, function output parameters, function output parameter description, and function description.

[0232] 3. Select functions examples. The selection functions examples can be examples of how to use these functions.

[0233] 4. Original UE request.

[0234] At 712, the base station can trigger the machine learning model and obtain a first output of the machine learning model. That is, the base station uses the prompt to trigger the LLM to give the first output.

[0235] Then the base station parses the first output, there are at least two possible outcomes.

[0236] When the first function call match succeeds, the LLM provides a detailed list of function calls to demonstrate how the task can be accomplished. The first output can include the list of function calls provided by the LLM. In this case, the procedure 700 can proceed to 716, where the base station can act as an LLM agent and coordinate a series of function calls (e.g., the list of function calls provided by the LLM) to realize action based on UE’s requirement.

[0237] When the first function call match fails, the LLM may inform that the currently available functions cannot accomplish the requested task. In this case, the base station may initiate a function request to neighboring base stations. In some implementations, at 714, the base station can forward the UE request to neighboring base station (s) and ask them to search in their function database. The neighboring base station can perform operations 718-722, which are similar to operations 704-708. The neighboring base station can return their selected function lists (also referred to as a second list of functions) . At 724, the base station can determine a third list of functions by combining the first list of functions and the second list of functions to organize a new prompt to trigger the LLM to give a second output. For example, at 724, the base station can trigger the LLM again (e.g., a second function call match) with an augmented function list and function examples. If the second function call match fails, and the LLM still informs that the currently available functions cannot accomplish the requested task, then the procedure 700 can proceed to 726, where base station can forward this conclusion back to the requesting UE, informing the UE that the task cannot be completed.

[0238] If the second function call match succeeds, the base station can obtain a second output of the machine learning model (e.g., from the LLM) . The second output includes a list of function calls provided by the LLM. In this case, the procedure 700 can proceed to 728, where the base station can act as an LLM agent and coordinate the list of function calls provided by the LLM.

[0239] Alternatively, the step of forwarding the UE request to neighboring base stations and the following steps are optional, and the base station may inform the UE that the task cannot be completed when the first function call match fails at 712.

[0240] Additionally, the base station could maintain a spatiotemporal Prompt background information database to store the information about the base station’s current location, background and other spatial or temporal related information. The base station could integrate this information into the prompt (e.g., at 710 or 724) to enhance the spatial and temporal correlation of output.

[0241] Each of the function calls list provided by the LLM may call a function of the base station (i.e., the serving base station) , call a function of a neighboring base station, or call a function provided by a UE within the coverage cell of the base station or a neighboring base station. Please note that if two or more UEs complete a function with cooperation, each function call may call a respective function from each of the two or more UEs. Similarly, if two or more base stations complete a function with cooperation, each function call may call a respective function from each of the two or more base stations. If at least one base station and at least one UE complete a function with cooperation, each function call may call a function from the at least one base station and another function from the at least one UE.

[0242] The base station can act as a coordinator to manage sequential function calls. When it’s the last function call in the function calls list, and the final result (e.g., the result of the last function call) is obtained, the base station can convert the result to the UE’s request result format and send it to the UE. When it’s not the last function call in the function calls list, the result may be used as input parameters to another function call. Alternatively, the result can be used to help build another function call as indicated by the function call list.

[0243] For illustration purpose and to simplify the description, in some implementations, different kinds of function calls can be categorized into three distinct types: bidirectional, coordinated, and cross-domain calls.

[0244] The bidirectional function call supports that the UE calls external functions and that the base station calls functions provided by UE.

[0245] For the coordinated function call, the base station can coordinate function calls between different UEs, enabling distributed collaborative computing. This can include the following scenarios.

[0246] 1. The base station acts as a coordinator, scheduling and managing Function Calls among different UEs.

[0247] 2. The base station can also assist UEs in establishing direct communication and Function Call relationships through a sidelink (SL) , facilitating direct collaboration between devices.

[0248] The cross-domain function Call supports function calls between neighboring base stations. This includes coordinating and managing function calls between local UEs and remote UEs through the base station acting as a scheduling center.

[0249] When the UE requires the base station to assist with a function call, either the UE initiates the function call, or the base station initiates the function call.

[0250] FIG. 8A illustrates an example procedure 800a for a UE initiated function call. The procedure 800a can be performed by a UE (or an edge device) 802 (e.g., the ED 110 of FIGS. 1-2) and a base station (or a gNB) 801 (e.g., the network node 170 of FIGS. 1-2) . At 806, the UE or the edge device 802 initiates a request (e.g., the request described with reference to 702 of FIG. 7) and sends the request to the base station 801. In some implementations, this request includes the task description, expected output and output format. Upon receiving the request from the UE 802, the base station 801 will go through the procedure of embedding based function selection introduced above (e.g., as described with reference to FIG. 7) and get the detailed function calls list from the LLM output. The base station 801 then analyzes this list and breaks down it into single function call one by one. For each function in the function call list, the base station 801 can forward a corresponding function call request along with the function requirements and input parameters to one or more corresponding function executors for function invocation.

[0251] When the base station 801 itself is the function executor of the function, at 808, the base station 801 performs the function based on the input parameters and requirements and returns a result of the function. If the function is the final function call of the function call list, at 810, the result will be forwarded to the request UE (e.g., the UE 802) . For example, the base station 801 can transmit a response to the UE 802, and the response can include the result of the final function call.

[0252] FIG. 8B illustrates an example procedure 800b for a UE initiated function call. In the procedure 800b, another UE or edge device 803 (also referred to as a target device) is the function executor.

[0253] If the target device 803 is within the base station 801’s service area, the requesting device (e.g., the UE 802) can choose to either have the base station 801 schedule the request or establish a direct connection with the target device 803 via a sidelink (e.g., as shown in FIG. 8C) , depending on latency and throughput requirements.

[0254] The procedure 800b shows a function execution process through base station coordination. At 814, the base station 801 uses device information (such as a UE ID) from its maintained function database to send a service request (also referred to as a function call request) to the target device 803. The function call request includes the function name and / or function ID, input parameters, and requirements. At 816, once the target device 803 receives this function call request, the target device 803 performs the function based on the input parameters and requirements. At 818, the target device 803 returns a result of the function to the base station 801. At 810 (which is similar to operation 810 of FIG. 8A) , the base station 801 can transmit the result to the UE 802 if the function is the final function call of the function call list.

[0255] FIG. 8C illustrates an example procedure 800c for a UE initiated function call. The procedure 800c shows a function execution process through sidelink communication. At 824, the base station 801 sends a request (e.g., a service request) to establish a sidelink connection to the target device 803, using information such as the target device ID from its maintained database. The service request can include the requesting device ID, function name / ID, input parameters, and requirements. After receiving the target device 803’s response to the service request (e.g., at 828) , the base station can provide the requesting device 802 with the target device ID and location information to establish an effective sidelink connection (e.g., at 830) . The base station 801 is responsible for configuring the wireless resources and parameters required for the sidelink communication, including frequency bands, time slot allocation, power control, and relevant information for function execution. At 832, the target device 803 can receive a request (which can include input parameters and requirements associated with the function) from the requesting device 802. At 826, the target device 803 performs the function based on the input parameters and requirements. At 834, the target device 803 returns a result of the function to the requesting device 802.

[0256] FIG. 8D illustrates an example procedure 800d for a UE initiated function call. The procedure 800d shows a function execution process through a cross-domain function call. If the target device 803 is within a service area of a neighboring base station 804, the base station 801 forwards a service request (e.g., including function name and / or ID, input parameters, provider ID, and requirements) to the neighboring base station 804 (e.g., at 838) and requests the neighboring base station 804 to forward the service request to the target device 803. The neighboring base station receives the request, forwards it to the target device 803 (e.g., at 840) , receives a result of the function call from the target device 803 (e.g., at 844) , and is responsible for returning the response to the original base station 801 (e.g., at 846) . At 810 (which is similar to operation 810 of FIG. 8A) , the base station 801 can transmit the result to the UE 802 if the function is the final function call of the function call list.

[0257] It is understood that the procedures in FIGS. 8A-8D are provided for illustrative purposes only and are not intended to be limiting. In practice, the procedure can be applied to other instances of network nodes and terminal devices or equivalents thereof. It is understood that steps or operations shown in the procedure are not exhaustive and that other operations can be performed as well before, after, or between any of the illustrated operations. Further, some of the steps or operations may be omitted, performed simultaneously, or performed in a different order than those shown in FIGS. 8A-8D.

[0258] In some implementations, when the UE 802 initiates a request, and a function call list for the request includes multiple functions, a combination of two or more of the procedures 800a-800d can be applied. For example, the function call list includes a first function whose owner is the base station 801 and a second function whose owner is the UE 803. In this case, a procedure for the function call can include operation 806, a function execution process, and operation 810. The function execution process can include operation 808 in the procedure 800a (e.g., for execution of the first function) and operations and operations 814, 816, and 818 in the procedure 800b (e.g., for execution of the second function) .

[0259] In some implementations, when a base station needs to initiate a function call, the base station sends a service request to a corresponding device (e.g., a target device) based on the maintained database. This request includes the function name / ID, input parameters, and other requirements. If the target device is within a service area of a neighboring base station, the base station will send the service request (including the function name / ID, input parameters, provider ID, and requirements) to the neighboring base station and request it to forward the request to the target device. The response result will also be relayed back to the base station via the neighboring base station.

[0260] Here is the summary of schemas of base station-assisted Function Calls.

[0261] In some implementations, modules in the base station-assisted Function Calls include: base station, UE and service provider. The base station serves as a coordinator or proxy, responsible for receiving and forwarding Function Call requests, caching Function Call results, and providing authentication and access control mechanisms. The base station can also run an LLM-Agent that actively initiates Function Call requests based on network conditions and task requirements. The UE can act as both a requester and a service provider for Function Calls. The service provider is a third-party service provider offering various functions, such as map services, navigation services, cloud computing services, etc. In some implementations, the service provider could be located in the base station for easy access.

[0262] In some implementations, the corresponding signaling in a system in the base station-assisted Function Calls may include signaling carried in the current channel. For example, PUCCH could be used by the UE to transmit control information (including Function Call requests) to the base station, PDCCH could be used by the base station to transmit control information (including Function Call requests and responses) to the UE, and PDSCH could be used by the base station to transmit data information (including Function Call results) to the UE.

[0263] In some implementations, new signaling may be introduced. The new signaling can include, for example, function call request (FCR) , and function call response (FCRsp) .

[0264] In some implementations, the UE or the base station uses FCR signaling to send a Function Call request to the other party, which could include the following information.

[0265] Requester Identifier: Identifies the user sending the request, such as a UE ID or a base station ID.

[0266] Target Identifier: Identifies the target user, such as a UE ID, a base station ID or a service provider ID.

[0267] Function Identifier: Identifies the function to be invoked, such as “navigation, ” “map query, ” “image recognition, ” etc., as well as the identifier for the wireless system function API.

[0268] Input Parameters: The input parameters required to invoke the function.

[0269] Spatiotemporal Semantic Tags: Used to identify the spatiotemporal semantic context of the function call, such as the location, time, and relevant prompts for the task. By marking specific locations and times, function calls can be tailored to regional characteristics and time sensitivity. For instance, tasks can be assigned to the UE closest to the target location or to the UE with the most recent information. Furthermore, historical call results form a background knowledge base, and relevant prompts can enhance the functionality and accuracy of executions while reducing latency. For example, multiple users in the same neighborhood may want to check the weather on a cloudy day. If weather changes are slow during nearby time periods, previously queried results can be quickly forwarded to the next user.

[0270] In some implementations, the recipient uses FCRsp signaling to return the execution result of the Function Call to the requester, which includes the following information.

[0271] Status Code: Indicates the execution status of the function call, such as success or failure.

[0272] Output Result: The result returned by the invoked function.

[0273] EQI (Effectiveness Quality Indicator) : Reflects the quality of the Function Call execution result.

[0274] The procedure in the base station-assisted Function Calls can include a UE Invoking external function call, a gNB invoking UE function call, a gNB coordinated function call and a gNB cross-domain function call.

[0275] In the following descriptions, a gNB is used as an example of a base station.

[0276] FIG. 9 shows an example procedure 900 for a UE invoking external function call. The procedure 900 can be performed by a UE 901 (e.g., the ED 110 of FIGS. 1-2) , a gNB 902 (e.g., the network node 170 of FIGS. 1-2) , and a UE 903 (also referred to as a service provider) . It is understood that this description of the procedure 900 is provided for illustrative purposes only and is not intended to be limiting. In practice, the procedure can be applied to other instances of network nodes and terminal devices or equivalents thereof. It is understood that steps or operations shown in the procedure are not exhaustive and that other operations can be performed as well before, after, or between any of the illustrated operations. Further, some of the steps or operations may be omitted, performed simultaneously, or performed in a different order than those shown in FIG. 9.

[0277] As shown in FIG. 9, the procedure 900 can include at least one of the following steps.

[0278] At 904, the UE 901 sends an FCR signaling to the gNB 902. This FCR signaling could be carried via PUCCH or other dedicated channels to request the invocation of a function from an external service provider (e.g., the UE 903) . The FCR signaling includes spatiotemporal semantic tags to identify the spatiotemporal context of the function call.

[0279] Accordingly, the gNB 902 receives the FCR signaling sent by the UE 901.

[0280] At 905, the gNB 902 performs authentication and access control. For example, the gNB 902 authenticates the UE 901 and checks whether the gNB 902 or the UE 901 has permission to invoke the requested function.

[0281] At 906, the gNB 902 queries its cache. If a function call result that meets the spatiotemporal semantic tag requirements is found in the cache, the function call result is returned directly to the UE 901.

[0282] Otherwise, the gNB 902 forwards the request based on the FCR signaling. If no suitable result is found in the cache, the gNB 902 goes through procedures of embedding based function selection described above (e.g., as shown in FIG. 7) and gets the detailed function calls list from the LLM output. The gNB 902 then analyzes this list and breaks it down into single function calls one by one. At 907, the gNB 902 forwards the FCR request to the appropriate service provider or UE 903.

[0283] The service provider or UE 903 executes the function call. For example, at 908, the service provider or UE 903 executes the function call and returns the result to the gNB 902.

[0284] At 909, the gNB 902 caches the result. For example, the gNB 902 caches the result of the function call and adds the corresponding spatiotemporal semantic tags so that it can be used directly in future calls.

[0285] At 910, the gNB 902 sends an FCRsp signaling. For example, the gNB 902 sends the FCRsp signaling to the UE 901. This FCRsp signaling could be carried via PDCCH or other dedicated / broadcast channel, returning the result of the function call along with EQI information, which reflects the quality of the result.

[0286] At 911, the UE 901 receives the FCRsp signaling. For example, the UE receives the FCRsp signaling from the gNB 902 and obtains the result of the function call along with the EQI information.

[0287] FIG. 10 shows an example procedure 1000 for a gNB invoking UE function call. The procedure 1000 can be performed by a gNB 1001 (e.g., the network node 170 of FIGS. 1-2) and a UE 1002 (e.g., the ED 110 of FIGS. 1-2) . It is understood that this description of the procedure 1000 is provided for illustrative purposes only and is not intended to be limiting. In practice, the procedure can be applied to other instances of network nodes and terminal devices or equivalents thereof. It is understood that steps or operations shown in the procedure are not exhaustive and that other operations can be performed as well before, after, or between any of the illustrated operations. Further, some of the steps or operations may be omitted, performed simultaneously, or performed in a different order than those shown in FIG. 10.

[0288] As shown in FIG. 10, the procedure 1000 includes at least one of the following steps.

[0289] At 1003, the gNB 1001 sends an FCR signaling to the UE 1002. This FCR signaling could be carried via PDCCH or another dedicated channel, requesting the invocation of a function on the UE 1002. In some implementations, the FCR signaling can include spatiotemporal semantic tags to identify the spatiotemporal context of the function call.

[0290] At 1004, the UE 1002 receives the FCR signaling sent by the gNB 1001.

[0291] At 1005, the UE 1002 executes the function call requested by the gNB 1001.

[0292] At 1006, the UE 1002 returns a result of the function call to the gNB 1001. In some implementations, the UE 1002 can return the result of the function call along with EQI information to the gNB 1001. The result of the functional call and the EQI information can be included in an FCRsp signaling.

[0293] At 1007, the gNB 1001 receives the FCRsp signaling sent by the UE 1002. The gNB 1001 can obtain the result of the function call along with the EQI information.

[0294] FIG. 11 shows an example procedure 1100 for a gNB coordinated function call. The procedure 1100 can be performed by a gNB (e.g., the network node 170 of FIGS. 1-2) , a UE-A, and a UE-B (each UE can be an example of the ED 110 of FIGS. 1-2) . It is understood that this description of the procedure 1100 is provided for illustrative purposes only and is not intended to be limiting. In practice, the procedure can be applied to other instances of network nodes and terminal devices or equivalents thereof. It is understood that steps or operations shown in the procedure are not exhaustive and that other operations can be performed as well before, after, or between any of the illustrated operations. Further, some of the steps or operations may be omitted, performed simultaneously, or performed in a different order than those shown in FIG. 11.

[0295] As shown in FIG. 11, the procedure 1100 can include at least one of the following steps.

[0296] At 1104, the UE-Asends an FCR signaling to the gNB. This FCR signaling could be carried via PUCCH and / or PUSCH or another dedicated channel, requesting a specific function call. In some implementations, the FCR signaling includes spatiotemporal semantic tags to identify the spatiotemporal context of the function call.

[0297] At 1105, the gNB receives the FCR signaling sent by the UE-A.

[0298] At 1106, the gNB matches a service provider. For example, the gNB can identify some UEs that can provide the requested function based on the function identifier and spatiotemporal semantic tags in the FCR signaling. In some implementations, the gNB selects the UE-B from the identified UEs based on EQI information. For example, the gNB can determine based on the EQI information that the UE-B can provide a higher quality result and thus can select the UE-B.

[0299] At 1107, the gNB sends an FCR signaling to the UE-B. This message (e.g., the FCR signaling) could be carried via PDCCH / PDSCH, another dedicated channel, or a broadcast channel, requesting the UE-B to execute the function call.

[0300] At 1108, the UE-B receives the FCR signaling sent by the gNB.

[0301] At 1109, the UE-B executes the function call requested by the gNB.

[0302] At 1110, the UE-B returns a result of the function call along with EQI information to the gNB. The UE-B can transmit an FCRsp signaling including the result and the EQI information to the gNB.

[0303] At 1111, the gNB receives the FCRsp signaling sent by the UE-B (for example, via PUCCH or PUSCH) and obtains the result of the function call along with the EQI information.

[0304] At 1112, the gNB sends an FCRsp signaling to the UE-AThis signaling could be carried via PDCCH / PDSCH, another dedicated, or a broadcast channel, returning the result of the function call along with the EQI information.

[0305] At 1113, the UE-Areceives the FCRsp signaling from the gNB and obtains the result of the function call along with the EQI information.

[0306] In some implementations (not shown in FIG. 11) , the UE-B can directly communicate with the UE-Athrough a sidelink coordinated by the gNB (e.g., as described with reference to FIG. 8C) . For example, instead of transmitting (e.g., at 1107) the FCR signaling to the UE-B, the gNB can transmit a service request to the UE-B for establishing a sidelink connection. After receiving a response to the service request from the UE-B, the gNB can transmit an ID and location information of the UE-B to the UE-A. In addition, the gNB can configure wireless resources and parameters required for the sidelink communication (e.g., frequency bands, time slot allocation, power control, and relevant information for function execution) . Then, the UE-Acan transmit a request (which can include input parameters and requirements associated with the function) to the UE-B through the sidelink. The UE-B can perform the function based on the input parameters and requirements and return a result of the function to the UE-B through the sidelink.

[0307] FIG. 12 shows an example procedure 1200 for a gNB cross-domain function call. The procedure 1200 can be performed by a gNB, a neighboring gNB, a UE-A, and a UE-B. Each of the gNB and the neighboring gNB can be an example of the network node 170 of FIGS. 1-2. Each UE can be an example of the ED 110 of FIGS. 1-2. It is understood that this description of the procedure 1200 is provided for illustrative purposes only and is not intended to be limiting. In practice, the procedure can be applied to other instances of network nodes and terminal devices or equivalents thereof. It is understood that steps or operations shown in the procedure are not exhaustive and that other operations can be performed as well before, after, or between any of the illustrated operations. Further, some of the steps or operations may be omitted, performed simultaneously, or performed in a different order than those shown in FIG. 12.

[0308] As shown in FIG. 12, the procedure 1200 includes at least one of the following steps.

[0309] At 1205, the UE-Asends an FCR signaling to the gNB. This signaling could be carried via PUCCH / PUSCH, or another dedicated channel, requesting a specific function. The FCR signaling can include spatiotemporal semantic tags to identify the spatiotemporal context of the function call.

[0310] At 1206, the gNB receives the FCR signaling sent by the UE-A.

[0311] At 1207, the gNB matches a service provider. For example, the gNB can identify some UEs that can provide the requested function based on the function identifier and spatiotemporal semantic tags in the FCR signaling. The gNB selects the UE-B that can provide the higher quality result based on EQI information.

[0312] At 1208, the gNB sends the FCR signaling to the neighboring gNB (e.g., via the Xn interface) .

[0313] At 1209, the neighboring gNB forwards the FCR signaling to the UE-B. This message (e.g., the FCR signaling) could be carried by a PDCCH, another dedicated channel, or a broadcast channel, requesting the UE-B to execute the function call.

[0314] At 1210, the UE-B receives the FCR signaling sent by the neighboring gNB.

[0315] At 1211, the UE-B executes the function call requested by the neighboring gNB.

[0316] At 1212, the UE-B returns the result along with EQI information to the neighboring gNB (e.g., by transmitting an FCRsp signaling) .

[0317] At 1213, the neighboring gNB receives the FCRsp signaling sent by the UE-B and obtains the result of the function call along with the EQI information.

[0318] At 1214, the neighboring gNB forwards the FCRsp signaling and the function call result to the gNB (e.g., via the Xn interface) .

[0319] At 1215, the gNB sends the FCRsp signaling to the UE-A. This signaling could be carried via PDCCH / PDSCH, another dedicated channel or a broadcast channel, returning the result of the function call.

[0320] At 1216, the UE-Areceives the FCRsp signaling from the gNB and obtains the result of the function call.

[0321] In the present disclosure, the terms “a” or “an” 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 example embodiment, should be understood to mean that the value, condition or characteristic is defined within tolerances that are acceptable for the proper operation of the example 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 different embodiments of this application. "At least one" means one or more, and "a plurality 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 " / " 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: only A; only B; only 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: only A; only B; only 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 and enable a machine to execute the instructions. When executed by any computer or the processor of a programmable data processing device, the instructions cause the apparatus to implement specific functions as described in one or more procedures in the flowcharts and / or one or more blocks in the block diagrams. 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 one or more blocks in the block diagrams.

[0329] 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 other programmable data processing device, so that computer-implemented processing is generated. Therefore, the instructions executed on the computer or on another programmable device provide steps for implementing specific functions as described in one or more procedures in the flowcharts and / or one or more blocks in the block diagrams.

[0330] It is clear that a person skilled in the art can make various modifications and variations to this application without departing from the scope of this disclosure. This disclosure 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

A method comprising:receiving a request, wherein the request indicates a task; anddetermining a function call based on the request.The method of claim 1, wherein the request is associated with a machine learning model.The method of claim 1 or claim 2, wherein the request comprises an embedding data of the task or a natural language description of the task.The method of any one of claims 1-3, wherein the request is carried in a higher layer signaling or a physical layer signaling.The method of any one of claims 1-4, wherein determining the function call comprises:determining one or more functions based on the request, wherein the function call comprises a list of the one or more functions for accomplishing the task, and each of the one or more functions is from a function database of a serving base station or a function database of a neighboring base station.The method of any one of claims 1-5, further comprising:transmitting a function call service announcement;receiving a function registration request indicating a to-be-registered function; andadding the to-be-registered function to a function database.The method of claim 6, wherein adding the to-be-registered function to the function database comprises adding information of the to-be-registered function to the function database, and the information of the to-be-registered function comprises at least one of the following parameters of the to-be-registered function:a function name;an identifier of a function owner;embedding data of a function description;embedding data of a description of at least one input parameter; orembedding data of a description of at least one output parameter.The method of claim 7, wherein the information of the to-be-registered function is comprised in formatted data in the function registration request or is generated by applying a machine learning model to raw data in the function registration request.The method of claim 6, further comprising:receiving a function deregistration request indicating a to-be-deregistered function; andremoving the to-be-deregistered function from the function database.The method of claim 5, wherein determining the one or more functions comprises:starting a first function call match by applying a machine learning model to the request and a first list of functions; andobtaining a first output of the machine learning model when the first function call match succeeds, wherein the first output comprises the one or more functions.The method of claim 10, wherein determining the one or more functions further comprises:obtaining embedding data of the task, wherein the embedding data of the task is comprised in the request or is determined by embedding a natural language description of the task in the request; anddetermining the first list of functions based on similarity values between the embedding data of the task and embedding data of each function description in the function database of the serving base station.The method of claim 10, further comprising when the first function call match fails:transmitting the request to at least one neighboring base station;receiving a second list of functions from the at least one neighboring base station, wherein each function in the second list of functions is from a function database of one of the at least one neighboring base station;determining a third list of functions by combining the first list of functions and the second list of functions;starting a second function call match by applying the machine learning model to the request and the third list of functions; andobtaining a second output of the machine learning model when the second function call match succeeds, wherein the second output comprises the one or more functions.The method of claim 5, further comprising:calling each function of the one or more functions based on the list,wherein calling each function comprises:determining a function call request based on the function, wherein when the function has a preceding function in the list, the function call request comprises a result of the preceding function as an input parameter;processing the function call request to generate a result of the function; andtransmitting a response when the function is the last in the list, wherein the response comprises the result of the function.The method of claim 13, wherein processing the function call request comprises:transmitting the function call request to a second device associated with an owner of the function; andreceiving the result of the function from the second device.The method of claim 13 or claim 14, wherein processing the function call request comprises:executing the function to generate the result of the function.The method of any one of claims 13-15, wherein processing the function call request comprises:determining whether a function call cache comprises the result of the function; andobtaining the result of the function from the function call cache when the function call cache comprises the result of the function and the result of the function satisfies a spatiotemporal semantic requirement in the function call request.A method comprising:transmitting a request, wherein the request indicates a task; andreceiving a response.The method of claim 17, wherein the task is associated with a machine learning model.The method of claim 17 or claim 18, wherein the request is carried in a higher layer signaling or a physical layer signaling.The method of any one of claims 17-19, wherein the request comprises a natural language description of the task.The method of claim 20, wherein the request further comprises embedded data of the natural language description of the task.The method of any one of claims 17-21, further comprising:receiving a function call service announcement;transmitting a function registration request indicating a to-be-registered function; andreceiving an acknowledgement of the function registration request.The method of claim 22, wherein the function registration request comprises at least one of the following parameters of the to-be-registered function:a function name;an identifier of a function owner;embedding data of a function description;embedding data of a description of at least one input parameter; orembedding data of a description of at least one output parameter.The method of claim 22, further comprising:transmitting a function deregistration request indicating a to-be-deregistered function; andreceiving an acknowledgement of the function deregistration request.The method of any one of claims 17-24, wherein the response comprises a result of the task.The method of any one of claims 17-25, wherein the response comprises a sidelink configuration, and wherein the method further comprises:establishing a sidelink between a first terminal device and a second terminal device based on the sidelink configuration;transmitting the request to the second terminal device through the sidelink; andreceiving a result of the task from the second terminal device through the sidelink.An apparatus, configured to perform the method of any one of claims 1-16 or any one of claims 17-26.An apparatus comprising:a receiving unit configured to receive a request, wherein the request indicates a task; anda processing unit configured to determine a function call based on the request.An apparatus comprising:a transmitting unit configured to transmit a request, wherein the request indicates a task; anda receiving unit configured to receive a response.An apparatus comprising:an interface circuit configured to receive a request, wherein the request indicates a task; andone or more processors configured to determine a function call based on the request.An apparatus comprising:one or more processors; andan interface circuit configured to:transmit a request, wherein the request indicates a task; andreceive a response.The apparatus of claim 30 or claim 31, wherein the interface circuit comprises one or more transceivers.An apparatus comprising:one or more processors coupled with one or more memories storing instructions which, when the instructions executed by the one or more processors, cause the apparatus to perform the method of any one of claims 1-16 or any one of claims 17-26.A communication system, wherein the communication system comprises a first apparatus configured to perform the method of any one of claims 1-16 and a second apparatus configured to perform the method of any one of claims 17-26.A non-transitory computer-readable storage medium having instructions stored thereon which, when executed by an apparatus, cause the apparatus to perform the method of any one of claims 1-16 or any one of claims 17-26.A computer program product having instructions which, when executed, cause an apparatus to perform the method of any one of claims 1-16 or any one of claims 17-26.

Citation Information

Patent Citations

  • Information processing method, information processing device, computer equipment and storage medium

    CN117273017A

  • Travel information generation method and system, intelligent wearable device and storage medium

    CN117892017A

  • Method and device for providing artificial intelligence service

    CN117938941A

  • Methods and apparatus for augmenting training data using large language models

    US20230315856A1

  • Enhanced on-the-go artificial intelligence for wireless devices

    US20240298194A1