Model reasoning method and device and computing equipment
By tracing and matching non-text data in real time within RAG technology to enhance its correlation with text data, the problems of insufficient usability, accuracy, and diversity of output content in existing technologies are solved, thereby improving the user experience.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-08-28
- Publication Date
- 2026-03-10
AI Technical Summary
Existing RAG technology lacks usability, accuracy, and diversity in its output content for knowledge base question answering scenarios, and the insertion of non-text modal data does not support streaming generation, resulting in a poor user experience.
After generating text data, the system traces back to the original text segment it references in real time, matches and inserts relevant non-text data from it, and achieves streaming output, enhancing the correlation between non-text data and text data and reducing user waiting time.
It improves the usability, accuracy, and diversity of output content, enhances the user experience, and reduces user waiting time.
Smart Images

Figure CN121638433A_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of cloud computing, and more specifically, to a method, apparatus, and computing device for model reasoning. Background Technology
[0002] Retrieval-augmented generation (RAG) is a technique that combines information retrieval and natural language generation. It retrieves relevant information from large-scale text data and uses this information to guide text generation. This technique aims to solve the information retrieval and generation problems in natural language processing tasks, improving the prediction quality and accuracy. With the rapid development of large-scale model technology, RAG has been maturely applied in knowledge base question answering scenarios. Users can use RAG to quickly retrieve content from their knowledge base to generate the content (or answer) they need.
[0003] In one related technical solution, the system outputs content (or answers) that only contains text modal data from the knowledge base. Because this single-modal output loses other non-text modal data from the knowledge base, it reduces the usability, accuracy, and diversity of the generated content (or answers), resulting in a poor user experience.
[0004] In another related technical solution, the system output (or answer) includes text modal data from the knowledge base as well as other non-text modal data. On one hand, the non-text modal data is inserted at the end of the text modal data, or at the very end of the entire output text. This results in weak correlation between the inserted non-text modal data and the text modal data before and after it, hindering user comprehension of the output content (or answer) and leading to a poor user experience. On the other hand, the insertion of other non-text modal data requires completion of the text modal data generation, does not support streaming generation, increases user waiting time, and further degrades the user experience.
[0005] In view of this, improving the comprehensibility, accuracy, and diversity of output content, and reducing user waiting time have become urgent technical problems that need to be solved. Summary of the Invention
[0006] This application provides a method, apparatus, and computing device for model reasoning, which can improve the comprehensibility, accuracy, and diversity of the output content, reduce user waiting time, and thus enhance the user experience.
[0007] In a first aspect, a method for model reasoning is provided, comprising: acquiring user input information; outputting first text related to the user input information, wherein the first text includes at least one sentence of text data; determining at least one non-text data related to the at least one sentence of text data in a target original text segment, wherein the target original text segment is an original text segment referenced by the at least one sentence of text data, and the target original text segment is contained in a user knowledge base; determining target non-text data matching the at least one sentence of text data from the at least one non-text data; and outputting the target non-text data.
[0008] In the above technical solution, after generating and outputting the first text, the target original text segment referenced by the first text is determined, and target non-text data matching the first text is identified from at least one non-text data included in the target original text segment. This target non-text data is then promptly fed back to the user. On the one hand, the non-text data is positioned after at least one sentence of text data, enhancing the correlation between the output non-text data and at least one sentence of text data, thus facilitating the user's understanding of the output content. On the other hand, text and non-text data can be output in a streaming manner, without waiting for all text and non-text data to be generated before outputting to the user, reducing user waiting time and improving the user experience.
[0009] In conjunction with the first aspect, in some implementations of the first aspect, the method further includes: generating first text related to the information input by the user.
[0010] In conjunction with the first aspect, in some implementations of the first aspect, the method further includes: tracing the source of the at least one sentence of text data to determine the target original text segment referenced by the at least one sentence of text data from the user knowledge base.
[0011] In the above technical solution, at least one sentence of text data generated can be traced to find the target original text segment referenced by the at least one sentence of text data in the user's knowledge base, so as to obtain a more accurate target non-text data to be inserted.
[0012] In conjunction with the first aspect, in some implementations of the first aspect, the context information corresponding to each of the at least one non-text data is matched with the at least one sentence of text data to determine the target non-text data that matches the at least one sentence of text data.
[0013] In the above technical solution, the context information corresponding to at least one non-text data can be combined to obtain the target non-text data that matches the at least one sentence of text data, thereby improving the efficiency and accuracy of matching.
[0014] In conjunction with the first aspect, in some implementations of the first aspect, the context information corresponding to the at least one non-text data includes: text data in the target original text that are similar to the at least one non-text data.
[0015] In conjunction with the first aspect, in some implementations of the first aspect, the method further includes: calculating the similarity between the text data contained in the target original text segment and the at least one non-text data; and determining the text data similar to the at least one non-text data based on the similarity.
[0016] In conjunction with the first aspect, in some implementations of the first aspect, the matching degree between the at least one non-text data and the at least one sentence of text data is determined; and the target non-text data that matches the at least one sentence of text data is determined based on the matching degree.
[0017] In the above technical solution, the target non-text data that matches the at least one sentence of text data can be obtained directly based on the degree of matching between at least one non-text data and at least one sentence of text data, thereby improving the efficiency and accuracy of matching. The implementation process is relatively simple.
[0018] In conjunction with the first aspect, in some implementations of the first aspect, the method further includes: extracting non-text data contained in the target original text segment; preprocessing the non-text data contained in the target original text segment, wherein the preprocessing includes at least one of the following: deduplication and low-quality filtering.
[0019] The above technical solution can also preprocess the non-text data contained in the target original text segment in advance, thereby improving the quality of the non-text data contained in the target original text segment, so as to improve the efficiency and accuracy of subsequent and at least one sentence of text data matching.
[0020] Secondly, a model reasoning apparatus is provided, comprising: an acquisition module, a determination module, and an output module. The acquisition module is used to acquire information input by a user; the output module is used to output first text related to the user input information, wherein the first text includes at least one sentence of text data; the determination module is used to determine at least one non-text data in a target original text segment related to the at least one sentence of text data, wherein the target original text segment is an original text segment referenced by the at least one sentence of text data, and the target original text segment is contained in a user knowledge base; the determination module is further used to determine target non-text data matching the at least one sentence of text data from the at least one non-text data; the output module is further used to output the target non-text data.
[0021] In conjunction with the second aspect, in some implementations of the second aspect, the apparatus further includes: a generation module for generating first text related to the information input by the user.
[0022] In conjunction with the second aspect, in some implementations of the second aspect, the device further includes: a tracing module for tracing the source of the at least one sentence of text data and determining the target original text segment referenced by the at least one sentence of text data from the user knowledge base.
[0023] In conjunction with the second aspect, in some implementations of the second aspect, the determining module is specifically used to: match the context information corresponding to the at least one non-text data with the at least one sentence of text data to determine the target non-text data that matches the at least one sentence of text data among the at least one non-text data.
[0024] In conjunction with the second aspect, in some implementations of the second aspect, the context information corresponding to the at least one non-text data includes: text data in the target original text that are similar to the at least one non-text data.
[0025] In conjunction with the second aspect, in some implementations of the second aspect, the apparatus further includes: a calculation module for calculating the similarity between text data contained in the target original text segment and the at least one non-text data; the determination module is further configured to determine text data similar to the at least one non-text data based on the similarity.
[0026] In conjunction with the second aspect, in some implementations of the second aspect, the determining module is specifically used to: determine the matching degree between the at least one non-text data and the at least one sentence of text data; and determine the target non-text data that matches the at least one sentence of text data in the at least one non-text data based on the matching degree.
[0027] In conjunction with the second aspect, in some implementations of the second aspect, the apparatus further includes: a processing module for extracting non-text data contained in the target original text segment; the processing module is further configured to preprocess the non-text data contained in the target original text segment, wherein the preprocessing includes at least one of the following: deduplication and low-quality filtering.
[0028] It should be understood that for the beneficial effects of the second aspect and its various implementations, please refer to the first aspect and its various implementations; they will not be repeated here.
[0029] Thirdly, a computing device is provided, including a processor and a memory, and optionally, an input / output interface. The processor controls the input / output interface to send and receive information, the memory stores a computer program, and the processor retrieves and runs the computer program from the memory, causing the program to execute the method of the first aspect or any possible implementation thereof.
[0030] Optionally, the processor can be a general-purpose processor, which can be implemented in hardware or software. When implemented in hardware, the processor can be a logic circuit, integrated circuit, etc.; when implemented in software, the processor can be a general-purpose processor that reads software code stored in memory. This memory can be integrated into the processor or located outside the processor and exist independently.
[0031] Fourthly, a computing device cluster is provided, including at least one computing device, each computing device including a processor and a memory; the processor of the at least one computing device is configured to execute instructions stored in the memory of the at least one computing device, such that the computing device cluster performs the method of the first aspect or any possible implementation thereof.
[0032] Fifthly, a chip is provided that acquires and executes instructions to implement the methods described in the first aspect and any implementation thereof.
[0033] Optionally, as one implementation, the chip includes a processor and a data interface, through which the processor reads instructions stored in the memory and executes the methods in the first aspect and any implementation thereof.
[0034] Optionally, as one implementation, the chip may further include a memory storing instructions, and the processor is used to execute the instructions stored in the memory. When the instructions are executed, the processor is used to perform the method in the first aspect and any implementation thereof.
[0035] In a sixth aspect, a computer program product containing instructions is provided, which, when executed by a computing device, cause the computing device to perform the methods described in the first aspect and any implementation thereof.
[0036] In a seventh aspect, a computer program product containing instructions is provided, which, when run by a cluster of computing devices, cause the cluster of computing devices to perform the methods described in the first aspect and any implementation thereof.
[0037] Eighthly, a computer-readable storage medium is provided, including computer program instructions that, when executed by a computing device, perform the method as described in the first aspect and any implementation thereof.
[0038] As examples, these computer-readable storage devices include, but are not limited to, one or more of the following: read-only memory (ROM), programmable ROM (PROM), erasable PROM (EPROM), flash memory, electrically EPROM (EEPROM), and hard drive.
[0039] Alternatively, as one implementation method, the aforementioned storage medium can specifically be a non-volatile storage medium.
[0040] A ninth aspect provides a computer-readable storage medium including computer program instructions that, when executed by a cluster of computing devices, perform the method as described in the first aspect and any implementation thereof.
[0041] As examples, these computer-readable storage devices include, but are not limited to, one or more of the following: read-only memory (ROM), programmable ROM (PROM), erasable PROM (EPROM), flash memory, electrically EPROM (EEPROM), and hard drive.
[0042] Alternatively, as one implementation method, the aforementioned storage medium can specifically be a non-volatile storage medium. Attached Figure Description
[0043] Figure 1 This is a schematic block diagram of a cloud scenario applicable to embodiments of this application.
[0044] Figure 2 This is a schematic block diagram of a system architecture applicable to embodiments of this application.
[0045] Figure 3 This is a schematic flowchart illustrating a method for creating a database according to an embodiment of this application.
[0046] Figure 4 This is a schematic flowchart illustrating a model reasoning method provided in an embodiment of this application.
[0047] Figure 5 This is a schematic block diagram of a model reasoning apparatus 500 provided in an embodiment of this application.
[0048] Figure 6This is a schematic diagram of the architecture of a computing device 1500 provided in an embodiment of this application.
[0049] Figure 7 This is a schematic diagram of the architecture of a computing device cluster provided in an embodiment of this application.
[0050] Figure 8 This is a schematic diagram showing the connection between computing devices 1500A and 1500B via a network, as provided in the embodiments of this application. Detailed Implementation
[0051] The technical solutions in this application will now be described with reference to the accompanying drawings.
[0052] This application will present various aspects, embodiments, or features relating to systems comprising multiple devices, components, modules, etc. It should be understood and appreciated that individual systems may include additional devices, components, modules, etc., and / or may not include all devices, components, modules, etc. discussed in conjunction with the accompanying drawings. Furthermore, combinations of these approaches are also possible.
[0053] Furthermore, in the embodiments of this application, the words "exemplary," "for example," etc., are used to indicate that they are examples, illustrations, or descriptions. Any embodiment or design scheme described as "exemplary" in this application should not be construed as being more preferred or advantageous than other embodiments or design schemes. Specifically, the use of the term "exemplary" is intended to present the concept in a concrete manner.
[0054] In the embodiments of this application, "corresponding" and "corresponding" can sometimes be used interchangeably. It should be noted that when the distinction is not emphasized, their intended meanings are consistent.
[0055] The business scenarios described in the embodiments of this application are for the purpose of more clearly illustrating the technical solutions of the embodiments of this application, and do not constitute a limitation on the technical solutions provided in the embodiments of this application. As those skilled in the art will know, with the evolution of network architecture and the emergence of new business scenarios, the technical solutions provided in the embodiments of this application are also applicable to similar technical problems.
[0056] References to "one embodiment" or "some embodiments" as described in this specification mean that one or more embodiments of this application include a specific feature, structure, or characteristic described in connection with that embodiment. Therefore, the phrases "in one embodiment," "in some embodiments," "in other embodiments," "in still other embodiments," etc., appearing in different parts of this specification do not necessarily refer to the same embodiment, but rather mean "one or more, but not all, embodiments," unless otherwise specifically emphasized. The terms "comprising," "including," "having," and variations thereof mean "including but not limited to," unless otherwise specifically emphasized.
[0057] In this application, "at least one" means one or more, and "more than one" means two or more. "And / or" describes the relationship between related objects, indicating that three relationships can exist. For example, A and / or B can mean: A alone, A and B simultaneously, and B alone, where A and B can be singular or plural. The character " / " generally indicates that the preceding and following related objects are in an "or" relationship. "At least one of the following" or similar expressions refer to any combination of these items, including any combination of single or plural items. For example, at least one of a, b, or c can mean: a, b, c, ab, ac, bc, or abc, where a, b, and c can be single or multiple.
[0058] For ease of description, the concepts involved in the embodiments of this application will be explained below.
[0059] 1. Retrieval-augmented generation (RAG) technology
[0060] RAG (Related Aspects of Generative Language) technology is a technique that combines information retrieval and natural language generation. It retrieves relevant information from large-scale text data and uses this information to guide text generation. This technology aims to solve the information retrieval and generation problems in natural language processing tasks, improving the prediction quality and accuracy in these tasks.
[0061] As an example, the workflow of RAG technology typically includes the following key steps:
[0062] 1) Retrieval Phase: Based on the user's query, the system retrieves relevant information from a large-scale document collection. This step utilizes information retrieval technologies, such as indexing and retrieval algorithms, to quickly extract query-related content from text data.
[0063] 2) Utilization stage: The system uses the retrieved information to populate text or answer questions. This information serves as a reference or context for generating text, helping to produce more accurate and valuable text content.
[0064] 3) Generation Stage: Based on the retrieved knowledge and the user's query, the system uses a natural language generation model (such as a large language model) to generate the final text content. This step combines the retrieved information with the capabilities of the generation model to generate natural language text that meets the user's needs.
[0065] As an example, RAG technology can be applied to various natural language processing tasks. For instance, its application scenarios may include, but are not limited to, the following:
[0066] 1) Question answering system: It provides accurate answers by retrieving large-scale document collections without the need for specific training for each question.
[0067] 2) Document generation and automatic summarization: Based on the retrieved knowledge, text is populated to generate article paragraphs, documents, or automatic summaries with informational value.
[0068] 3) Intelligent assistant and virtual agent: Answer user questions, provide information and perform tasks by combining chat history, without the need for specific task fine-tuning.
[0069] 4) Information retrieval and knowledge graph filling: Improve the information retrieval system to make it more accurate and profound, and use it to fill entity relationships in the knowledge graph.
[0070] 2. Text modal data
[0071] Text modal data includes plain text data.
[0072] 3. Non-text modal data
[0073] Non-text modal data refers to non-text data, such as images, tables, audio, and video.
[0074] With the rapid development of large model technology, RAG technology has been widely and maturely applied in knowledge base question answering scenarios. Users can use RAG technology to quickly retrieve content from their knowledge base to generate the content (or answer) they need.
[0075] In one related technical solution, the system outputs content (or answers) that only contains text modal data from the knowledge base. Because this single-modal output loses other non-text modal data from the knowledge base, it reduces the usability, accuracy, and diversity of the generated content (or answers), resulting in a poor user experience.
[0076] In another related technical solution, the system output (or answer) includes text modal data from the knowledge base as well as other non-text modal data. On one hand, the non-text modal data is inserted at the end of the text modal data, or at the very end of the entire output text. This results in weak correlation between the inserted non-text modal data and the text modal data before and after it, hindering user comprehension of the output content (or answer) and leading to a poor user experience. On the other hand, the insertion of other non-text modal data requires completion of the text modal data generation, does not support streaming generation, increases user waiting time, and further degrades the user experience.
[0077] In view of this, embodiments of this application provide a method that can output corresponding content (or answers) based on user-input questions. This output includes not only text modal data from a knowledge base but also other non-text modal data associated with the text modal data, ensuring a strong correlation between the inserted non-text modal data and the preceding and following text modal data. This improves the usability, accuracy, and diversity of the generated content (or answers), enhancing the user experience.
[0078] In one possible implementation, the method provided in this application embodiment can be applied to cloud service scenarios. For ease of description, the following will first combine... Figure 1 It provides a detailed description of cloud service scenarios.
[0079] Figure 1 This is a schematic block diagram illustrating a cloud scenario applicable to embodiments of this application. For example... Figure 1 As shown, the cloud scenario may include: cloud management platform 110, Internet 120, and client 130.
[0080] like Figure 1 As shown, the cloud management platform 110 is used to manage the infrastructure that provides multiple cloud services. The infrastructure includes multiple cloud data centers, each cloud data center includes multiple servers, and each server includes cloud service resources to provide corresponding cloud services to tenants.
[0081] The cloud management platform 110 can be located in a cloud data center and provides access interfaces (such as user interfaces or application program interfaces, APIs). Tenants can use client 130 to remotely access the cloud management platform 110, register a cloud account and password, and log in. After successful authentication of the cloud account and password, the tenant can further select and purchase virtual machines of specific specifications (processor, memory, disk) on the cloud management platform 110. After successful purchase, the cloud management platform 110 provides the remote login account and password for the purchased virtual machine, allowing client 130 to remotely log in and install and run the tenant's applications. Therefore, tenants can create, manage, log in to, and operate virtual machines in the cloud data center through the cloud management platform 110. Virtual machines can also be referred to as Elastic Compute Service (ECS) or Elastic Instances (different cloud service providers may use different names).
[0082] It should be understood that cloud service tenants can be individuals, businesses, schools, hospitals, government agencies, etc.
[0083] The cloud management platform 110 includes, but is not limited to, a user console, compute management services, network management services, storage management services, authentication services, and image management services. The user console provides an interface or API for interaction with tenants. The compute management services manage servers running virtual machines and containers, as well as bare metal servers. The network management services manage network services (such as gateways and firewalls). The storage management services manage storage services (such as data bucket services). The authentication services manage tenant account passwords. The image management services manage virtual machine images. Tenants can log in to the cloud management platform 110 via client 130 and the internet 120 to manage their rented cloud services.
[0084] For ease of description, let's first combine... Figure 2 This application describes a system architecture according to an embodiment. It should be understood that... Figure 2 The examples are merely to help those skilled in the art understand the embodiments of this application, and are not intended to limit the embodiments of the application to... Figure 2 The specific numerical values or specific scenarios illustrated. Those skilled in the art will understand based on... Figure 2 The examples given below can obviously be modified or varied in various ways, and such modifications and variations also fall within the scope of the embodiments of this application.
[0085] As an example, Figure 2 This is a schematic block diagram of a system architecture applicable to embodiments of this application. For example... Figure 2 As shown, the system architecture can include online services and offline services.
[0086] 1. Offline service
[0087] The aforementioned offline service includes a document parsing module and a non-text modal data processing module. The document parsing module retrieves multiple documents from the user's knowledge base, splits each document into multiple segments, and obtains the text modal data and non-text modal data for each segment. The non-text modal data is sent to the non-text modal data processing module, which processes the non-text modal data and stores it in a non-text modal database. The storage information for both the text modal data and the non-text modal data contained within each segment in the non-text modal database is also stored in the text modal database.
[0088] 2. Online services
[0089] The aforementioned online service includes a RAG service module, a source tracing module, and a multimodal matching module. The RAG service module receives user-input questions online and retrieves and outputs a corresponding sentence of text data from the text modality database. The source tracing module identifies and marks the text segments referenced by the output sentence of text data. The multimodal matching module, based on the text segments referenced by the sentence of text modality data, retrieves the storage information of non-text modality data contained in the non-text modality database from the text modality database, and retrieves the non-text modality data contained in the non-text modality database based on this storage information. The multimodal matching module also selects non-text modality data that matches the sentence of text modality data from the retrieved non-text modality data, and inserts the matching non-text modality data after the sentence of text modality data to obtain a multimodal output corresponding to the user-input question.
[0090] Let's combine the following... Figure 3 The process of creating text modal databases and non-text modal databases in the aforementioned offline services is described in detail.
[0091] As an example, Figure 3 This is a schematic flowchart illustrating a method for creating a database according to an embodiment of this application. Figure 3 As shown, the method may include steps 310-330, which will be described in detail below.
[0092] Step 310: Parse the documents included in the user knowledge base to obtain the text modal data and non-text modal data in the user knowledge base.
[0093] In this embodiment, multiple documents included in the user's knowledge base can be parsed, and each document can be split into multiple text segments. Furthermore, text modal data and non-text modal data within each text segment can be identified.
[0094] The above text modal data can be understood as plain text data.
[0095] The aforementioned non-text modal data can be understood as other non-text data, such as images, tables, audio, and video data.
[0096] It should be noted that text modal data can also be simply referred to as text data, and non-text modal data can also be simply referred to as non-text data.
[0097] Step 320: Preprocess the non-text modal data in the user knowledge base and store the preprocessed non-text modal data in the non-text modal database.
[0098] In this embodiment of the application, non-text modal data in the user knowledge base can be obtained, and the non-text modal data can be preprocessed to obtain preprocessed non-text modal data.
[0099] As examples, the following describes several processes for preprocessing non-textual modal data.
[0100] One possible implementation is to deduplicate the non-textual modal data in the user knowledge base.
[0101] For example, highly similar non-textual modal data in a user knowledge base can be deduplicated to remove non-textual modal data with high similarity. For instance, the similarity of each non-textual modal data in the user knowledge base can be calculated using a similarity calculation algorithm, and highly similar non-textual modal data can be deduplicated based on this similarity.
[0102] Another possible implementation is to filter out low-quality non-textual modal data in the user's knowledge base.
[0103] For example, low-quality non-textual modal data can be removed from the user's knowledge base, thereby improving the quality of non-textual modal data.
[0104] In this embodiment of the application, after obtaining the preprocessed non-text modal data, the preprocessed non-text modal data can be stored in a non-text modal database.
[0105] In this embodiment of the application, the text modal data associated with each non-text modal data can also be recorded in the non-text modal database. That is, the similarity or correlation between the text modal data and each non-text modal data in the text segment can be calculated, and the text modal data associated with each non-text modal data can be obtained based on the similarity or correlation, and the text modal data associated with each non-text modal data can also be recorded in the non-text modal database.
[0106] The text modal data associated with the non-text modal data mentioned above may include, but is not limited to: text modal data in the text that is adjacent to the non-text modal data, and text modal data in the text that has a high similarity or correlation with the non-text modal data.
[0107] It should be understood that the text modal data adjacent to the non-text modal data mentioned above can be text modal data located before or after the non-text modal data, and this application does not make any specific limitation in this regard.
[0108] Optionally, in this embodiment of the application, other key information of each non-text modal data can also be extracted and recorded in the non-text modal database.
[0109] For example, other key information in the aforementioned non-text modal data may include, but is not limited to, image dimensions, video length, and the document to which it belongs.
[0110] Step 330: Store the text modal data from the user knowledge base in the text modal database.
[0111] In this embodiment of the application, the text modal data contained in each text segment in the user knowledge base, as well as the address information of the non-text modal data originally contained in the text segment stored in the non-text modal database, can be stored in the text modal database.
[0112] The following is combined Figure 4 The present application provides a detailed description of a method provided in an embodiment.
[0113] Figure 4 This is a schematic flowchart illustrating a model reasoning method provided in an embodiment of this application. Figure 4 As shown, the method may include steps 410-450, which will be described in detail below.
[0114] Step 410: Obtain the information input by the user.
[0115] As an example, in this application embodiment, information input by the user can be obtained, such as a question input by the user.
[0116] Step 420: Obtain and output the corresponding target text modality data from the text modality database based on the information input by the user.
[0117] In this embodiment of the application, after obtaining the user input information, the corresponding target text modality data can be obtained from the text modality database based on the user input information and streamed to the user according to RAG technology.
[0118] As an example, the target text modal data mentioned above is text data related to information input by the user, which may be, for example, at least one sentence of text.
[0119] Step 430: Determine the target text segment referenced by the target text modal data.
[0120] In this embodiment, the target text modal data can be traced to determine the target text segment referenced by it. This not only improves the credibility of the system's output content but also enhances the accuracy of inserted target non-text modal data.
[0121] This application does not specifically limit the above-mentioned tracing method. Several different implementation methods are given below.
[0122] Implementation method 1 can leverage the capabilities of large models to generate the target text segments (source tracing results) referenced by the target text modal data while the large model is streaming the target text modal data.
[0123] Implementation method 2 involves adding a processing module. After the target text modal data is streamed from the large model, the module dynamically determines the target text segments (source tracing results) referenced by the generated target text modal data.
[0124] It should be noted that either implementation method 1 or implementation method 2 described above can be used alone to determine and output the source tracing result of the target text modality data, or both implementation method 1 and implementation method 2 described above can be used simultaneously to determine and output the source tracing result of the target text modality data. This application embodiment does not specifically limit this.
[0125] For example, a comprehensive analysis component can be added. This component performs intersection, union, or weighted analysis on the two implementation methods mentioned above (all of which are open for configuration and can be customized by users) to finally output the target text segment (source tracing result) referenced by the target text modality data.
[0126] In the above technical solution, the process of determining the target non-text modal data to be inserted in the target text modal data is combined with the source tracing results of the target text modal data, which improves the accuracy of the target non-text modal data to be inserted.
[0127] Step 440: Obtain a candidate set, which includes multiple non-textual modal data contained in the target text.
[0128] In this embodiment of the application, after determining the target text segment referenced by the target text modal data, multiple non-text modal data contained in the target text segment can be obtained, and these multiple non-text modal data can be used as candidate non-text modal data, which constitute a candidate set.
[0129] As an example, after determining the target text segment referenced by the target text modal data, the address information of the multiple non-text modal data originally contained in the target text segment stored in the non-text modal database can be obtained from the text modal database, and the multiple non-text modal data can be obtained from the non-text modal database based on the address information.
[0130] Step 450: Determine the target non-text modal data that matches the target text modal data from the candidate set, and output the target non-text modal data to the user.
[0131] In this embodiment of the application, after obtaining multiple candidate non-text modal data, a target non-text modal data that matches the target text modal data can be selected from the multiple candidate non-text modal data based on a correlation determination algorithm and output to the user.
[0132] In one possible implementation, a relevance determination algorithm can be used to calculate the degree of matching between the target text modal data and the text modal data associated with multiple candidate non-text modal data, and the non-text modal data with the highest degree of matching can be used as the target non-text modal data.
[0133] In another possible implementation, the matching degree between the target text modal data and multiple candidate non-text modal data can be calculated according to the model, and the non-text modal data with the highest matching degree can be used as the target non-text modal data.
[0134] It should be noted that the above two implementation methods can be used alone or in combination by assigning weights, which can be determined by the user through the configuration page. This application embodiment does not make specific limitations on this.
[0135] In this embodiment, after obtaining the aforementioned target non-text modal data, the target non-text modal data can be provided to the user, enabling the output content to contain data of multiple modalities. On one hand, the output target non-text modal data is positioned after the target text modal data, enhancing the correlation between the output target non-text modal data and the target text modal data. This facilitates user understanding of the output content and improves its usability, accuracy, and richness. On the other hand, the target text modal data and target non-text modal data can be streamed, eliminating the need to wait for all target text modal data and target non-text modal data to be generated before outputting to the user, reducing user waiting time and improving the user experience.
[0136] The above text combined Figures 1 to 4 The method provided in the embodiments of this application is described in detail below. Figures 5-8 The embodiments of the apparatus of this application are described in detail below. It should be understood that the descriptions of the method embodiments correspond to the descriptions of the apparatus embodiments; therefore, any parts not described in detail can be referred to the foregoing method embodiments.
[0137] Figure 5 This is a schematic block diagram of a model inference apparatus 500 provided in an embodiment of this application. The apparatus 500 can be implemented by software, hardware, or a combination of both. The apparatus 500 provided in this embodiment can implement the embodiments of this application. Figure 3 or Figure 4 The method flow shown includes an apparatus 500 comprising: an acquisition module 510, an output module 520, and a determination module 530. The acquisition module 510 acquires user input information; the output module 520 outputs first text related to the user input information, wherein the first text includes at least one sentence of text data; the determination module 530 determines at least one non-text data in a target original text segment related to the at least one sentence of text data, wherein the target original text segment is the original text segment referenced by the at least one sentence of text data and is contained in a user knowledge base; the determination module 530 further determines target non-text data matching the at least one sentence of text data from the at least one non-text data; and the output module 520 further outputs the target non-text data.
[0138] Optionally, the device 500 further includes a generation module for generating first text related to the information input by the user.
[0139] Optionally, the device 500 further includes: a tracing module for tracing the source of the at least one sentence of text data and determining the target original text segment referenced by the at least one sentence of text data from the user knowledge base.
[0140] Optionally, the determining module 530 is specifically used to: match the context information corresponding to the at least one non-text data with the at least one sentence of text data to determine the target non-text data that matches the at least one sentence of text data among the at least one non-text data.
[0141] Optionally, the context information corresponding to the at least one non-text data includes: text data in the target original text that are similar to the at least one non-text data.
[0142] Optionally, the device 500 further includes: a calculation module for calculating the similarity between the text data contained in the target original text segment and the at least one non-text data; the determination module 530 is further configured to determine the text data similar to the at least one non-text data based on the similarity.
[0143] Optionally, the determining module 530 is specifically used to: determine the matching degree between the at least one non-text data and the at least one sentence of text data respectively; and determine the target non-text data that matches the at least one sentence of text data in the at least one non-text data according to the matching degree.
[0144] Optionally, the device 500 further includes: a processing module for extracting non-text data contained in the target original text segment; the processing module is also used to preprocess the non-text data contained in the target original text segment, wherein the preprocessing includes at least one of the following: deduplication and low-quality filtering.
[0145] The device 500 here can be embodied in the form of a functional module. The term "module" here can be implemented in software and / or hardware, without specific limitations.
[0146] For example, a "module" can be a software program, a hardware circuit, or a combination of both that implements the above functions. For instance, the implementation of module 510 will be described below using module 510 as an example. Similarly, the implementation of other modules, such as output module 520, determination module 530, generation module, tracing module, and calculation module, can refer to the implementation of module 510.
[0147] As an example of a software functional unit, the acquisition module 510 may include code running on a computing instance. The computing instance may include at least one of a physical host (computing device), a virtual machine, or a container. Further, the aforementioned computing instance may be one or more. For example, the acquisition module 510 may include code running on multiple hosts / virtual machines / containers. It should be noted that the multiple hosts / virtual machines / containers used to run the code may be distributed in the same region or in different regions. Further, the multiple hosts / virtual machines / containers used to run the code may be distributed in the same availability zone (AZ) or in different AZs, each AZ including one or more geographically proximate data centers. Typically, a region may include multiple AZs.
[0148] Similarly, multiple hosts / virtual machines / containers used to run this code can be distributed within the same Virtual Private Cloud (VPC) or across multiple VPCs. Typically, a VPC is set up within a region. Communication between two VPCs within the same region, as well as between VPCs in different regions, requires a communication gateway to be set up within each VPC to enable interconnection between VPCs.
[0149] As an example of a hardware functional unit, the acquisition module 510 may include at least one computing device, such as a server. Alternatively, the acquisition module 510 may also be a device implemented using an application-specific integrated circuit (ASIC) or a programmable logic device (PLD). The PLD may be implemented using a complex programmable logical device (CPLD), a field-programmable gate array (FPGA), generic array logic (GAL), or any combination thereof.
[0150] The multiple computing devices included in the acquisition module 510 can be distributed in the same region or in different regions. Similarly, the multiple computing devices included in the acquisition module 510 can be distributed in the same Availability Zone (AZ) or in different AZs. Likewise, the multiple computing devices included in the acquisition module 510 can be distributed in the same Virtual Private Cloud (VPC) or in multiple VPCs. These multiple computing devices can be any combination of computing devices such as servers, ASICs, PLDs, CPLDs, FPGAs, and GALs.
[0151] Therefore, the modules of the various examples described in the embodiments of this application 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.
[0152] It should be noted that the above embodiments of the device, when executing the above methods, are only illustrative examples of the division of the above functional modules. In practical applications, the above functions can be assigned to different functional modules as needed, that is, the internal structure of the device can be divided into different functional modules to complete all or part of the functions described above. For example, the acquisition module 510 can be used to execute any step in the above methods, the output module 520 can be used to execute any step in the above methods, the determination module 530 can be used to execute any step in the above methods, the generation module can be used to execute any step in the above methods, the tracing module can be used to execute any step in the above methods, and the calculation module can be used to execute any step in the above methods. The steps implemented by the acquisition module 510, output module 520, determination module 530, generation module, tracing module, and calculation module can be specified as needed. By implementing different steps in the above methods through the acquisition module 510, output module 520, determination module 530, generation module, tracing module, and calculation module, all the functions of the above device can be realized.
[0153] Furthermore, the apparatus and method embodiments provided in the above embodiments belong to the same concept, and their specific implementation process can be found in the method embodiments above, which will not be repeated here.
[0154] The method provided in this application can be executed by a computing device, which can also be referred to as a computer system. It includes a hardware layer, an operating system layer running on top of the hardware layer, and an application layer running on the operating system layer. The hardware layer includes hardware such as processing units, memory, and memory control units; the functions and structure of this hardware will be described in detail later. The operating system can be any one or more computer operating systems that implement business processing through processes, such as Linux, Unix, Android, iOS, or Windows. The application layer includes applications such as browsers, address books, word processing software, and instant messaging software. Optionally, the computer system can be a handheld device such as a smartphone, or a terminal device such as a personal computer; this application does not particularly limit this, as long as the method provided in this application can be used. The executing entity of the method provided in this application can be a computing device, or a functional module within the computing device capable of calling and executing programs.
[0155] The following is combined Figure 6 This application provides a detailed description of a computing device provided in an embodiment.
[0156] Figure 6 This is a schematic diagram of the architecture of a computing device 1500 provided in an embodiment of this application. The computing device 1500 can be a server, a computer, or other device with computing capabilities. Figure 6 The computing device 1500 shown includes at least one processor 1510 and a memory 1520.
[0157] It should be understood that this application does not limit the number of processors and memories in the computing device 1500.
[0158] The processor 1510 executes instructions in the memory 1520, causing the computing device 1500 to implement the method provided in this application. Alternatively, the processor 1510 executes instructions in the memory 1520, causing the computing device 1500 to implement the various functional modules provided in this application, thereby implementing the method provided in this application.
[0159] Optionally, the computing device 1500 also includes a communication interface 1530. The communication interface 1530 uses a transceiver module, such as, but not limited to, a network interface card or a transceiver, to enable communication between the computing device 1500 and other devices or communication networks.
[0160] Optionally, the computing device 1500 further includes a system bus 1540, wherein the processor 1510, memory 1520, and communication interface 1530 are respectively connected to the system bus 1540. The processor 1510 can access the memory 1520 through the system bus 1540; for example, the processor 1510 can perform data read / write or code execution in the memory 1520 through the system bus 1540. The system bus 1540 is a peripheral component interconnect express (PCI) bus or an extended industry standard architecture (EISA) bus, etc. The system bus 1540 is divided into an address bus, a data bus, a control bus, etc. For ease of representation, Figure 6 The bus is represented by a single thick line, but this does not mean that there is only one bus or one type of bus.
[0161] In one possible implementation, the processor 1510 primarily functions to interpret the instructions (or code) of a computer program and process data within the computer software. The instructions of the computer program and the data within the computer software can be stored in memory 1520 or cache 1516.
[0162] Optionally, processor 1510 may be an integrated circuit chip with signal processing capabilities. By way of example and not limitation, processor 1510 may be a general-purpose processor, a digital signal processor (DSP), an application-specific integrated circuit (ASIC), a field-programmable gate array (FPGA), or other programmable logic devices, discrete gate or transistor logic devices, or discrete hardware components. A general-purpose processor may be a microprocessor, etc. For example, processor 1510 may be a central processing unit (CPU).
[0163] Optionally, each processor 1510 includes at least one processing unit 1512 and a memory control unit 1514.
[0164] Optionally, the processing unit 1512, also known as the core, is the most important component of the processor. The processing unit 1512 is manufactured from single-crystal silicon using a specific production process. All calculations, command reception, command storage, and data processing are performed by the core. Each processing unit independently executes program instructions, utilizing parallel computing capabilities to accelerate program execution. Various processing units have fixed logical structures; for example, a processing unit includes logical units such as a Level 1 cache, a Level 2 cache, an execution unit, an instruction-level unit, and a bus interface.
[0165] In one implementation example, the memory control unit 1514 controls the data interaction between the memory 1520 and the processing unit 1512. Specifically, the memory control unit 1514 receives memory access requests from the processing unit 1512 and controls access to memory based on the memory access requests. By way of example and not limitation, the memory control unit is a device such as a memory management unit (MMU).
[0166] In one implementation example, each memory control unit 1514 addresses the memory 1520 via the system bus. An arbitrator is configured in the system bus. Figure 6 (Not shown in the image), the arbitrator is responsible for handling and coordinating competing accesses of multiple processing units 1512.
[0167] In one implementation example, the processing unit 1512 and the memory control unit 1514 are connected via internal chip connection lines, such as address lines, thereby enabling communication between the processing unit 1512 and the memory control unit 1514.
[0168] Optionally, each processor 1510 also includes a cache 1516, which is a buffer for data exchange (called a cache). When the processing unit 1512 needs to read data, it first looks for the required data in the cache. If the data is found, it is executed directly; otherwise, it looks for the data in memory. Since the cache operates much faster than memory, its purpose is to help the processing unit 1512 run faster.
[0169] The memory 1520 provides runtime space for processes in the computing device 1500. For example, the memory 1520 stores the computer program (specifically, the program code) used to generate the process. After the computer program is run by the processor to generate a process, the processor allocates corresponding storage space for the process in the memory 1520. Furthermore, the aforementioned storage space further includes text segments, initialized data segments, bit initialized data segments, stack segments, heap segments, etc. The memory 1520 stores data generated during the process's execution, such as intermediate data or process data, in the aforementioned process-specific storage space.
[0170] Optionally, the memory, also known as RAM, is used to temporarily store the data processed by the processor 1510, as well as data exchanged with external storage devices such as hard disks. As long as the computer is running, the processor 1510 will load the data that needs to be processed into RAM for processing, and after the processing is completed, the processing unit 1512 will send the result out.
[0171] By way of example and not limitation, memory 1520 is volatile memory or non-volatile memory, or may include both volatile and non-volatile memory. Non-volatile memory is 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 is random access memory (RAM) used as an external cache. By way of example, but not limitation, many forms of RAM are available, such as 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 (DRRAM). It should be noted that the memory 1520 of the systems and methods described herein is intended to include, but is not limited to, these and any other suitable types of memory.
[0172] The above-described structure of the computing device 1500 is merely illustrative and is not intended to limit the application. The computing device 1500 in this application includes various hardware components found in existing computer systems. For example, the computing device 1500 may also include other memories besides the memory 1520, such as disk storage. Those skilled in the art should understand that the computing device 1500 may also include other devices necessary for normal operation. Furthermore, depending on specific needs, those skilled in the art should understand that the computing device 1500 may also include hardware devices for implementing other additional functions. Moreover, those skilled in the art should understand that the computing device 1500 may only include the devices necessary for implementing the embodiments of this application, and may not necessarily include... Figure 6 All the devices shown.
[0173] This application also provides a computing device cluster. The computing device cluster includes at least one computing device. The computing device may be a server. In some embodiments, the computing device may also be a desktop computer, a laptop computer, or a smartphone, or other terminal device.
[0174] like Figure 7 As shown, the computing device cluster includes at least one computing device 1500. The memory 1520 of one or more computing devices 1500 in the computing device cluster may store the same instructions for performing the methods described above.
[0175] In some possible implementations, the memory 1520 of one or more computing devices 1500 in the computing device cluster may also each store a portion of the instructions for executing the above-described methods. In other words, a combination of one or more computing devices 1500 can jointly execute the instructions of the above-described methods.
[0176] It should be noted that the memory 1520 in different computing devices 1500 within the computing device cluster can store different instructions, each used to execute a portion of the functions of the aforementioned device. That is, the instructions stored in the memory 1520 of different computing devices 1500 can implement the functions of one or more modules within the aforementioned device.
[0177] In some possible implementations, one or more computing devices in a computing device cluster can be connected via a network. This network can be a wide area network (WAN) or a local area network (LAN), etc. Figure 8 One possible implementation is shown. For example... Figure 8 As shown, the two computing devices 1500A and 1500B are connected via a network. Specifically, they are connected to the network through the communication interfaces in each computing device.
[0178] It should be understood that Figure 8The functions of computing device 1500A shown can also be performed by multiple computing devices 1500. Similarly, the functions of computing device 1500B can also be performed by multiple computing devices 1500.
[0179] In this embodiment, a computer program product containing instructions is also provided. The computer program product may be a software or program product containing instructions capable of running on a computing device or stored on any usable medium. When run on a computing device, it causes the computing device to perform the methods provided above, or causes the computing device to perform the functions of the apparatus provided above.
[0180] In this embodiment, a computer-readable storage medium is also provided. This computer-readable storage medium can be any available medium that a computing device can store, or a data storage device such as a data center containing one or more available media. The available medium can be a magnetic medium (e.g., floppy disk, hard disk, magnetic tape), an optical medium (e.g., DVD), or a semiconductor medium (e.g., solid-state drive). The computer-readable storage medium includes instructions that, when executed on a computing device, cause the computing device to perform the method described above.
[0181] It should be understood that in the various embodiments of this application, the order of the above-mentioned processes does not imply the order of execution. The execution order of each process should be determined by its function and internal logic, and should not constitute any limitation on the implementation process of the embodiments of this application.
[0182] 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.
[0183] 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.
[0184] In the several embodiments provided in this application, it should be understood that the disclosed systems, apparatuses, 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 coupling or direct coupling or communication connection shown or discussed may be through some interfaces; the indirect coupling or communication connection between apparatuses or units may be electrical, mechanical, or other forms.
[0185] 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.
[0186] 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.
[0187] 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, read-only memory (ROM), random access memory (RAM), magnetic disks, or optical disks.
[0188] 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 method of model inference, the method comprising: The method comprises: obtaining user input information; outputting first text related to the user input information, wherein the first text comprises at least one sentence of text data; determining at least one non-text data related to the at least one sentence of text data in a target original text segment, wherein the target original text segment is an original text segment referenced by the at least one sentence of text data, and the target original text segment is contained in a user knowledge base; determining target non-text data matching the at least one sentence of text data from the at least one non-text data; outputting the target non-text data.
2. The method of claim 1, wherein, The method further comprises: tracing the at least one sentence of text data to determine the target original text segment referenced by the at least one sentence of text data from the user knowledge base.
3. The method according to claim 1 or 2, characterized in that, The determination of the target non-text data matching the at least one sentence of text data from the at least one non-text data comprises: matching the context information corresponding to the at least one non-text data respectively with the at least one sentence of text data to determine the target non-text data matching the at least one sentence of text data from the at least one non-text data.
4. The method of claim 3, wherein, The context information corresponding to the at least one non-text data comprises text data similar to the at least one non-text data in the target original text segment.
5. The method of claim 4, wherein, The method further comprises: calculating the similarity of the text data contained in the target original text segment and the at least one non-text data; determining text data similar to the at least one non-text data according to the similarity respectively.
6. The method according to any one of claims 1 to 5, characterized in that, The determination of the target non-text data matching the at least one sentence of text data from the at least one non-text data comprises: determining the matching degree of the at least one non-text data with the at least one sentence of text data respectively; determining the target non-text data matching the at least one sentence of text data from the at least one non-text data according to the matching degree.
7. The method according to any one of claims 1 to 6, characterized in that, The method further comprises: extracting non-text data contained in the target original text segment; preprocessing the non-text data contained in the target original text segment, wherein the preprocessing comprises at least one of the following: deduplication, low-quality filtering.
8. An apparatus for model inference, the apparatus comprising: The device comprises: an acquisition module configured to obtain user input information; an output module configured to output first text related to the user input information, wherein the first text comprises at least one sentence of text data; a determination module configured to determine at least one non-text data related to the at least one sentence of text data in a target original text segment, wherein the target original text segment is an original text segment referenced by the at least one sentence of text data, and the target original text segment is contained in a user knowledge base; the determination module is further configured to determine target non-text data matching the at least one sentence of text data from the at least one non-text data; the output module is further configured to output the target non-text data.
9. The apparatus of claim 8, wherein, The device further comprises: a tracing module configured to trace the at least one sentence of text data to determine the target original text segment referenced by the at least one sentence of text data from the user knowledge base.
10. The apparatus of claim 8 or 9, wherein, The determination module is specifically configured to: The context information corresponding to the at least one non-text data is matched with the at least one sentence of text data respectively, and target non-text data in the at least one non-text data that matches the at least one sentence of text data is determined.
11. The apparatus of claim 10, wherein, The context information corresponding to the at least one non-text data includes text data similar to the at least one non-text data in the target original text segment respectively.
12. The apparatus of claim 11, wherein, The apparatus further includes: A computing module configured to calculate a similarity between text data included in the target original text segment and the at least one non-text data. The determining module is further configured to determine text data similar to the at least one non-text data according to the similarity respectively.
13. The apparatus of any one of claims 8-12, wherein, The determining module is specifically configured to: Determine a matching degree of the at least one non-text data with the at least one sentence of text data respectively; and Determine target non-text data in the at least one non-text data that matches the at least one sentence of text data according to the matching degree.
14. The apparatus of any one of claims 8-13, wherein, The apparatus further includes: A processing module configured to extract non-text data included in the target original text segment. The processing module is further configured to pre-process the non-text data included in the target original text segment, and the pre-processing includes at least one of the following: deduplication, low-quality filtering.
15. A cluster of computing devices, characterized in that, The at least one computing device includes a processor and a memory; The processor of the at least one computing device is configured to execute instructions stored in the memory of the at least one computing device, so that the computing device cluster executes the method according to any one of claims 1 to 7.
16. A computer program product comprising instructions, characterized in that, When the instructions are executed by the computing device cluster, the computing device cluster executes the method according to any one of claims 1 to 7.
17. A computer readable storage medium characterized by: The computer program instructions, when executed by the computing device cluster, cause the computing device cluster to execute the method according to any one of claims 1 to 7.