Information retrieval method and device, electronic equipment and storage medium

By using a global dialogue state object to track user intent in an enterprise office automation system, parallel retrieval of heterogeneous databases and fusion of results, the efficiency and accuracy issues of information retrieval in massive amounts of data are solved, improving user experience and enterprise operational efficiency.

CN121743368APending Publication Date: 2026-03-27IFLYTEK CO LTD
View PDF 9 Cites 0 Cited by

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2026-02-27
Publication Date
2026-03-27

AI Technical Summary

Technical Problem

In enterprise office automation systems, how to quickly and accurately retrieve the required information from massive amounts of business data and improve enterprise operational efficiency, especially in natural language retrieval scenarios involving multiple rounds of interaction, semantic and logical mixtures, and high ambiguity, where existing technologies suffer from low retrieval efficiency and poor accuracy.

Method used

By tracking user intent based on a global dialogue state object, parallel retrieval instructions are generated to search heterogeneous databases. The retrieval results are then fused, and dynamic ambiguity detection and clarification are performed using a large language model to ensure the accuracy and efficiency of the retrieval.

Benefits of technology

It ensures that key information is not lost during multi-round conversations, and allows for quick and accurate retrieval of required information, improving user experience and enterprise operational efficiency, and ensuring the uniqueness and comprehensiveness of search results.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN121743368A_ABST
    Figure CN121743368A_ABST
Patent Text Reader

Abstract

The invention provides an information retrieval method and device, electronic equipment and a storage medium, and relates to the technical field of artificial intelligence, and the method comprises the steps: updating a global dialogue state object of a previous dialogue round based on user input of a current dialogue round, and obtaining a global dialogue state object of the current dialogue round; generating a parallel retrieval instruction based on the global dialogue state object of the current dialogue round; the retrieval results of the parallel retrieval instructions are fused, and the retrieval result of the current dialogue round is generated. According to the information retrieval method provided by the embodiment of the invention, the information related to the user intention in multiple rounds of dialogues is tracked and maintained through the global dialogue state object, so that key information is prevented from being lost in the multiple rounds of dialogues; the heterogeneous database is retrieved in parallel, so that accurate retrieval of the structured data and the unstructured text is realized; required information can be quickly and accurately retrieved from massive business data, and the use experience of users and the operation efficiency of enterprises are improved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application relates to the field of artificial intelligence technology, and in particular to an information retrieval method, apparatus, electronic device, and storage medium. Background Technology

[0002] As enterprises deepen their digital transformation, office automation (OA) systems have evolved from traditional process approval tools into core hubs that accumulate massive amounts of business data.

[0003] Therefore, how to quickly and accurately retrieve the required information from massive amounts of business data and improve the operational efficiency of enterprises has become a technical problem that the industry urgently needs to solve. Summary of the Invention

[0004] This application provides an information retrieval method, apparatus, electronic device, and storage medium to solve the technical problem of how to quickly and accurately retrieve the required information from massive amounts of business data and improve the operational efficiency of enterprises.

[0005] This application provides an information retrieval method, including: Based on the intent recognition results and slot extraction results of the user input in the current dialogue round, the global dialogue state object of the previous dialogue round is updated to obtain the global dialogue state object of the current dialogue round. Based on the global dialogue state object of the current dialogue round, a parallel retrieval instruction is generated; the parallel retrieval instruction is used to perform retrieval in at least two heterogeneous databases. The search results of the parallel search instructions are merged to generate the search results for the current dialogue round.

[0006] In some embodiments, before generating parallel retrieval instructions based on the global dialogue state object of the current dialogue round, the method further includes: Perform dynamic ambiguity detection on the global dialogue state object of the current dialogue round; If the global dialogue state object of the current dialogue round contains pre-defined ambiguous content, the generation of the parallel retrieval instruction is blocked, and a clarification option generated based on the pre-defined ambiguous content is returned. In response to the user's selection of the clarification option, the global dialogue state object for the current dialogue round is updated.

[0007] In some embodiments, the preset ambiguous content includes at least one of referential ambiguous content, term mapping ambiguous content, and numerical range ambiguous content.

[0008] In some embodiments, after performing dynamic ambiguity detection on the global dialogue state object of the current dialogue turn, the method further includes: If the confidence level of the detected ambiguous content is greater than a preset confidence threshold, it is determined that the preset ambiguous content exists in the global dialogue state object of the current dialogue round.

[0009] In some embodiments, the at least two heterogeneous databases include a relational database and a text vector database; The generation of parallel retrieval instructions based on the global dialogue state object of the current dialogue round includes: Based on the structured constraints in the global dialogue state object of the current dialogue round, a first search statement is generated; the first search statement is used to perform a search in the relational database. Based on the semantic keywords in the global dialogue state object of the current dialogue turn, a second search statement is generated; the second search statement is used to perform a search in the text vector database.

[0010] In some embodiments, generating a first search statement based on structured constraints in the global dialogue state object of the current dialogue turn includes: Generate permission filtering condition statements based on user permission information; The permission filtering condition statement is embedded in the first search statement.

[0011] In some embodiments, generating a second search statement based on semantic keywords in the global dialogue state object of the current dialogue turn includes: The semantic keywords are expanded using synonyms, and a retrieval vector is generated based on the synonym expansion results; A scalar filter is generated based on the structured constraints in the global dialogue state object. The second search statement is generated based on the search vector and / or the scalar filter.

[0012] In some embodiments, fusing the search results of the parallel search instructions to generate the search results for the current dialogue round includes: The fused ranking of each searched document is determined based on the ranking of each searched document in the search results of each heterogeneous database, and the search weight of each heterogeneous database; the search weight is determined based on the intent recognition result. The search results for the current dialogue round are generated based on the fusion and sorting of the various searched documents.

[0013] In some embodiments, fusing the search results of the parallel search instructions to generate the search results for the current dialogue round includes: If the search result of the parallel search instruction is empty, the numerical range of the corresponding structured constraints in the global dialogue state object is expanded based on the preset constraint priority, and / or, modifiers in the semantic keywords of the global dialogue state object of the current dialogue round are deleted to generate a secondary search instruction. The search result of the secondary search instruction is determined as the search result of the current dialogue round.

[0014] In some embodiments, updating the global dialogue state object of the previous dialogue round based on the intent recognition result and slot extraction result of the user input in the current dialogue round to obtain the global dialogue state object of the current dialogue round includes: Based on the intent recognition result and the slot extraction result, the newly added information, modified information and deleted information in the global dialogue state object are determined; Based on at least one of the newly added information, the modified information, and the deleted information, the global dialogue state object of the previous dialogue round is updated to obtain the global dialogue state object of the current dialogue round.

[0015] In some embodiments, the global dialogue state object is used to structurally store the dialogue state of a multi-turn dialogue; the dialogue state includes the intent recognition result and the slot extraction result.

[0016] This application provides an information retrieval device, comprising: The dialogue state tracking module is used to update the global dialogue state object of the previous dialogue round based on the intent recognition result and slot extraction result of the user input in the current dialogue round, so as to obtain the global dialogue state object of the current dialogue round. The retrieval instruction generation module is used to generate parallel retrieval instructions based on the global dialogue state object of the current dialogue round; the parallel retrieval instructions are used to perform retrieval in at least two heterogeneous databases; The search result fusion module is used to fuse the search results of the parallel search instructions to generate the search results for the current dialogue round.

[0017] This application provides an electronic device, including a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein the processor executes the computer program to implement the information retrieval method described above.

[0018] This application provides a non-transitory computer-readable storage medium storing a computer program thereon, which, when executed by a processor, implements the information retrieval method described above.

[0019] This application provides a computer program product, including a computer program that, when executed by a processor, implements the information retrieval method.

[0020] The information retrieval method, apparatus, electronic device, and storage medium provided in this application track and maintain contextual information related to user intent in multi-turn dialogues through a global dialogue state object, avoiding the loss of key information in multi-turn dialogues; by searching heterogeneous databases in parallel, accurate retrieval of structured data and unstructured text is achieved; by fusing the retrieval results of parallel retrieval commands, a single, comprehensive, and logically ordered retrieval result is provided to the user; and the required information can be retrieved quickly and accurately from massive amounts of business data, improving the user experience and the operational efficiency of enterprises. Attached Figure Description

[0021] The accompanying drawings, which are incorporated in and form part of this specification, illustrate embodiments consistent with this application and, together with the description, serve to explain the principles of this application.

[0022] To more clearly illustrate the technical solutions in this application or the prior art, the drawings used in the description of the embodiments or the prior art will be briefly introduced below. Obviously, the drawings described below are some embodiments of this application. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort.

[0023] Figure 1 This is a flowchart illustrating the information retrieval method provided in this application.

[0024] Figure 2 This is a flowchart illustrating the dynamic ambiguity detection method provided in this application.

[0025] Figure 3 This is a flowchart illustrating the parallel retrieval method provided in this application.

[0026] Figure 4 This is a flowchart illustrating the retrieval result fusion method provided in this application.

[0027] Figure 5 This is a flowchart illustrating the search relaxation method provided in this application.

[0028] Figure 6 This is a flowchart illustrating the multi-turn interaction and dual-path parallel hybrid retrieval method based on a large language model provided in this application.

[0029] Figure 7 This is a schematic diagram of the information retrieval device provided in this application.

[0030] Figure 8 This is a schematic diagram of the structure of the electronic device provided in this application. Detailed Implementation

[0031] To enable those skilled in the art to better understand the present application, the technical solutions in the embodiments of the present application will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of the present application, and not all embodiments. Based on the embodiments in the present application, all other embodiments obtained by those of ordinary skill in the art without creative effort should fall within the scope of protection of the present application.

[0032] It should be noted that the terms "first," "second," etc., used in this application are used to distinguish similar objects and are not necessarily used to describe a specific order or sequence. It should be understood that such data can be interchanged where appropriate so that the embodiments of this application described herein can be implemented in orders other than those illustrated or described herein. Furthermore, the terms "comprising" and "having," and any variations thereof, are intended to cover non-exclusive inclusion; for example, a process, method, system, product, or device that comprises a series of steps, units, or modules is not necessarily limited to those explicitly listed, but may include other steps, units, or modules not explicitly listed or inherent to such processes, methods, products, or devices.

[0033] Data in enterprise office automation systems exhibits high multimodal and heterogeneous characteristics: on the one hand, there is highly structured data stored in relational databases (including MySQL, Oracle, and PostgreSQL, etc.), including document numbers, applicant identifiers (IDs), department codes, reimbursement amounts, approval status logs, etc.; on the other hand, there is unstructured data stored in file systems or object storage, including statements of application reasons, approval opinion texts, attachment documents (including PDF, Word, and Excel formats), image vouchers, and scanned copies, etc.

[0034] Information retrieval methods in related technologies mainly rely on two paths: one is database retrieval based on exact matching (such as SQL databases), which requires users to combine filtering conditions through complex forms (such as manually selecting "application date range" and "document type"); the other is full-text retrieval based on inverted indexes (such as using distributed search and analysis engines (Elasticsearch) or single-machine full-text search libraries (Lucene), which requires users to input relevant keywords. However, these two traditional paths show significant limitations when facing the complex office scenarios of modern enterprises. Users often find it difficult to remember precise metadata (such as document numbers) and tend to express their needs using vague natural language, such as: "Help me find the expense report Zhang San submitted last month regarding server purchases, the amount is about 10,000 yuan, and it seems it was rejected once."

[0035] This natural language retrieval has the following significant characteristics: 1. Multi-Turn Interaction: Users' needs are often not expressed completely at once, but are gradually refined or revised through multiple rounds of dialogue. For example, a user first asks, "View my expense reports," and after the system returns a list, the user then says, "Only see those over 5,000 yuan," and then adds, "Not only mine, but also Li Si's."

[0036] 2. Hybrid Logic: The retrieval includes both unstructured descriptions that require semantic understanding ("Regarding server procurement") and structured constraints that require precise logical operations ("Amount > 10000", "Time = Last Month", "Status = Rejected").

[0037] 3. High degree of ambiguity: Natural language is inherently ambiguous. For example, "my application" may mean "the one I created" or "the one currently awaiting my approval"; "recently" may mean "within a week" or "within a month".

[0038] The emergence of Large Language Models (LLMs) has brought new opportunities to solve the above problems. Retrieval-Augmented Generation (RAG) technology enables large language models to answer domain-specific questions by inputting retrieval results as context. However, the general RAG architecture in related technologies suffers from serious incompatibility in enterprise office automation scenarios: simple vector search cannot handle precise numerical filtering and access control, while traditional text-to-SQL technology struggles to understand the semantics of unstructured text. Furthermore, large language models are prone to "state loss" or "reference errors" in multi-turn dialogues, the so-called "Lost in Conversation" phenomenon.

[0039] In order to address the shortcomings of related technologies, Figure 1 This is a flowchart illustrating the information retrieval method provided in this application, such as... Figure 1 As shown, the method includes steps 110, 120 and 130.

[0040] Step 110: Based on the intent recognition result and slot extraction result of the user input in the current dialogue round, update the global dialogue state object of the previous dialogue round to obtain the global dialogue state object of the current dialogue round.

[0041] Specifically, the information retrieval method provided in this application is executed by an information retrieval device or system. This device can be implemented in software, such as an information retrieval program; or it can be a device that executes the information retrieval method, such as a terminal, computer, or server.

[0042] From a system architecture perspective, the information retrieval device may include a retrieval module and a database module. The database module may include at least two heterogeneous databases. The retrieval module is used to run a large language model, execute the information retrieval method provided in the embodiments of this application, process the user's input in multi-turn dialogues, perform retrieval in the heterogeneous databases, and obtain the final retrieval results.

[0043] The global dialogue state object is used to structurally store the dialogue state of multi-turn conversations. It is a data object with a predefined schema and a clear hierarchy. In a specific embodiment, the global dialogue state object can be a structured data object (such as a JSON (JavaScript Object Notation) object), which acts as a "memory carrier," continuously and accurately recording and accumulating the user's dialogue state throughout the multi-turn conversation. The dialogue state can specifically include the user's intent recognition results and slot extraction results. The intent recognition results represent the user's search intent; the slot extraction results represent the search constraints.

[0044] In one specific embodiment, the global dialogue state object may include an "Intent" field to store the user's operational purpose; and a "Constraints" field, which may contain multiple slots, such as "Document Type", "Creator", "Amount", "Time Range", and "Semantic Keywords".

[0045] User input consists of natural language entered into the system by the user via keyboard or voice input. When a new round of dialogue begins (i.e., the current round), the system first receives the user's natural language input (e.g., the user enters via keyboard or voice: "Could you find the expense report Zhang San submitted last month regarding the server purchase?"). The system then processes this user input using a large language model.

[0046] Intent recognition results refer to the main purpose of the user's input as determined by the model. For example, "Help me find..." can be identified as the intent "Search for document (SEARCH_DOC)". The types of intents can be preset, and in addition to searching for document, they can also include statistical values ​​(QUERY_STAT), adding / modifying filter conditions (REFINE_FILTER), navigation instructions (NAVIGATE), or non-business casual conversation (CHIT_CHAT), etc.

[0047] The slot extraction result refers to the specific constraint information extracted by the model from the user input and filled into the corresponding slots. For example, from the above input, we can extract: "time_range" as "last month", "creator" as "Zhang San", "semantic_keywords" as "server purchase", and "doc_type" as "expense report".

[0048] To enable large language models to accurately perform intent recognition and slot extraction tasks, a few-shot prompting technique can be used to guide them. This involves providing several examples of input texts and their corresponding intent and slot extraction results in the prompt sent to the model.

[0049] After obtaining the intent recognition and slot extraction results for the current round, the system does not use them directly. Instead, it logically merges them with the global dialogue state object from the previous round, i.e., performs an update operation. This update operation ensures accurate inheritance of context. For example, if the user specified "amount greater than 10,000" in the previous round, and in the current round the user says "only Zhang San's," then the updated global dialogue state object for the current round will simultaneously contain both the constraints "amount greater than 10,000" and "creator is Zhang San," thus solving the problem of easily losing key information in related technologies. This update process is intelligent and can include various operations such as incremental updates, overwrite updates, or logical removal.

[0050] Step 120: Generate a parallel retrieval instruction based on the global dialogue state object of the current dialogue round; the parallel retrieval instruction is used to perform retrieval in at least two heterogeneous databases.

[0051] Specifically, heterogeneous databases refer to multiple databases in a system that differ in structure, type, or function when storing data.

[0052] In one specific embodiment, the heterogeneous database includes at least two types of databases: (1) Databases used to store highly structured data, such as relational databases (e.g., MySQL), which store data such as document number, applicant identifier (ID), department code, reimbursement amount, etc., which can be subjected to precise logical operations (e.g., greater than, equal to, within a range).

[0053] (2) Databases used to store unstructured or semi-structured data, which are unsuitable or difficult to retrieve using precise logic. For example, they can be full-text index databases or text vector databases, which store semantic information of large blocks of text such as application reasons and approval opinions.

[0054] Parallel retrieval instructions refer to instructions generated by the system simultaneously for at least two heterogeneous databases, each adapted to its retrieval language and capabilities, based on the content of the global dialogue state object. For example, for a relational database, the system generates an SQL retrieval statement based on the values ​​of slots related to structured data in the global dialogue state object; for another unstructured database, the system generates a corresponding retrieval instruction based on the values ​​of slots related to unstructured data in the global dialogue state object.

[0055] The generation of these search instructions is parallel, meaning they can be started simultaneously without blocking each other, thus shortening the overall search preparation time. This design fully utilizes the respective advantages of different databases: the relational database is responsible for precise searches, ensuring the accuracy of the results; the other database is responsible for fuzzy interpretation, ensuring the comprehensiveness of the results.

[0056] Step 130: Merge the search results of the parallel search instructions to generate the search results for the current dialogue round.

[0057] Specifically, after executing retrieval instructions in parallel, the system obtains one retrieval result or a set of multiple retrieval results from each heterogeneous database. For example, it obtains a list of documents that meet all precise conditions from a relational database, and a list of documents sorted by semantic similarity from a text vector database.

[0058] The method provided in this application embodiment can merge two or more heterogeneous and heterogeneous search result sets into a unique and reasonably ordered final result list, that is, the search result of the current dialogue round.

[0059] In one specific embodiment, the system calculates a final fusion score for each candidate result (e.g., a document) in each search result set. This score can be calculated by considering either the candidate result's ranking or its original score within its respective search result set. For example, if a document appears prominently in two search result sets, its final fusion score will be higher, resulting in a higher ranking in the final results list. In this way, documents that appear in exact match results and are semantically highly relevant are prioritized for display to the user.

[0060] The information retrieval method provided in this application's embodiments tracks and maintains contextual information related to user intent in multi-turn dialogues through a global dialogue state object, avoiding the loss of key information in multi-turn dialogues; it achieves accurate retrieval of structured data and unstructured text by parallelly searching heterogeneous databases; it provides users with a single, comprehensive, and logically ordered retrieval result by fusing the retrieval results of parallel retrieval commands; and it enables the rapid and accurate retrieval of required information from massive amounts of business data, improving user experience and enterprise operational efficiency.

[0061] It should be noted that each implementation method of this application can be freely combined, rearranged, or executed individually, and does not need to rely on or depend on a fixed execution order.

[0062] In some embodiments, Figure 2 This is a flowchart illustrating the dynamic ambiguity detection method provided in this application, as shown below. Figure 2As shown, before generating parallel retrieval instructions based on the global dialogue state object of the current dialogue turn, the method also includes: Step 210: Perform dynamic ambiguity detection on the global dialogue state object of the current dialogue round; Step 220: If there is pre-defined ambiguous content in the global dialogue state object of the current dialogue round, block the generation of parallel retrieval instructions and return the clarification options generated based on the pre-defined ambiguous content. Step 230: In response to the user's selection of the clarification option, update the global dialogue state object for the current dialogue round.

[0063] Specifically, dynamic ambiguity detection does not refer to static rule checking, but rather to real-time analysis of the content of the latest global dialogue state object generated in each round of dialogue to identify potential ambiguities and uncertainties. This detection can be implemented by a large language model; it can also be performed by an ambiguity detection model, which can be based on rules, statistical probabilities, or a lightweight classification model.

[0064] Pre-defined ambiguities refer to content that is pre-defined during the system design phase, is common in business scenarios, and is prone to causing misunderstandings. Specifically, this can include ambiguous referential content, ambiguous terminology mapping content, and ambiguous numerical range content.

[0065] Reference ambiguity primarily stems from pronouns or nouns with referential properties in natural language. Ambiguity arises when these pronouns can be mapped to multiple different entities or attributes within a specific business context. For example, a user might input "my documents," but in an office system, "my" could be mapped to either "creator_id=UserID (I initiated)" or "current_handler_id=UserID (pending my approval)."

[0066] Terminology ambiguity occurs when there is a one-to-many or fuzzy mapping relationship between a user's business terminology and the physical implementation of the backend database (including table names, field names, etc.). For example, a user says "contract," and the system has "Purchase Contract Table" and "Sales Contract Table," and the two have different field structures.

[0067] Ambiguity in numerical ranges arises from users using subjective or qualitative descriptive terms to describe numerical values, without a universally accepted and precise quantitative standard. For example, if a user says "large reimbursement," the system needs to confirm the specific definition of "large" (e.g., an amount greater than 5,000 yuan or an amount greater than 10,000 yuan).

[0068] When the system detects one or more pre-defined ambiguous elements in the global dialogue state object, it will block the generation of parallel retrieval instructions. This blocking means the system will pause subsequent normal processes. It will not continue executing the step of generating parallel retrieval instructions, thus avoiding expensive and ineffective database searches based on ambiguous information.

[0069] Simultaneously, the system dynamically generates an interactive interface based on the detected ambiguity, containing clarification options for the user to choose from. These options are designed to transform ambiguous questions into clear single-choice or multiple-choice questions. This interactive interface can be an interactive clarification card displayed on the front-end user interface.

[0070] The interactive interface allows for user interaction via text-based questions. The system's large language model will generate questions with clarification options based on the specific ambiguity. For example, the system might ask, "Which contract are you referring to: a purchase contract or a sales contract?" and display both "purchase contract" and "sales contract" as options on the interactive interface.

[0071] After seeing the clarification card, the user will click on one of the clarification options based on their true intention. The system will capture this selection behavior and use the user's choice as a high-priority, explicit instruction to update the global dialogue state object for the current dialogue turn. Specifically, the system will use this explicit information to correct or fill previously ambiguous slots in the state object and clear ambiguity markers.

[0072] After this step, the global dialogue state object becomes clear, accurate, and unambiguous. At this point, the process can continue, generating parallel retrieval instructions based on the clarified global dialogue state object.

[0073] The information retrieval method provided in this application transforms the traditional one-way human-machine command mode into a two-way negotiation mode. It proactively identifies and eliminates uncertainty about user intent before performing costly database searches, ensuring that subsequent retrieval operations are based on a consensus reached between the system and the user. This significantly improves the accuracy and reliability of the final retrieval results, avoiding invalid searches and result deviations caused by misunderstanding user intent, thereby significantly improving the user experience. Simultaneously, by meticulously classifying pre-defined ambiguous content, the ambiguity detection process becomes more targeted and accurate. Once the system can clearly identify the specific type of ambiguity, it can generate more appropriate and specific clarification options, thereby more effectively guiding the user to eliminate vague instructions.

[0074] In some embodiments, after performing dynamic ambiguity detection on the global dialogue state object of the current dialogue turn, the method further includes: If the confidence level of the detected ambiguous content is greater than the preset confidence threshold, it is determined that there is preset ambiguous content in the global dialogue state object of the current dialogue round.

[0075] Specifically, the confidence level of ambiguous content represents the model's degree of certainty that there is pre-defined ambiguity in the current state object. A higher confidence level means the model believes a misunderstanding is more likely, and therefore clarification is more necessary.

[0076] Confidence levels can be generated in various ways, for example: (1) Based on model output: Large language models can output probability values, which can be directly used as confidence scores. For example, if the model predicts that there is a probability of ambiguity in term mapping, the confidence score of the ambiguity is 0.9.

[0077] (2) Preset: Set a value (usually between 0 and 1, such as 0.7) as the preset confidence threshold. The system can adjust this threshold according to business needs and user experience.

[0078] A higher threshold means the system will only interrupt the user and initiate clarification when it is very certain that there is serious ambiguity. This makes the interaction smoother, but may tolerate some minor ambiguity, which risks leading to biased results.

[0079] A low threshold means the system is very sensitive to ambiguity and will initiate clarification at the slightest uncertainty. This maximizes the accuracy of the results, but may negatively impact the user experience due to excessively frequent questioning.

[0080] The system only determines that there is pre-set ambiguous content in the global dialogue state object of the current dialogue round if the confidence level of the detected ambiguous content is greater than the preset confidence threshold.

[0081] The information retrieval method provided in this application compares the confidence level of detected ambiguous content with a preset confidence threshold, avoiding the need to clarify all potential and minor ambiguities, making the system's interactive behavior more intelligent and user-friendly. The system only asks questions when the confidence level is greater than the preset confidence threshold, which ensures the accuracy of key information and minimizes interference with the user.

[0082] In some embodiments, at least two heterogeneous databases include a relational database and a text vector database.

[0083] Figure 3 This is a flowchart illustrating the parallel retrieval method provided in this application, as follows: Figure 3 As shown, based on the global dialogue state object of the current dialogue turn, parallel retrieval instructions are generated, including: Step 310: Generate a first search statement based on the structured constraints in the global dialogue state object of the current dialogue round; the first search statement is used to perform a search in the relational database. Step 320: Generate a second search statement based on the semantic keywords in the global dialogue state object of the current dialogue round; the second search statement is used to perform a search in the text vector database.

[0084] Specifically, data in relational databases (such as MySQL, Oracle, PostgreSQL, etc.) is stored in the form of multidimensional tables, which have a rigorous structure and are suitable for precise filtering, sorting, and aggregation operations. For example, in office automation scenarios, fields such as document number, creator identifier, department code, approval status, creation time, and reimbursement amount are usually stored in this type of database.

[0085] Structured constraints are conditions that can be judged using precise logic (such as equal to, greater than, less than, within a range). These conditions originate from specific slots in the global dialog state object, and the values ​​of these slots are explicit and structured. Examples include the amount-related slot amount:{"op":">","val":5000}, and the time-related slot time_range:{"start":"2023-10-01","end":"2023-10-31"}.

[0086] The system utilizes its Text-to-SQL generation capabilities to convert the aforementioned structured constraints into a standard SQL search statement, which is the first search statement. This generation capability can be provided by a finely tuned large language model.

[0087] Because the database tables are extremely large, directly inputting all database tables into the large language model would lead to context overflow. To improve the accuracy of generating the first search statement, the system can employ a "data table pruning" technique. This involves providing the large language model only with the database table structure related to a specific slot in the global dialogue state object (e.g., only the table structure related to the expense report), instead of providing the entire database table structure, thereby reducing the confusion in the large language model.

[0088] The first search query will then be submitted to the relational database for execution, returning a list of documents that fully meet all structured criteria.

[0089] Text vector databases are specifically designed for storing and efficiently retrieving high-dimensional vector data, such as Milvus, Pinecone, and Weaviate. In office automation scenarios, the system pre-converts all unstructured text fields of documents (such as "application reason," "approval opinion," and "attachment text content") into high-dimensional vectors using a large language model or a text embedding model (such as BGE-M3, OpenAI Ada-002), and stores them together with their corresponding document identifiers in the vector database.

[0090] Semantic keywords are derived from semantically relevant slots in the global dialogue state object, such as "semantic_keywords". These keywords are the core terms that users use to describe the search topic, such as server, host, compute node, etc.

[0091] The system invokes the same text embedding model or large language model used during data indexing to convert semantic keywords into a high-dimensional retrieval vector. Subsequently, the system constructs a retrieval request that conforms to the target vector database interface requirements. The core content of this request includes the generated retrieval vector and an expected number of most similar results.

[0092] The search request will then be submitted to a text vector database for execution, returning a list of multiple documents that are semantically most similar to the semantic keywords.

[0093] The information retrieval method provided in this application adopts a dual-path parallel retrieval strategy, which can significantly improve the overall retrieval performance in complex heterogeneous data environments compared to any single-path retrieval method.

[0094] In some embodiments, a first search statement is generated based on the structured constraints in the global dialogue state object of the current dialogue turn, including: Generate permission filtering condition statements based on user permission information; Embed the permission filtering condition statement into the first search statement.

[0095] Specifically, user permission information refers to configuration information related to a user's permissions in the system, including information such as the user's identity, department, and role that the system backend can obtain when the user logs into the system and initiates a search.

[0096] The system generates a set of permission filtering conditions for row-level data filtering based on user permission information and pre-configured data permission rules (i.e., Access Control Lists, ACLs). These rules define which data different people or roles can see.

[0097] The system embeds permission filtering conditions into the first search statement. This embedding doesn't refer to simple string concatenation, but rather that within the logic that generates the final first search statement, the generated permission filtering conditions are forcibly combined with other business search conditions using specific logical operators (such as the AND operator).

[0098] For example, when issuing a prompt to the large language model to generate an SQL statement, the system will explicitly require in the instruction: "The WHERE clause of the generated SQL statement must contain the following permission filtering condition connected by AND." This is equivalent to setting a hard constraint on the generation behavior of the large language model.

[0099] The information retrieval method provided in this application generates a first retrieval statement through a large language model, transforming data permission control from the traditional plug-in, post-check mode to an embedded, pre-generation mode. This fundamentally ensures that every database retrieval generated strictly adheres to the enterprise's row and column-level permission security policy, greatly improving the security and compliance of the entire information retrieval method and enabling it to meet the stringent requirements of enterprise-level applications.

[0100] In some embodiments, a second search statement is generated based on semantic keywords in the global dialogue state object of the current dialogue turn, including: Semantic keywords are expanded using synonyms, and retrieval vectors are generated based on the synonym expansion results; Generate a scalar filter based on the structured constraints in the global dialogue state object; A second search statement is generated based on the search vector and / or scalar filter.

[0101] Specifically, synonym expansion aims to identify words with the same, similar, or highly related meanings to semantic keywords in a specific domain or general context. Its purpose is to broaden semantic coverage, improve recall, and ensure that the system can hit documents or entries that use different expressions but describe the same concept.

[0102] Large language models can expand semantic keywords into synonyms, yielding expanded synonym results. For example, the semantic keyword "server" in the global dialogue state object can be expanded into multiple synonyms, including "Server," "host," and "compute node." These expanded synonym results are then encoded into a fixed-dimensional, dense numerical vector using a large language model or text embedding model.

[0103] Most text vector databases support filtering the metadata stored along with the vectors while performing vector similarity searches. This metadata is typically scalar values, such as numbers, strings, booleans, and timestamps. A scalar filter is a logical expression describing these filtering conditions. To improve the accuracy of vector retrieval, the system can also transform the structured constraints in the global dialogue state object to obtain scalar filters supported by the text vector database.

[0104] The search vector and scalar filter can be combined to generate a second search statement.

[0105] The information retrieval method provided in this application greatly optimizes the performance of pure vector retrieval by introducing synonym expansion and scalar filtering when generating the second retrieval statement. Synonym expansion expands the scope of semantic search and prevents important results from being missed due to differences in word choice. Scalar filtering eliminates a large number of results that do not meet the basic conditions in the preprocessing stage of vector retrieval, so that the vector retrieval path can not only understand semantics but also follow logic, significantly improving the relevance and accuracy of the final retrieval results.

[0106] In some embodiments, Figure 4 This is a flowchart illustrating the retrieval result fusion method provided in this application, as follows: Figure 4 As shown, the search results of parallel search commands are fused to generate the search results for the current dialogue round, including: Step 410: Determine the fusion ranking of each searched document based on the ranking of each searched document in the search results of each heterogeneous database and the search weight of each heterogeneous database; the search weight is determined based on the intent recognition results. Step 420: Based on the fusion and sorting of each retrieved document, generate the retrieval results for the current dialogue round.

[0107] Specifically, the system retrieves documents from two heterogeneous databases in parallel. These documents are typically specific forms or invoices.

[0108] The system retrieves a first result set consisting of at least one searched document from a relational database. and a second result set consisting of at least one retrieved document obtained from a text vector database. The first result set contains a list of documents that precisely match the metadata, typically sorted by time. The second result set contains a list of semantically similar documents, typically sorted by similarity score.

[0109] Because the two retrieved documents come from different sources and have different units of measurement (one is a 0 / 1 match, and the other is a continuous similarity score), they cannot be directly added or compared.

[0110] This application employs a Reciprocal Rank Fusion (RRF) algorithm that is independent of the original score and depends only on the ranking, and introduces dynamic weights to reflect the bias of user intent, which can be expressed by the formula: .

[0111] in, To retrieve documents The fusion score; To retrieve documents Sorting search results in a relational database; To retrieve documents Sort of search results in a text vector database; This is a smoothing constant, which can be set according to actual needs, for example, 60; For retrieval weights in relational databases; This refers to the retrieval weights for text vector databases.

[0112] The allocation of search weights is not fixed but dynamic, based on intent recognition results. This design allows the fusion process to adaptively adjust strategies to match the user's search intent.

[0113] When intent is biased towards exact search: If a user's intent is identified as "PRECISE_SEARCH" (e.g., the user provided a document number), it means the user is more concerned with results that meet hard criteria. In this case, the system will significantly increase the retrieval weight of the relational database (e.g., ...). =0.8, =0.2).

[0114] When intent leans towards fuzzy search: If a user's intent is identified as "fuzzy search" (e.g., the user only said "documents related to a sales contract"), it means the user is more concerned with semantic relevance. In this case, the system will significantly increase the retrieval weight of the text vector database (e.g., ...). =0.3, =0.7).

[0115] The system ultimately determines the fusion ranking of each candidate search result based on its fusion score. After calculating the fusion score for all searched documents, the system simply sorts them from highest to lowest fusion score to obtain the final, unique, and ordered list of results, which represents the search results for the current dialogue round.

[0116] The information retrieval method provided in this application can adaptively adjust the retrieval weights of various heterogeneous databases based on the intent recognition results, ensuring that the sorting of the final result list presented to the user can best match their current retrieval intent, thereby providing a more intelligent and user-friendly retrieval experience.

[0117] In some embodiments, Figure 5 This is a flowchart illustrating the search relaxation method provided in this application, as shown below. Figure 5 As shown, the search results of parallel search commands are fused to generate the search results for the current dialogue round, including: Step 510: If the search results of the parallel search instruction are empty, expand the numerical range of the corresponding structured constraints in the global dialogue state object based on the preset constraint priority, and / or delete the modifiers in the semantic keywords of the global dialogue state object in the current dialogue round to generate a secondary search instruction. Step 520: Determine the search results of the secondary search command as the search results of the current dialogue round.

[0118] Specifically, if the search results of a parallel search command are empty, directly returning "no search results found" or a blank result display interface would provide a poor user experience. This application provides a method for intelligent fault tolerance and optimized user experience.

[0119] One approach is to expand the numerical range of the corresponding structured constraints in the global dialogue state object based on preset constraint priorities.

[0120] Predefined constraint priorities refer to a hierarchy of importance that the system predefines for various constraints within the global dialog state object. This priority determines which conditions should be relaxed first during constraint relaxation. Typically, core entity types (such as document types) have the highest priority, while scope-specific and descriptive conditions have lower priority. For example, a typical constraint priority might be: Document Type (High Priority) > Applicant (High Priority) > Time Range (Medium Priority) > Amount Range (Medium Priority) > Semantic Keywords (Low Priority).

[0121] The system will expand the numerical range of the structured constraints in the global dialogue state object according to the priority from high to low. For example, if the time constraint in the original search is "last week", the system can expand it to "the last month". If the monetary constraint is "greater than 10,000", it can be relaxed to "greater than 5,000".

[0122] Another approach is to remove modifiers from the semantic keywords in the global dialogue state object of the current dialogue turn. Modifiers typically limit the semantic scope of keywords. Removing modifiers expands the semantic scope of keywords. For example, if the original semantic keyword is "high-performance server," where "high-performance" is a modifier, the system can first try removing "high-performance," relaxing the keyword to "server." In cases containing multiple modifiers, removing them sequentially in a certain order is also possible.

[0123] After relaxing one or more constraints in the global dialogue state object, the system obtains a "relaxed global dialogue state object". Then, based on this new, more relaxed state object, the system re-executes the method in the above embodiments to generate new parallel retrieval instructions, that is, secondary retrieval instructions.

[0124] The system sends the secondary search command to the corresponding database for execution, and merges and sorts the returned results. The list of results from the secondary search and merging is used as the final result of this search. For example, if the secondary search is successful, the system returns the results to the user with the following message: "No documents that strictly match the criteria were found, but the following related documents were found (with a relaxed time range). Please check them."

[0125] The information retrieval method provided in this application greatly enhances the robustness and user-friendliness of the system through constraint relaxation and secondary retrieval; it enables the system to provide meaningful assistance even when it cannot meet all user requirements, significantly improving the fault tolerance of human-computer interaction and user experience.

[0126] In some embodiments, based on the intent recognition result and slot extraction result of the user input in the current dialogue round, the global dialogue state object of the previous dialogue round is updated to obtain the global dialogue state object of the current dialogue round, including: Based on the intent recognition results and slot extraction results, the newly added, modified, and deleted information in the global dialogue state object is determined. Based on at least one of the following: added information, modified information, and deleted information, update the global dialogue state object of the previous dialogue round to obtain the global dialogue state object of the current dialogue round.

[0127] Specifically, when a user's input adds new, non-conflicting conditions to existing constraints, the system will determine that this part is new information. For example, if the user input includes "and Li Si's", then the creator including Li Si (creator="Li Si") becomes new information.

[0128] When a user's input modifies or replaces an existing constraint, the system identifies this portion as modification information. For example, if a user says, "No, it's from last month," then the time range of last month (time_range="last month") becomes modification information and needs to override the previous time range.

[0129] When a user explicitly requests the removal of a constraint, the system determines that this part should be deleted. For example, if a user says "do not include 'server'", then the semantic keyword (semantic_keywords="server") needs to be removed from the existing semantic keywords.

[0130] Based on the intent recognition results and slot extraction results of the user input in the current dialogue round, the system determines the information to be added, modified, or deleted, and performs the corresponding update operation on the global dialogue state object of the previous dialogue round to obtain the global dialogue state object of the current dialogue round.

[0131] The information retrieval method provided in this application can maintain a global dialogue state object based on the user input of the current dialogue round, thus avoiding the loss of key information in multiple dialogue rounds.

[0132] Figure 6 This is a flowchart illustrating the multi-turn interaction and dual-path parallel hybrid retrieval method based on a large language model provided in this application, as shown below. Figure 6 As shown, this method is applied to an information retrieval system. The system may include a retrieval module and a database module. The database module may include at least two heterogeneous databases: a relational database and a text vector database. The retrieval module is used to run a large language model and execute a hybrid retrieval method. The method includes: Step 610: Receive user input.

[0133] The system first receives natural language text input by the user on the client (including web pages, applications, etc.). (Current number) (User input in rounds).

[0134] The system performs input preprocessing: The process involves cleaning the data to remove meaningless interjections and extracting the user's current session metadata (user ID, department ID, role, current time). This metadata is crucial for subsequent processing of pronouns such as "my," "this department," and "recently."

[0135] The system performs historical backtracking: loading from the in-memory database before... Global dialog state object for each round .if Then initialize an empty state. .

[0136] Step 620: Perform intent recognition and slot extraction based on the large language model, and update the global dialogue state object.

[0137] The system uses a finely tuned large language model as the core of reasoning to perform the following sub-tasks: (1) Processing user input (2) Perform intent recognition and obtain intent recognition results; Slot extraction is performed to obtain the slot extraction results.

[0138] Based on the intent recognition results and slot extraction results, the global dialogue state object Update and get .

[0139] Step 630: Perform dynamic ambiguity detection and interactive proactive clarification based on a large language model.

[0140] Before generating parallel search statements, the system checks the current global dialog state object. Is it clear and unambiguous?

[0141] If the detected ambiguity confidence level is higher than a preset confidence threshold (e.g., 0.7), the system pauses the subsequent search process and generates an interactive clarification interface. Based on the user's selection on the clarification interface, the ambiguity is eliminated. Ambiguity in the text.

[0142] Step 640: Generate parallel retrieval instructions.

[0143] Once the conversation status Once confirmed as clear and unambiguous, the system enters the execution phase. To address the issue of the separation between structured and unstructured data, a parallel dual-path generation mechanism was designed.

[0144] Path A: Generate structured search instructions (Text-to-SQL).

[0145] Path B: Generate semantic vector retrieval instructions (Text-to-Vector).

[0146] Step 650: Execute the parallel search command and merge the search results.

[0147] The system submits structured search commands to a relational database and semantic vector search commands to a text vector database in parallel, obtaining two result sets. The system then merges the two result sets by reciprocal sorting to obtain the final search result.

[0148] Step 660: Relax the constraints and perform a second search.

[0149] Returning "Not Found" directly if the merged result set is empty would severely damage the user experience. This method introduces a constraint relaxation mechanism, which performs hierarchical and gradual relaxation of constraints, generates secondary search instructions, and executes secondary searches.

[0150] Step 670: Result Verification and Response Generation.

[0151] The large language model generates a final natural language answer based on the metadata in the retrieved results (documents). At this point, the system runs a verifier to check whether the numbers and dates in the answer generated by the large language model are consistent with the metadata in the database, preventing "illusions".

[0152] The final output not only includes natural language text, but also encapsulates structured cards (including document title, status color, amount, and jump link) for users to directly click to view details.

[0153] The method provided in this application solves four core challenges of complex retrieval in office automation scenarios (multi-round context inheritance, heterogeneous data fusion, intent ambiguity resolution, and empty search results), enabling the rapid and accurate retrieval of required information from massive amounts of business data, thereby improving user experience and enterprise operational efficiency.

[0154] The apparatus provided in the embodiments of this application is described below. The apparatus described below can be referred to in correspondence with the method described above.

[0155] Figure 7 This is a schematic diagram of the information retrieval device provided in this application, such as... Figure 7 As shown, the device includes: The dialogue state tracking module 710 is used to update the global dialogue state object of the previous dialogue round based on the intent recognition result and slot extraction result of the user input in the current dialogue round, so as to obtain the global dialogue state object of the current dialogue round. The retrieval instruction generation module 720 is used to generate parallel retrieval instructions based on the global dialogue state object of the current dialogue round; the parallel retrieval instructions are used to perform retrieval in at least two heterogeneous databases; The retrieval result fusion module 730 is used to fuse the retrieval results of the parallel retrieval instructions to generate the retrieval results of the current dialogue round.

[0156] The information retrieval device provided in this application embodiment tracks and maintains contextual information related to user intent in multi-turn dialogues through a global dialogue state object, avoiding the loss of key information in multi-turn dialogues; it achieves accurate retrieval of structured data and unstructured text by searching heterogeneous databases in parallel; it provides users with a single, comprehensive, and logically ordered retrieval result by fusing the retrieval results of parallel retrieval commands; and it enables the rapid and accurate retrieval of required information from massive amounts of business data, improving user experience and enterprise operational efficiency.

[0157] Figure 8 This is a schematic diagram of the structure of the electronic device provided in this application, such as... Figure 8 As shown, the electronic device may include: a processor 810, a communications interface 820, a memory 830, and a communications bus 840, wherein the processor, communications interface, and memory communicate with each other via the communications bus. The processor can invoke logical commands stored in the memory to execute the methods described in the above embodiments, for example: Based on the intent recognition results and slot extraction results of the user input in the current dialogue round, the global dialogue state object of the previous dialogue round is updated to obtain the global dialogue state object of the current dialogue round; based on the global dialogue state object of the current dialogue round, a parallel retrieval instruction is generated; the parallel retrieval instruction is used to perform retrieval in at least two heterogeneous databases; the retrieval results of the parallel retrieval instruction are fused to generate the retrieval results of the current dialogue round.

[0158] Furthermore, the logical commands in the aforementioned memory can be implemented as software functional units and sold or used as independent products, and 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 part 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 commands 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.

[0159] The processor in the electronic device provided in this application embodiment can call logical instructions in the memory to implement the above method. Its specific implementation method is the same as the aforementioned method implementation method and can achieve the same beneficial effect, which will not be repeated here.

[0160] This application also provides a computer-readable storage medium having a computer program stored thereon, which, when executed by a processor, is implemented to perform the methods provided in the above embodiments.

[0161] The specific implementation method is the same as the aforementioned method implementation method and can achieve the same beneficial effects, so it will not be repeated here.

[0162] This application provides a computer program product, including a computer program that, when executed by a processor, implements the method described above.

[0163] The device embodiments described above are merely illustrative. 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 modules can be selected to achieve the purpose of this embodiment according to actual needs. Those skilled in the art can understand and implement this without any creative effort.

[0164] Through the above description of the embodiments, those skilled in the art can clearly understand that each embodiment can be implemented by means of software plus necessary general-purpose hardware platforms, and of course, it can also be implemented by hardware. Based on this understanding, the above technical solutions, in essence or the part that contributes to the prior art, can be embodied in the form of a software product. This computer software product can be stored in a computer-readable storage medium, such as ROM / RAM, magnetic disk, optical disk, etc., and includes several instructions to cause a computer device (which may be a personal computer, server, or network device, etc.) to execute the methods described in the various embodiments or some parts of the embodiments.

[0165] Finally, it should be noted that the above embodiments are only used to illustrate the technical solutions of this application, and are not intended to limit them. Although this application has been described in detail with reference to the foregoing embodiments, those skilled in the art should understand that modifications can still be made to the technical solutions described in the foregoing embodiments, or equivalent substitutions can be made to some of the technical features. Such modifications or substitutions do not cause the essence of the corresponding technical solutions to deviate from the spirit and scope of the technical solutions of the embodiments of this application.

Claims

1. An information retrieval method, characterized in that, include: Based on the intent recognition results and slot extraction results of the user input in the current dialogue round, the global dialogue state object of the previous dialogue round is updated to obtain the global dialogue state object of the current dialogue round. Based on the global dialogue state object of the current dialogue round, a parallel retrieval instruction is generated; the parallel retrieval instruction is used to perform retrieval in at least two heterogeneous databases. The search results of the parallel search instructions are merged to generate the search results for the current dialogue round.

2. The information retrieval method according to claim 1, characterized in that, Before generating parallel retrieval instructions based on the global dialogue state object of the current dialogue round, the method further includes: Perform dynamic ambiguity detection on the global dialogue state object of the current dialogue round; If the global dialogue state object of the current dialogue round contains pre-defined ambiguous content, the generation of the parallel retrieval instruction is blocked, and a clarification option generated based on the pre-defined ambiguous content is returned. In response to the user's selection of the clarification option, the global dialogue state object for the current dialogue round is updated.

3. The information retrieval method according to claim 2, characterized in that, The preset ambiguous content includes at least one of referential ambiguity, term mapping ambiguity, and numerical range ambiguity.

4. The information retrieval method according to claim 2, characterized in that, After performing dynamic ambiguity detection on the global dialogue state object of the current dialogue turn, the method further includes: If the confidence level of the detected ambiguous content is greater than a preset confidence threshold, it is determined that the preset ambiguous content exists in the global dialogue state object of the current dialogue round.

5. The information retrieval method according to claim 1, characterized in that, The at least two heterogeneous databases include a relational database and a text vector database; The generation of parallel retrieval instructions based on the global dialogue state object of the current dialogue round includes: Based on the structured constraints in the global dialogue state object of the current dialogue round, a first search statement is generated; the first search statement is used to perform a search in the relational database. Based on the semantic keywords in the global dialogue state object of the current dialogue turn, a second search statement is generated; the second search statement is used to perform a search in the text vector database.

6. The information retrieval method according to claim 5, characterized in that, The first search statement is generated based on the structured constraints in the global dialogue state object of the current dialogue round, including: Generate permission filtering condition statements based on user permission information; The permission filtering condition statement is embedded in the first search statement.

7. The information retrieval method according to claim 5, characterized in that, The generation of a second search statement based on semantic keywords in the global dialogue state object of the current dialogue round includes: The semantic keywords are expanded using synonyms, and a retrieval vector is generated based on the synonym expansion results; A scalar filter is generated based on the structured constraints in the global dialogue state object. The second search statement is generated based on the search vector and / or the scalar filter.

8. The information retrieval method according to claim 1, characterized in that, The process of fusing the search results of the parallel search instructions to generate the search results for the current dialogue round includes: The fused ranking of each searched document is determined based on the ranking of each searched document in the search results of each heterogeneous database, and the search weight of each heterogeneous database; the search weight is determined based on the intent recognition result. The search results for the current dialogue round are generated based on the fusion and sorting of the various searched documents.

9. The information retrieval method according to claim 1, characterized in that, The process of fusing the search results of the parallel search instructions to generate the search results for the current dialogue round includes: If the search result of the parallel search instruction is empty, the numerical range of the corresponding structured constraints in the global dialogue state object is expanded based on the preset constraint priority, and / or, modifiers in the semantic keywords of the global dialogue state object of the current dialogue round are deleted to generate a secondary search instruction. The search result of the secondary search instruction is determined as the search result of the current dialogue round.

10. The information retrieval method according to claim 1, characterized in that, The process of updating the global dialogue state object of the previous dialogue round based on the intent recognition result and slot extraction result of the user input in the current dialogue round to obtain the global dialogue state object of the current dialogue round includes: Based on the intent recognition result and the slot extraction result, the newly added information, modified information and deleted information in the global dialogue state object are determined; Based on at least one of the newly added information, the modified information, and the deleted information, the global dialogue state object of the previous dialogue round is updated to obtain the global dialogue state object of the current dialogue round.

11. The information retrieval method according to any one of claims 1 to 10, characterized in that, The global dialogue state object is used to structurally store the dialogue state of multi-turn dialogues; the dialogue state includes the intent recognition result and the slot extraction result.

12. An information retrieval device, characterized in that, include: The dialogue state tracking module is used to update the global dialogue state object of the previous dialogue round based on the intent recognition result and slot extraction result of the user input in the current dialogue round, so as to obtain the global dialogue state object of the current dialogue round. The retrieval instruction generation module is used to generate parallel retrieval instructions based on the global dialogue state object of the current dialogue round; the parallel retrieval instructions are used to perform retrieval in at least two heterogeneous databases; The search result fusion module is used to fuse the search results of the parallel search instructions to generate the search results for the current dialogue round.

13. An electronic device comprising a memory, a processor, and a computer program stored in the memory and executable on the processor, characterized in that, When the processor executes the computer program, it implements the information retrieval method according to any one of claims 1 to 11.

14. A non-transitory computer-readable storage medium having a computer program stored thereon, characterized in that, When the computer program is executed by a processor, it implements the information retrieval method according to any one of claims 1 to 11.

15. A computer program product, comprising a computer program, characterized in that, When the computer program is executed by a processor, it implements the information retrieval method according to any one of claims 1 to 11.

Citation Information

Patent Citations

  • Dialogue data processing method for multiple rounds of dialogues and related device

    CN110737765A

  • Dialogue method and device based on mixed knowledge management and electronic equipment

    CN113158691A

  • Multi-round dialogue control method and device based on control slot position and business data slot position

    CN114328821A

  • Deep learning dialogue strategy model construction method and system based on dialogue flow bootstrap

    CN114528387A

  • Multi-round dialogue system and method based on retrieval and generation fusion

    CN116226338A