Storage and retrieval method, and related product
By setting up a standardized functional module structure in the storage module, the compatibility problem between storage modules with different structures and large model network element devices is solved, the efficiency of retrieval enhancement generation and the accuracy of vector retrieval are improved, and efficient interconnection between the storage module and the large model is realized.
Patent Information
- Application Number
- PCT/CN2025/107099
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- Priority Date
- 2024-07-26
- Filing Date
- 2025-07-04
- Publication Date
- 2026-01-29
AI Technical Summary
The incompatibility between storage modules with different structures and network element devices, including large models, affects the interconnection between storage modules and large models, resulting in low efficiency in retrieval enhancement generation.
A storage retrieval method is provided, which realizes a standardized interoperability interface by setting a first functional module, a second functional module and a third functional module in the storage module. The functional modules include providing communication interfaces to the outside and providing external data to the inside for vector retrieval and raw data provision, ensuring that storage modules with different structures are compatible with network element devices including large models.
It improves the efficiency of retrieval enhancement generation between the storage module and large models, ensures the accuracy and communication efficiency of vectors, reduces the amount of data transmission, and improves the management flexibility of the storage module and the efficiency of vector retrieval.
Smart Images

Figure CN2025107099_29012026_PF_FP_ABST
Abstract
Description
Storage retrieval method and related products
[0001] The present application claims priority to the Chinese patent application No. 202411018720.0, filed on July 26, 2024, and entitled "Storage retrieval method and related products", the whole content of which is incorporated herein by reference. TECHNICAL FIELD
[0002] The present application relates to the field of communication technology, in particular to a storage retrieval method and related products. BACKGROUND
[0003] With the rapid development of large model technology, it will further promote the realization of network intelligence for all, and let more people enjoy the convenience brought by intelligent services. The future fusion of communication and artificial intelligence (AI) is more likely to be the fusion of communication and large models. However, the application of large models in the network is not a simple deployment and execution, but a complex system engineering that requires a series of supporting functions to truly realize its potential. One of the key peripheral function components is the storage module. The storage module provides retrieval-augmented generation (RAG) function for the large model. Specifically, the professional knowledge in the required field can be stored in a vector database. When the agent generates prompt information for the large model, it searches for the most relevant professional knowledge from the vector database according to the similarity, and submits these professional knowledge and the original question to the large model to obtain the reasoning result, which can effectively improve the accuracy of the large model reasoning.
[0004] For the newly added storage module in the future communication network, it needs to consider the interaction with large models from different manufacturers and other network element devices in the network. Therefore, it is necessary to standardize the storage module and provide a standardized interconnection interface. SUMMARY
[0005] The embodiments of the present application provide a storage retrieval method and related products, which standardize the storage module, provide an interface for the storage module to interwork and interconnect with other network element devices, avoid the problem that the connection interfaces of storage modules with different structures and network element devices including large models are not compatible, and further improve the efficiency of providing retrieval-augmented generation for large models.
[0006] In a first aspect, the present application provides a storage retrieval method applied to a storage module, the storage module comprising a first function module, at least one second function module and a third function module, the method comprising: the first function module receiving a first request from a first network element, and sending a second request to a target second function module according to the first request; the first request being used to request to perform a target task, and the second request being used to request to obtain a vector corresponding to the first request; different second function modules in the at least one second function module correspond to different retrieval manners, and the target second function module is one of the at least one second function module; the target second function module receiving the second request from the first function module, retrieving at least one first vector according to the second request, and sending an identifier of the at least one first vector to the first function module; the at least one first vector being a vector corresponding to the first request in at least one second vector stored in the target second function module; the first function module receiving the identifier of the at least one first vector from the target second function module, and sending a third request to the third function module, the third request being used to request to obtain original data corresponding to the at least one first vector; the third function module receiving the third request from the first function module, and providing at least one first original data to the first network element according to the third request, the at least one first original data being original data corresponding to the at least one first vector; wherein the at least one first original data is used to assist in performing the target task, and the first request and the at least one first original data are used to obtain at least one subtask corresponding to the target task in combination with a network model.
[0007] In the scheme of the first aspect, any scheme performed by the first function module, the second function module or the third function module can be performed by a terminal device or a module (such as a chip system, etc.) in the terminal device, a network device or a module (such as a chip system, etc.) in the network device, a core network element or a module (such as a chip system, etc.) in the core network element, and can also be performed by a logical node, a logical module or software capable of realizing all or part of the functions of the terminal device, the network device or the core network element, and is not limited in this regard.
[0008] In the embodiments of the present application, the first function module, the second function module and the third function module are arranged in the storage module, among the three function modules, there are function modules for providing communication interfaces outward and providing external communication data inward, function modules for vector retrieval, and function modules for providing original data according to vectors. The process standardizes the function modules of the storage model, provides interfaces for interworking and interconnecting the storage module and other network element devices, avoids the problem that the connection interfaces of storage modules of different structures and network element devices including large models cannot be compatible, and further improves the efficiency of providing retrieval enhancement generation for large models.
[0009] In an implementation, the method further comprises: the third function module receiving at least one second original data from the data source; calling the vectorization model to generate at least one second vector corresponding to the at least one second original data, wherein the vectorization model is stored locally by the first function module or is called by the third function module from a network model; or the third function module receiving at least one second vector from the data source, wherein the at least one second vector is generated by the data source calling the vectorization model in the first function module or is generated by the data source calling the vectorization model in the network model; the third function module storing the at least one second vector and an identifier of the at least one second vector, and sending the at least one second vector and the identifier of the at least one second vector to the at least one second function module; and the at least one second function module receiving and storing the at least one second vector and the identifier of the at least one second vector; wherein the at least one first original data is a subset or a whole set of the at least one second original data, and the at least one first vector is a subset or a whole set of the at least one second vector.
[0010] In the embodiments of the present application, the third function module obtains the original data from the data source and calls the vectorization model to convert the original data into a vector, which can ensure the accuracy of the obtained vector. Alternatively, the data source converts the original data into a vector and then sends the vector to the third function module, which can reduce the data transmission amount and improve the communication efficiency.
[0011] In an implementation, the method further comprises: the third function module storing at least one second original data corresponding to the at least one second vector.
[0012] In an implementation, the method further comprises: the third function module storing a correspondence between the at least one second vector and / or the identifier of the at least one second vector and the data source, and sending first indication information to the data source, wherein the first indication information indicates that the data source stores a correspondence between the at least one second vector and / or the identifier of the at least one second vector and the at least one second original data.
[0013] In an implementation, the at least one second function module is a plurality of second function modules, and the first request comprises information of a target second function module.
[0014] In a possible implementation, before the first function module sends the second request to the target second function module, the method further includes: the storage module receives a query request from the first network element, sends a first response to the first network element according to the query request, the query request is used to query whether the storage module includes the target second function module, and the first response indicates that the storage module does not include the target second function module; and the storage module receives a building request from the first network element, and builds the target second function module according to the building request, the building request is used to request to build the target second function module.
[0015] In the embodiment, the first network element instructs the storage module to build the target second function module, and the storage module builds the second function module according to the instruction of the first network element, so that the first network element can successfully use the target second function module to perform vector retrieval. The process reflects the flexibility of the storage module management, and improves the vector retrieval efficiency and success rate.
[0016] In a possible implementation, the third request includes an identifier of the at least one first vector and first condition information, and the first condition information is used to indicate a constraint condition of obtaining the at least one original data corresponding to the at least one first vector; the other condition information includes at least one of the following: an identifier of the first network element; and a pickup time corresponding to a related time of the at least one first original data.
[0017] In a possible implementation, the at least one first original data is provided to the first network element according to the third request, including: obtaining the at least one first original data corresponding to the at least one first vector stored in the third function module according to the third request; and sending a second response to the first network element, the second response including the at least one first original data corresponding to the at least one first vector.
[0018] In a possible implementation, the at least one first original data is provided to the first network element according to the third request, including: sending a fourth request to a target data source according to the third request, the target data source being a data source in the at least one data source that has a corresponding relationship with the at least one first vector and / or the identifier of the at least one first vector, and the fourth request being used to instruct the target data source to send the at least one first original data corresponding to the at least one first vector to the first network element.
[0019] In the embodiment, after the third function module receives the third request, the at least one first original data corresponding to the first vector is provided to the first network element, including: the third function module obtains the original data from the locally stored data; or the third function module instructs the target data source storing the original data to provide the original data corresponding to the first vector. The former can improve the efficiency of feeding back the original data, and the latter can reduce the storage pressure of the third storage function module.
[0020] In a second aspect, a storage retrieval method is provided, which is applied to a first function module in a storage module. The method comprises:
[0021] receiving a first request from a first network element, sending a second request to a target second function module according to the first request, the first request being used to request to perform a target task, and the second request being used to request to obtain a vector corresponding to the first request, different second function modules in the at least one second function module corresponding to different retrieval manners, the target second function module being one of the at least one second function module, and receiving an identifier of at least one first vector, sending a third request to a third function module, the third request being used to request to obtain at least one original data corresponding to the at least one first vector.
[0022] In a third aspect, a storage retrieval method is provided, which is applied to a target second function module in a storage module. The method comprises:
[0023] receiving a second request from a first function module, retrieving at least one first vector according to the second request, the first vector being a vector corresponding to the first request in at least one second vector stored in the target second function module, and sending an identifier of the at least one first vector to the first function module.
[0024] In a feasible implementation, the method further comprises: the target second function module receiving and storing the at least one second vector and the identifier of the at least one second vector.
[0025] In a fourth aspect, a storage retrieval method is provided, which is applied to a third function module in a storage module. The method comprises:
[0026] providing at least one first original data corresponding to the at least one first vector to the first network element according to the third request, wherein the at least one first original data is used to assist in performing the target task, and the first request and the at least one first original data are used to obtain at least one sub-task corresponding to the target task of the first request in combination with a network model.
[0027] In a feasible implementation, the method further comprises: receiving at least one second original data from a data source; calling a vectorization model to generate at least one second vector corresponding to the at least one second original data, wherein the vectorization model is stored locally in the first function module or is called from the network model; or receiving at least one second vector from the data source, wherein the at least one second vector is generated by the data source calling the vectorization model in the first function module, or the at least one second vector is generated by the data source calling the vectorization model in the network model; storing the at least one second vector and the identifier of the at least one second vector, and sending the at least one second vector and the identifier of the at least one second vector to the at least one second function module in combination with the transceiver module 1602.
[0028] In a possible implementation, the method further comprises: storing the at least one second original data corresponding to the at least one second vector.
[0029] In a possible implementation, the method further comprises: storing a correspondence between the at least one second vector and / or the identifier of the at least one second vector and the data source, and sending first indication information to the data source, the first indication information indicating that the data source stores a correspondence between the at least one second vector and / or the identifier of the at least one second vector and the second original data.
[0030] In a possible implementation, the at least one first original data corresponding to the at least one first vector stored in the third function module is acquired according to the third request; and a second response is sent to the first network element, the second response comprising the at least one first original data corresponding to the at least one first vector.
[0031] In a possible implementation, the at least one first original data corresponding to the at least one first vector is provided to the first network element according to the third request, comprising: sending a fourth request to a target data source according to the third request, wherein the target data source is a data source in the at least one data source that has a correspondence with the identifier of the first vector, and the fourth request is used to instruct the target data source to send the at least one first original data corresponding to the at least one first vector to the first network element.
[0032] In a fifth aspect, a communication apparatus is provided, which comprises units or modules for performing the method in the first aspect or any implementation of the first aspect.
[0033] In a sixth aspect, a communication apparatus is provided, which comprises units or modules for performing the method in the second aspect to the fourth aspect, or any implementation of the second aspect to the fourth aspect.
[0034] In a seventh aspect, an embodiment of the present application provides a communication apparatus, which comprises at least one processor and a memory coupled to the processor; wherein the at least one processor is configured to execute computer programs or instructions stored in the memory, so that any method implemented by any functional unit in the first aspect is executed.
[0035] In an eighth aspect, an embodiment of the present application further provides a communication system, which comprises a core network element, a network device and / or a terminal device performing the method in the first aspect or any implementation of the first aspect.
[0036] In a ninth aspect, an embodiment of the present application provides a computer readable storage medium, which stores computer instructions, when the computer instructions are executed, causing a computer to perform any one of the methods possibly implemented by the storage module in any one of the first aspect above. Or, causing the computer to perform any one of the methods possibly implemented by the first function module, the second function module or the third function module in any one of the second aspect to the fourth aspect above.
[0037] In a tenth aspect, an embodiment of the present application provides a computer program product, which includes: computer program code, when the computer program code is run by a computer, causing the computer to perform any one of the methods possibly implemented by the storage module in any one of the first aspect above. Or, causing the computer to perform any one of the methods possibly implemented by the first function module, the second function module or the third function module in any one of the second aspect to the fourth aspect above.
[0038] In an eleventh aspect, an embodiment of the present application provides a chip, which is coupled with a memory, for reading and executing program instructions in the memory, so that a device where the chip is located implements any one of the methods possibly implemented by the storage module in any one of the first aspect above. Or, so that the device where the chip is located implements any one of the methods possibly implemented by the first function module, the second function module or the third function module in any one of the second aspect to the fourth aspect above. BRIEF DESCRIPTION OF DRAWINGS
[0039] FIG. 1 is a schematic diagram of a communication scenario provided by an embodiment of the present application.
[0040] FIG. 2A is a schematic diagram of a structure of a storage module provided by an embodiment of the present application.
[0041] FIG. 2B is a flowchart of a storage retrieval method provided by an embodiment of the present application.
[0042] FIG. 2C is a flowchart of a method of constructing a target second function module provided by an embodiment of the present application.
[0043] FIG. 2D is a schematic diagram of a process in which a data collector acquires a second vector provided by an embodiment of the present application.
[0044] FIG. 2E is a flowchart of another storage retrieval method provided by an embodiment of the present application.
[0045] FIG. 3 and FIG. 4 are schematic diagrams of structures of a communication device provided by an embodiment of the present application.
[0046] FIG. 5 is a hardware structure block diagram of a communication device provided by an embodiment of the present application. DETAILED DESCRIPTION
[0047] The technical solutions in the embodiments of the present application will be described below with reference to the drawings in the embodiments of the present application. In the embodiments of the present application, the terms "system" and "network" can be used interchangeably. Unless otherwise specified, " / " represents an "or" relationship between the objects before and after the " / " symbol, for example, A / B can represent A or B; in the present application, "and / or" is only a description of the relationship between the associated objects, which means that there can be three relationships, for example, A and / or B, which means that there are three cases of A alone, A and B together, and B alone, where A and B can be singular or plural. In addition, in the description of the present application, "multiple" means two or more than two. "At least one of the following" or similar expressions means any combination of the items, including any combination of single or multiple items. For example, at least one of a, b, or c can mean a, b, c, a-b, a-c, b-c, or a-b-c, where a, b, and c can be one or more. In addition, in order to clearly describe the technical solutions of the embodiments of the present application, in the embodiments of the present application, the same items or similar items with basically the same function are distinguished by "first", "second", etc. The skilled in the art can understand that "first", "second", etc. do not limit the quantity and execution order, and "first", "second", etc. do not necessarily mean different.
[0048] In the embodiments of the present application, the reference to "one embodiment" or "some embodiments" means that the specific features, structures or characteristics described in connection with the embodiment are included in one or more embodiments of the present application. Therefore, the statements "in one embodiment", "in some embodiments", "in other some embodiments", "in further some embodiments" and the like appearing in different places in the specification are not necessarily all referring to the same embodiment, but mean "one or more but not all embodiments", unless otherwise specifically emphasized. The terms "include", "contain", "have" and their variants mean "include but not limited to", unless otherwise specifically emphasized.
[0049] The specific embodiments below further illustrate the objectives, technical solutions and advantages of the present application. It should be understood that the following is only a specific embodiment of the present application and does not limit the protection scope of the present application. Any modification, equivalent replacement, improvement, etc. made on the basis of the technical solutions of the present application shall be included in the protection scope of the present application.
[0050] In various embodiments of the present application, the terms and / or descriptions between different embodiments are consistent and can be referred to each other if there is no special description and logical conflict. The technical features in different embodiments can be combined to form new embodiments according to their inherent logical relationship.
[0051] The system architecture related to the embodiments of the present application is introduced as follows.
[0052] The embodiments of the present application can be applied to a fifth generation (5th generation, 5G) communication system or a future mobile communication system, or other communication systems, etc., and the present application is not limited thereto. The scenario of the embodiments of the present application is the background of signal transmission. Referring to FIG. 1, FIG. 1 is a schematic diagram of a communication scenario provided by the embodiments of the present application, as shown in the figure, the communication scenario includes terminal(s), base station(s) and core network (CN) equipment. The embodiments of the present application are applicable to both homogeneous network and heterogeneous network scenarios, and there is no limitation on the transmission point, which can be multi-point cooperative transmission between macro base stations and macro base stations, micro base stations and micro base stations, and macro base stations and micro base stations, and is applicable to frequency division duplexing (FDD) or time division duplexing (TDD) systems. The embodiments of the present application are applicable to both low frequency scenarios (sub 6GHz) and high frequency scenarios (above 6GHz), terahertz, optical communication, etc.
[0053] The terminal involved in the embodiments of the present application can also be referred to as a terminal device, a user equipment (UE), and the like. The terminal device can be an entity for receiving or transmitting signals on the user side, such as a mobile phone. The terminal device can be used to connect people, things, and machines. The terminal device can communicate with one or more core networks through a network device. The terminal device includes a handheld device with a wireless connection function, another processing device connected to a wireless modem, or a vehicle-mounted device, etc. The terminal device can be a portable, pocket-sized, handheld, computer-built-in, or vehicle-mounted mobile device. The terminal device can be widely used in various scenarios, such as cellular communication, D2D, V2X, point-to-point (P2P), machine-to-machine (M2M), machine type communication (MTC), internet of things (IoT), virtual reality (VR), augmented reality (AR), industrial control, autonomous driving, remote medical treatment, smart power grid, smart furniture, smart office, smart wear, smart transportation, smart city, unmanned aerial vehicle, robot, remote sensing, passive sensing, positioning, navigation, autonomous delivery, and mobile, etc.Some examples of the terminal device are: a UE of the 3rd generation partnership project (3GPP) standard, a fixed device, a mobile device, a handheld device, a wearable device, a cellular phone, a smart phone, a session initiated protocol (SIP) phone, a notebook, a personal computer, a smart book, a vehicle, a satellite, a global positioning system (GPS) device, a drone, a helicopter, an aircraft, a ship, a remote control device, a smart home device, an industrial device, a personal communication service (PCS) phone, a wireless local loop (WLL) station, a personal digital assistant (PDA), a wireless network camera, a tablet, a palm computer, a mobile internet device (MID), a wearable device such as a smart watch, a VR device, an AR device, a wireless terminal in industrial control, a terminal in Internet of Vehicles, a wireless terminal in self-driving, a wireless terminal in smart grid, a wireless terminal in transportation safety, a wireless terminal in smart city such as a smart refueling device, a terminal device on a high-speed rail, and a wireless terminal in a smart home such as a smart sound box, a smart coffee machine, a smart printer, and the like. The terminal device can be a wireless device in the above various scenarios or an apparatus used in the wireless device, for example, a communication module, a modem, or a chip in the above devices, and the like. The terminal device can also be referred to as a terminal, a terminal device, a user equipment (UE), a mobile station (MS), a mobile terminal (MT), and the like. The terminal device can also be a terminal device in a future wireless communication system. The terminal device can be used in a dedicated network device or a general-purpose device. The embodiments of the present application do not limit the specific technology and specific device form of the terminal device.
[0054] Optionally, the terminal device can include part of the functions of a base station. For example, a UE can act as a scheduling entity that provides a sidelink signal between UEs in V2X, D2D, or P2P, and the like. As shown in FIG. 1, a mobile phone and a drone communicate with each other using a sidelink signal.
[0055] In this application, the communication device for realizing the function of the terminal device can be a terminal device, a terminal device with part of the function of the terminal device, or a device capable of supporting the function of the terminal device, such as a chip system, which can be installed in the terminal device or matched with the terminal device. In this application, the chip system can be composed of a chip or include a chip and other discrete devices. In the technical solutions provided in this application, the communication device is taken as an example for description.
[0056] The base station (BS) involved in the embodiments of the present application can also be referred to as a radio access network device, an access network network element, a radio access network (RAN) node (or device, or network element), an access point (AP), a network device, a small tower, etc. The base station can cover various names in the following or be replaced by the following names in a broad sense, such as: a radio access network (RAN) node, a NodeB, an evolved NodeB (eNB), a next generation NodeB (gNB), an access network device in an open radio access network (O-RAN), a relay station, an access point, a transmitting and receiving point (TRP), a transmitting point (TP), a master eNB (MeNB), a secondary eNB (SeNB), a multi-standard radio (MSR) node, a home base station, a network controller, an access node, a wireless node, an access point (AP), a transmission node, a transceiver node, a building baseband unit (BBU), a remote radio unit (RRU), an active antenna unit (AAU), a remote radio head (RRH), a centralized unit (CU), a distributed unit (DU), a radio unit (RU), a centralized unit control plane (CU-CP) node, a centralized unit user plane (CU-UP) node, a positioning node, etc. The base station can be a macro base station, a micro base station, a relay node, a donor node, or the like, or a combination thereof. The network device can also refer to a communication module, a modem, or a chip for being arranged in the foregoing device or apparatus. The network device can also be a mobile switching center and a device assuming a base station function in device-to-device (D2D), vehicle-to-everything (V2X), machine-to-machine (M2M) communication, a network side device in a future communication system, etc.The network device can support networks of the same or different access technologies. Embodiments of the present application do not limit the specific technology and specific device form adopted by the network device.
[0057] In some deployments, the network device mentioned in the embodiments of the present application can be a device including a CU, or a DU, or a device including a CU and a DU, or a control plane CU node (central unit-control plane (CU-CP)) and a user plane CU node (central unit-user plane (CU-UP)) and a DU node. For example, the network device can include a gNB-CU-CP, a gNB-CU-UP and a gNB-DU.
[0058] In some deployments, a plurality of RAN nodes cooperate to assist a terminal to implement wireless access, and different RAN nodes respectively implement part of the functions of a base station. For example, the RAN node can be a CU, a DU, a CU-CP, a CU-UP, or an RU, etc. The CU and the DU can be separately arranged, or can be included in the same network element, such as a BBU. The RU can be included in a radio frequency device or a radio frequency unit, such as an RRU, an AAU or an RRH.
[0059] The network device is responsible for all functions related to the air interface, including: (1) a radio link maintenance function, maintaining a radio link with a terminal, and being responsible for protocol conversion of radio link data and IP data quality monitoring; (2) a radio resource management function, including establishment and release of a radio link, scheduling and allocation of radio resources, etc.; (3) part of the mobility management function, including configuring a terminal to perform measurement, evaluating the quality of a radio link of the terminal, and deciding to hand over the terminal between cells, etc.
[0060] In the present application, the communication device for implementing the access network function as described above can be an access network device, or a network device having part of the function of the access network, or a device capable of supporting the implementation of the access network function, such as a chip system, a hardware circuit, a software module, or a hardware circuit plus a software module, which can be installed in the access network device or used in conjunction with the access network device. In the method of the present application, the communication device for implementing the function of the access network device is taken as an example for description.
[0061] The core network involved in the embodiments of the present application mainly provides user connection, management of users, and completion of service bearing, and provides an interface to an external network as a bearing network.
[0062] It should be understood that the number and type of devices in the communication system shown in FIG. 1 are merely illustrative, and the present application is not limited thereto, and in actual applications, more terminal devices, more access network devices, and other network elements, such as network elements for implementing artificial intelligence functions, can also be included in the communication system.
[0063] It can be understood that all or part of the functions implemented by one or more of the terminal device, the access network device, the core network device, or the network element for implementing the artificial intelligence function can be virtualized, that is, implemented by one or more of a special processor or a general processor and a corresponding software module. Among them, the terminal device and the access network device involve the interface of air interface transmission, and the transceiving function of the interface can be implemented by hardware. The core network device, such as the operation administration and maintenance (OAM) network element, can be virtualized. Optionally, one or more functions of the virtualized terminal device, access network device, core network device, or network element for implementing the artificial intelligence function can be implemented by a cloud device, such as a cloud device in an over the top (OTT) system.
[0064] Future network technologies need to support various business scenarios and use cases, including immersive communication, intelligent industry, and digital medical treatment, etc. These new businesses have various differences in performance requirements, which will greatly increase the complexity of network functions and the difficulty of management and configuration. In order to better serve these new businesses, the future network needs to have strong on-demand customization capabilities, and needs to be able to arrange and configure various functions and resources in the network in a more flexible and dynamic way. This is a great challenge for traditional networks that define workflows through standards, and the introduction of AI can help solve this problem.
[0065] The idea of integrating communication networks with AI technology is proposed, which can be simply referred to as network AI. Network AI is to provide a complete AI environment and AI services in the network through a unified architecture design. This will bring great changes to the traditional network architecture, evolving from the traditional connection-oriented service-oriented session-centric architecture to the AI new service-oriented task-centric architecture. For example, by introducing a new dimension of "task" into the future communication network architecture, the QoS of network AI services can be better controlled and guaranteed at the network execution level. The core of network AI is the integration of communication and large models. However, the application of large models in the network is not a simple deployment and execution, but a complex system engineering that requires a series of supporting functions to truly realize its potential. One of the most critical peripheral function components is the storage module (Memory). The storage module provides the RAG function for the large model.
[0066] Specifically, when large models are reasoning, in addition to inputting questions, they often need to rely on external knowledge to further improve the effectiveness of the reasoning results. This external knowledge is usually stored in the form of a vector database.
[0067] Domain-specific expertise can be stored in a database. When the agent generates prompts for the large model, it searches the vector database for the most relevant expertise based on similarity to the original question. This expertise, along with the original question, is then submitted to the large model to obtain the reasoning result, effectively improving the accuracy of the large model's reasoning. Alternatively, some historical records can be stored in the vector database, allowing the large model to learn from historical experience and continuously evolve and improve.
[0068] For the storage modules added to future communication networks, it is necessary to consider their interaction with large models from different manufacturers and other network elements. Therefore, it is necessary to standardize the storage modules and provide standardized interoperability interfaces.
[0069] Based on this, this application provides a schematic diagram of a storage module, as shown in Figure 2A. The storage module includes the following functional modules:
[0070] A data collector connects to a data source, collects various types of raw data, transforms the raw data into vectors (data sets) (represented as ordered numerical values), assigns identifiers to the vectors, and inputs the vectors and their identifiers into an index container. Additionally, the data collector can store vector identifiers; it can also store the vectors themselves. Furthermore, it can store the raw data corresponding to the vectors.
[0071] Index container: Used to store vectors and their identifiers, and to create an index structure for vectors for subsequent vector retrieval.
[0072] Memory retriever: Connects to the consumer and retrieves data based on the questions sent by the consumer, providing the consumer with the required memory data (or expertise). The consumer uses this to ask questions and obtains the subtasks corresponding to the target task of answering those questions from the larger network model.
[0073] The data collector, index container, and memory pickup are interconnected. The storage module can be an extension of the existing network data analytics function (NWDAF) or a standalone functional module. Accordingly, the storage module may be deployed within the NWDAF network element or as a separate network element in the core network. The data collection object (data source) and consumers can be any network element in the existing network, such as a base station or a terminal. For example, the data source can be an agent token, tools API, resource status, network data, and knowledge documents.
[0074] The following describes the working process of the storage module.
[0075] Referring to Figure 2B, which is a flowchart of a storage retrieval method provided in an embodiment of this application, the method is applied to a storage module, which includes a first functional module, at least one second functional module, and a third functional module, as shown in Figure 2B. The method includes the following steps:
[0076] 201. The first network element sends a first request to the first functional module, the first request being used to request the execution of the target task. Correspondingly, the first functional module receives the first request.
[0077] 202. The first functional module sends a second request to the target second functional module based on the first request. Correspondingly, the target second functional module receives the second request.
[0078] Wherein, the first request is used to request the execution of the target task, and the second request is used to request the acquisition of the vector corresponding to the first request; each of the at least one second functional module corresponds to a different retrieval method (e.g., different retrieval algorithms or different retrieval mechanisms), and the target functional module is one of the at least one second functional module.
[0079] The structure of the storage module in this embodiment can be referred to the structure shown in FIG2A above. For example, the first functional module can be the memory pickup in FIG2A, which has the same connection method and functional effect as the memory pickup described in FIG2A above. The second functional module can be the index container in FIG2A, which has the same connection method and functional effect as the index container described in FIG2A above. The third functional module is the data collector in FIG2A, which has the same connection method and functional effect as the data collector described in FIG2A above. Alternatively, the first functional module, the second functional module, and the third functional module can also correspond to other names, which are not limited in this embodiment.
[0080] In the following description of the embodiments, the terms memory pickup, index container, and data collector are used to refer to the first functional module, the second functional module, and the third functional module.
[0081] The first network element sends a first request to the first functional module. This first request includes the question posed to the input (network) large model (or AI model, network model, large language model, etc.) described in Figure 2A. That is, the first request is used to request the execution of a target task. After the first request is input into the large model, the large model performs inference to obtain one or more sub-tasks corresponding to the target task. In this embodiment, to further improve the accuracy of the large model's inference results, a storage module provides raw data related to (corresponding to) the first request (i.e., the memory data or professional knowledge related to the question described in Figure 2A). This allows the large model to obtain prompt information based on the first request and the raw data, input into the large model for inference, and achieve the effect of RAG (Rapid Argumentation).
[0082] The first network element, as described in Figure 2A above, is the consumer used to issue a question and obtain the sub-task corresponding to the target task of fulfilling the question. The first network element can be a network element in the core network, or it can be a terminal or network device, etc., and this application embodiment does not limit it in this way.
[0083] After receiving the first request, the memory retriever optionally includes only one (default) index container in the storage module. The memory retriever sends a second request to this index container, which requests the vector corresponding to the first request. The second request includes the information from the first request (i.e., the query information). The index container retrieves at least one first vector corresponding to the query information according to its own retrieval algorithm.
[0084] Optionally, the storage module includes multiple index containers, each corresponding to a different indexing method. In addition to the query information, the first request may also include information about the index containers, such as their type, number, or identifier. This allows the memory retriever, upon receiving the first request, to determine the target index container (target second functional module) among the multiple index containers based on the relevant information, and then send a second request to the target index container.
[0085] Index container types include, for example, IndexFlatL, IndexHNSW, or IndexIVF. Different index container types correspond to different indexing algorithms, resulting in different index pools, indexing efficiency, and resource consumption. For instance, IndexFlatL offers high matching accuracy but involves significant computation and is inefficient; IndexHNSW uses spatial differentiation, first determining a spatial region and then matching vectors within that region, leading to high retrieval efficiency but high memory consumption; IndexIVF uses clustering matching, offering high retrieval efficiency but relatively low accuracy. The first network element can carry relevant information about the index container in the first request based on its own retrieval needs.
[0086] Optionally, the first request may also include information about the first network element, such as the identifier, number, or name of the first network element, so that the first functional module can know the target object for communication.
[0087] Optionally, the first request may also include a pick confidence score. The pick confidence score represents the range of the matching degree between the first request and the first vector obtained during the retrieval.
[0088] For example, assuming a pick confidence level of 0.9, the second vector, representing the portion of the range where the match with the first request is within the top 90%, is identified as the first vector. The second vector refers to all vectors stored in the index container.
[0089] Optionally, the first request may also include the picking time. The picking time corresponds to the relevant time of the original data. For example, the original data picked is within one week from the current time, or the original data picked is from September 1, 2023 to October 1, 2023, etc.
[0090] The first functional module sends a second request to the target second functional module based on the first request. Optionally, the second request includes the pickup time.
[0091] Optionally, the second request may include the identifier of the first network element.
[0092] 203. The target second functional module retrieves at least one first vector based on the second request.
[0093] 204. The target second functional module sends at least one identifier of a first vector to the first functional module. Correspondingly, the first functional module receives at least one identifier of a first vector.
[0094] After receiving the second request, the target second functional module retrieves at least one first vector based on the information in the second request.
[0095] For example, the target second functional module retrieves at least one first vector based on the query information in the second request and the retrieval method corresponding to the target second functional module. The at least one first vector may be a subset of at least one second vector, or it may be the complete set of at least one second vector.
[0096] Before the target second functional module receives the second request, this application embodiment provides a method for constructing the target second functional module, as shown in FIG2C, the method including the following steps:
[0097] 2041. The first network element sends a query request to the storage module to check whether the target second functional module is included. Correspondingly, the storage module receives the query request sent by the first network element.
[0098] Optionally, the memory pickup (first functional module) in the storage module receives the query request. Signal transmission is performed using the communication interface between the memory pickup and the first network element.
[0099] Alternatively, other functional modules, such as processors, may receive query requests in the storage module.
[0100] 2042. The storage module sends a first response to the first network element. Correspondingly, the first network element receives a response from the storage module. The first response does not include the target second functional module.
[0101] After receiving a query request, the storage module checks whether the target second functional module has been built. If not, it sends a first response to the first network element, indicating that the target second functional module has not been built.
[0102] Optionally, the first response may directly indicate that the target second functional module has not been built into the storage module.
[0103] Optionally, the first response indicates a second functional module that has been established in the storage module, which does not include the target second functional module.
[0104] 2043. The first network element sends an establishment request to the storage module. Correspondingly, the storage module receives the establishment request from the first network element. The establishment request is used to request the establishment of the target second functional module.
[0105] Since the first network element wants to use the retrieval algorithm corresponding to the target second functional module for vector retrieval, the first network element sends an establishment request to the storage module to request the establishment of the target second functional module.
[0106] Optionally, the request may include information such as the name, identifier, or retrieval algorithm of the target second functional module (target index container).
[0107] 2044. The storage module constructs the target second functional module according to the establishment request.
[0108] After receiving the establishment request, the storage module can build the target second functional module if resources are sufficient.
[0109] Optionally, the storage module sends a notification message to the first network element to indicate that the target second functional module has been completed.
[0110] In this embodiment, a first network element instructs a storage module to construct a target second functional module. The storage module constructs the second functional module according to the instructions of the first network element, so that the first network element can successfully use the target second functional module for vector retrieval. This process demonstrates the flexibility of storage module management and improves the efficiency and success rate of vector retrieval.
[0111] The target second functional module, or target index container, stores multiple second vectors and their identifiers. The target index container, according to its corresponding retrieval algorithm, matches and obtains one or more first vectors and their identifiers from the multiple second vectors. The identifiers of the first vectors are then fed back to the first functional module.
[0112] The second vector and its identifier stored in the second functional module can be input from the third functional module.
[0113] The third functional module obtains the second vector and its identifier in the following ways:
[0114] 1. The third functional module retrieves the second raw data from the data source. Then:
[0115] (1) The third functional module calls the vectorized model stored locally to generate at least one second vector corresponding to at least one second original data.
[0116] The third functional module, or data collector, obtains the second raw data from one or more data sources. It then calls a vectorized model stored locally to transform the second raw data into second vectors, establishing a one-to-one correspondence between the second raw data and the second vectors. Finally, the third functional module assigns an identifier to each second vector.
[0117] (2) The third functional module calls the vectorization model in the network model to generate at least one second vector corresponding to at least one second original data.
[0118] After the data collector obtains the second raw data from the data source, it calls the vectorization model in the network model to transform each second raw data into a second vector, assigns an identifier to each second vector, and stores the at least one second vector and its corresponding identifier.
[0119] 2. The third functional module retrieves at least one second vector corresponding to the original data from the data source. Prior to this, it includes:
[0120] (3) The data source calls the vectorization model of the third functional module to generate at least one second vector corresponding to at least one second original data.
[0121] (4) The data source calls the vectorization model in the network model to generate at least one second vector corresponding to at least one second original data.
[0122] After the data collector receives at least one second vector from the data source, it similarly configures an identifier for each second vector.
[0123] Optionally, the third functional module may obtain at least one second vector from the data source, and at the same time, obtain the identifier of at least one second vector from the data source. That is, the identifier of each second vector is assigned by the data source.
[0124] After the data collector obtains the second vector and its identifier, and sends the second vector and its identifier to the index container for storage, it can either store only at least one identifier of the second vector, or it can store at least one second vector and its corresponding identifier simultaneously.
[0125] Referring to Figure 2D, which is a schematic diagram illustrating the process of a data collector acquiring a second vector according to an embodiment of this application, the process of acquiring the second vector is shown more intuitively in a graphical manner. This includes the connection and communication between the data source and the data collector, and may also include the connection and communication between the large language model (LLM) and the data collector. Furthermore, when the data source calls the data collector's vectorized model to generate the second vector, the data collector sends the vectorized model to the data source, and the data source transforms the second raw data into the second vector and then feeds back the second vector to the data collector. Conversely, when the data source or data collector calls the LLM's vectorized model, the data source or data collector sends the second raw data to the LLM, and the LLM calls its own vectorized model to transform the second raw data into the second vector and then feeds back the second vector to the data collector or data source.
[0126] In this embodiment, the data collector obtains the second raw data from the data source and calls the vectorization model to convert the raw data into a second vector, which ensures the accuracy of the obtained second vector. Alternatively, the data source can convert the second raw data into a second vector and then send the second vector to the data collector, which can reduce the amount of data transmission and improve communication efficiency.
[0127] 205. The first functional module sends a third request to the third functional module, the third request being used to request the acquisition of at least one first raw data corresponding to at least one first vector. Correspondingly, the third functional module receives the third request.
[0128] The first functional module, namely the memory pickup, after receiving the identifier of at least one first vector, can instruct the data collector to provide the first raw data corresponding to the first vector to the first network element, so that the first network element can generate input prompts for the large model based on the question information in the first request according to the first raw data corresponding to the first vector.
[0129] Optionally, the third request includes at least one identifier of a portion of the first vector.
[0130] For example, for some considerations, such as the condition information for obtaining raw data sent by the first network element, or the number of first vectors exceeding a preset number, the memory picker only requests the first raw data corresponding to the identifier of a portion of the first vectors from the data collector.
[0131] There is a one-to-one correspondence between the first vector and the first original data. At least one first vector is a subset or the entirety of at least one second vector, and correspondingly, at least one first original data is a subset or the entirety of at least one second original data.
[0132] Optionally, the third request may also include first condition information, which includes at least one of the following: the identifier of the first network element; the pickup time, which corresponds to the relevant time of the original data.
[0133] The first condition information in the third request can be carried in the first request, or sent by the first network element to the memory pickup via other messages. The identifier of the first network element is used by the data collector to determine the target object providing the first raw data. The pickup time is used for conditional filtering of the first raw data for the first vector.
[0134] 206. The third functional module provides at least one first raw data to the first network element according to the third request.
[0135] Specifically, the first raw data is used to assist in executing the target task, and the first request and the first raw data are used to combine the network model to obtain the sub-tasks corresponding to the target task of the first request. At least one piece of the first raw data corresponds one-to-one with at least one first vector included in the third request.
[0136] The data collector provides the corresponding first raw data based on the identifier of the first vector in the third request. This includes the data collector directly sending the first raw data corresponding to the first vector from locally stored data, or the data collector notifying the data source to send the first raw data corresponding to the first vector to the first network element.
[0137] As can be seen, in this embodiment, the storage module includes a first functional module, a second functional module, and a third functional module. These three modules include modules that provide external communication interfaces and provide external communication data, modules for performing second vector retrieval, and modules for providing raw data based on the second vector. This process standardizes the functional modules of the storage model, provides interfaces for interconnection between the storage module and other network element devices, avoids incompatibility issues between storage modules with different structures and network element devices including large models, and thus improves the efficiency of generating retrieval enhancements for large models.
[0138] The data collector (third functional module) provides at least one first raw data corresponding to a first vector, including two cases. Correspondingly, refer to Figure 2E, which is a flowchart of another storage and retrieval method provided in an embodiment of this application, the method including the following steps:
[0139] 301. The first network element sends a first request to the first functional module, the first request being used to request the execution of the target task. Correspondingly, the first functional module receives the first request.
[0140] 302. The first functional module sends a second request to the target second functional module based on the first request. Correspondingly, the target second functional module receives the second request.
[0141] 303. The target second functional module retrieves at least one first vector based on the second request.
[0142] 304. The target second functional module sends at least one identifier of a first vector to the first functional module. Correspondingly, the first functional module receives at least one identifier of a first vector.
[0143] 305. The first functional module sends a third request to the third functional module, the third request being used to request the acquisition of at least one first raw data corresponding to at least one first vector. Correspondingly, the third functional module receives the third request.
[0144] For an explanation of steps 301 to 305 above, please refer to the description of steps 201 to 205 in the foregoing embodiments.
[0145] 306a1. The third functional module obtains at least one first original data corresponding to at least one first vector stored in the third functional module according to the third request.
[0146] 306a2. The third functional module sends a second response to the first network element, the second response including at least one first raw data.
[0147] For example, the data collector (third functional module) stores at least one identifier of a first vector and at least one piece of first raw data. The third request includes at least one identifier of the first vector. The data collector can directly obtain the corresponding first raw data based on the identifier of the first vector and send the first raw data to the first network element through a second response.
[0148] Optionally, before the third functional module obtains the original data corresponding to at least one first vector stored in the third functional module according to the third request, the method further includes: the third functional module storing the second original data corresponding to at least one second vector, including the first original data corresponding to the first vector.
[0149] The at least one second original data corresponding to at least one second vector stored in the third functional module can be obtained from the data source before generating at least one second vector. Alternatively, it can be obtained from the data source based on the second vector after it has been obtained from the data source. This embodiment does not limit this.
[0150] Alternatively, the storage retrieval method provided in this application embodiment may include the following steps:
[0151] 306b. The third functional module sends a fourth request to the target data source according to the third request. The fourth request is used to instruct the target data source to provide at least one first raw data corresponding to at least one first vector to the first network element.
[0152] The target data source is at least one data source that has a corresponding relationship with the identifier of at least one first vector and / or at least one first vector.
[0153] Optionally, the target data source can be one or more data sources.
[0154] For example, at least one first original data corresponding to at least one first vector is stored in the target data source. The data collector stores a correspondence between at least one second vector or an identifier of at least one second vector and a data source. This correspondence indicates that the second original data corresponding to the second vector is stored in a data source with a corresponding relationship. The existence of a correspondence between a first vector or an identifier of a first vector and a target data source means that the first original data corresponding to the first vector is stored in the target data source with a corresponding relationship. Therefore, a target data source can have a correspondence with one or more first vectors or identifiers of first vectors.
[0155] The data collector first determines the target data source corresponding to the first vector and / or the identifier of the first vector based on the identifier of the second vector stored in its own storage and / or the correspondence between the second vector and the data source. Then, it sends a fourth request to the target data source to instruct the target data source to provide at least one first raw data corresponding to at least one first vector to the first network element.
[0156] After receiving the fourth request, the target data source obtains the corresponding raw data based on the identifier and / or the first vector carried in the fourth request, and then sends the first raw data corresponding to the first vector to the first network element.
[0157] Optionally, before the third functional module sends the fourth request to the target data source according to the third request, the method further includes: the third functional module storing the correspondence between the identifier of at least one second vector and the second data source, and sending first indication information to the data source, the first indication information indicating that the data source correspondingly stores the identifier of at least one second vector and at least one second original data. Corresponding storage means that the latter can be obtained based on the former.
[0158] Optionally, before the third functional module sends a fourth request to the target data source according to the third request, the method further includes: the third functional module storing at least one correspondence between a second vector and a data source, and sending first indication information to the data source, the first indication information indicating that the data source correspondingly stores at least one second vector and at least one second original data.
[0159] Optionally, before the third functional module sends the fourth request to the target data source according to the third request, the method further includes: the third functional module storing the identifier of at least one second vector and the correspondence between at least one second vector and the data source, and sending first indication information to the data source, the first indication information indicating that the data source correspondingly stores the identifier of at least one second vector or the original data of at least one second vector.
[0160] Assuming the data collector stores the correspondence between the first vector and the target data source, and the target data source stores the first vector and the first original data, then the fourth request includes the first vector.
[0161] Assuming that the data collector stores the correspondence between the identifier of the first vector and the target data source, and the target data source stores the identifier of the first vector and the first original data, then the fourth request includes the identifier of the first vector.
[0162] Assuming that the data collector stores the correspondence between the first vector and its identifier and the target data source, and the target data source stores the first vector or its identifier and the first original data, then the fourth request includes the first vector and its identifier.
[0163] Optionally, the step of the third functional module storing the correspondence and sending the first indication information to the data source can be executed after the third functional module obtains the second vector (and the identifier of the second vector) sent by the data source.
[0164] For example, after the data collector obtains at least one second vector (and at least one identifier of the second vector) sent by the data source, it assigns an identifier to each second vector (this step can be omitted if at least one identifier of the second vector is obtained from the data source simultaneously), and stores the correspondence between the second vector and / or the identifier of the second vector and the data source. Then, it sends a first indication message to the data source instructing the data source to store the corresponding second vector and / or the identifier of the second vector and the second original data for subsequent querying by the data collector.
[0165] The methods described in steps 306a1-306a2 and step 306b can be executed independently; that is, in this storage and retrieval method, only one of the methods described above needs to be executed. Alternatively, the two methods described above can be combined. Specifically, when step 306a1 is executed successfully, step 306a2 is executed next; when step 306a1 fails, step 306b is executed next. That is, between steps 306a1 and 306b, step 306b' (not shown in the figure) can also be included: determining that obtaining at least one original data corresponding to a first vector has failed. Between steps 306a1 and 306a2, step 306a2' (not shown in the figure) can also be included: determining that obtaining at least one original data corresponding to a first vector has been successful.
[0166] As can be seen, in this embodiment, after receiving the third request, the third functional module provides the first network element with at least one piece of raw data corresponding to the first vector. This includes the third functional module retrieving the raw data from locally stored data; or the third functional module instructing the target data source storing the raw data to provide the raw data corresponding to the first vector. The former can improve the efficiency of feeding back the raw data, while the latter can reduce the storage pressure on the third storage functional module.
[0167] Please refer to Figure 3, which is a schematic diagram of a communication device provided in an embodiment of this application. This communication device 1500 can be used to execute any of the methods described in the foregoing embodiments.
[0168] As shown in Figure 3, the communication device includes: a first functional module 1501, a second functional module 1502, and a third functional module 1503.
[0169] The communication device can be used to implement the functions of the storage module involved in any of the above method embodiments. These devices can be hardware devices, software functions running on dedicated hardware, or virtualization functions instantiated on a platform (e.g., a cloud platform). Optionally, the communication device may also include a processing module 1504 for implementing other functions in the communication device besides the aforementioned three functional modules.
[0170] In the first example, the communication device can be used as a chip in the storage module in Figures 2A-2E, and perform the steps executed by the functional module in the storage module in the above method embodiment.
[0171] For example, when the communication device is used to implement the function of the storage module, the first functional module 1501 is used to receive a first request from the first network element and send a second request to the target second functional module 1502 according to the first request; the first request is used to request the execution of the target task, and the second request is used to request the acquisition of the vector corresponding to the first request; different second functional modules in at least one second functional module correspond to different retrieval methods, and the target second functional module is one of the at least one second functional module;
[0172] The target second functional module 1502 is used to receive a second request from the first functional module 1501, retrieve at least one first vector according to the second request, and send the identifier of at least one first vector to the first functional module 1501; the at least one first vector is the vector corresponding to the first request among at least one second vector stored in the target second functional module 1502.
[0173] The first functional module 1501 is used to receive the identifier of at least one first vector from the target second functional module 1502 and send a third request to the third functional module 1503. The third request is used to request the acquisition of the original data corresponding to at least one first vector.
[0174] The third functional module 1503 is used to receive a third request from the first functional module 1501 and provide at least one first raw data to the first network element according to the third request. The at least one first raw data is the raw data corresponding to at least one first vector. The at least one first raw data is used to assist in the execution of the target task, and the first request and the at least one first raw data are used to combine the network model to obtain at least one sub-task corresponding to the target task of the first request.
[0175] In one possible implementation, the third functional module 1503 is also used for:
[0176] The system receives at least one second raw data from a data source; invokes a vectorization model to generate at least one second vector corresponding to at least one second raw data, wherein the vectorization model is stored locally by the first functional module 1501 or invoked from a network model by the third functional module 1503; or receives at least one second vector from a data source, wherein at least one second vector is generated by the data source invoking the vectorization model in the first functional module 1501, or at least one second vector is generated by the data source invoking the vectorization model in the network model; stores at least one second vector and an identifier of at least one second vector, and sends at least one second vector and an identifier of at least one second vector to at least one second functional module; at least one second functional module is further configured to receive and store at least one second vector and an identifier of at least one second vector; wherein at least one first raw data is a subset or the entirety of at least one second raw data, and at least one first vector is a subset or the entirety of at least one second vector.
[0177] In one possible implementation, the third functional module 1503 is also used to store at least one second original data corresponding to at least one second vector.
[0178] In one possible implementation, the third functional module 1503 is further configured to store the correspondence between at least one second vector and / or the identifier of at least one second vector and the data source, and send first indication information to the data source, the first indication information instructing the data source to store the correspondence between at least one second vector and / or the identifier of at least one second vector and at least one second original data.
[0179] In one possible implementation, at least one second functional module may be multiple second functional modules, and the first request includes information about the target second functional module 1502.
[0180] In one possible implementation, before the first functional module sends the second request to the target second functional module, the processing module 1504 is further configured to:
[0181] The system receives a query request from a first network element and sends a first response to the first network element based on the query request. The query request is used to query whether the storage module includes the target second functional module, and the first response indicates that the storage module does not include the target second functional module. The system also receives a setup request from the first network element and constructs the target second functional module based on the setup request. The setup request is used to request the setup of the target second functional module.
[0182] In one possible implementation, the third request includes the identifier of all or part of the first vectors in at least one first vector, and first condition information, which is used to indicate the constraints for obtaining at least one original data corresponding to at least one first vector; the first condition information includes at least one of the following: the identifier of the first network element; the pickup time, which corresponds to the relevant time of the original data.
[0183] In one possible implementation, providing at least one first raw data corresponding to at least one first vector to the first network element according to the third request includes: obtaining at least one first raw data corresponding to at least one first vector stored in the third functional module 1503 according to the third request; and sending a second response to the first network element, the second response including at least one first raw data corresponding to at least one first vector.
[0184] In one possible implementation, providing at least one first raw data corresponding to at least one first vector to the first network element according to the third request includes: sending a fourth request to a target data source according to the third request, wherein the target data source is a data source that corresponds to the identifier of the first vector among at least one data source, and the fourth request is used to instruct the target data source to send at least one first raw data corresponding to at least one first vector to the first network element.
[0185] The communication device can also perform other methods and steps, which can be referred to in the foregoing related embodiments and will not be repeated here.
[0186] Please refer to Figure 4, which is a schematic diagram of another communication device provided in an embodiment of this application. This communication device 10 can be used to execute any one of the methods executed by the first functional module, second functional module, or third functional module in the storage module in the foregoing embodiments.
[0187] As shown in Figure 4, the communication device includes a transceiver module 1602 and a processing module 1601.
[0188] The processing module 1601 may be one or more processors, and the transceiver module 1602 may be a transceiver or a communication interface. This communication device can be used to implement the functions of the intelligent agent involved in any of the above method embodiments. These devices may be hardware devices, software functions running on dedicated hardware, or virtualized functions instantiated on a platform (e.g., a cloud platform). Optionally, the communication device may also include a storage module 1603 for storing the program code and data of the communication device.
[0189] In a first instance, the communication device can be a chip within the first functional module (or memory pickup), second functional module (or index container), or third functional module (or data collector) in Figures 2A-2E, and execute the steps performed by the first, second, or third functional module in the above method embodiments. The transceiver module 1602 supports communication between functional modules within the storage module, or between communication devices outside the storage module. The processing module 1601 can be used to support the execution of actions other than sending and receiving performed by the first, second, or third functional module in the above method embodiments.
[0190] For example, when a communication device is used to implement the function of the first functional module,
[0191] The transceiver module 1602 is used to receive a first request from the first network element; the first request is used to request the execution of a target task.
[0192] Processing module 1601 is used to send a second request to the target second functional module according to the first request; the second request is used to request to obtain the vector corresponding to the first request; different second functional modules in at least one second functional module correspond to different retrieval methods, and the target second functional module is one of the at least one second functional module;
[0193] The transceiver module 1602 is also used to receive the identifier of at least one first vector; and in conjunction with the processing module 1601, it sends a third request to the third functional module, the third request being used to request the acquisition of at least one first raw data corresponding to at least one first vector.
[0194] When the communication device is used to implement the function of the second functional module, the transceiver module 1602 is used to receive a second request from the first functional module; the processing module 1601 is used to retrieve at least one first vector according to the second request; the first vector is the vector corresponding to the first request among at least one second vector stored in the target second functional module; and the identifier of at least one first vector is sent to the first functional module.
[0195] In one feasible implementation, the transceiver module 1602, in conjunction with the processing module 1601, is further configured to: receive and store at least one second vector and an identifier of at least one second vector.
[0196] When the communication device is used to implement the function of the third functional module, the transceiver module 1602 is used to receive a third request from the first functional module; the processing module 1601 is used to provide at least one first raw data corresponding to at least one first vector to the first network element according to the third request; wherein, at least one first raw data is used to assist in the execution of the target task, and the first request and at least one first raw data are used to combine the network model to obtain at least one sub-task corresponding to the target task of the first request.
[0197] In one feasible implementation, the transceiver module 1602 is further configured to: receive at least one second raw data from the data source; the processing module 1601 is further configured to: invoke a vectorization model to generate at least one second vector corresponding to at least one second raw data, wherein the vectorization model is either locally stored by the first functional module or invoked from a network model; or
[0198] The transceiver module 1602 is further configured to receive at least one second vector from the data source, wherein the at least one second vector is generated by the data source calling the vectorized model in the first functional module, or the at least one second vector is generated by the data source calling the vectorized model in the network model; the processing module 1601 is further configured to store at least one second vector and the identifier of at least one second vector, and, in conjunction with the transceiver module 1602, send at least one second vector and the identifier of at least one second vector to at least one second functional module.
[0199] In one feasible implementation, the processing module 1601 is further configured to: store at least one second original data corresponding to at least one second vector.
[0200] In one feasible implementation, the processing module 1601 is further configured to: store the correspondence between at least one second vector and / or the identifier of at least one second vector and the data source, and send first indication information to the data source, the first indication information instructing the data source to store the correspondence between at least one second vector and / or the identifier of at least one second vector and the second original data.
[0201] Figure 5 is a schematic diagram of another communication device 20 provided in an embodiment of this application. The device 20 includes a processor 21, which is used to execute computer programs or instructions stored in a memory 22, or to read data / signaling stored in the memory 22, to perform the methods in the above-described method embodiments. Optionally, there may be one or more processors 21.
[0202] Optionally, as shown in FIG5, the device 20 further includes a memory 22 for storing computer programs or instructions and / or data. The memory 22 may be integrated with the processor 21 or may be separately configured. Optionally, there may be one or more memories 22.
[0203] Optionally, as shown in FIG5, the device 20 further includes a transceiver 23 for receiving and / or transmitting signals. For example, the processor 21 is used to control the transceiver 23 to receive and / or transmit signals.
[0204] As one option, the device 20 is used to implement the operations performed by the storage module in the various method embodiments described above.
[0205] As an alternative, the device 20 is used to implement the operations performed by the first functional module in the various method embodiments described above.
[0206] As another option, the device 20 is used to implement the operations performed by the second functional module in the various method embodiments described above.
[0207] As another option, the device 20 is used to implement the operations performed by the third functional module in the various method embodiments described above.
[0208] It should be understood that the processor mentioned in the embodiments of this application can be a central processing unit (CPU), or one or more combinations of other general-purpose processors, digital signal processors (DSPs), microprocessor units (MPUs), microcontroller units (MCUs), GPUs, field-programmable gate arrays (FPGAs), artificial intelligence processors (AI processors), or neural processing units (NPUs); or, the processor mentioned in the embodiments of this application can be an ASIC or other programmable logic device, discrete gate or transistor logic device, discrete hardware component, etc. A general-purpose processor can be a microprocessor or any conventional processor.
[0209] It should also be understood that the memory mentioned in the embodiments of this application can be volatile memory and / or non-volatile memory. Non-volatile memory can be read-only memory (ROM), programmable read-only memory (PROM), erasable programmable read-only memory (EPROM), electrically erasable programmable read-only memory (EEPROM), or flash memory. Volatile memory can be cache or random access memory (RAM). For example, RAM can be used as an external cache. By way of example and not limitation, RAM includes the following forms: static random access memory (SRAM), dynamic random access memory (DRAM), synchronous dynamic random access memory (SDRAM), double data rate synchronous dynamic random access memory (DDR SDRAM), enhanced synchronous dynamic random access memory (ESDRAM), synchronous linked dynamic random access memory (SLDRAM), and direct rambus RAM (DR RAM).
[0210] It should be noted that when the processor is a general-purpose processor, DSP, ASIC, FPGA, or other programmable logic device, discrete gate or transistor logic device, or discrete hardware component, the memory (storage module) can be integrated into the processor.
[0211] It should also be noted that the memory described herein is intended to include, but is not limited to, these and any other suitable types of memory.
[0212] This application also provides a chip system (or processing system) including logic circuits and input / output interfaces.
[0213] The logic circuit can be a processing circuit in the chip system. The logic circuit can be coupled to a memory cell, calling instructions from the memory cell, enabling the chip system to implement the methods and functions of the embodiments of this application. The input / output interface can be an input / output circuit in the chip system, outputting processed information or inputting data or signaling information to be processed into the chip system for processing.
[0214] As one approach, the chip system is used to implement the operations performed by orchestrating agents, assembling agents, executing agents, and connecting agents in the various method embodiments described above.
[0215] For example, the logic circuit is used to implement the processing-related operations performed by the orchestration agent, assembly agent, execution agent, and connection agent in the above method embodiments; the input / output interface is used to implement the sending and / or receiving-related operations performed by the orchestration agent, assembly agent, execution agent, and connection agent in the above method embodiments.
[0216] This application also provides a computer-readable storage medium storing computer instructions for implementing the methods executed by the storage module in the above-described method embodiments.
[0217] This application also provides a computer-readable storage medium storing computer instructions for implementing the methods executed by the first functional module, second functional module, or third functional module in the storage module in the above-described method embodiments.
[0218] This application also provides a computer program product comprising instructions which, when executed by a computer, implement the methods performed by the first functional module, the second functional module, or the third functional module in the above-described method embodiments.
[0219] This application also provides a communication system, including the aforementioned storage module. Optionally, the communication system further includes a first network element and an access network device or terminal device corresponding to the data source.
[0220] The explanations and beneficial effects of the relevant contents in any of the devices provided above can be found in the corresponding method embodiments provided above, and will not be repeated here.
[0221] Those skilled in the art will recognize that the units and algorithm steps of the various examples described in conjunction with the embodiments disclosed herein can be implemented in electronic hardware, or a combination of computer software and electronic hardware. Whether these functions are implemented in hardware or software depends on the specific application and design constraints of the technical solution. Those skilled in the art can use different methods to implement the described functions for each specific application, but such implementation should not be considered beyond the scope of this application.
[0222] Those skilled in the art will understand that, for the sake of convenience and brevity, the specific working processes of the systems, devices, and units described above can be referred to the corresponding processes in the foregoing method embodiments, and will not be repeated here.
[0223] In the several embodiments provided in this application, it should be understood that the disclosed apparatus and methods can be implemented in other ways. For example, the apparatus embodiments described above are merely illustrative; for instance, the division of units is only a logical functional division, and in actual implementation, there may be other division methods. For example, multiple units or components may be combined or integrated into another system, or some features may be ignored or not executed. Furthermore, the mutual coupling or direct coupling or communication connection shown or discussed may be through some interfaces, and the indirect coupling or communication connection of apparatus or units may be electrical, mechanical, or other forms.
[0224] The units described as separate components may or may not be physically separate. The components shown as units may or may not be physical units; that is, they may be located in one place or distributed across multiple network units. Some or all of the units can be selected to achieve the purpose of this embodiment according to actual needs.
[0225] In addition, the functional units in the various embodiments of this application can be integrated into one processing unit, or each unit can exist physically separately, or two or more units can be integrated into one unit.
[0226] If the aforementioned functions are implemented as software functional units and sold or used as independent products, they can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of this application, in essence, or the part that contributes to the prior art, or a portion of the technical solution, can be embodied in the form of a software product. This computer software product is stored in a storage medium and includes several instructions to cause a computer device (which may be a personal computer, server, or network device, etc.) to execute all or part of the steps of the methods described in the various embodiments of this application. The aforementioned storage medium includes various media capable of storing program code, such as USB flash drives, portable hard drives, ROM, RAM, magnetic disks, or optical disks.
[0227] The above description is merely a specific embodiment of this application, but the scope of protection of this application is not limited thereto. Any variations or substitutions that can be easily conceived by those skilled in the art within the scope of the technology disclosed in this application should be included within the scope of protection of this application. Therefore, the scope of protection of this application should be determined by the scope of the claims.
Claims
1. A storage search method characterized by comprising: The method is applied to a storage module, the storage module comprising a first function module, at least one second function module and a third function module, and the method comprises the following steps: The first function module receives a first request from a first network element, and sends a second request to a target second function module according to the first request; the first request is used to request to perform a target task, and the second request is used to request to obtain a vector corresponding to the first request; different second function modules in the at least one second function module correspond to different search modes, and the target second function module is one of the at least one second function module; The target second function module receives the second request from the first function module, searches and obtains at least one first vector according to the second request, and sends an identifier of the at least one first vector to the first function module; the at least one first vector is a vector corresponding to the first request in at least one second vector stored in the target second function module; The first function module receives the identifier of the at least one first vector from the target second function module, and sends a third request to the third function module, the third request being used to request to obtain original data corresponding to the at least one first vector; The third function module receives the third request from the first function module, and provides at least one first original data to the first network element according to the third request, the at least one first original data being original data corresponding to the at least one first vector; wherein the at least one first original data is used to assist in performing the target task, and the first request and the at least one first original data are used to obtain at least one subtask corresponding to the target task in combination with a network model.
2. The method of claim 1, wherein, The method further comprises: The third function module receives at least one second original data from a data source; and calls a vectorization model to generate the at least one second vector corresponding to the at least one second original data, wherein the vectorization model is stored locally by the first function module, or is called by the third function module from the network model; or The third function module receives the at least one second vector from a data source, wherein the at least one second vector is generated by the data source calling a vectorization model in the first function module, or the at least one second vector is generated by the data source calling a vectorization model in the network model; The third function module stores the at least one second vector and an identifier of the at least one second vector, and sends the at least one second vector and the identifier of the at least one second vector to the at least one second function module; The at least one second function module receives and stores the at least one second vector and the identifier of the at least one second vector; wherein the at least one first original data is a subset or a full set of the at least one second original data, and the at least one first vector is a subset or a full set of the at least one second vector.
3. The method of claim 2, wherein, The method further comprises: The third function module stores the at least one second original data corresponding to the at least one second vector.
4. The method of claim 2, wherein, The method further comprises: The third function module stores the correspondence between the at least one second vector and / or the identifier of the at least one second vector and the data source, and sends first indication information to the data source, wherein the first indication information indicates that the data source stores the correspondence between the at least one second vector and / or the identifier of the at least one second vector and the at least one second original data.
5. The method according to any one of claims 1 to 4, characterized in that, The at least one second function module is a plurality of second function modules, and the first request comprises information of the target second function module.
6. The method of claim 5, wherein, Before the first function module sends the second request to the target second function module, the method further comprises: The storage module receives a query request from the first network element, and sends a first response to the first network element according to the query request, wherein the query request is used to query whether the storage module comprises the target second function module, and the first response indicates that the storage module does not comprise the target second function module. The storage module receives a building request from the first network element, and builds the target second function module according to the building request, wherein the building request is used to request to build the target second function module.
7. The method according to any one of claims 1 to 6, characterized in that, The third request comprises the identifier of the at least one first vector and first condition information, wherein the first condition information is used to indicate a constraint condition for obtaining the at least one original data corresponding to the at least one first vector; and the first condition information comprises at least one of the following: The identifier of the first network element; Pick-up time corresponding to the related time of the at least one first original data.
8. The method of claim 3, wherein, The providing of the at least one first original data to the first network element according to the third request comprises: According to the third request, the at least one first original data corresponding to the at least one first vector stored in the third function module is obtained; A second response is sent to the first network element, and the second response comprises the at least one first original data corresponding to the at least one first vector.
9. The method of claim 4, wherein, The providing of the at least one first original data to the first network element according to the third request comprises: According to the third request, a fourth request is sent to a target data source, wherein the target data source is at least one data source having a correspondence with the at least one first vector and / or the identifier of the at least one first vector, and the fourth request is used to instruct the target data source to send the at least one first original data corresponding to the at least one first vector to the first network element.
10. A memory module, comprising: The storage module comprises a first function module, at least one second function module and a third function module, wherein: The first function module is configured to receive a first request from a first network element, and send a second request to a target second function module according to the first request; the first request is used to request to perform a target task, and the second request is used to request to obtain a vector corresponding to the first request; different second function modules in the at least one second function module correspond to different search modes, and the target second function module is one of the at least one second function module; The target second function module is configured to receive the second request from the first function module, search and obtain at least one first vector according to the second request, and send an identifier of the at least one first vector to the first function module; the at least one first vector is a vector corresponding to the first request in at least one second vector stored in the target second function module; The first function module is configured to receive the identifier of the at least one first vector from the target second function module, and send a third request to the third function module, the third request being used to request to obtain original data corresponding to the at least one first vector; The third function module is configured to receive the third request from the first function module, and provide at least one first original data to the first network element according to the third request, the at least one first original data being original data corresponding to the at least one first vector; wherein the at least one first original data is used to assist in performing the target task, and the first request and the at least one first original data are used to obtain at least one subtask corresponding to the target task of the first request in combination with a network model.
11. The memory module of claim 10, wherein, The third function module is further configured to: receive at least one second original data from a data source; and call a vectorization model to generate the at least one second vector corresponding to the at least one second original data, wherein the vectorization model is stored locally by the first function module, or is called by the third function module from the network model; or receive the at least one second vector from a data source, wherein the at least one second vector is generated by the data source calling the vectorization model in the first function module, or the at least one second vector is generated by the data source calling the vectorization model in the network model; store the at least one second vector and an identifier of the at least one second vector, and send the at least one second vector and the identifier of the at least one second vector to the at least one second function module; The at least one second function module is further configured to receive and store the at least one second vector and the identifier of the at least one second vector.
12. The storage module of claim 11, wherein, The third function module is further configured to store at least one second original data corresponding to the at least one second vector.
13. The memory module of claim 11, wherein, The third function module is further configured to store a correspondence between the at least one second vector and / or the identifier of the at least one second vector and the data source, and send first indication information to the data source, the first indication information indicating that the data source stores the correspondence between the at least one second vector and / or the identifier of the at least one second vector and the at least one second original data.
14. The memory module of any of claims 10-13, wherein, The at least one second function module is a plurality of second function modules, and the first request includes information of the target second function module.
15. The storage module of claim 14, wherein, Before the first function module sends the second request to the target second function module, the storage module is further configured to: receive a query request from the first network element, and send a first response to the first network element according to the query request, the query request being used to query whether the storage module includes the target second function module, and the first response indicating that the storage module does not include the target second function module; receive a creation request from the first network element, and create the target second function module according to the creation request, the creation request being used to request to create the target second function module.
16. The memory module of any of claims 10-15, wherein, The third request includes the identifier of the at least one first vector and first condition information, the first condition information being used to indicate a constraint condition for obtaining corresponding at least one original data in the at least one first vector; and the first condition information includes at least one of the following: an identifier of the first network element; a pickup time corresponding to a related time of the at least one first original data.
17. The memory module of claim 11, wherein, The providing of the at least one first original data to the first network element according to the third request includes: obtaining the at least one first original data corresponding to the at least one first vector stored in the third function module according to the third request; sending a second response to the first network element, the second response including the at least one first original data corresponding to the at least one first vector.
18. The storage module of claim 12, wherein, The providing of the at least one first original data to the first network element according to the third request includes: sending a fourth request to a target data source according to the third request, the target data source being a data source in the at least one data source that has a correspondence with the at least one first vector and / or the identifier of the at least one first vector, and the fourth request being used to instruct the target data source to send the at least one first original data corresponding to the at least one first vector to the first network element.
19. A communications device, characterized by The computer readable storage medium stores a computer program, and the computer program is executed to implement the method performed by any of the intelligent agents in claims 1 to 9. 20.A communication device, characterized in that, the communication device includes at least one processor coupled with a memory; wherein the at least one processor is configured to execute computer programs or instructions stored in the memory, so that the method performed by any of the storage modules in the method of any of claims 1 to 9 is implemented.
21. A computer-readable storage medium, characterized in that, The computer readable storage medium stores a computer program, and the computer program is executed to implement the method performed by any of the intelligent agents in claims 1 to 9. The computer readable storage medium stores a computer program, and the computer program is executed to implement the method performed by any of the intelligent agents in claims 1 to 9.
22. A computer program, characterized in that, When the computer program is run, it causes the method performed by any of the storage modules as claimed in claims 1 to 9 to be implemented.
Citation Information
Patent Citations
Data retrieval system and method and medium
CN114329011A
Vector database retrieval method and device driven by large language model
CN117112852A
Large model retrieval enhancement system based on vector database
CN117609286A
Multi-party joint vector knowledge base retrieval method and system for privacy protection
CN117708263A
Task processing method, music question and answer method and task processing model training method
CN118245577A