Dialogue generation method, dialogue generation device, storage medium and electronic equipment

By acquiring the full agenda stack and current agenda stack of the dialogue target, a dialogue between the user simulator and the intelligent assistant is generated, solving the problems of high difficulty and low efficiency in acquiring dialogue data in existing technologies, and realizing efficient and low-cost multi-turn dialogue generation.

CN114117016BActive Publication Date: 2026-04-28SHENZHEN HEYTAP TECHNOLOGY CO LTD
View PDF 2 Cites 0 Cited by

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
SHENZHEN HEYTAP TECHNOLOGY CO LTD
Filing Date
2021-12-06
Publication Date
2026-04-28

AI Technical Summary

Technical Problem

The existing technology for obtaining dialogue data is difficult, inefficient, and has high labor costs, making it difficult to meet the complex needs of intelligent robots for multi-turn dialogue.

Method used

By acquiring the full agenda stack corresponding to the dialogue target, determining the current agenda stack based on the current dialogue state, and using a user simulator to generate user statements to engage in dialogue with the intelligent assistant, a multi-turn dialogue corpus is formed.

Benefits of technology

It enables efficient and low-cost generation of dialogue data, reduces human intervention, ensures the timeliness and manageability of dialogue content, and is applicable to various dialogue scenarios.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN114117016B_ABST
    Figure CN114117016B_ABST
Patent Text Reader

Abstract

The present disclosure provides a dialogue generation method, a dialogue generation device, a computer readable storage medium and an electronic device, and relates to the technical field of computers. The dialogue generation method comprises: obtaining a dialogue target, and obtaining a full agenda stack corresponding to the dialogue target; determining a current agenda stack from the full agenda stack according to a current dialogue state; generating a user statement of a user simulator by using the current agenda stack, outputting the user statement to an intelligent assistant, and obtaining an intelligent statement fed back by the intelligent assistant; and forming a dialogue by using the user statement and the intelligent statement. The present disclosure can quickly and effectively obtain a large amount of dialogue corpus to provide convenience for other corpus application scenarios.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This disclosure relates to the field of computer technology, and in particular to a dialogue generation method, a dialogue generation apparatus, a computer-readable storage medium, and an electronic device. Background Technology

[0002] In recent years, with the development of artificial intelligence, intelligent robots based on dialogue generation technology have been widely used, such as intelligent voice assistants, customer service assistants, chatbots, and automatic question-answering robots, providing convenience and enjoyment for people's daily work and life. To adapt to the ever-increasing demand for personalized user needs, the tasks that intelligent robots need to perform are becoming increasingly complex. For example, intelligent assistants can engage in multi-turn dialogues with users to understand them and help them complete specific tasks. Therefore, more dialogue data is needed for the training and learning of intelligent robots.

[0003] Current technologies typically collect large amounts of conversational data from real users to meet the learning needs of intelligent robots, enabling them to simulate human-like conversations with real users. However, this method of collecting conversational data often has significant limitations in terms of dialogue paths. Obtaining more or richer conversational data requires high human and time costs, and the process of acquiring conversations is difficult, inconvenient, and inefficient. Therefore, how to generate dialogues simply and conveniently to suit various application scenarios with diverse conversational data is a problem that current technologies urgently need to solve. Summary of the Invention

[0004] This disclosure provides a dialogue generation method, a dialogue generation apparatus, a computer-readable storage medium, and an electronic device, thereby improving, to at least some extent, the problems of difficulty and low efficiency in the prior art of acquiring dialogue.

[0005] Other features and advantages of this disclosure will become apparent from the following detailed description, or may be learned in part from practice of this disclosure.

[0006] According to a first aspect of this disclosure, a dialogue generation method is provided, comprising: obtaining a dialogue target and obtaining a full agenda stack corresponding to the dialogue target; determining a current agenda stack from the full agenda stack according to the current dialogue state; generating user statements in a user simulator using the current agenda stack; outputting the user statements to a smart assistant and obtaining smart statements fed back by the smart assistant; and forming a dialogue between the user statements and the smart statements.

[0007] According to a second aspect of this disclosure, a dialogue generation apparatus is provided, comprising: a dialogue target acquisition module, configured to acquire a dialogue target and acquire a full agenda stack corresponding to the dialogue target; a current agenda stack determination module, configured to determine a current agenda stack from the full agenda stack based on the current dialogue state; a user statement output module, configured to generate user statements from a user simulator using the current agenda stack, output the user statements to a smart assistant, and acquire smart statements fed back by the smart assistant; and a dialogue formation module, configured to form a dialogue between the user statements and the smart statements.

[0008] According to a third aspect of this disclosure, a computer-readable storage medium is provided, on which a computer program is stored, which, when executed by a processor, implements the dialogue generation method of the first aspect described above and its possible implementations.

[0009] According to a fourth aspect of this disclosure, an electronic device is provided, comprising: a processor; and a memory for storing executable instructions of the processor. The processor is configured to execute the dialogue generation method of the first aspect and its possible implementations thereof via executing the executable instructions.

[0010] The technical solution disclosed herein has the following beneficial effects:

[0011] The method involves obtaining a dialogue target and its corresponding full agenda stack; determining the current agenda stack from the full agenda stack based on the current dialogue state; generating user statements from a user simulator using the current agenda stack; outputting the user statements to the intelligent assistant and obtaining intelligent statements from the intelligent assistant; and forming a dialogue between the user statements and the intelligent statements. On one hand, this exemplary embodiment proposes a novel dialogue generation method that can simulate human interaction with an intelligent assistant through a user simulator. The dialogue generation process requires minimal human intervention, obtaining a large amount of dialogue data solely through intelligent dialogue between machines. Compared to generating dialogue data through extensive dialogues between multiple real users, this method saves significant human and time costs and is highly efficient. On the other hand, the user simulator determines its simulated user statements based on the current agenda stack through changes in the dialogue state, thereby engaging in dialogue with the intelligent assistant. This process, based on the full agenda stack design, ensures that the dialogue content has a certain temporal sequence and allows for clear and concise management of the dialogue process, guaranteeing normal and effective dialogue between the user simulator and the intelligent assistant.

[0012] It should be understood that the above general description and the following detailed description are exemplary and explanatory only, and are not intended to limit this disclosure. Attached Figure Description

[0013] The accompanying drawings, which are incorporated in and form part of this specification, illustrate embodiments consistent with this disclosure and, together with the description, serve to explain the principles of this disclosure. It is obvious that the drawings described below are merely some embodiments of this disclosure, and those skilled in the art can obtain other drawings based on these drawings without any inventive effort.

[0014] Figure 1 This diagram illustrates the system architecture of a dialogue generation method in this exemplary embodiment.

[0015] Figure 2 This diagram illustrates the structure of an electronic device according to this exemplary embodiment;

[0016] Figure 3 This diagram illustrates a flowchart of a dialogue generation method in this exemplary embodiment;

[0017] Figure 4 This diagram illustrates the system architecture of another dialogue generation method in this exemplary embodiment.

[0018] Figure 5 This diagram illustrates a full agenda stack in this exemplary embodiment;

[0019] Figure 6 A sub-flowchart of a dialogue generation method in this exemplary embodiment is shown;

[0020] Figure 7 Example diagrams showing various options for responding to a smart assistant dialogue in a user simulator;

[0021] Figure 8 A flowchart illustrating another dialogue generation method in this exemplary embodiment is shown;

[0022] Figure 9 This illustrates another sub-flowchart of a dialogue generation method in this exemplary embodiment;

[0023] Figure 10 This diagram illustrates the system architecture of yet another dialogue generation method in this exemplary embodiment.

[0024] Figure 11 A schematic diagram of a template-based natural language generation module is shown.

[0025] Figure 12-17 This example illustrates a dialogue between a user simulator and a smart assistant in this exemplary embodiment;

[0026] Figure 18 A structural diagram of a dialogue generation apparatus in this exemplary embodiment is shown. Detailed Implementation

[0027] Exemplary embodiments will now be described more fully with reference to the accompanying drawings. However, these exemplary embodiments can be implemented in many forms and should not be construed as limited to the examples set forth herein; rather, these embodiments are provided to make this disclosure more comprehensive and complete, and to fully convey the concept of the exemplary embodiments to those skilled in the art. The described features, structures, or characteristics can be combined in any suitable manner in one or more embodiments. In the following description, numerous specific details are provided to give a full understanding of embodiments of this disclosure. However, those skilled in the art will recognize that the technical solutions of this disclosure can be practiced with one or more specific details omitted, or other methods, components, apparatus, steps, etc., can be employed. In other instances, well-known technical solutions are not shown or described in detail to avoid obscuring various aspects of this disclosure.

[0028] Furthermore, the accompanying drawings are merely illustrative of this disclosure and are not necessarily drawn to scale. The same reference numerals in the drawings denote the same or similar parts, and therefore repeated descriptions of them will be omitted. Some block diagrams shown in the drawings are functional entities and do not necessarily correspond to physically or logically independent entities. These functional entities may be implemented in software, in one or more hardware modules or integrated circuits, or in different network and / or processor devices and / or microcontroller devices.

[0029] In view of one or more of the above-mentioned problems, exemplary embodiments of this disclosure provide a dialogue generation method. Figure 1 A system architecture diagram of the operating environment for this exemplary embodiment is shown. Figure 1 As shown, the system architecture 100 may include a user simulator 110 and an intelligent assistant 120, which can communicate and interact via a network. For example, the user simulator 110 can send statements in natural language or structured information to the intelligent assistant 120, or the intelligent assistant 120 can send statements in natural language or structured information to the user simulator 110, etc. The user simulator 110 can be configured on terminal devices such as computers and mobile phones, or on servers; the intelligent assistant 120 can also be configured on terminal devices or robotic devices, etc. The user simulator 110 and the intelligent assistant 120 can be configured on different terminal devices. Depending on actual needs, the user simulator 110 and the intelligent assistant 120 can also be configured to interact on the same terminal device, etc. This disclosure does not impose specific limitations in this regard.

[0030] Exemplary embodiments of this disclosure provide an electronic device for implementing a dialogue generation method, which may be... Figure 1The user simulator 110 in the device includes at least a processor and a memory for storing executable instructions of the processor, the processor being configured to execute a dialogue generation method by executing the executable instructions.

[0031] The following is based on Figure 2 Taking the mobile terminal 200 as an example, the structure of the above-mentioned electronic device will be described by way of example. Those skilled in the art should understand that, apart from components specifically designed for mobile purposes, Figure 2 The structure can also be applied to fixed types of equipment.

[0032] like Figure 2 As shown, the mobile terminal 200 may specifically include: a processor 210, an internal memory 221, an external memory interface 222, a USB (Universal Serial Bus) interface 230, a charging management module 240, a power management module 241, a battery 242, an antenna 1, an antenna 2, a mobile communication module 250, a wireless communication module 260, an audio module 270, a speaker 271, a receiver 272, a microphone 273, a headphone jack 274, a sensor module 280, a display screen 290, a camera module 291, an indicator 292, a motor 293, buttons 294, and a SIM (Subscriber Identification Module) card interface 295, etc.

[0033] The processor 210 may include one or more processing units, such as an AP (Application Processor), a modem processor, a GPU (Graphics Processing Unit), an ISP (Image Signal Processor), a controller, an encoder, a decoder, a DSP (Digital Signal Processor), a baseband processor, and / or an NPU (Neural-Network Processing Unit).

[0034] Internal memory 221 can be used to store executable program code, including instructions. Internal memory 221 may include volatile memory, non-volatile memory, etc. Processor 210 executes various functional applications and data processing of mobile terminal 200 by running instructions stored in internal memory 221 and / or instructions stored in memory located in the processor.

[0035] The wireless communication function of mobile terminal 200 can be implemented through antenna 1, antenna 2, mobile communication module 250, wireless communication module 260, modem processor, and baseband processor. Antenna 1 and antenna 2 are used to transmit and receive electromagnetic wave signals. Mobile communication module 250 can provide wireless communication solutions for mobile terminal 200, including 2G / 3G / 4G / 5G. Wireless communication module 260 can provide wireless communication solutions for mobile terminal 200, including WLAN (Wireless Local Area Networks) (such as Wi-Fi), BT (Bluetooth), GNSS (Global Navigation Satellite System), FM (Frequency Modulation), NFC (Near Field Communication), and IR (Infrared). The mobile terminal 200 can interact with the smart assistant through the mobile communication module 250 or the wireless communication module 260. For example, the mobile terminal 200 can send natural language or structured information statements to the smart assistant when connected to the same Wi-Fi network.

[0036] The mobile terminal 200 can display a user interface through a GPU, a display screen 290, and an access point (AP). The mobile terminal 200 can also perform shooting functions through an ISP, a camera module 291, an encoder, a decoder, a GPU, a display screen 290, and an AP. Furthermore, it can perform audio functions through an audio module 270, a speaker 271, a receiver 272, a microphone 273, a headphone jack 274, and an AP.

[0037] The sensor module 280 may include a depth sensor 2801, a pressure sensor 2802, a gyroscope sensor 2803, a barometric pressure sensor 2804, etc., to achieve different sensing and detection functions.

[0038] Indicator 292 can be an indicator light, used to indicate charging status, battery level changes, or to indicate messages and notifications. Motor 293 can generate vibration alerts or provide tactile vibration feedback. Buttons 294 include a power button, volume buttons, etc.

[0039] Figure 3 An exemplary flow of a dialogue generation method is shown, which can be executed by the aforementioned user simulator 110, including the following steps S310 to S340:

[0040] Step S310: Obtain the dialogue target and the full agenda stack corresponding to the dialogue target.

[0041] In this context, the dialogue objective refers to the dialogue content between the user simulator and the intelligent assistant that revolves around a specific theme or topic based on a particular purpose or scenario. Examples include a dialogue where the user wants the intelligent assistant to help find restaurants near their current location; a dialogue where the user wants the intelligent assistant to record important events as a memo; or a dialogue where the user wants the intelligent assistant to delete currently stored data. All of these can be considered dialogue objectives. In this exemplary embodiment, the dialogue objective can be randomly generated by a pre-set dialogue objective generation module or program; it can also be customized according to user needs; or a third-party simulator or terminal device other than the user simulator and intelligent assistant can be set up to generate and publish the dialogue objective. This can also be considered a user simulator, equivalent to simulating a multi-person dialogue, for example, in... Figure 4 The schematic diagram of the dialogue generation method shown can include a three-way interactive dialogue process involving a dialogue target generation simulator 410, a user simulator 420, and a smart assistant 430. The dialogue target generation simulator 410 is responsible for generating or specifying the dialogue target and sending it to the user simulator 420. The user simulator 420 acts as a user in the actual dialogue interaction process. After receiving the dialogue target, it can send user statements to the smart assistant 430. After receiving the user statements, the smart assistant 430 can return smart statements to the user simulator 420 to realize the process of simulating a multi-person dialogue.

[0042] In this exemplary embodiment, dialogue goals can be randomly generated using a pre-set dialogue goal generation module or program, such as a Goal Generator. In practical applications, an organizational structure interface module (Schema & API) can also be set up, allowing the dialogue goal generator to randomly generate dialogue goals for relevant tasks based on the organizational structure interface module. The organizational structure interface module may include skills, intents, slots, and associated service resources defined under different domains. These associated service resources refer to the backend services associated with or required for the dialogue task, such as a database.

[0043] Specifically, the organizational structure interface module can include an organizational structure part and an interface part. The organizational structure part (Schema) refers to a template defining a dialogue task, which can include skill names for skills set under different domains, intents under those skills, and the required or optional slots for each intent. Different domains refer to different dialogue scenarios, in which the content and topic of the dialogue may differ. A skill refers to an entity or ability in the dialogue process, which may have a corresponding skill name and can perform a certain function that a person can perceive. For example, the telephone skill corresponds to the function of a telephone in daily life, and the memory skill corresponds to the function of recording events in daily life. Different skills can include different intents, which can reflect the purpose of the dialogue. For example, the telephone skill can include intents such as making a call and hanging up; the memory skill can include three intents: creating a memory (memory_create), reading a memory (memory_read), and deleting a memory (memory_delete). A slot refers to the additional parameters required to complete the action corresponding to an intent. For example, calling a contact is a slot for the contact. An intent under the memory skill can include three slots: entity, property, and value. This skill enables a smart assistant to help users remember personal matters. For example, if a user tells the smart assistant, "Remember that my keys are in my bag," the intent is "Create Memory," the entity slot is "keys," the property slot is "location," and the value slot is "in my bag." The following example demonstrates a partial code example of an intent under the memory skill in the schema section:

[0044]

[0045]

[0046] The API (Application Programming Interface) is a resource interface for a specific skill, enabling certain operations related to that skill. It can include the API name and its associated parameters, as shown in Table 1 below:

[0047] Table 1: Example table of API names, parameters and functions

[0048]

[0049]

[0050] A dialogue objective can be a queue structure consisting of one or more sub-objectives. The process of executing each sub-objective can be regarded as a round of dialogue. Therefore, a multi-round dialogue process can include multiple sub-objectives, and the complete dialogue objective can be determined by one or more sub-objectives.

[0051] This exemplary embodiment is essentially a process of two robots engaging in dialogue based on a dialogue objective. Besides communicating through unstructured natural language, the user simulator and the intelligent assistant can also recognize each other's structured language interface protocols. The task-oriented dialogue actions in this exemplary embodiment can be divided into user actions (user_action) of structured language user statements and system actions (system_action) of structured language intelligent statements. These represent the structured information conveyed by the user simulator to the intelligent assistant and the structured information fed back by the intelligent assistant to the user simulator, respectively. Typical examples of task-oriented dialogue actions include: INFORM(slot_name = value), representing a statement notifying a slot and its value; REQUEST(slot_name), representing a question asking for the value of a slot; and CONFIRM(), representing confirmation, etc. The two core actions of task-oriented dialogue are INFORM and REQUEST. Other actions can be added or removed according to business needs, or they can be replaced by setting specific slots. Table 2 below shows the system actions corresponding to the structured language intelligent statements and the user actions corresponding to the structured language user statements involved in this exemplary embodiment.

[0052] Table 2: Examples of System Actions and User Actions

[0053]

[0054]

[0055] An agenda stack refers to a project agenda that can be used to store the dialogue statements required by the user simulator and intelligent assistant to achieve the dialogue goal. In this exemplary embodiment, a DM (Dialogue Management) module can be configured in the user simulator, and an agenda stack mechanism can be designed in the DM module. Changes in the agenda stack represent changes in the dialogue state of the user simulator or intelligent assistant. The full agenda stack is the initial agenda stack before the dialogue goal begins, which can include all the agendas for achieving the dialogue goal, such as... Figure 5 As shown, a full agenda stack can be represented for a dialogue objective, which includes all the agendas involved when the user simulator needs to perform dialogue objectives of creating and retrieving memories.

[0056] In an exemplary embodiment, the aforementioned dialogue goal may include multiple sub-goals ordered in sequence, i.e., the dialogue goal is a queue structure composed of multiple sub-goals. Each sub-goal may consist of an intent and its slots. Slots may be divided into two types: constraints and requests. The specific data structure may include:

[0057] intent, the intent to which the current sub-target belongs;

[0058] The constraint restricts the range of values ​​that a slot can take. It can sample valid slot values ​​that exist in the API or sample slot values ​​that do not exist, in order to simulate unsatisfactory dialogue results.

[0059] Based on the number of slot values, the range of values ​​for constrained slots can be divided into three cases: fixed value, where the user simulator provides a fixed slot value to the smart assistant; possible value, where the user simulator provides a series of slot values ​​for the smart assistant to choose from; and open value, where the user simulator does not care which slot value to take and lets the smart assistant decide, which can be represented as DONT_CARE.

[0060] The request slot where the user simulator asks the intelligent assistant for help;

[0061] expectation, optional, is the expected dialogue outcome for the current sub-goal, used to evaluate the completion rate of multi-turn dialogues.

[0062] Furthermore, in step S310 above, obtaining the full agenda stack corresponding to the dialogue target may include:

[0063] Get the sub-agency stack corresponding to each sub-target;

[0064] The sub-agency stacks are combined according to the order of the sub-goals to obtain the full agenda stack corresponding to the dialogue goal.

[0065] The sub-agency stack refers to the agenda stack corresponding to completing a sub-goal, including agenda information related to the skills, intentions, or slots involved in completing the sub-goal. Combining the sub-agency stacks according to the sorting order of the sub-goals yields the full agenda stack corresponding to the dialogue goal. For example, in... Figure 5 The full agenda stack shown can include sub-agency stacks corresponding to sub-goals that create memories, and sub-agency stacks corresponding to sub-goals that retrieve memories, etc. Combining them according to the order of memory creation and memory retrieval can yield the full agenda stack corresponding to the dialogue goal.

[0066] Step S320: Determine the current agenda stack from the full agenda stack based on the current dialogue state.

[0067] The current dialogue state refers to the degree or progress of the dialogue between the user simulator and the intelligent assistant. For example, before the dialogue begins, the user simulator and the intelligent assistant are in an initial state. When the user simulator outputs a specific statement to the intelligent assistant, the current dialogue state changes. This can be considered as the state where the user simulator has sent a user statement or is waiting for a response from the intelligent assistant. Since the user simulator can output user statements based on the full agenda stack, the agenda stack will also change accordingly based on the change in the current dialogue state. For example, the full agenda stack includes sub-agency stacks corresponding to three sub-goals. When the dialogue progresses to the completion of the first sub-agency stack, the current agenda stack will include the remaining two sub-agency stacks. That is, the agenda stack changes every time the current dialogue state is updated. This exemplary embodiment can determine the current agenda stack from the full agenda stack based on the current dialogue state. The current agenda stack can store the remaining user statements needed to complete the dialogue goal in the current round.

[0068] Step S330: Use the current agenda stack to generate user statements from the user simulator, output the user statements to the smart assistant, and obtain the smart statements fed back by the smart assistant.

[0069] In this exemplary embodiment, the user statements generated by the user simulator through the current agenda stack can be user statements in structured language. Unlike natural language, user statements in structured language can be regarded as a kind of programming language, which includes structured information that can be received and recognized by the machine and has the same logical meaning as natural language. The user simulator can convert the user statements in structured language into user statements in natural language through the NLG (Nature Language Generation) module and send them to the intelligent assistant. After receiving user statements from the user simulator, the intelligent assistant can respond with corresponding intelligent statements. These intelligent statements can be either structured language or natural language. Depending on the type of intelligent statement, different processing modules can be set in the user simulator. For example, when receiving structured language intelligent statements, they can be processed through the DM module; when receiving natural language intelligent statements, they can be processed through the NLU (Natural Language Understanding) module in the user simulator. The NLU module can be used to convert unstructured natural language into structured information. Depending on the actual needs, the NLU module can also be omitted, allowing the user simulator to only receive structured language intelligent statements. This also enables the dialogue interaction between the user simulator and the intelligent assistant, which is not limited in this respect.

[0070] During any t rounds of dialogue, the state changes of the user simulator and the intelligent assistant can be represented by the following relationship:

[0071] S→A U →S'→A M →S”

[0072] Where S represents the initial state of the current round of dialogue. If the dialogue target has not yet started, S can represent the initial dialogue state, and S can correspond to the full agenda stack, A U This means that after the user simulator determines the user statement based on the current agenda stack corresponding to the current dialogue state S and outputs it to the intelligent assistant, the current dialogue state is updated to S'. Based on this state S', the intelligent assistant responds with the intelligent statement A. M This updates the dialogue state to "S", completing the current round of dialogue. For example... Figure 6 As shown, the specific process may include:

[0073] Step S610: Based on the current dialogue state S, determine the current agenda stack from the full agenda stack, and generate the user statement A from the user simulator based on the current agenda stack. U It can be represented as: P(A) U |S);

[0074] Step S620, transfer user statement A U Output to the intelligent assistant, based on user statement A U Updating the current dialogue state to S' can be represented as: P(S'|A U ,S);

[0075] Step S630, the smart assistant receives user statement A from the user simulator. U and provide feedback intelligent statement A M Updating the current dialogue state to S can be represented as: P(S”|A M (S').

[0076] Step S340: The user statement and the intelligent statement form a dialogue.

[0077] Finally, by combining user statements with intelligent statements, a dialogue corpus can be formed. When the user simulator and the intelligent assistant engage in multiple rounds of dialogue, a multi-round dialogue corpus can be formed. The specific number of dialogue rounds can be designed according to actual needs, and the full agenda stack can be designed. This disclosure does not impose specific limitations on this.

[0078] In one exemplary embodiment, the dialogue generation method described above may further include:

[0079] Update the current conversation state based on user statements and / or smart statements, and update the current agenda stack based on the current conversation state;

[0080] After obtaining the intelligent statement from the intelligent assistant, step S330 is executed again based on the updated current agenda stack.

[0081] After receiving intelligent statements from the intelligent assistant, the user simulator can re-execute user statements generated from the current agenda stack based on the updated current agenda stack. This triggers a new round of dialogue between the user simulator and the intelligent assistant, and the user statements are then output to the intelligent assistant again to continue receiving intelligent statements in return, thus achieving a multi-turn dialogue process. The full agenda stack can store all dialogue statement agendas required for multi-turn dialogues. When the user simulator outputs user statements to the intelligent assistant, or when the intelligent assistant provides intelligent statements back to the user simulator, the current dialogue state changes. Based on these changes in the current dialogue state, the current agenda stack can be updated.

[0082] Furthermore, in an exemplary embodiment, step S340 may include:

[0083] When the dialogue goal is determined based on the current dialogue state, all user statements and all intelligent statements will form a dialogue.

[0084] When the full agenda stack contains no remaining dialogue statements, the current dialogue goal is determined to be achieved. At this point, a complete multi-turn dialogue corpus can be formed based on all user statements and intelligent statements exchanged between the user simulator and the intelligent assistant. This exemplary embodiment can quickly and conveniently acquire multi-turn dialogue corpus through multi-turn dialogue between the user simulator and the intelligent assistant. Furthermore, based on the acquired large amount of multi-turn dialogue corpus, training conditions are provided for subsequent training of the natural language understanding model for turn-based dialogue, enabling the natural language understanding model to cope with more complex challenges.

[0085] In addition, based on the acquired multi-turn dialogue corpus, tags can be added during the dialogue process, with the structured language sentences serving as the tags for the corpus, thus facilitating the automated evaluation of single-turn or multi-turn dialogues.

[0086] In summary, this exemplary embodiment involves: acquiring the dialogue target and the corresponding full agenda stack; determining the current agenda stack from the full agenda stack based on the current dialogue state; generating user statements from the user simulator using the current agenda stack; outputting the user statements to the intelligent assistant and obtaining the intelligent statements from the intelligent assistant; and forming a dialogue between the user statements and the intelligent statements. On one hand, this exemplary embodiment proposes a novel dialogue generation method that can simulate human interaction with an intelligent assistant through a user simulator. The dialogue generation process requires minimal human intervention, obtaining a large amount of dialogue data solely through intelligent dialogue between machines. Compared to generating dialogue data through extensive dialogues between multiple real users, this method saves significant human and time costs, resulting in higher efficiency. On the other hand, the user simulator determines its simulated user statements based on the current agenda stack through changes in the dialogue state, thereby engaging in dialogue with the intelligent assistant. This process, based on the full agenda stack design, ensures a certain temporal sequence in the dialogue content and allows for clear and concise management of the dialogue process, guaranteeing normal and effective dialogue between the user simulator and the intelligent assistant.

[0087] In an exemplary embodiment, step S330 above, generating user statements for the user simulator using the current agenda stack, may include the following steps:

[0088] Determine the state transition strategy based on the user profile information configured in the user simulator;

[0089] Extract user statements from the current agenda stack based on the state transition strategy.

[0090] In practical dialogue applications, when a user simulator simulates human conversation, it can typically include multiple dialogue paths. That is, for the same scenario or question, different users have different dialogue styles, resulting in different dialogue paths. Therefore, to improve the realism and flexibility of the user simulator in simulating users and to more accurately simulate human output, this exemplary embodiment can configure user profile information for the user simulator. This user profile information is used to determine a state transition strategy. This state transition strategy refers to the specific strategy by which the user simulator can respond to dialogue or continue with subsequent dialogue actions. Through this state transition strategy, the next step in the dialogue by the user simulator can be determined.

[0091] This exemplary embodiment, when simulating human user dialogue strategies through a user simulator, can employ an effective state machine to define a state transition strategy for each intelligent statement action responded to by the intelligent assistant, such as... Figure 7As shown, for example, when the intelligent statement is an inquiry slot 710, the user simulator's response could be to answer the intelligent assistant with the slot value 711, provide the intelligent assistant with multiple optional slot values ​​712, ask the intelligent assistant what optional slot values ​​are available 713, or request the intelligent assistant to repeat it 714, etc.; when the intelligent statement is to notify a slot and its slot value 720, the user simulator's response could be to default to agreeing to the intelligent assistant's notification with the slot value 721, denying the intelligent assistant's notification with the slot value, providing the correct slot value again 722, confirming that it is correct 723, or requesting the intelligent assistant to repeat it 724, etc. The user simulator's selection of which user statement to use as the response statement is influenced by parameters such as the dialogue target and user profile information, and is a random process. It is precisely because the state transition strategy is a random process that the user simulator can simulate rich dialogue paths. After determining the response action for the current dialogue round, it can be pushed into the current agenda stack to update the current agenda stack, thereby executing the dialogue process between the user simulator and the intelligent statement described in steps S610 to S630.

[0092] Figure 8 The diagram illustrates the current round of dialogue, which may include the following steps:

[0093] In step S810, the user simulator determines the current agenda stack from the full agenda stack 812 corresponding to the dialogue target 811, and generates user statements 813 of the user simulator based on the current agenda stack. The user statements are in structured language.

[0094] Step S820: The user statement in structured language is processed by the NLG module to obtain the user statement in natural language 821;

[0095] Step S830: Output the user's natural language statement 821 to the intelligent assistant 831 and update the current dialogue status;

[0096] Step S840, determine the state transition strategy of the user simulator 841,

[0097] In step S850, according to the state transition strategy 841, the user's response statement is pushed to the current agenda stack to facilitate the next round of dialogue.

[0098] In one exemplary embodiment, the aforementioned user profile information may include at least one of the following:

[0099] Acuteness; flexibility; tendency to repeat;

[0100] The aforementioned state transition strategy may include at least one of a first probability parameter, a second probability parameter, and a third probability parameter;

[0101] The above steps, which determine the state transition strategy based on the user profile information configured in the user simulator, may include at least one of the following:

[0102] The first probability parameter is determined based on the urgency level configured in the user simulator. The first probability parameter is used to determine the probability distribution of the number of agenda items corresponding to the user statement.

[0103] The second probability parameter is determined based on the flexibility of the user simulator configuration. The second probability parameter is used to determine the probability that the user statement is of the same type.

[0104] The third probability parameter is determined based on the user simulator's configuration of the tendency to repeat requests. This third probability parameter is used to determine the probability that the user's statement is a request repetition type.

[0105] This exemplary embodiment defines user profile information from three dimensions: urgency, flexibility, and repetitiveness, thereby determining the state transition strategy based on the user profile information. Urgency (verbose) refers to an influencing factor used to simulate whether a user is impatient or patient. It affects the number of actions included in a single round of user statements. For example, an impatient user might include multiple actions in a single round of user statements, such as "Find my phone, not my keys," meaning a single round of user statements can include multiple sub-statements, each corresponding to its own action information. Patient users, on the other hand, often include only one or fewer actions in a single round of user statements, such as only one sub-statement per round. Flexibility (flexible) is an influencing factor reflecting the flexibility of a user's response statements. For example, when the intelligent assistant does not meet the user's needs, is the user more likely to change their goals? Flexibility can simulate the user's flexibility or degree of compromise. Repetitiveness (ask_for_repeat) is an influencing factor reflecting whether a user has a tendency to repeat actions. It can simulate the probability that a user did not hear the intelligent assistant's reply clearly and asked for it to be repeated.

[0106] This exemplary embodiment determines a first probability parameter based on the urgency level configured in the user simulator to determine the probability distribution of the number of agenda items corresponding to user statements. The first probability parameter can be the expectation of a Poisson distribution. In one round of dialogue, a user statement can include n user actions, where n is a random variable that can follow a Poisson distribution. The expectation of the Poisson distribution is influenced by the urgency level in the user profile information. Typically, n for an acute sub-user can be greater than n for a chronic sub-user. A second probability parameter is determined based on the flexibility level configured in the user simulator. The second probability parameter is used to determine the probability that the user statement is of the agreement type. The larger the second probability parameter, the higher the user's flexibility and the more likely they are to compromise. A third probability parameter is determined based on the repetition tendency configured in the user simulator. The third probability parameter is used to determine the probability that the user statement is of the request repetition type. The larger the third probability parameter, the greater the probability that the user requests repetition during the dialogue.

[0107] In this exemplary embodiment, the above three types of user profile information can be defined simultaneously, and three probability parameters can be calculated. Alternatively, one or more combinations can be determined according to actual needs to determine the corresponding probability parameters. The following is an example of a dialogue target for a memory skill: a user wants the smart assistant to help create a memory where the key is in a bag. After the memory is created, the user asks the smart assistant where the key is, as well as the probability parameter information of the three types of user profile information defined:

[0108]

[0109]

[0110] In one exemplary embodiment, such as Figure 9 As shown, step S330 above may include the following steps:

[0111] Step S910: Generate user statements in the structured language of the user simulator using the current agenda stack;

[0112] Step S920: Output the user statement in structured language to the intelligent assistant, and / or convert the user statement in structured language into a user statement in natural language and output it to the intelligent assistant;

[0113] Step S930: Obtain intelligent statements in structured language and / or intelligent statements in natural language from the intelligent assistant.

[0114] In practical applications, the dialogue interaction between the user simulator and the intelligent assistant can include any one or more of the following four methods:

[0115] Method 1: User statements in natural language <--> Intelligent statements in natural language, which conform to the way humans actually converse. The dialogue between the user simulator and the system uses natural language.

[0116] Method 2: User statements in structured language <--> Intelligent statements in natural language. The system receives the structured language from the user simulator and returns the natural language.

[0117] Method 3: User statements in natural language <--> Intelligent statements in structured language. The system receives natural language from the user simulator and returns structured language.

[0118] Method 4: User statements in structured language <--> Intelligent statements in structured language. The system receives the structured language from the user simulator and returns its own structured language.

[0119] In this exemplary embodiment, since the user simulator can directly process the intelligent statements of structured language returned by the intelligent assistant through the NLG module, it is not necessary to set up an NLU module for processing intelligent statements of natural language in the user simulator. That is, the user simulator does not need to receive intelligent statements of natural language returned by the intelligent assistant, but the module can be set up as needed.

[0120] In this exemplary embodiment, after the user simulator generates user statements in structured language through the current agenda stack, it can process these statements into natural language user statements using the NLG module and send them to the intelligent assistant, or it can directly send the structured language user statements to the intelligent assistant. Upon receiving the user statements, the intelligent assistant can also respond with intelligent statements in either structured language or natural language, enabling dialogue to proceed in either of these ways.

[0121] Figure 10 The system architecture diagram of another dialogue generation method in this exemplary embodiment is shown, which may specifically include: an organizational structure interface module 1010, a dialogue target generation module 1020, a user simulator 1030, and an intelligent assistant 1040.

[0122] The organizational structure interface module 1010 can include skills, intentions, slots, and supporting service resources set in different domains.

[0123] The dialogue target generation module 1020, based on the organizational structure interface module 1010, randomly generates dialogue targets in different fields, and can also be configured with different user profile information.

[0124] User simulator 1030 is used to simulate user dialogue based on dialogue goals and user profile information. It may include DM module 1032, NLG module 1031, NLU module 1033 (which can be selected as needed), etc.

[0125] The DM module 1032 receives intelligent statements in structured language sent by the intelligent assistant 1040 and outputs user statements in structured language to the intelligent assistant or the NLG module 1031. It can be responsible for the internal logic of multi-turn dialogues. It can be a collective term for the DST (Dialogue State Tracking) module and the DP (Dialogue Policy) module.

[0126] The NLG module 1031 is used to send user statements in natural language to the intelligent assistant 1040 to ensure external language diversity.

[0127] When the NLG module 1031 receives the user statements in structured language output by the DM module 1032, it can convert them into user statements in natural language. Specifically, a template-based NLG scheme can be adopted, with template tables being manually constructed offline. A template table is constructed for different user statements in structured language, containing multiple manually edited rules. Since the semantic information of the user statements in structured language is known, the goal of manually editing the rules is very clear. Different syntaxes can be edited at the sentence level, and multiple synonyms can be edited at the word level. Moreover, the rules are reusable, and the Cartesian product of synonyms can be extended to generate a large number of different expressions. Therefore, the efficiency of template construction is relatively high.

[0128] For example, in Figure 11 In an example of a template-based NLG module shown, when used online, the user statement 1110 of the structured language is first mapped to the corresponding template table 1120, and a rule 1130 is randomly selected from it. If there are synonyms in the rule, one is randomly selected. For example, "remember" can be randomly selected from "memorize", "note", and "remember". If there are empty slots in the rule, the slot values ​​of the corresponding slots in the user statement of the structured language are filled in. For example, "entity = key". Thus, a user statement 1140 of natural language can be generated.

[0129] Optionally, the user simulator 1030 can also be configured with an NLU module 1033 to understand intelligent statements in natural language sent by the intelligent assistant 1040.

[0130] The intelligent assistant 1040 is used to receive user statements sent by the user simulator 1030 and respond with intelligent statements to complete the dialogue process. It may include an NLU module 1041, a DST module 1042, a DP module 1043, and an NLG module 1044.

[0131] The NLU module 1041 is used to understand the natural language user statements sent by the user simulator, realizing domain classification, intent recognition, and slot extraction functions, and outputting three elements: {Domain; Intent; Slot}. For classification models, mature deep learning models used in industry include FastText, TextCNN (Text Convolutional Neural Networks), LSTM (Long Short-Term Memory), GRU (Gated Recurrent Unit), Transformer, and BERT. For slot extraction models, BiLSTM+CRF (Conditional Random Field), BERT+softmax, and BERT+CRF can be used. Using pre-trained models such as BERT (a bidirectional encoder representation based on Tansformer) will bring better classification and slot extraction results. The appropriate model can be selected based on business needs.

[0132] The DST module 1042 and DP module 1043 can maintain the current dialogue state based on the output of the NLU module 1041 and determine the next dialogue action. The dialogue strategy adopted can be a rule table. As shown in the figure, the DST module 1042 can receive user statements in structured language output by the user simulator, and the DP module 1043 can output intelligent statements in structured language to the user simulator.

[0133] NLG module 1044 is used to generate intelligent statements in natural language from intelligent statements in structured language and return them to the user simulator.

[0134] Figures 12-17 An example of a dialogue generation method is shown. Specifically, the dialogue target generation module can randomly generate a dialogue target, such as... Figure 12 The code example for the dialogue target shown on the right is converted to... Figure 12 The full agenda stack is on the left. The user simulator can interact with the intelligent assistant based on the current agenda stack, such as... Figure 13 As shown, Figure 13 This indicates that, based on the start of the dialogue objective, the entire agenda stack is updated to the new current agenda stack. Figure 13The diagram on the right illustrates the initial dialogue between the user simulator and the intelligent assistant. Further, the user simulator triggers a sub-goal related to memory creation in the agenda stack, initiating a dialogue with the intelligent assistant regarding memory creation, such as... Figure 14 As shown, Figure 14 The right side shows a diagram illustrating a conversation between the user simulator and the intelligent assistant. Figure 14 The left side represents the current agenda stack corresponding to the current dialogue state. The user simulator can then trigger sub-goals related to memory retrieval within the agenda stack, engaging in a memory retrieval dialogue with the intelligent assistant, such as... Figure 15 As shown, Figure 15 The diagram on the right illustrates the dialogue between the user simulator and the intelligent assistant as they access each other's memories. Figure 15 The left side represents the current agenda stack corresponding to the current dialogue state. When the intelligent assistant does not return the correct information, such as... Figure 16 As shown, the user simulator can extract new user statements from the current agenda stack according to the state transition strategy, such as... Figure 16 As shown in the current agenda stack on the left, extract the new user statement, such as... Figure 16 The user statement on the right-hand user simulator is "It's not the phone, it's the location of the keys." Finally, by completing all agenda statements in the full agenda stack, the dialogue goal is achieved, and the dialogue data between the target simulator and the intelligent assistant is obtained.

[0135] Exemplary embodiments of this disclosure also provide a dialogue generation apparatus. For example... Figure 18 As shown, the dialogue generation device 1800 may include: a dialogue target acquisition module 1810, used to acquire a dialogue target and acquire the full agenda stack corresponding to the dialogue target; a current stack determination module 1820, used to determine the current agenda stack from the full agenda stack according to the current dialogue state; a user statement output module 1830, used to generate user statements from a user simulator using the current agenda stack, output the user statements to the intelligent assistant, and acquire intelligent statements fed back by the intelligent assistant; and a dialogue formation module 1840, used to form a dialogue between the user statements and the intelligent statements.

[0136] In one exemplary embodiment, the dialogue generation apparatus may further include: a dialogue state update module, configured to update the current dialogue state based on user statements and / or intelligent statements, and update the current agenda stack based on the current dialogue state; and a user statement re-output module, configured to, after obtaining intelligent statements from the intelligent assistant, re-execute user statements generated using the current agenda stack to generate a user simulator based on the updated current agenda stack, output the user statements to the intelligent assistant, and obtain intelligent statements from the intelligent assistant.

[0137] In one exemplary embodiment, the dialogue formation module may include: a multi-turn dialogue formation unit, configured to form a dialogue between all user statements and all intelligent statements when the dialogue goal is determined to be achieved based on the current dialogue state.

[0138] In an exemplary embodiment, the dialogue target includes a plurality of sub-targets arranged in sequence; the dialogue target acquisition module may include: a sub-agency stack acquisition unit, used to acquire the sub-agency stack corresponding to each sub-target; and a full agenda stack acquisition unit, used to combine the sub-agency stacks according to the order of the sub-targets to obtain the full agenda stack corresponding to the dialogue target.

[0139] In an exemplary embodiment, the user statement output module may include: a transition strategy determination unit, configured to determine a state transition strategy based on user profile information configured in the user simulator; and a user statement extraction unit, configured to extract user statements from the current agenda stack based on the state transition strategy.

[0140] In an exemplary embodiment, the user profile information includes at least one of the following: urgency level; flexibility; repetitive tendency; the state transition strategy includes at least one of a first probability parameter, a second probability parameter, and a third probability parameter; the transition strategy determination unit includes at least one of the following: a first strategy determination subunit, configured to determine the first probability parameter based on the urgency level configured in the user simulator, the first probability parameter being used to determine the probability distribution of the number of agenda items corresponding to the user statement; a second strategy determination subunit, configured to determine the second probability parameter based on the flexibility configured in the user simulator, the second probability parameter being used to determine the probability that the user statement is of the agreement type; and a third strategy determination subunit, configured to determine the third probability parameter based on the repetitive tendency configured in the user simulator, the third probability parameter being used to determine the probability that the user statement is of the request repetition type.

[0141] In one exemplary embodiment, the user statement output module may include: a user statement generation unit, configured to generate user statements in structured language from the user simulator using the current agenda stack; a user statement output unit, configured to output the user statements in structured language to the intelligent assistant, and / or convert the user statements in structured language into user statements in natural language and output them to the intelligent assistant; and an intelligent statement acquisition unit, configured to acquire intelligent statements in structured language and / or intelligent statements in natural language fed back by the intelligent assistant.

[0142] The specific details of each part of the above-mentioned device have been described in detail in the method section of the implementation, and therefore will not be repeated here.

[0143] Exemplary embodiments of this disclosure also provide a computer-readable storage medium, which can be implemented as a program product, including program code. When the program product is run on a terminal device, the program code is used to cause the terminal device to perform the steps described in the "Exemplary Methods" section of this specification according to various exemplary embodiments of this disclosure, such as executing... Figure 3 , Figure 6 , Figure 8 or Figure 9 The program product may be a portable compact disc read-only memory (CD-ROM) containing program code and may run on a terminal device, such as a personal computer. However, the program product disclosed herein is not limited thereto. In this document, the readable storage medium may be any tangible medium containing or storing a program that may be used by or in connection with an instruction execution system, apparatus, or device.

[0144] The program product may employ any combination of one or more readable media. A readable medium may be a readable signal medium or a readable storage medium. A readable storage medium may be, for example, but not limited to, an electrical, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or any combination thereof. More specific examples (a non-exhaustive list) of readable storage media include: electrical connections having one or more wires, portable disks, hard disks, random access memory, read-only memory (ROM), erasable programmable read-only memory (EPROM or flash memory), optical fiber, portable compact disk read-only memory (CD-ROM), optical storage devices, magnetic storage devices, or any suitable combination thereof.

[0145] Computer-readable signal media may include data signals propagated in baseband or as part of a carrier wave, carrying readable program code. Such propagated data signals may take various forms, including but not limited to electromagnetic signals, optical signals, or any suitable combination thereof. A readable signal medium may also be any readable medium other than a readable storage medium, capable of sending, propagating, or transmitting programs for use by or in conjunction with an instruction execution system, apparatus, or device.

[0146] The program code contained on the readable medium may be transmitted using any suitable medium, including but not limited to wireless, wired, optical fiber, RF, etc., or any suitable combination thereof.

[0147] Program code for performing the operations of this disclosure can be written in any combination of one or more programming languages, including object-oriented programming languages ​​such as Java and C++, and conventional procedural programming languages ​​such as C or similar languages. The program code can execute entirely on the user's computing device, partially on the user's computing device, as a standalone software package, partially on the user's computing device and partially on a remote computing device, or entirely on a remote computing device or server. In cases involving remote computing devices, the remote computing devices can be connected to the user's computing device via any type of network, including a local area network (LAN) or a wide area network (WAN), or can be connected to an external computing device (e.g., via the Internet using an Internet service provider).

[0148] Those skilled in the art will understand that various aspects of this disclosure can be implemented as systems, methods, or program products. Therefore, various aspects of this disclosure can be embodied in entirely hardware implementations, entirely software implementations (including firmware, microcode, etc.), or implementations combining hardware and software aspects, collectively referred to herein as “circuit,” “module,” or “system.” Other embodiments of this disclosure will readily occur to those skilled in the art upon consideration of the specification and practice of the invention disclosed herein. This disclosure is intended to cover any variations, uses, or adaptations of this disclosure that follow the general principles of this disclosure and include common knowledge or customary techniques in the art not disclosed herein. The specification and embodiments are to be considered exemplary only, and the true scope and spirit of this disclosure are indicated by the claims.

[0149] It should be understood that this disclosure is not limited to the precise structures described above and shown in the accompanying drawings, and various modifications and changes can be made without departing from its scope. The scope of this disclosure is defined only by the appended claims.

Claims

1. A dialogue generation method, characterized by, include: Obtain the dialogue target and the full agenda stack corresponding to the dialogue target; The dialogue objective is a queue structure consisting of one or more sub-objectives, and the process of executing each sub-objective is regarded as performing one round of dialogue. Based on the current dialogue state, the current agenda stack is determined from the full agenda stack; the current dialogue state refers to the degree or progress of the dialogue between the user simulator and the intelligent assistant. The user statements in the user simulator are generated using the current agenda stack, the user statements are output to the intelligent assistant, and the intelligent statements fed back by the intelligent assistant are obtained; the step of generating user statements in the user simulator using the current agenda stack includes: determining a state transition strategy based on the user profile information configured in the user simulator; and extracting the user statements from the current agenda stack based on the state transition strategy. The user's statement and the intelligent statement form a dialogue; The user profile information includes at least one of the following: Acuteness; flexibility; tendency to repeat; The state transition strategy includes at least one of a first probability parameter, a second probability parameter, and a third probability parameter; determining the state transition strategy based on the user profile information configured in the user simulator includes at least one of the following: The first probability parameter is determined based on the urgency level configured in the user simulator, and the first probability parameter is used to determine the probability distribution of the number of agenda items corresponding to the user statement. The second probability parameter is determined based on the flexibility of the user simulator configuration, and the second probability parameter is used to determine the probability that the user statement is of the agreement type; The third probability parameter is determined based on the degree of repetition tendency configured in the user simulator. The third probability parameter is used to determine the probability that the user statement is a request for repetition.

2. The method of claim 1, wherein, The method further includes: Update the current dialogue state based on the user statement and / or the smart statement, and update the current agenda stack based on the current dialogue state; After obtaining the intelligent statement from the intelligent assistant, based on the updated current agenda stack, the user statement generated using the current agenda stack to create the user simulator is executed again, the user statement is output to the intelligent assistant, and the intelligent statement from the intelligent assistant is obtained.

3. The method of claim 2, wherein, The step of forming a dialogue between the user statement and the intelligent statement includes: When the dialogue goal is determined to be achieved based on the current dialogue state, all the user statements and all the intelligent statements will form a dialogue.

4. The method of claim 1, wherein, The dialogue objective includes multiple sub-objectives arranged in sequence; The step of obtaining the full agenda stack corresponding to the dialogue target includes: Obtain the sub-agency stack corresponding to each of the sub-targets; The sub-agency stacks are combined according to the order of the sub-goals to obtain the full agenda stack corresponding to the dialogue goal.

5. The method of claim 1, wherein, The process of generating user statements from a user simulator using the current agenda stack, outputting the user statements to the intelligent assistant, and obtaining intelligent statements from the intelligent assistant includes: The current agenda stack is used to generate user statements in the structured language of the user simulator; outputting the user sentence in the structured language to the intelligent assistant, and / or converting the user sentence in the structured language into a user sentence in natural language and outputting the user sentence in natural language to the intelligent assistant; obtaining an intelligent sentence in the structured language and / or an intelligent sentence in natural language fed back by the intelligent assistant.

6. A dialogue generation apparatus characterized by comprising: comprise: a dialogue target obtaining module, configured to obtain a dialogue target and obtain a full agenda stack corresponding to the dialogue target; the dialogue target is a queue structure composed of one or more sub-targets, and performing a process of each sub-target is regarded as a round of dialogue; a current stack determining module, configured to determine a current agenda stack from the full agenda stack according to a current dialogue state; the current dialogue state refers to a state of a degree or progress of dialogue between a user simulator and an intelligent assistant; a user sentence output module, configured to generate a user sentence of the user simulator by using the current agenda stack, output the user sentence to the intelligent assistant, and obtain an intelligent sentence fed back by the intelligent assistant; the user sentence output module is configured to determine a state transition strategy according to user portrait information configured by the user simulator; extract the user sentence from the current agenda stack based on the state transition strategy; a dialogue forming module, configured to form a dialogue by using the user sentence and the intelligent sentence; the user portrait information comprises at least one of: an acuteness degree; a flexibility degree; a tendency repetition degree; the state transition strategy comprises at least one of a first probability parameter, a second probability parameter and a third probability parameter; and the user sentence output module is configured to at least one of: determine the first probability parameter according to the acuteness degree configured by the user simulator, the first probability parameter being used to determine a probability distribution of a number of agendas corresponding to the user sentence; determine the second probability parameter according to the flexibility degree configured by the user simulator, the second probability parameter being used to determine a probability that the user sentence is of an agreement type; determine the third probability parameter according to the tendency repetition degree configured by the user simulator, the third probability parameter being used to determine a probability that the user sentence is of a request repetition type.

7. A computer-readable storage medium having stored thereon a computer program, characterized in that, The computer program is executed by a processor to implement the method in any one of claims 1 to 5.

8. An electronic device, comprising: comprise: a processor; a memory, configured to store executable instructions of the processor; wherein the processor is configured to implement the method in any one of claims 1 to 5 by executing the executable instructions.

Citation Information

Patent Citations

  • Statement generation method for dialogue system evaluation

    CN111737146A

  • User simulator construction method and device, electronic equipment and storage medium

    CN112560507A