Communication method and device and storage medium

By obtaining and processing dialogue information between multiple users, the intelligent assistant can determine and execute target tasks, solving the problem that existing intelligent assistants cannot perform multi-user collaborative task processing and improving the user experience.

CN120031047APending Publication Date: 2025-05-23BEIJING XIAOMI MOBILE SOFTWARE CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202311559347.5
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2023-11-21
Publication Date
2025-05-23

AI Technical Summary

Technical Problem

Existing smart assistants cannot perform collaborative task processing between multiple users, and cannot meet users' needs for complex tasks processing of smart assistants.

Method used

By obtaining dialogue information between the first user and the second user, semantic fusion and intent recognition are performed, the target task is determined, and the task is performed to meet the user's needs.

Benefits of technology

It realizes the ability of intelligent assistants to handle tasks in multiple user scenarios, improving user experience and demand satisfaction.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120031047A_ABST
    Figure CN120031047A_ABST
Patent Text Reader

Abstract

The invention relates to a communication method and device and a storage medium. The communication method comprises the following steps: acquiring first dialogue information input by a first user; sending the first dialogue information to a second user, and obtaining second dialogue information input by the second user, the second dialogue information being first response information of the second user based on the first dialogue information; and feeding back second response information to the first user and the second user, wherein the second response information is matched with the first dialogue information and the second dialogue information. The first dialogue information and the second dialogue information are respectively acquired, so that the first user demand and the second user demand are clarified, the demands of the first user and the second user can be met on the basis of clarifying the demands of the first user and the second user, and the user experience is improved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present disclosure relates to the field of information processing, and in particular to a communication method, device and storage medium. Background Art

[0002] With the development of terminal technology, users have an increasing demand for intelligent assistants on terminals.

[0003] In the related art, the intelligent assistant deployed on the terminal can only intelligently answer the questions raised by the user, but cannot further perform related task processing to meet the user's needs. Summary of the invention

[0004] In order to overcome the problems existing in the related art, the present disclosure provides a communication method, device and storage medium.

[0005] According to a first aspect of an embodiment of the present disclosure, a communication method is provided, comprising obtaining first conversation information input by a first user; sending the first conversation information to a second user, and obtaining second conversation information input by the second user, the second conversation information being first response information of the second user based on the first conversation information; and feeding back second response information to the first user and the second user, the second response information matching the first conversation information and the second conversation information.

[0006] In one embodiment, before feeding back the second response information to the first user and the second user, the method also includes: determining a target task based on the first dialogue information and the second dialogue information; executing the target task and obtaining an execution result of the target task; and determining the second response information based on the execution result of the target task.

[0007] In another embodiment, determining the target task based on the first dialogue information and the second dialogue information includes: semantically fusing the first dialogue information and the second dialogue information to obtain target dialogue information; performing intent recognition on the target dialogue information to obtain target intent information; and determining the target task corresponding to the target intent information based on a correspondence between preset target intent information and preset target tasks.

[0008] In another embodiment, the target task is executed in the following manner, including: decomposing the target task to obtain at least one subtask; executing at least one subtask and obtaining the execution result of each subtask; and determining the execution result of the target task based on the execution result of each subtask.

[0009] In another embodiment, the execution of the at least one subtask includes: when executing the subtask, determining the relationship between the execution authority level and the executed authority level of the subtask; if the execution authority level is lower than the executed authority level of the corresponding subtask, terminating the execution of the subtask.

[0010] According to a second aspect of an embodiment of the present disclosure, a communication device is provided, including: a transceiver unit, used to obtain first conversation information input by a first user; the transceiver unit is also used to send the first conversation information to a second user, and obtain second conversation information input by the second user, the second conversation information being first response information of the second user based on the first conversation information; and a processing unit, used to feed back second response information to the first user and the second user, the second response information matching the first conversation information and the second conversation information.

[0011] In one embodiment, the processing unit is further used to: determine a target task based on the first dialogue information and the second dialogue information; execute the target task and obtain an execution result of the target task; and determine the second response information based on the execution result of the target task.

[0012] In another embodiment, the processing unit determines the target task in the following manner, including: performing semantic fusion on the first dialogue information and the second dialogue information to obtain target dialogue information; performing intent recognition on the target dialogue information to obtain target intent information; and determining the target task corresponding to the target intent information based on the correspondence between preset target intent information and preset target tasks.

[0013] In another embodiment, the processing unit executes the target task and obtains the execution result of the target task in the following manner, including: decomposing the target task to obtain at least one subtask; executing the at least one subtask and obtaining the execution result of each subtask; and determining the execution result of the target task based on the execution result of each subtask.

[0014] In another embodiment, the processing unit calls for execution of the at least one subtask, including: when executing the subtask, determining the relationship between the execution authority level and the executed authority level of the subtask; if the execution authority level is lower than the executed authority level of the corresponding subtask, terminating the execution of the subtask.

[0015] According to a third aspect of an embodiment of the present disclosure, a communication device is provided, comprising: a memory for storing processor executable commands; wherein the processor is configured to: execute the communication method described in the first aspect or any one implementation of the first aspect.

[0016] According to a fourth aspect of an embodiment of the present disclosure, a storage medium is provided, in which instructions are stored. When the instructions in the storage medium are executed by a processor of a device, the device is enabled to execute the communication method described in the first aspect or any one of the embodiments of the first aspect.

[0017] The technical solution provided by the embodiment of the present disclosure may include the following beneficial effects: by obtaining the first dialogue information input by the first user; sending the first dialogue information to the second user, and obtaining the second dialogue information input by the second user, the second dialogue information is the first response information of the second user based on the first dialogue information; feeding back the second response information to the first user and the second user, the second response information matches the first dialogue information and the second dialogue information. By respectively obtaining the first dialogue information and the second dialogue information, the needs of the first user and the second user are clarified, and then the needs of the first user and the second user can be met on the basis of clarifying the needs of the first user and the second user, thereby improving the user experience.

[0018] It is to be understood that the foregoing general description and the following detailed description are exemplary and explanatory only and are not restrictive of the present disclosure. BRIEF DESCRIPTION OF THE DRAWINGS

[0019] The accompanying drawings, which are incorporated in and constitute a part of this specification, illustrate embodiments consistent with the present disclosure and, together with the description, serve to explain the principles of the present disclosure.

[0020] Figure 1 The present invention is a flow chart of an information processing method according to an exemplary embodiment.

[0021] Figure 2 The diagram is a schematic diagram of an application scenario of a task processing method.

[0022] Figure 3 The figure is a flow chart of a method for task processing according to an exemplary embodiment.

[0023] Figure 4 The present invention is a flow chart of a method for determining a target task according to an exemplary embodiment.

[0024] Figure 5 The present invention is a flow chart of a method for executing a target task according to an exemplary embodiment.

[0025] Figure 6 The present invention is a flow chart of a method for executing a target task according to an exemplary embodiment.

[0026] Figure 7 The present invention is a flow chart of a method for executing a target task according to an exemplary embodiment.

[0027] Figure 8 The present invention is a block diagram of a communication device according to an exemplary embodiment.

[0028] Fig. 9 The present invention is a block diagram of a communication device according to an exemplary embodiment.

[0029] Fig.10 The present invention is a block diagram showing a calling relationship of modules of a communication device according to an exemplary embodiment.

[0030] Fig.11 The invention is a block diagram showing a device for communication according to an exemplary embodiment.

[0031] Fig.12 The invention is a block diagram showing a device for communication according to an exemplary embodiment. DETAILED DESCRIPTION

[0032] Here, exemplary embodiments will be described in detail, examples of which are shown in the accompanying drawings. When the following description refers to the drawings, unless otherwise indicated, the same numbers in different drawings represent the same or similar elements. The implementations described in the following exemplary embodiments do not represent all implementations consistent with the present disclosure.

[0033] An intelligent assistant is a software program or device built with artificial intelligence technology that is designed to provide help and support to users in their daily lives. An intelligent assistant is usually able to answer user questions, provide information, perform tasks, engage in conversations with users, and perform corresponding operations based on user needs and instructions.

[0034] With the continuous development of terminal technology, more and more terminals are equipped with smart assistants before leaving the factory to provide users with more services.

[0035] In the related art, the intelligent assistant deployed in the terminal usually provides services to users based on the artificial intelligence (AI) model integrated in the terminal system.

[0036] In some embodiments, the intelligent assistant will provide corresponding answers based on the user's questions.

[0037] However, the intelligent assistants in the related art can only answer questions raised by the current user or complete some simple tasks, and cannot perform collaborative task processing among multiple users.

[0038] Based on this, the embodiment of the present disclosure proposes a communication method, which obtains the first dialogue information input by the first user; sends the first dialogue information to the second user, and obtains the second dialogue information input by the second user, the second dialogue information is the first response information of the second user based on the first dialogue information; feeds back the second response information to the first user and the second user, and the second response information matches the first dialogue information and the second dialogue information. By respectively obtaining the first dialogue information and the second dialogue information, the target tasks related to the needs of the first user and the second user are clarified, and the needs of the first user and the second user are met by completing the target tasks, thereby improving the user experience.

[0039] It should be noted that the information processing method involved in the embodiments of the present disclosure can be applied in a terminal. In some embodiments, the terminal includes, for example, a mobile phone, a wearable device, an Internet of Things device, a car with communication function, a smart car, a tablet computer (Pad), a computer with wireless transceiver function, a virtual reality (VR) terminal device, an augmented reality (AR) terminal device, a wireless terminal device in industrial control, a wireless terminal device in self-driving, a wireless terminal device in remote medical surgery, a wireless terminal device in a smart grid, a wireless terminal device in transportation safety, a wireless terminal device in a smart city, and at least one of a wireless terminal device in a smart home, but is not limited thereto.

[0040] Task Interpreter, generally refers to a software component or system that interprets and executes instructions or instruction sets for a specific task.

[0041] In some embodiments of the present disclosure, the task interpreter can generally be used to perform the following tasks:

[0042] 1. Parsing input: The task interpreter parses the instructions from the user or other input sources and converts them into a form that the computer can understand and execute, such as parsing natural language sentences, parsing command line parameters, etc.

[0043] 2. Semantic understanding: The task interpreter will understand the meaning and context of the instruction in order to correctly perform the corresponding task. This may involve natural language processing technologies such as word sense disambiguation, semantic role labeling, and grammatical analysis.

[0044] 3. Task execution: The task interpreter passes the parsed instructions to the corresponding task execution module or system to perform the actual operation. This may involve calling other software components, executing algorithms, accessing databases, etc.

[0045] 4. Error handling: Task interpreters usually have error handling capabilities, which can detect and handle errors or abnormal situations in the input and provide corresponding feedback or error prompts to the user.

[0046] In some embodiments of the present disclosure, the first application may assume part or all of the functions of a task interpreter (TaskInterpreter), that is, the user identifies the target task or decomposes the target task into multiple subtasks.

[0047] For ease of understanding, any exemplary description of “terminal” in the following embodiments of the present disclosure may be understood as “smartphone” unless otherwise emphasized.

[0048] It should be noted that, in order to facilitate understanding of the embodiments of the present disclosure, some terms used in the embodiments of the present disclosure are explained below to facilitate understanding by those skilled in the art.

[0049] Intent recognition: Intent recognition is to classify sentences input by users into different intent categories. Intent categories represent the type of tasks or instructions that users want to achieve, such as create, query, update, or delete. Through intent recognition, users' intentions can be better understood, thereby further extracting specific task or instruction information.

[0050] Intent recognition is usually achieved by training a machine learning model. The model is trained using labeled training data to learn to map input sentences to corresponding intent categories. Once the model is trained, it can classify the input natural language sentences and determine the intent expressed by the sentences.

[0051] GPT Agent: An agent based on the Generative Pre-trained Transformer (GPT). GPT is a natural language processing model based on neural networks with powerful language understanding and generation capabilities. GPT Agent is built on the GPT model and can be used in applications such as chatbots, smart assistants, and question-answering systems. It can understand user input, generate natural and fluent responses, and perform contextual understanding and reasoning based on the context.

[0052] In some embodiments, GPT Agent can interact with users through text or voice, answer questions, provide information, and perform some tasks. Its goal is to communicate and interact with users in a more natural and intelligent way by simulating human conversation and understanding capabilities.

[0053] Application: An application is a series of software programs designed and developed to achieve specific functions or tasks.

[0054] In some embodiments, the terms "application", "GPT Agent", "GPT agent" and the like can be used interchangeably.

[0055] Figure 1 is a flow chart of an information processing method according to an exemplary embodiment. Figure 1 As shown, the information processing method includes the following steps.

[0056] In step S11, first dialogue information input by a first user is obtained.

[0057] In step S12, the first dialogue information is sent to the second user, and second dialogue information input by the second user is obtained, where the second dialogue information is first response information of the second user based on the first dialogue information.

[0058] In step S13, second response information is fed back to the first user and the second user, and the second response information matches the first dialogue information and the second dialogue information.

[0059] The information processing method provided by the embodiment of the present disclosure obtains the first dialogue information and the second dialogue information respectively, thereby clarifying the target tasks related to the first user needs and the second user needs, and improving the user experience by completing the target tasks to meet the first user needs and the second user needs.

[0060] In some embodiments, the first user may be one or more.

[0061] In some embodiments, the second user may be one or more.

[0062] In some embodiments, the information processing method is applied to a terminal.

[0063] In some embodiments, the first dialogue information input by the first user may be demand information of the first user, that is, information that can represent the current demand of the first user.

[0064] Optionally, the first dialogue information input by the first user may be at least one of the following: text-type dialogue information, image-type dialogue information, or voice-type dialogue information.

[0065] In this way, satisfying the input of multiple types of user demand information can facilitate user use and improve user experience.

[0066] In some embodiments, after obtaining the first dialogue information input by the first user, the first dialogue is converted into first input information, wherein the first input information can be understood as information that can be directly applied by the system of the terminal.

[0067] It is understandable that the demand information input by the user may not be directly used by the terminal for transmission between systems, so the terminal needs to obtain the first input information based on the demand information of the first user.

[0068] It is understandable that if the first dialogue information input by the user can be directly used by the terminal to transmit information between systems, there is no need to convert the first dialogue information into the first input information.

[0069] In some embodiments, the first dialogue information may be dialogue information that the terminal can send to the B user.

[0070] It is understandable that, since the first dialogue information represents the needs of the first user, when the semantics of the needs of the first user expressed in the first dialogue information meet the preset requirements and can be directly used by the terminal for information transmission between systems, the terminal can directly send the first dialogue information to user B for information transmission, without confirming the first user's needs information or converting the first input information. In this way, it is possible to avoid wasting resources by processing the input dialogue information multiple times.

[0071] Optionally, the preset requirement may be a semantic similarity requirement, such as a semantic similarity threshold.

[0072] The communication method involved in the embodiment of the present disclosure may include at least one of steps S11 to S13. For example, step S11 may be implemented as an independent embodiment, step S12 may be implemented as an independent embodiment, step S11+step S12 may be implemented as an independent embodiment, and step S11+step S12+step S13 may be implemented as an independent embodiment, but is not limited thereto.

[0073] In some embodiments, step S11 and step S12 are optional, and one or more of these steps may be omitted or replaced in different embodiments.

[0074] In some embodiments, step S11 and step S13 are optional, and one or more of these steps may be omitted or replaced in different embodiments.

[0075] In some embodiments, step S12 and step S13 are optional, and one or more of these steps may be omitted or replaced in different embodiments.

[0076] In some embodiments, Figure 2 This is a schematic diagram of an application scenario of a task processing method. Figure 2 As shown, the communication method includes the following steps.

[0077] In step S21, user A sends first demand information.

[0078] In some embodiments, A is used to send the first requirement information to terminal a.

[0079] In some embodiments, terminal a obtains the first demand information sent by user A.

[0080] In some embodiments, user A may be one or more electronic accounts.

[0081] For example, user A can use an account for one or more email boxes or applications.

[0082] In this way, it is possible to obtain the needs of multiple accounts based on one terminal, thereby expanding the application scope of the information processing method.

[0083] Exemplarily, user A sends the first demand information to terminal a, which may be: user A inputs voice demand information to terminal a, "make an appointment with user B for a meeting, the time can be any time during working hours this week".

[0084] In some embodiments, terminal a calls a first application to obtain first demand information sent by user A.

[0085] In some embodiments, the first application determines the needs of user A based on the first demand information sent by user A, and then determines the target task.

[0086] Optionally, the target task can be understood as a task that needs to be completed in order to meet the needs of user A. That is, completing the target task can satisfy the user needs of user A.

[0087] In some embodiments, the first application may be deployed on terminal a, and / or terminal b.

[0088] In some embodiments, the following Figure 1 In the embodiment, the first user may include: A user and a terminal.

[0089] In some embodiments, "first demand information" and "first user's demand information" can be interchangeable, meaning information representing the first user's demand.

[0090] In step S22, terminal a determines the first input information.

[0091] In some embodiments, terminal a determines the first input information based on the first requirement information.

[0092] In some embodiments, terminal a determines the first input information based on semantic information and / or keyword information in the first requirement information.

[0093] In some embodiments, the first input information may be information that enables the terminal to establish a system task.

[0094] For example, the first demand information is "make an appointment with user B for a meeting at any time during working hours this week". Based on the semantic information and / or keyword information, the corresponding first input information can be obtained, wherein the semantics of the first input information is the same as the semantics of the first demand information, for example, "user A wants to make an appointment with user B for a meeting this week".

[0095] In some embodiments, the first dialogue information determined by the a-terminal may be the same as the first input information.

[0096] In step S23, terminal a determines the first conversation information.

[0097] In some embodiments, the a-terminal determines the first conversation information based on the first input information.

[0098] In some embodiments, the a-terminal determines the first dialog information based on the semantics of the first input information.

[0099] In some embodiments, the a-terminal determines the first conversation information based on a keyword of the first input information.

[0100] In some embodiments, terminal a may generate the first dialogue information based on the semantics of the first input information and / or keywords through a pre-deployed natural language generation model.

[0101] Exemplarily, the first input information is "User A wants to schedule a meeting with User B this week". Based on the first input information, Terminal a generates a first dialogue message to be sent to User B, "Hello User B, User A wants to have a meeting with you this week. I would like to ask when you are free this week?".

[0102] In some embodiments, the first dialogue information determined by the a-terminal may be the same as the first input information.

[0103] In some embodiments, the first dialogue information determined by the a-terminal may be the same as the first demand information.

[0104] In step S24, terminal a sends the first conversation information.

[0105] In some embodiments, the following Figure 1 In the embodiment, the second user may include: a B user and a b terminal.

[0106] In some embodiments, terminal a sends first conversation information to user B.

[0107] In some embodiments, terminal a sends the first conversation information to terminal b, and user B obtains the first conversation information based on terminal b.

[0108] In some embodiments, B-user may be one or more electronic accounts.

[0109] For example, user B may use an account for one or more email boxes or applications.

[0110] In some embodiments, if user B has multiple electronic accounts, the first conversation information is sent to each of the multiple electronic accounts.

[0111] In some embodiments, when the first dialogue information is the same as the first input information, terminal a sends the first input information to user B.

[0112] In some embodiments, when the first conversation information is the same as the first demand information, terminal a sends the first demand input information to user B.

[0113] In step S25, user B sends the second conversation information.

[0114] In some embodiments, the second dialogue information is response information fed back by user B based on the first dialogue information.

[0115] In some embodiments, the second dialogue message may be answered by user B, or may be answered based on a natural language generation model deployed on terminal b.

[0116] For example, the first dialogue message obtained by user B is "Hello user B, user A wants to have a meeting with you this week. I would like to ask when you are free this week?", and user B can reply with the second dialogue message "I am free this Thursday or Friday".

[0117] In some embodiments, if the B user is a plurality of users (eg, a plurality of electronic accounts), at least one of the plurality of B users sends the second conversation information, wherein the second conversation information sent by each user is independent of each other.

[0118] For example, if the B user is a plurality of users, including: a first B user, a second B user, and a third B user, etc. The first dialogue message received by all three is "A user wants to have a meeting with you this week. I would like to ask when you are free this week?" Then the first B user can reply with the second dialogue message "I am free this Thursday and this Friday and can attend the meeting", the second B user can reply with the second dialogue message "I am free this Thursday and can attend the meeting", and the third B user can not reply, etc.

[0119] Based on this, when there are multiple users in B, each user can give an independent answer, making the method more universal.

[0120] In step S26, terminal a executes the target task.

[0121] In some embodiments, before terminal a executes the target task, it also includes determining the target task.

[0122] In some embodiments, the target task may be determined based on the first dialog information or based on a preconfigured rule.

[0123] Exemplarily, if user A uses terminal a to perform a target task without interacting with user B, the target task may be determined based on the first dialog information or based on a preconfigured rule.

[0124] In some embodiments, terminal a executes the target task based on the first dialogue information and the second dialogue information.

[0125] For example, if user A uses terminal a to perform a target task while interacting with user B, the target task may be determined based on the first dialogue information and the second dialogue information.

[0126] In some embodiments, terminal a may call a first program to determine a target task.

[0127] In some embodiments, terminal a may determine the target task by calling the first program to perform intent recognition on the first conversation and the second conversation.

[0128] Exemplarily, when terminal a executes the target task based on the first dialogue information and the second dialogue information, the preset task interpreter (Task Interpreter) is called to identify the target task implicit in the first dialogue information and the second dialogue information. For example, the first dialogue information is "Hello user B, user A wants to have a meeting with you this week. I would like to ask when you are free this week?", and the second dialogue information is "the first user B is free this Thursday and can attend the meeting", and "the second user B is free this Thursday and this Friday and can attend the meeting". Based on the intention recognition of the first dialogue information and the second dialogue information, the intent information that can be obtained is "user A can attend the meeting this week, the first user B can attend the meeting this Thursday, and the second user B can attend the meeting this Thursday or this Friday". The target task that can be obtained is "Have a meeting this Friday to meet the needs of users A and B".

[0129] In some embodiments, the a-terminal may call a first program to determine at least one subtask constituting the target task.

[0130] Exemplarily, continuing with the above embodiment, after obtaining the target task of "holding a meeting this Friday to meet the needs of user A and user B", the task can be broken down into at least one subtask, for example: booking a meeting room this Friday, sending a meeting invitation to user A, sending a meeting invitation to a second user B, and sending a meeting invitation to a third user B, etc.

[0131] It is understandable that by achieving the multiple subtasks described above, the target task can be completed, that is, the needs of user A and user B can be met.

[0132] In some embodiments, at least one subtask is executed by calling at least one preset interface, and each preset interface corresponds to a subtask.

[0133] Optionally, when faced with at least one subtask, a preset natural language processing model execution logic may be called to call a corresponding interface to execute the corresponding subtask.

[0134] Optionally, each preset interface encapsulates one or more execution units for executing subtasks.

[0135] It can be understood that by encapsulating the execution units that execute subtasks in a preset interface in advance, the dependencies between the execution units can be reduced, decoupling between the units can be achieved, and the maintainability and scalability of the code can be improved.

[0136] For example, for the subtask "booking a conference room", the first execution unit in the preset A interface is called for processing. For the subtask "sending a meeting invitation to user A", the second execution unit in the preset B interface is called for processing, etc.

[0137] It is understandable that the preset interface can be encapsulated during the setting phase to ensure data integrity when the interface is called.

[0138] In some embodiments, if the execution permission level of the preset interface is lower than the execution permission level of the subtask, the preset interface is controlled to terminate the execution of the subtask.

[0139] Exemplarily, continuing the above embodiment, if the first dialogue message is "Hello user B, user A wants to have a meeting with you this week. I would like to ask when you are free this week?", and the second dialogue message is "user B is free this Thursday and can attend the meeting", "user B is free this Thursday and this Friday and can attend the meeting", and "user B needs to specify the meeting time for user A", then the information determined based on the first dialogue message and the second dialogue message should be "user A, user B and user B can attend the meeting this Friday, but user B cannot give the meeting time himself and needs to be specified by user A". Based on this, if all three people are to attend the meeting, the authority of user B to give the meeting time himself is lower than the authority of user A to specify the meeting time for user B. Therefore, before user B gives the meeting time himself, stop asking user B to determine the meeting time himself. In this case, you can turn to asking user A to specify the meeting time for user B.

[0140] Based on this, it is possible to avoid resource collisions due to confusion in the execution priorities of tasks, or waste of resources due to continuous execution of invalid tasks.

[0141] In step S27, terminal a sends the target task execution result.

[0142] In some embodiments, terminal a obtains the target task execution result after executing the target task.

[0143] Exemplarily, following the above embodiment, the execution result may be: the conference invitation is successfully established or the conference invitation is not successfully established.

[0144] Exemplarily, if the execution results of some subtasks are successful and the execution results of some subtasks are failed, the final execution result of the target task can be defined based on preset rules.

[0145] For example, continuing with the above embodiment, the subtask result for booking a conference room is successful (for example, the conference room is available on Thursday or Friday and can be booked), but the meeting time for each participant cannot be determined (for example, the second user B cannot give a clear meeting time), then the execution result of the corresponding target task may be that the meeting invitation was not successfully established.

[0146] In some embodiments, terminal a may send the task execution result to user A and / or user B.

[0147] Based on this, user A and / or user B can determine the completion status of the target task in a timely manner.

[0148] In some embodiments, terminal a may determine corresponding response information based on the target task execution result, and send the response information to the first user and / or the second user.

[0149] For example, following the above embodiment, if the target task execution result is "unsuccessful establishment of the meeting invitation", the response information sent to the first user and / or the second user may be "since the second user B cannot provide a clear meeting time, the meeting invitation fails".

[0150] In some embodiments, "obtain", "obtain", "get", "receive", "transmit", "bidirectional transmission", "send and / or receive" can be interchangeable, which can be interpreted as receiving from other subjects, but is not limited to this.

[0151] In some embodiments, terms such as "certain", "preset", "preset", "set", "indicated", "some", "any", and "first" can be interchangeable, and "specific A", "preset A", "preset A", "set A", "indicated A", "some A", "any A", and "first A" can be interpreted as A pre-defined in a protocol, etc., or as A obtained through setting, configuration, or indication, etc., and can also be interpreted as specific A, some A, any A, or first A, etc., but is not limited to this.

[0152] The communication method involved in the embodiments of the present disclosure may include at least one of steps S21 to S27. For example, step S21 may be implemented as an independent embodiment, step S22 may be implemented as an independent embodiment, step S21+step S22 may be implemented as an independent embodiment, step S21+step S22+step S23 may be implemented as an independent embodiment, and step S21+step S22+step S23+step S24+step S25+step S26+step S27 may be implemented as an independent embodiment, but are not limited thereto.

[0153] In some embodiments, step S21, step S22, step S23, step S24, step S25, and step S26 are optional, and one or more of these steps may be omitted or replaced in different embodiments.

[0154] In some embodiments, step S21, step S22, step S23, step S24, step S25, and step S27 are optional, and one or more of these steps may be omitted or replaced in different embodiments.

[0155] In some embodiments, step S21, step S22, step S23, step S24, step S26, and step S27 are optional, and one or more of these steps may be omitted or replaced in different embodiments.

[0156] In some embodiments, step S21, step S22, step S23, step S25, step S26, and step S27 are optional, and one or more of these steps may be omitted or replaced in different embodiments.

[0157] In some embodiments, step S21, step S22, step S24, step S25, step S26, and step S27 are optional, and one or more of these steps may be omitted or replaced in different embodiments.

[0158] In some embodiments, step S21, step S23, step S25, step S26, and step S27 are optional, and one or more of these steps may be omitted or replaced in different embodiments.

[0159] In some embodiments, step S22, step S23, step S24, step S25, step S26, and step S27 are optional, and one or more of these steps may be omitted or replaced in different embodiments.

[0160] In some embodiments, see Figure 2 Other optional implementation methods recorded before and after the corresponding homestay.

[0161] Figure 3 is a flowchart of a method for task processing according to an exemplary embodiment. Figure 3 As shown, the method comprises the following steps:

[0162] In step S31 , a target task is determined based on the first dialogue information and the second dialogue information.

[0163] In step S32, the target task is executed and the execution result of the target task is obtained.

[0164] In step S33, the second response information is determined based on the execution result of the target task.

[0165] In the embodiment of the present disclosure, by determining the target task based on the first dialogue information and the second dialogue information, a specific method for satisfying the needs of the first user and the second user can be determined, thereby satisfying the needs of the first user and the second user by completing the target task.

[0166] In some embodiments, the optional implementation of step S31 can be found in Figure 2 Related optional implementations of steps S21 to S23, and Figure 2 Other related parts involved in the embodiment will not be described in detail here.

[0167] In some embodiments, the optional implementation of step S32 can be seen in Figure 2 Related optional implementations of step S25, and Figure 2 Other related parts involved in the embodiment will not be described in detail here.

[0168] In some embodiments, the optional implementation of step S33 can be found in Figure 2 Related optional implementations of step S25, and Figure 2 Other related parts involved in the embodiment will not be described in detail here.

[0169] In some embodiments, steps S31 and S32 are optional, and one or more of these steps may be omitted or replaced in different embodiments.

[0170] In some embodiments, steps S32 and S33 are optional, and one or more of these steps may be omitted or replaced in different embodiments.

[0171] In some embodiments, steps S31 and S33 are optional, and one or more of these steps may be omitted or replaced in different embodiments.

[0172] Figure 4 is a flow chart of a method for determining a target task according to an exemplary embodiment. Figure 4 As shown, the method includes the following steps.

[0173] In step S41, semantic fusion is performed on the first dialogue information and the second dialogue information to obtain target dialogue information.

[0174] In step S42, the target conversation information is subjected to intention recognition to obtain target intention information.

[0175] In step S43, based on the correspondence between the preset target intention information and the preset target task, the target task corresponding to the target intention information is determined.

[0176] In the disclosed embodiment, a target task is determined by integrating the semantics of a first conversation from a first user and a second conversation from a second user, so that when the target task is completed, the needs of the first user and the second user can be met.

[0177] In some embodiments, the optional implementation of step S41 can be found in Figure 2 Related optional implementations of step S26, and Figure 2 Other related parts involved in the embodiment will not be described in detail here.

[0178] In some embodiments, the optional implementation of step S42 can be found in Figure 2 Related optional implementations of step S26, and Figure 2 Other related parts involved in the embodiment will not be described in detail here.

[0179] In some embodiments, the optional implementation of step S43 can be found in Figure 2 Related optional implementations of step S26, and Figure 2 Other related parts involved in the embodiment will not be described in detail here.

[0180] The communication method involved in the embodiment of the present disclosure may include at least one of steps S41 to S43. For example, step S41 may be implemented as an independent embodiment, step S42 may be implemented as an independent embodiment, and step S41+step S42+step S43 may be implemented as independent embodiments, but are not limited thereto.

[0181] In some embodiments, steps S41 and S42 are optional, and one or more of these steps may be omitted or replaced in different embodiments.

[0182] In some embodiments, steps S42 and S43 are optional, and one or more of these steps may be omitted or replaced in different embodiments.

[0183] In some embodiments, steps S41 and S43 are optional, and one or more of these steps may be omitted or replaced in different embodiments.

[0184] Figure 5 is a flow chart of a method for executing a target task according to an exemplary embodiment. Figure 5 As shown, the method includes the following steps.

[0185] In step S51, the target task is decomposed to obtain at least one subtask.

[0186] In step S52, at least one subtask is executed, and the execution result of each subtask is obtained.

[0187] In step S53 , the execution result of the target task is determined based on the execution result of each subtask.

[0188] In the embodiment of the present disclosure, the target task is broken down into smaller parts, and the decomposed subtasks are individually executed by calling preset interfaces, so that the target task execution process is made more detailed and specific, thereby improving the user experience.

[0189] In some embodiments, the optional implementation of step S51 can be found in Figure 2 Related optional implementations of steps S26 and S27, and Figure 2 Other related parts involved in the embodiment will not be described in detail here.

[0190] In some embodiments, the optional implementation of step S52 can be found in Figure 2 Related optional implementations of steps S26 and S27, and Figure 2 Other related parts involved in the embodiment will not be described in detail here.

[0191] In some embodiments, the optional implementation of step S53 can be found in Figure 2 Related optional implementations of steps S26 and S27, and Figure 2 Other related parts involved in the embodiment will not be described in detail here.

[0192] The communication method involved in the embodiment of the present disclosure may include at least one of steps S51 to S53. For example, step S51 may be implemented as an independent embodiment, step S52 may be implemented as an independent embodiment, and step S51+step S52+step S53 may be implemented as independent embodiments, but are not limited thereto.

[0193] In some embodiments, steps S51 and S52 are optional, and one or more of these steps may be omitted or replaced in different embodiments.

[0194] In some embodiments, steps S52 and S53 are optional, and one or more of these steps may be omitted or replaced in different embodiments.

[0195] In some embodiments, steps S51 and S53 are optional, and one or more of these steps may be omitted or replaced in different embodiments.

[0196] Figure 6 is a flow chart of a method for executing a target task according to an exemplary embodiment. Figure 6 As shown, the method includes the following steps.

[0197] In step S61, when executing a subtask, the relationship between the execution authority level and the executed authority level of the subtask is determined.

[0198] In step S62, if the execution permission level is lower than the execution permission level of the corresponding subtask, the execution of the subtask is terminated.

[0199] In the embodiments of the present disclosure, resource collisions caused by confusion in the execution priorities of tasks or waste of resources caused by continuous execution of invalid tasks can be avoided.

[0200] In some embodiments, the optional implementation of step S61 can be found in Figure 2 Related optional implementations of step S26, and Figure 2 Other related parts involved in the embodiment will not be described in detail here.

[0201] In some embodiments, the optional implementation of step S62 can be seen in Figure 2 Related optional implementations of step S26, and Figure 2 Other related parts involved in the embodiment will not be described in detail here.

[0202] The communication method involved in the embodiment of the present disclosure may include at least one of step S61 to step S62. For example, step S61 may be implemented as an independent embodiment, step S62 may be implemented as an independent embodiment, and step S61+step S62 may be implemented as independent embodiments, but are not limited thereto.

[0203] In some embodiments, step S61 is optional, and one or more of these steps may be omitted or replaced in different embodiments.

[0204] In some embodiments, step S62 is optional, and one or more of these steps may be omitted or replaced in different embodiments.

[0205] In some embodiments, the communication method is applied to a conference reservation scenario. Through the disclosed embodiments, the large model can be applied to a social scenario to assist users in solving coordination and communication problems in the scenario and improve user communication efficiency.

[0206] Figure 7 is a flow chart of a method for executing a target task according to an exemplary embodiment. Figure 7 As shown, the method includes the following steps.

[0207] In step S71, a first application is deployed.

[0208] In step S72, the second application is deployed.

[0209] In step S73, the first application is called to communicate with the user, and the second application is called to execute the target task.

[0210] In step S74, when the second application cannot independently complete the task due to the first reason, the target task is executed after performing the first processing.

[0211] In some embodiments, with respect to step S71, the first application may be implemented as a GPT agent, which shapes the role of an "intelligent assistant" through prompts, grants relevant permissions, and defines the execution actions (functions) corresponding to each permission.

[0212] Exemplarily, the execution action includes at least one of the following: querying a user calendar, querying an organizational structure, reserving a conference room, and sending a message to a user.

[0213] In some embodiments, for step S72, the second application can be implemented as another GPT agent, which shapes the role of a "task decomposer" through prompts, is responsible for understanding the user's intentions and decomposing them into multiple executable subtasks to be executed by the "intelligent assistant" (first application).

[0214] In some embodiments, the first reason includes at least one of the following: the permissions granted to the first application are insufficient to perform the task to be performed, or the first application lacks certain information and is unable to perform the task to be performed.

[0215] In some embodiments, the first process includes at least one of the following: feeding back to a user of the first program that the task to be executed cannot be executed, obtaining necessary information, or obtaining necessary authorization.

[0216] In some embodiments, the first application may be deployed based on a third-party application.

[0217] In some embodiments, the first application may be deployed based on a third-party application.

[0218] Based on the same concept, an embodiment of the present disclosure also provides a communication device.

[0219] Figure 8 is a block diagram of a communication device 100 according to an exemplary embodiment, referring to Figure 8 The device includes a transceiver unit 101 and a processing unit 102.

[0220] The transceiver unit 101 is used to obtain first dialogue information input by a first user.

[0221] The transceiver unit 101 is further configured to send the first dialogue information to the second user, and obtain second dialogue information input by the second user, where the second dialogue information is first response information of the second user based on the first dialogue information.

[0222] The processing unit 102 is used to feed back second response information to the first user and the second user, where the second response information matches the first dialogue information and the second dialogue information.

[0223] In some embodiments, the processing unit 102 is further used to determine a target task based on the first dialogue information and the second dialogue information; execute the target task and obtain an execution result of the target task; and determine second response information based on the execution result of the target task.

[0224] In some embodiments, the processing unit 102 determines the target task in the following manner, including: semantically fusing the first conversation information and the second conversation information to obtain target conversation information; performing intent recognition on the target conversation information to obtain target intent information; and determining the target task corresponding to the target intent information based on the correspondence between the preset target intent information and the preset target task.

[0225] In some embodiments, the processing unit 102 executes the target task and obtains the execution result of the target task in the following manner, including: decomposing the target task to obtain at least one subtask; executing at least one subtask and obtaining the execution result of each subtask; and determining the execution result of the target task based on the execution result of each subtask.

[0226] In some embodiments, the processing unit 102 calls at least one preset interface to execute at least one subtask, including: when executing the subtask, determining the relationship between the execution authority level and the executed authority level of the subtask; if the execution authority level is lower than the executed authority level of the corresponding subtask, terminating the execution of the subtask.

[0227] In some embodiments, the communication device is applied to a conference reservation scenario. Through the embodiments of the present disclosure, the large model can be applied to a social scenario to assist users in solving coordination and communication problems in the scenario and improve user communication efficiency.

[0228] Fig. 9 is a block diagram of a communication device 200 according to an exemplary embodiment, referring to Fig. 9 The device includes a scheduling unit 201, an encapsulation unit 202, a task decomposition unit 203, a task execution unit 204, an execution logic unit 205 and an interaction unit 206.

[0229] In some embodiments, the scheduling unit 201 is used for at least one of the following:

[0230] Supports backend network services of the first application or the second application, session management (sessions related to the first application, and / or sessions related to the second application), task state management, action (function) execution, action (function) permission granting, and action function calling.

[0231] Exemplarily, the code configuration for implementing the function of the scheduling unit 201 may be as follows:

[0232]

[0233] As shown in the above code, a controller class and an assistant class are defined. The controller class contains two methods:

[0234] 1. `submit()`: method for submitting information to an Agent.

[0235] 2. `message()`: The method for forwarding messages between agents.

[0236] The Assistant class contains five methods:

[0237] 1. `getId()`: Get the Id of the service user.

[0238] 2. `getInterpreter()`: method to get the interpreter (Agent).

[0239] 3. `getExecutor()`: method to get the executor (Agent).

[0240] 4. `interpret()`: method for parsing instructions.

[0241] 5. `execute()`: The method to execute the task.

[0242] The methods provided by the above code can be used to control and schedule information transmission and task execution between different agents.

[0243] In some embodiments, the encapsulation unit 202 is used to encapsulate the external service interface, including at least one of the following:

[0244] Encapsulate received chat messages, encapsulate sent chat messages, encapsulate service interfaces such as conferences, schedules, and organizational structures, or encapsulate associated application interfaces (for example, a first application, and / or a second application).

[0245] Exemplarily, the code configuration for implementing the function of the encapsulation unit 202 may be as follows:

[0246] In the following embodiments, the code implementation schemes of the following functions of the encapsulation unit 202 are briefly listed, and the listed functions include at least one of the following:

[0247] -a) Encapsulation for private and group messages, -b) Encapsulation for receiving messages, -c) Encapsulation for the conference room reservation interface, -d) Encapsulation for the conference room query interface, -e) Encapsulation for the schedule creation interface, -f) Encapsulation for the schedule participant interface, -g) Encapsulation for the schedule participant deletion interface and -h) Encapsulation for the GPT model interface.

[0248] -a) Encapsulation for private and group messages:

[0249]

[0250]

[0251] As shown in the above code, two asynchronous functions "sendTextTo" and "sendMessageToUser" are defined. The "sendTextTo" method accepts two parameters, `open_id` and `content`, and performs the following operations:

[0252] 1) Print `open_id`, and get the username and `content` corresponding to `open_id` through `getUsernameByOpenId(open_id)`.

[0253] 2) Call the `writeToDialog` method to write `open_id`, "bot" and `content` to the dialog.

[0254] 3) Create a message using the `this.__client.im.message.create()` method and pass the following parameters to it:

[0255] - `params`: An object with the `receive_id_type` attribute set to 'open_id'.

[0256] - `data`: An object with the `receive_id` property set to `open_id`, the `content` property set to the JSON string representation of `content`, and the `msg_type` property set to 'text'.

[0257] 4) Use the `await` keyword to wait for the result of the message creation and then return it.

[0258] The "sendMessageToUser" method accepts three parameters `open_id`, `title`, and `content`, and does the following:

[0259] 1) Create a message using the `this.__client.im.message.create()` method and pass the following parameters to it:

[0260] - `params`: An object with the `receive_id_type` attribute set to 'open_id'.

[0261] - `data`: An object with a `receive_id` property set to `open_id` and a `content` property set to a JSON string containing:

[0262] - `config`: An object with the `wide_screen_mode` attribute set to `true`.

[0263] - `elements`: An array containing a single object whose `tag` property is set to 'markdown' and whose `content` property is set to `content`.

[0264] - `header`: An object with a `template` property set to 'blue' and a `title` property set to an object containing:

[0265] - the `content` property is set to `title`,

[0266] - `tag` attribute is set to 'plain_text'.

[0267] - `msg_type` attribute is set to 'interactive'.

[0268] 2) Use the `await` keyword to wait for the result of the message creation and then return it.

[0269] -b) Encapsulation of received messages:

[0270]

[0271]

[0272] As shown in the above code, a `lark.EventDispatcher` object named `eventDispatcher` is created and initialized with the `verificationToken` parameter.

[0273] Then, an event handler is registered by calling the `register()` method to handle the event named `im.message.receive_v1`. When this event is triggered, an asynchronous function will be executed, which receives a parameter named `data`.

[0274] In this event handler function, first call `handleReceiveConversation(data)` to process the received conversation data and get `prompt` and `open_id` from it.

[0275] Next, in the `setTimeout()` function, a function is put into the asynchronous event queue for execution. In this function, `prompt` and `open_id` are passed to the method called `CONTROLLER.submit()` to submit the task to the controller.

[0276] -c) Encapsulation for the reserved conference room interface:

[0277]

[0278]

[0279] As shown in the above code, the code shows an example of a function call, calling a function named `request_reservations` and passing an object containing parameters as a parameter.

[0280] The `request_reservations` function accepts an object as a parameter, and the object has the following properties:

[0281] - `fromTime`: A string representing the booking start time.

[0282] - `toTime`: A string representing the time the booking ends.

[0283] - `roomId`: A number representing the ID of the room to be reserved.

[0284] - `code`: The specific purpose of this parameter is not mentioned.

[0285] In this example, the `request_reservations` function is called by passing an object with specific property values ​​to the function as a parameter. The specific parameters passed are as follows:

[0286] - The `fromTime` attribute is set to the string `"2023-08-15T12:00:00+08:00"`, indicating that the booking start time is August 15, 2023, 12:00:00.

[0287] - The `toTime` property is set to the string `"2023-08-15T12:30:00+08:00"`, indicating that the booking ends at 12:30 on August 15, 2023.

[0288] - The `roomId` attribute is set to the number `1331`, indicating that the room ID to be reserved is 1331.

[0289] -d) Encapsulation for querying conference room interface:

[0290]

[0291]

[0292] As shown in the above code, the function named `request_rooms` is called and an object containing parameters is passed as a parameter.

[0293] The `request_rooms` function accepts an object as a parameter, and this object has the following attributes:

[0294] - `fromTime`: A string representing the query start time.

[0295] - `toTime`: A string indicating the end time of the query.

[0296] - `officeId`: A string representing the office ID to query.

[0297] - `buildingIds`: An array of strings representing the building IDs to be queried.

[0298] - `floorIds`: An array of strings representing the floor IDs to be queried.

[0299] - `withDevices`: Boolean indicating whether to query only rooms that have devices.

[0300] - `minCapacity`: A number representing the minimum capacity.

[0301] - `maxCapacity`: A number representing the maximum capacity.

[0302] - `fullSpareMatch`: A boolean indicating whether to only query for rooms that fully match free rooms.

[0303] In the above example, the `request_rooms` function is called by passing an object with specific property values ​​to the function as a parameter. The specific parameters passed are as follows:

[0304] - The `fromTime` attribute is set to the string `"2023-08-15T12:00:00+08:00"`, indicating that the query start time is 12:00 on August 15, 2023.

[0305] - The `toTime` property is set to the string `"2023-08-15T12:30:00+08:00"`, indicating that the query ends at 12:30 on August 15, 2023.

[0306] -e) Encapsulation for creating schedule interface:

[0307]

[0308]

[0309] In the above code, a function named createCalendarEvent is called and an object containing parameters is passed as a parameter.

[0310] The createCalendarEvent function accepts an object as a parameter, and this object has the following properties:

[0311] - `summary`: A string representing the name of the schedule.

[0312] - `description`: A string representing the event description.

[0313] - `start_time`: A string indicating the schedule start time.

[0314] - `end_time`: A string indicating the end time of the schedule.

[0315] - `meeting_room`: A string representing the name of the meeting room.

[0316] In the above example, the createCalendarEvent function is called by passing an object with specific property values ​​to it as a parameter. The specific parameters passed are as follows:

[0317] - The `summary` attribute is set to the string `"Schedule Name"`, indicating that the name of the schedule is "Schedule Name".

[0318] - The `description` attribute is set to the string `"Agenda Description"`, indicating that the description of the event is "Agenda Description".

[0319] - The `start_time` attribute is set to the string `"2023-08-20T12:00:00+08:00"`, indicating that the schedule starts at 12:00 on August 20, 2023.

[0320] - The `end_time` attribute is set to the string `"2023-08-20T12:30:00+08:00"`, indicating that the schedule ends at 12:30 on August 20, 2023.

[0321] - The `meeting_room` attribute is set to the string `"505 Meeting Room"`, indicating that the name of the meeting room is "505 Meeting Room".

[0322] This call example returns a string that represents the event ID of the created schedule.

[0323] -f) Encapsulation of the schedule participant interface:

[0324]

[0325] In the above code, a function named addCalendarEventAttendees is called and an object containing parameters is passed as a parameter.

[0326] The `addCalendarEventAttendees` function accepts an object as a parameter, and this object has the following properties:

[0327] - `event_id`: A string representing the event ID.

[0328] - `attendees`: An array of strings containing the attendees' open_ids.

[0329] In the above example, the `addCalendarEventAttendees` function is called by passing an object with specific property values ​​to the function as a parameter. The specific parameters passed are as follows:

[0330] - The `event_id` attribute is set to the string `'72e64fae-9563-4a6a-9f52-52fec3f2cd5a_'`, which represents the event ID of the schedule to which the attendee is to be added.

[0331] - The `attendees` property is set to an array of two strings containing the open_ids of the two attendees.

[0332] This call example is used to add attendees to the specified schedule. The attendee's open_id is represented by a string and passed in the form of an array.

[0333] -g) Encapsulation of the interface for deleting schedule participants:

[0334]

[0335] In the above code, a function named deleteCalendarEvent is called and an object containing parameters is passed as a parameter.

[0336] The `deleteCalendarEvent` function accepts an object as a parameter, and that object has one property:

[0337] - `event_id`: A string representing the ID of the event to be deleted.

[0338] In the above example, the deleteCalendarEvent function is called by passing an object with specific property values ​​to it as a parameter. The specific parameters passed are as follows:

[0339] - The `event_id` attribute is set to the string `'72e64fae-9563-4a6a-9f52-52fec3f2cd5a_'`, representing the event ID of the schedule to be deleted.

[0340] This call example is used to delete the specified schedule. Based on the function name and parameters, we can infer that the deleteCalendarEvent function is used to delete the specified event from the schedule.

[0341] -h) Encapsulation of GPT model interface:

[0342]

[0343]

[0344] In the above code, a function named `call_GPT` is called and an object containing parameters is passed as an argument.

[0345] The `call_GPT` function takes an object as an argument, and that object has one attribute:

[0346] - `messages`: An array containing message objects.

[0347] In the above example, an object with specific property values ​​is passed to the `call_GPT` function as a parameter to call the function. The specific parameters passed are as follows:

[0348] - The `messages` property is set to an array containing a message object. The message object has a `role` and a `content` property.

[0349] - The "role" attribute is set to the string `"user"`, indicating the user role.

[0350] - The "content" property is set to the string `"Say this is a test!"`, representing the content of the user's message.

[0351] This call example is used to call a function named `call_GPT` and provide the user's message as input to the function. The function takes the user's message as a parameter, performs a specific operation, and returns the response data.

[0352] In this example, the returned response data is printed to the console by calling the `call_GPT` function and then handling the returned Promise object using the `.then()` method.

[0353] In some embodiments, the task decomposition unit 203 is used to decompose the acquired task into subtasks, generate a task list, and send the task list to the task execution unit 204 for execution.

[0354] Exemplarily, the code configuration for implementing the function of the task decomposition unit 203 may be as follows:

[0355]

[0356]

[0357] As shown in the above code, a class named `InterpreterAgent` is defined, which inherits from the `AgentProxy` class.

[0358] In the class constructor, a constant `OWNER` is first defined to store the owner's information, such as the user's username. Then, a constant `FUNCTION` is defined, which contains a string array of function names.

[0359] Next, the constructor of the parent class `AgentProxy` is called by calling the `super()` method with `OWNER`, `PROMPT`, `WARNING`, `MEETING` as parameters, and `FUNCTION` and `ev` as other parameters. This will initialize an instance of `InterpreterAgent` and pass the relevant information to the parent class.

[0360] An asynchronous `query()` method is defined in the class, which calls the `query()` method of the parent class to obtain the GPT reply, and processes and formats the reply.

[0361] The `input()` method accepts a JSON object as a parameter and returns the value of the `message` property in it.

[0362] The `output()` method accepts a reply as an argument and returns it directly.

[0363] The `getName()` method returns the string `"Interpreter"`, which represents the name of this `InterpreterAgent` instance.

[0364] This code shows that a class named `InterpreterAgent` is defined, which inherits from the `AgentProxy` class and defines a constructor, a `query()` method, an `input()` method, an `output()` method, and a `getName()` method for processing queries and replies of the language model.

[0365] In some embodiments, the task execution unit 204 is used to define a series of functional modules (eg, GPT Action functions modules) so that the corresponding application (the first application, and / or the second application) can autonomously determine and execute the corresponding function actions.

[0366] Exemplarily, the code configuration for implementing the function of the task execution unit 204 may be as follows:

[0367]

[0368]

[0369] As shown in the above code, the code defines a class called `ExecutorAgent`, which inherits from the `AgentProxy` class.

[0370] In the class constructor, a constant `FUNCTIONS` is first defined, which contains a string array of function names.

[0371] Then, call the constructor of the parent class `AgentProxy` by calling the `super()` method with `PROMPT` as the first parameter, `FUNCTIONS` and `ev` as other parameters. This will initialize an instance of `ExecutorAgent` and pass the relevant information to the parent class.

[0372] An asynchronous `query()` method is defined in the class, which calls the `query()` method of the parent class to obtain the GPT reply, and processes and formats the reply.

[0373] The `input()` method accepts a JSON object as a parameter and returns the value of the `message` property in it.

[0374] The `output()` method accepts a reply as an argument and returns it directly.

[0375] The `getName()` method returns the string `"Executor"`, which represents the name of this `ExecutorAgent` instance.

[0376] This code shows that a class named `ExecutorAgent` is defined, which inherits from the `AgentProxy` class and defines a constructor, a `query()` method, an `input()` method, an `output()` method, and a `getName()` method for processing queries and replies of the language model.

[0377] In some embodiments, before constructing the task decomposition unit 203 and the task execution unit 204 , a basic Agent class may also be constructed.

[0378] Exemplarily, the code configuration to implement the basic Agent class construction function is as follows:

[0379]

[0380]

[0381] As shown in the above code, a class named `AgentProxy` is defined.

[0382] This class has the following private properties:

[0383] - `__prompt`: Variable used to store prompt words and history.

[0384] - `__functions`: A variable used to store function definitions that can be used.

[0385] - `__ev`: Variable used to store environment variables.

[0386] In the class constructor, the `__prompt`, `__functions`, and `__ev` attributes are initialized by passing parameters.

[0387] The class defines an asynchronous `query()` method, which accepts two parameters: `input` and `attr`, which represent the user's input and the attributes describing the input features and other necessary information. `call_GPT` is called in the method to get the response.

[0388] The class also defines the `input()` method and the `output()` method to convert input and output parameters.

[0389] Finally, a getName() method is defined in the class to get the name of the Agent role.

[0390] This class provides basic proxy functionality for processing input and output and interacting with external language models.

[0391] In some embodiments, the execution logic unit 205 is used to write the execution logic of the application program to execute the corresponding function action, and the corresponding external interface to be implemented, for example: booking a meeting room, checking daily schedule, sending a message to a user, etc.

[0392] Exemplarily, to implement the functional construction of the execution logic unit 205, the code configuration is as follows:

[0393]

[0394]

[0395]

[0396]

[0397]

[0398]

[0399]

[0400]

[0401]

[0402]

[0403] In the above code, a set of function descriptions are included. Each function has a name, description, and parameter descriptions.

[0404] The first function is `return_message`, which is used to tell the "owner" that the task has been successfully completed. It accepts an object containing a `message` attribute as a parameter, where the `message` attribute is a string representing the message you want to tell the "owner".

[0405] The second function is `invoke_executor`, which is used to describe subtasks and let the executor complete these tasks. It accepts an object containing a `message` attribute as a parameter, where the `message` attribute is a string representing a detailed description of the subtask.

[0406] The third function is `wait_for_reply`, which is used to wait for replies from other users when there are no tasks to execute. It does not require any parameters.

[0407] The fourth function is `book_meeting`, which is used to book an available conference room, provided that you are the organizer of the meeting. It accepts an object containing a `fromTime` attribute as a parameter, where the `fromTime` attribute is a time value indicating the starting time of the conference room reservation.

[0408] It is understandable that the codes listed in the above-mentioned embodiments are merely exemplary rather than exhaustive, and other codes capable of implementing the functions also belong to the contents protected by the embodiments of the present disclosure.

[0409] In some embodiments, the interaction unit 206 enables information interaction between users and applies for relevant interface permissions.

[0410] Fig.10 is a communication device module calling relationship block diagram according to an exemplary embodiment, referring to Fig.10, describes the information interaction process between each unit.

[0411] Exemplarily, the scheduling unit 201 schedules the following functions: message management, state management and task scheduling. The scheduling unit 201 has information interaction with the task decomposition unit 203, the task execution unit 204, the execution logic unit 205 and the encapsulation unit 202. Among them, the contents encapsulated by the encapsulation unit 202 include: chat application program interface (chat interface API), conference interface, schedule interface and external application program interface (Open API interface), etc.

[0412] Furthermore, the scheduling unit 201, the encapsulation unit 202, the task decomposition unit 203, the task execution unit 204 and the execution logic unit 205 can realize information interaction with the interaction unit 206 and interaction with external capabilities through the Open API interface in the encapsulation unit 202. Among them, the external capabilities may include: calendar capabilities, meeting capabilities and GPT calling capabilities, etc.

[0413] Fig.11 1 is a block diagram of a device 300 for communication according to an exemplary embodiment. For example, the device 300 may be a mobile phone, a computer, a digital broadcast terminal, a messaging device, a game console, a tablet device, a medical device, a fitness device, a personal digital assistant, etc.

[0414] Reference Fig.11 , the communication device 300 may include one or more of the following components: a processing component 302 , a memory 304 , a power component 306 , a multimedia component 308 , an audio component 310 , an input / output (I / O) interface 312 , a sensor component 314 , and a communication component 316 .

[0415] The processing component 302 generally controls the overall operation of the device 300, such as operations associated with display, phone calls, data communications, camera operations, and recording operations. The processing component 302 may include one or more processors 330 to execute instructions to complete all or part of the steps of the above-mentioned method. In addition, the processing component 302 may include one or more modules to facilitate the interaction between the processing component 302 and other components. For example, the processing component 302 may include a multimedia module to facilitate the interaction between the multimedia component 308 and the processing component 302.

[0416] The memory 304 is configured to store various types of data to support operations on the device 300. Examples of such data include instructions for any application or method operating on the device 300, contact data, phone book data, messages, pictures, videos, etc. The memory 304 can be implemented by any type of volatile or non-volatile storage device or a combination thereof, such as static random access memory (SRAM), electrically erasable programmable read-only memory (EEPROM), erasable programmable read-only memory (EPROM), programmable read-only memory (PROM), read-only memory (ROM), magnetic memory, flash memory, magnetic disk or optical disk.

[0417] The power component 306 provides power to the various components of the device 300. The power component 306 may include a power management system, one or more power supplies, and other components associated with generating, managing, and distributing power for the device 300.

[0418] The multimedia component 308 includes a screen that provides an output interface between the device 300 and the user. In some embodiments, the screen may include a liquid crystal display (LCD) and a touch panel (TP). If the screen includes a touch panel, the screen may be implemented as a touch screen to receive input signals from the user. The touch panel includes one or more touch sensors to sense touch, slide, and gestures on the touch panel. The touch sensor may not only sense the boundaries of the touch or slide action, but also detect the duration and pressure associated with the touch or slide operation. In some embodiments, the multimedia component 308 includes a front camera and / or a rear camera. When the device 300 is in an operating mode, such as a shooting mode or a video mode, the front camera and / or the rear camera may receive external multimedia data. Each front camera and rear camera may be a fixed optical lens system or have a focal length and optical zoom capability.

[0419] The audio component 310 is configured to output and / or input audio signals. For example, the audio component 310 includes a microphone (MIC), and when the device 300 is in an operating mode, such as a call mode, a recording mode, and a speech recognition mode, the microphone is configured to receive an external audio signal. The received audio signal can be further stored in the memory 304 or sent via the communication component 316. In some embodiments, the audio component 310 also includes a speaker for outputting audio signals.

[0420] I / O interface 312 provides an interface between processing component 302 and peripheral interface modules, such as keyboards, click wheels, buttons, etc. These buttons may include but are not limited to: a home button, a volume button, a start button, and a lock button.

[0421] The sensor assembly 314 includes one or more sensors for providing various aspects of the status assessment of the device 300. For example, the sensor assembly 314 can detect the open / closed state of the device 300, the relative positioning of components, such as the display and keypad of the device 300, the sensor assembly 314 can also detect the position change of the device 300 or a component of the device 300, the presence or absence of user contact with the device 300, the orientation or acceleration / deceleration of the device 300, and the temperature change of the device 300. The sensor assembly 314 can include a proximity sensor configured to detect the presence of nearby objects without any physical contact. The sensor assembly 314 can also include an optical sensor, such as a CMOS or CCD image sensor, for use in imaging applications. In some embodiments, the sensor assembly 314 can also include an acceleration sensor, a gyroscope sensor, a magnetic sensor, a pressure sensor, or a temperature sensor.

[0422] The communication component 316 is configured to facilitate wired or wireless communication between the device 300 and other devices. The device 300 can access a wireless network based on a communication standard, such as WiFi, 2G or 3G, or a combination thereof. In an exemplary embodiment, the communication component 316 receives a broadcast signal or broadcast-related information from an external broadcast management system via a broadcast channel. In an exemplary embodiment, the communication component 316 also includes a near field communication (NFC) module to facilitate short-range communication. For example, the NFC module can be implemented based on radio frequency identification (RFID) technology, infrared data association (IrDA) technology, ultra-wideband (UWB) technology, Bluetooth (BT) technology and other technologies.

[0423] In an exemplary embodiment, the apparatus 300 may be implemented by one or more application-specific integrated circuits (ASICs), digital signal processors (DSPs), digital signal processing devices (DSPDs), programmable logic devices (PLDs), field programmable gate arrays (FPGAs), controllers, microcontrollers, microprocessors or other electronic components to perform the above method.

[0424] In an exemplary embodiment, a non-transitory computer-readable storage medium including instructions is also provided, such as a memory 304 including instructions, and the instructions can be executed by a processor 330 of the device 300 to perform the above method. For example, the non-transitory computer-readable storage medium can be a ROM, a random access memory (RAM), a CD-ROM, a magnetic tape, a floppy disk, an optical data storage device, etc.

[0425] Fig.12 4 is a block diagram of a device 400 for communication according to an exemplary embodiment. For example, the device 400 may be provided as a server. Fig.12The apparatus 400 includes a processing component 422, which further includes one or more processors, and a memory resource represented by a memory 432 for storing instructions executable by the processing component 422, such as an application. The application stored in the memory 432 may include one or more modules, each corresponding to a set of instructions. In addition, the processing component 422 is configured to execute instructions to perform the above-mentioned screen display method.

[0426] The device 400 may also include a power supply component 426 configured to perform power management of the device 400, a wired or wireless network interface 450 configured to connect the device 400 to a network, and an input / output (I / O) interface 458. The device 400 may operate based on an operating system stored in the memory 432, such as Windows Server™, Mac OS X™, Unix™, Linux™, FreeBSD™, or the like.

[0427] It is to be understood that in the present disclosure, "plurality" refers to two or more than two, and other quantifiers are similar. "And / or" describes the association relationship of associated objects, indicating that three relationships may exist. For example, A and / or B can represent: A exists alone, A and B exist at the same time, and B exists alone. The character " / " generally indicates that the associated objects before and after are in an "or" relationship. The singular forms "a", "the" and "the" are also intended to include plural forms, unless the context clearly indicates other meanings.

[0428] It is further understood that the terms "first", "second", etc. are used to describe various information, but such information should not be limited to these terms. These terms are only used to distinguish the same type of information from each other, and do not indicate a specific order or degree of importance. In fact, the expressions "first", "second", etc. can be used interchangeably. For example, without departing from the scope of the present disclosure, the first information can also be referred to as the second information, and similarly, the second information can also be referred to as the first information.

[0429] It will be further understood that the terms “center”, “longitudinal”, “lateral”, “front”, “back”, “up”, “down”, “left”, “right”, “vertical”, “horizontal”, “top”, “bottom”, “inside”, “outside”, etc., indicating orientations or positional relationships based on the orientations or positional relationships shown in the accompanying drawings, are only for the convenience of describing the present embodiment and simplifying the description, and do not indicate or imply that the device or element referred to must have a specific orientation, be constructed and operated in a specific orientation.

[0430] It can be further understood that, unless otherwise specified, “connection” includes a direct connection without other components between the two, and also includes an indirect connection with other components between the two.

[0431] It is further understood that, although the operations are described in a specific order in the drawings in the embodiments of the present disclosure, it should not be understood as requiring the operations to be performed in the specific order shown or in a serial order, or requiring the execution of all the operations shown to obtain the desired results. In certain environments, multitasking and parallel processing may be advantageous.

[0432] Those skilled in the art will readily appreciate other embodiments of the present disclosure after considering the specification and practicing the invention disclosed herein. This application is intended to cover any modifications, uses or adaptations of the present disclosure, which follow the general principles of the present disclosure and include common knowledge or customary technical means in the art that are not disclosed in the present disclosure.

Claims

1. A communication method, It is characterized in that include: Acquire first conversation information input by a first user; sending the first dialogue information to a second user, and acquiring second dialogue information input by the second user, where the second dialogue information is first response information of the second user based on the first dialogue information; Feedback second response information to the first user and the second user, where the second response information matches the first dialogue information and the second dialogue information.

2. The method according to claim 1, It is characterized in that Before feeding back the second response information to the first user and the second user, the method further includes: Determine a target task based on the first dialogue information and the second dialogue information; Execute the target task and obtain the execution result of the target task; The second response information is determined based on the execution result of the target task.

3. The method according to claim 2, It is characterized in that The determining the target task based on the first dialogue information and the second dialogue information includes: Performing semantic fusion on the first dialogue information and the second dialogue information to obtain target dialogue information; Performing intent recognition on the target dialogue information to obtain target intent information; Based on the correspondence between the preset target intention information and the preset target task, the target task corresponding to the target intention information is determined.

4. The method according to claim 2 or 3, It is characterized in that The executing the target task and obtaining the execution result of the target task includes: Decomposing the target task to obtain at least one subtask; Execute the at least one subtask and obtain the execution result of each subtask; The execution result of the target task is determined based on the execution result of each subtask.

5. The method according to claim 4, It is characterized in that The performing of the at least one subtask comprises: In the case of executing a subtask, determining a relationship between the execution authority level and the executed authority level of the subtask; If the execution permission level is lower than the execution permission level of the corresponding subtask, the execution of the subtask is terminated.

6. A communication device, It is characterized in that include: A transceiver unit, configured to obtain first dialogue information input by a first user; The transceiver unit is further configured to send the first dialogue information to a second user, and obtain second dialogue information input by the second user, where the second dialogue information is first response information of the second user based on the first dialogue information; The processing unit is used to feed back second response information to the first user and the second user, where the second response information matches the first dialogue information and the second dialogue information.

7. The device according to claim 6, It is characterized in that The processing unit is further used for: Determine a target task based on the first dialogue information and the second dialogue information; Execute the target task and obtain the execution result of the target task; The second response information is determined based on the execution result of the target task.

8. The device according to claim 7, It is characterized in that The processing unit determines the target task in the following manner, including: Performing semantic fusion on the first dialogue information and the second dialogue information to obtain target dialogue information; Performing intent recognition on the target dialogue information to obtain target intent information; Based on the correspondence between the preset target intention information and the preset target task, the target task corresponding to the target intention information is determined.

9. The device according to claim 7 or 8, It is characterized in that The processing unit executes the target task and obtains the execution result of the target task in the following manner, including: Decomposing the target task to obtain at least one subtask; Execute the at least one subtask and Get the execution result of each subtask; The execution result of the target task is determined based on the execution result of each subtask.

10. The device according to claim 9, It is characterized in that The processing unit calls and executes the at least one subtask, including: In the case of executing a subtask, determining a relationship between the execution authority level and the executed authority level of the subtask; If the execution permission level is lower than the execution permission level of the corresponding subtask, the execution of the subtask is terminated.

11. A communication device, It is characterized in that include: a memory for storing processor executable instructions; Wherein, the processor is configured to: execute the communication method described in any one of claims 1 to 5.

12. A storage medium storing instructions, It is characterized in that When the instruction is executed on a device, the device executes the communication method according to any one of claims 1 to 5.