Nothing Special   »   [go: up one dir, main page]

CN111061453B - Voice interaction method and device for APP ecosystem - Google Patents

Voice interaction method and device for APP ecosystem Download PDF

Info

Publication number
CN111061453B
CN111061453B CN201911363189.XA CN201911363189A CN111061453B CN 111061453 B CN111061453 B CN 111061453B CN 201911363189 A CN201911363189 A CN 201911363189A CN 111061453 B CN111061453 B CN 111061453B
Authority
CN
China
Prior art keywords
app
slot
user
apps
information
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201911363189.XA
Other languages
Chinese (zh)
Other versions
CN111061453A (en
Inventor
李国华
张伟萌
戴帅湘
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Guanjiang Space Technology Co ltd
Original Assignee
Beijing Guanjiang Space Technology Co ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Beijing Guanjiang Space Technology Co ltd filed Critical Beijing Guanjiang Space Technology Co ltd
Priority to CN201911363189.XA priority Critical patent/CN111061453B/en
Publication of CN111061453A publication Critical patent/CN111061453A/en
Application granted granted Critical
Publication of CN111061453B publication Critical patent/CN111061453B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/16Sound input; Sound output
    • G06F3/167Audio in a user interface, e.g. using voice commands for navigating, audio feedback
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating
    • G06F9/44505Configuring for program initiating, e.g. using registry, configuration files

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Multimedia (AREA)
  • Health & Medical Sciences (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • General Health & Medical Sciences (AREA)
  • Human Computer Interaction (AREA)
  • User Interface Of Digital Computer (AREA)
  • Machine Translation (AREA)

Abstract

The invention discloses a voice interaction method, which comprises the following steps: monitoring the use of the APP by a user, acquiring a voice command of the user, judging whether a corresponding task can be executed according to the voice command of the user, if not, inquiring an APP ecosystem, and identifying one or more second APPs which are established with the APP, have directional side arrows pointing to the APP and have the same slot positions of the directional sides or the same attribute as the unfilled slot positions; filling unfilled slots in the APP based on the identified one or more APPs. Through the method, information transmission among APP can be carried out in a targeted mode under the condition that the terminal does not have a real-time monitor, the dedicated APP information transmission mode of the user is customized, the intelligent performance of voice interaction is further improved, the human-computer interaction efficiency is improved, the terminal power consumption can be reduced, and the user experience is improved.

Description

Voice interaction method and device for APP ecosystem
Technical Field
The invention relates to the field of artificial intelligence, in particular to a voice interaction method.
Background
At present, the voice interaction function is widely applied to each application program APP, a user can acquire needed information without manually inputting characters in a voice interaction mode, and the voice interaction function can perform multiple rounds of conversations with the application programs to meet the requirements of the user. However, in general, the task of the user cannot be independently completed through one application program, multiple application programs are required to be invoked, when the user opens a new application program manually, and when the use condition of the APP is monitored by the monitor in the terminal, the newly opened APP cannot learn the voice command before the user, so that the voice command cannot be analyzed in combination with the context, so that the user needs to completely inform the new application program of the task related information to enable the user to correctly execute the task of the user, which causes the user to feel tedious, and how to complete voice interaction with the application program without repeatedly providing more information when the user opens the application program newly is a problem to be solved.
On the other hand, when the APP monitoring program is started for a long time to monitor the use of the APP by the user, certain requirements are set on the cruising ability of the terminal, and particularly when the terminal has low electric quantity, the user may need to close the process, so that the understanding of the APP on the voice command of the user is affected.
In addition, there is a need for information transfer between APPs in other situations, how to transfer information between APPs quickly and efficiently and save power consumption of the terminal is an important problem to be solved.
Disclosure of Invention
Aiming at the problems in the prior art, the invention provides a method and a device for voice interaction based on an APP ecological system.
The invention provides a method for generating an APP ecological map, which comprises the following steps of
Step 11, monitoring interaction between a user and an APP;
step 12, acquiring and storing continuously used APP names and the sequence of using the APP;
the continuous use of the APP means that the time interval between the current time when the APP at the foreground is switched to the background operation or closed and the time when the other APP is switched on or switched to the foreground operation is smaller than the preset continuous time interval;
step 13, judging whether information transmission or information transmission requirements exist between the continuously used APPs; if yes, go to step 14;
Step 14, establishing a directed graph among the APPs according to the sequence of using the APPs by the user and/or the calling relation among the APPs;
the nodes of the directed graph between the APPs are the APPs, the directed edges represent the sequence of using the APPs by a user or the calling sequence between the APPs, and the arrows of the directed edges point to the APPs used or called later;
step 16, generating an APP ecological map according to the directed maps among the APPs;
wherein, the APP ecological map is a directed map among a plurality of APPs established according to interactivity among the APPs.
Preferably, step 13 includes:
the interaction between the user and the APP is monitored in real time,
judging whether call relations exist between the APPs, if so, information transmission or information transmission requirements exist between the APPs,
or judging whether the continuously used APP has the same slot position content, if so, determining that information transmission or information transmission requirements exist between the APP.
Preferably, if the slot contents are different, whether the slots with the same or the same attribute exist is judged, if yes, the information transmission or the information transmission requirement is determined.
Preferably, in step 13, if it is determined that there is no information transfer or information transfer requirement between the continuously used APPs; step 15 is executed;
Step 15, deleting the stored APP pair without information transfer or information transfer requirement.
Preferably, a weight coefficient is set for the directed edge, and the size of the weight coefficient represents the size of the probability of information transfer between two APPs connected with the weight coefficient.
The invention also provides an APP ecological system generation device for initializing an APP ecological map, which comprises
The detection module is used for monitoring interaction between a user and the APP;
the generation module is used for acquiring and storing the continuously used APP names and the sequence of using the APP;
the continuously used APP means that the time interval between the time when the APP at the foreground is switched to background operation or closed and the time when the other APP is opened or switched to foreground operation is smaller than a preset continuous time interval;
the judging module is used for judging whether information transmission or information transmission requirements exist between the continuously used APPs; if yes, the trigger generation module establishes a directed graph between the APPs;
the generation module is used for establishing a directed graph among the APPs according to the sequence of using the APPs by the user and/or the calling relationship among the APPs;
the directed graph between the APPs comprises nodes and directed edges, wherein the nodes represent the APPs, the directed edges represent the sequence of using the APPs by a user or the calling sequence between the APPs, and the arrows of the directed edges point to the APPs used or called later;
The generation module is also used for generating an APP ecological map according to the directed maps among the APPs;
wherein, the APP ecological map is a directed map among a plurality of APPs established according to interactivity among the APPs.
Preferably, the detection module is specifically configured to monitor interactions between the user and the APP in real time,
the judging module is specifically used for judging whether the call relationship exists between the APPs, if so, the information transmission or the information transmission requirement exists between the APPs,
or judging whether the continuously used APP has the same slot position content, if so, determining that information transmission or information transmission requirements exist between the APP.
Preferably, the judging module is further configured to determine whether the slots with the same or the same attribute exist when the slot contents are different, and if yes, determine that there is information transmission or a requirement of information transmission.
Preferably, if the judging module judges that there is no information transmission or information transmission requirement between the continuously used APPs, the triggering generating module deletes the stored APP pair without information transmission or information transmission requirement;
and the generation module is used for deleting the stored APP pair without information transmission or information transmission requirements according to the triggering message of the judgment module.
Preferably, the generating module is further configured to set a weight coefficient for the directed edge, where the size of the weight coefficient indicates the size of the probability of information transfer between two APPs connected thereto.
The invention also provides a method for generating the APP ecological system, which comprises the following steps of
Step 21, detecting the behavior of the voice assistant;
step 22, acquiring and storing APP names continuously called when the voice assistant executes the task and the sequence of calling the APP;
step 23, judging whether information transmission or information transmission requirements exist between the continuously called APPs; if yes, go to step 24;
step 24, establishing a directed graph among the APPs according to the sequence of continuously calling the APPs; step 26 is performed;
step 26, generating an APP ecological map according to the directed maps among the APPs;
wherein, in step 24, the following steps are further included:
if there is a call relationship between the APPs, acquiring a slot position of the APP which is used by the called APP and is used before, and setting the slot position as a slot position with a directed edge;
if there is a slot between the APPs that fills the same slot content, then the slot that previously filled the same slot content is set as a slot with a directed edge and the direction of the directed edge is determined to be from the APP that previously filled the same slot content to the APP that later filled the same slot content.
Preferably, step 24 further comprises the steps of:
step 241, judging whether a directed graph exists between the APPs, if so, executing step 242; if not, go to step 245;
step 242, determining whether the direction of the directional edge to be established is the same as the direction of the existing directional edge, if so, executing step 243, and if not, executing step 244;
step 243, increasing the weight coefficient of the directional edge in the same direction as the direction;
step 244, establishing a directed edge with a new direction;
step 245, establishing directed edges between the APPs.
Preferably, before step 21, the method further comprises the following steps of
Step 01, acquiring an APP name installed by a terminal;
step 02, classifying the APP according to functions, grouping the APP with the same or similar functions into a cluster, and forming one or more APP clusters; wherein there are one or more APP in the APP cluster.
Preferably, before step 21, the following steps are performed
Step 103, judging whether the terminal has an APP ecosystem, if not, executing step 21; if so, ending.
The invention also provides an APP ecological system generation device for constructing an APP ecological system, which is characterized in that the device comprises
The monitoring module is used for detecting the behavior of the voice assistant;
The generation module is used for acquiring and storing APP names which are continuously called when the voice assistant executes the task and the sequence of calling the APP;
the judging module is used for judging whether information transmission or information transmission requirements exist between the continuously called APPs; if yes, the trigger generation module establishes a directed graph between the APPs;
the generation module is used for establishing a directed graph among the APPs according to the sequence of continuously calling the APPs;
the generation module is also used for generating an APP ecological map according to the directed maps among the APPs;
the generation module is also used for:
if there is a call relationship between the APPs, acquiring a slot position of the APP which is used by the called APP and is used before, and setting the slot position as a slot position with a directed edge;
if there is a slot between the APPs that fills the same slot content, then the slot that previously filled the same slot content is set as a slot with a directed edge and the direction of the directed edge is determined to be from the APP that previously filled the same slot content to the APP that later filled the same slot content.
Preferably, before the generating module establishes the directed graph between the APPs, the following steps are further executed:
step 241, judging whether a directed graph exists between the APPs, if so, executing step 242; if not, go to step 245;
Step 242, determining whether the direction of the directional edge to be established is the same as the direction of the existing directional edge, if so, executing step 243, and if not, executing step 244;
step 243, increasing the weight coefficient of the directional edge in the same direction as the direction;
step 244, establishing a directed edge with a new direction;
step 245, establishing directed edges between the APPs.
Preferably, before the detection module performs its detection function, the generation module is further configured to perform the following steps:
step 01, acquiring an APP name installed by a terminal;
step 02, classifying the APP according to functions, grouping the APP with the same or similar functions into a cluster, and forming one or more APP clusters; wherein the APP cluster comprises one or more APPs.
Preferably, before the detection module executes the detection function, whether the terminal has an APP ecosystem is judged, and if not, the detection function is executed.
The invention also provides a method for establishing the association relation of the slot position information, which comprises the following steps:
step 201, an APP ecosystem generates an application execution detection function;
step 202, detecting interactions between a user and all used APPs;
step 203, acquiring and storing slots filled when the APP executes the task, slot content and time for filling the slot content;
Step 204, judging whether the user has interaction with the APP, if so, executing step 202; if not, go to step 205;
step 205, judging whether the filled slots and the filled slot content information are stored when a plurality of APP execute tasks, and if not, executing step 206; if yes, go to step 207;
and step 206, closing or dormancy of the APP ecological system generation application.
Step 207, judging whether information transmission or information transmission requirements exist between the APPs, if so, taking the slot positions with the information transmission or information transmission requirements as public slot positions between the APPs; if not, ending.
Preferably, step 207 specifically comprises the steps of
Step 2071, judging whether the time interval of any two or more stored APP filling slot contents is smaller than a predetermined continuous time interval, if yes, executing step 2072, if no, executing step 2074;
step 2072, dividing the APP meeting the condition into a group; judging whether any two or more APP in each group fill the same slot position content or not based on the stored information; if yes, go to step 2073;
step 2073, using the slots filled with the same slot content as the common slots;
Step 2074, judging whether the filling time of the slot position content in the stored information and the current time interval are greater than or equal to the deleting time, if so, deleting the item content corresponding to the filling time, and if not, ending;
wherein the deletion time is greater than a predetermined continuous time interval.
Preferably, the method further comprises the following steps of
Setting a weight coefficient w for the public slot ij Indicating that the common slot will be APP i Is transmitted to APP j Weight coefficient of (C), similar w ji Indicating that the common slot will be APP j Is transmitted to APP i Weight coefficient of (c) in the above-mentioned formula (c).
Preferably, also comprises
The slot contents corresponding to the same common slot are stored in a matrix.
The invention also provides an APP ecological system generation device for establishing the slot position information association relationship, which comprises
The detection module is used for executing a detection function;
the detection module is also used for detecting interaction between a user and all used APP;
the generating module is used for acquiring and storing the slot positions filled when the APP executes the task, the slot position content and the time for filling the slot position content;
the judging module is used for judging whether the user has interaction with the APP or not, if so, the triggering detecting module is used for detecting the interaction between the user and all the used APP; if not, judging whether the filled slots and the filled slot content information are stored when a plurality of APP execute tasks, and if not, triggering a closing module to close or sleep the device; if so, judging whether information transmission or information transmission requirements exist between the APPs, and if so, triggering a generation module to take the slot with the information transmission or information transmission requirements as a public slot between the APPs;
The generating module is further used for judging whether the storage module stores the filled slots and the filled slot content information when a plurality of APP execute tasks, and if yes, the slots with information transmission or information transmission requirements are used as public slots among the APP.
Preferably, the judging module judges whether there is information transfer or information transfer requirement between the APPs includes the following steps:
step 2071, judging whether the time interval of any two or more stored APP filling slot contents is smaller than a predetermined continuous time interval, if yes, executing step 2072, if no, executing step 2074;
step 2072, dividing the APP meeting the condition into a group; judging whether any two or more APP in each group fill the same slot position content or not based on the stored information; if yes, go to step 2073;
step 2073, the trigger generation module takes the slot previously filled with the same slot content as a public slot;
step 2074, judging whether the filling time of the slot position content in the stored information and the current time interval are greater than or equal to the deleting time, if yes, triggering the generating module to delete the item content corresponding to the filling time, and if not, ending;
wherein the deletion time is greater than a predetermined continuous time interval.
Preferably, the generating module is further configured to set a weight coefficient w for the common slot ij Indicating that the common slot will be APP i Is transmitted to APP j Weight coefficient of (C), similar w ji Indicating that the common slot will be APP j Is transmitted to APP i Weight coefficient of (c) in the above-mentioned formula (c).
Preferably, the generating module stores the slot contents corresponding to the same common slot in a matrix manner.
The invention also provides a method for generating and sharing the universal APP ecological map,
step 301, acquiring an APP ecological map;
step 302, classifying the APP ecological map to form an APP ecological map cluster;
step 303, training an APP ecological map in the APP ecological map cluster to form a general APP ecological map corresponding to the user attribute;
step 303 includes the following steps:
step 3031, obtaining APP included in a plurality of APP ecological maps in a cluster;
step 3032, adding the same label to a plurality of APP with the same or mutually replaceable functions;
step 3033, fusing the APP ecological maps to form a general APP ecological map;
step 3035, storing the general APP ecological map.
Preferably, step 302 is specifically:
classifying according to the attributes of the users of the APP ecological map, and dividing the APP ecological map with the same user attributes into a group to form an APP ecological map cluster.
Preferably, step 3033 further comprises the following steps
Step 3034-1, deleting the directed edges with the weight coefficients lower than the lowest weight coefficient in the fused APP ecological map;
step 3034-2, judging whether an isolated APP or APP group exists, if so, deleting the APP or APP group to generate a simplified general APP ecological map;
step 3034-3, the reduced APP ecological map is stored.
Preferably, the method further comprises the steps of
Step 051, receiving an APP ecological map acquisition request sent by the terminal,
step 052, determining a general APP ecological map meeting user attribute requirements based on the attribute information of the user carried by the request;
step 054, sending a response message to the terminal of the user, wherein the response message carries the general APP ecological map meeting the attribute requirements of the user.
Preferably, in step 052, when the attribute information of the user includes a plurality of user attributes, the general APP ecological map satisfying the most user attributes is preferentially selected as the APP ecological map satisfying the user attribute requirements.
The invention also provides a device for generating the universal APP ecological system, which is used for generating and sharing the universal APP ecological map,
the acquisition module is used for acquiring the APP ecological map;
The classifying module is used for classifying the APP ecological map to form an APP ecological map cluster;
the training module is used for training the APP ecological graphs in the APP ecological graph clusters to form general APP ecological graphs corresponding to the user attributes;
the training module is specifically configured to perform the following steps:
step 3031, obtaining APP included in a plurality of APP ecological maps in a cluster;
step 3032, adding the same label to a plurality of APP with the same or mutually replaceable functions;
step 3033, fusing the APP ecological maps to form a general APP ecological map;
step 3035, the general APP ecological map is stored in the storage module.
Preferably, the classification module is specifically configured to classify the APP ecological map according to attributes of users of the APP ecological map, and divide the APP ecological map with the same user attributes into a group to form an APP ecological map cluster.
Preferably, step 3033 further comprises the following steps
Step 3034-1, deleting the directed edges with the weight coefficients lower than the lowest weight coefficient in the fused APP ecological map;
step 3034-2, judging whether an isolated APP or APP group exists, if so, deleting the APP or APP group to generate a simplified general APP ecological map;
step 3034-3, the reduced APP ecological map is stored.
Preferably, the acquisition module is further configured to receive an APP ecological map acquisition request sent by the terminal,
The training module is used for determining a general APP ecological map meeting the attribute requirements of the user based on the attribute information of the user carried by the request;
and the acquisition module is used for sending a response message to the terminal of the user, wherein the response message carries the universal APP ecological map meeting the attribute requirements of the user.
Preferably, the training module is configured to, when the attribute information of the user includes a plurality of user attributes, preferentially select a general APP ecological map satisfying the most user attributes as an APP ecological map satisfying the user attribute requirements.
The invention also provides a voice interaction method, which is characterized by comprising the following steps of
Step 501, obtaining a voice command input by a user;
step 502, judging whether the voice command of the user can be accurately executed; if not, obtaining the unfilled slot of the APP execution voice command, and executing step 503;
step 503, invoking an APP ecological map, and obtaining candidate APP which has a directional edge with the APP executing the voice command and points to the APP executing the voice command in the direction of the directional edge;
and 504, extracting the content for filling the unfilled slots from the candidate APP, and filling the content into the slots corresponding to the APP.
Preferably, step 503 specifically includes:
judging whether the APP executing the voice command has a directed edge which is associated with the APP ecological map and points to the APP executing the voice command in the directed edge direction, if so, further extracting candidate APP which has the directed edge with the APP executing the voice command and points to the APP executing the voice command in the directed edge direction.
Preferably, in step 503, the following steps are included,
judging whether the extracted APP has the slot position of the unfilled content or the slot position with the same attribute as the slot position, if so, taking the extracted APP as a primary selected APP, wherein the primary selected APP is a candidate APP.
Preferably, step 507, judging whether the slot filling is accurate, if yes, executing step 508, and if not, executing step 509;
step 508, adding the weight coefficient of the directed edge between the APP executing the command and the candidate APP in the APP ecological map;
step 509, obtaining the corrected slot position content of the user, judging whether the corrected slot position content is identical to the slot position content filled by the APP in the APP ecological map, if so, increasing the weight of the directed edge if a directed edge exists between the APP executing the command and the APP with the same slot position content, and if no directed edge exists, establishing the directed edge.
The invention also provides a device for voice interaction, which is characterized in that the device comprises
The receiving and transmitting module is used for acquiring a voice command input by a user;
the execution module is used for executing the following steps:
step 502, judging whether the voice command of the user can be accurately executed; if not, obtaining the unfilled slot of the APP execution voice command, and executing step 503;
Step 503, invoking an APP ecological map, and obtaining candidate APP which has a directional edge with the APP executing the voice command and points to the APP executing the voice command in the direction of the directional edge;
and 504, extracting the content for filling the unfilled slots from the candidate APP, and filling the content into the slots corresponding to the APP.
Preferably, step 503 specifically includes:
judging whether the APP executing the voice command has a directed edge which is associated with the APP ecological map and points to the APP executing the voice command in the directed edge direction, if so, further extracting candidate APP which has the directed edge with the APP executing the voice command and points to the APP executing the voice command in the directed edge direction.
Preferably, in step 503, the following steps are included,
judging whether the extracted APP has the slot position of the unfilled content or the slot position with the same attribute as the slot position, if so, taking the extracted APP as a primary selected APP, wherein the primary selected APP is a candidate APP.
Preferably, step 507, judging whether the slot filling is accurate, if yes, executing step 508, and if not, executing step 509;
step 508, adding the weight coefficient of the directed edge between the APP executing the command and the candidate APP in the APP ecological map;
Step 509, obtaining the corrected slot position content of the user, judging whether the corrected slot position content is identical to the slot position content filled by the APP in the APP ecological map, if so, increasing the weight of the directed edge if a directed edge exists between the APP executing the command and the APP with the same slot position content, and if no directed edge exists, establishing the directed edge.
The invention provides a voice interaction method, which comprises the following steps of
Step 601, acquiring a first voice command input by a user;
step 602, filling slot position contents corresponding to APP according to a first voice command;
in the step, APP analyzes voice command, extracts key information and fills slot positions;
step 603, calling an APP ecological map, and obtaining another one or more APPs which have directed edges with the APP and the arrow tail of the directed edge points to the APP;
step 604, pushing the filled slots and slot contents to the another one or more APP;
step 605, the second APP detects the use of the second APP; executing step 606 when the user is judged to use the APP;
step 606, obtaining a second voice command input by a user;
step 607, judging whether the slots required for executing the second voice command are all filled with content, if not, executing step 608;
Step 608, calling the pushed slot and the slot content, and judging whether the pushed slot content can fill the slot required by executing the second voice command in the APP, if so, filling the slot with the slot content.
Preferably, step 608 specifically includes the steps of:
step 081, obtaining unfilled slots in slots required to be filled by the task related to the second voice command;
step 082, judging whether the pushed slot is the same as the slot to be filled or has the same attribute; if yes, go to step 083;
step 083, filling unfilled slots with pushed slot content;
specifically, for each unfilled slot, judging whether a plurality of pushed slot contents can be used for filling the slot, and if not, filling the corresponding slot contents into the corresponding unfilled slot; if yes, go to step 084;
step 084, screening the slot position content, and filling the unfilled slot position with the selected slot position content.
Preferably, step 608 further comprises the steps of
Judging whether the voice command can be executed, if so, executing step 610, and if not, executing step 609; if not, go to step 609;
Step 609, performing multiple rounds of dialogue with the user to obtain the content corresponding to the slot to be filled; step 610 is performed;
step 610, executing the task corresponding to the voice command.
Preferably, step 085 is performed after step 084, step 085 determining whether the user's second voice command can be performed; if yes, go to step 610; if not, go to step 609..
Preferably, after step 610, the method further comprises the steps of:
step 507, judging whether the slot filling is accurate, if yes, executing step 508, and if not, executing step 509;
step 508, adding the weight coefficient of the directed edge between the APP executing the command and the candidate APP in the APP ecological map;
step 509, obtaining the corrected slot position content of the user, judging whether the corrected slot position content is identical to the slot position content filled by the APP in the APP ecological map, if so, increasing the weight of the directed edge if a directed edge exists between the APP executing the command and the APP with the same slot position content, and if no directed edge exists, establishing the directed edge.
The invention also provides a device for voice interaction, which comprises
The receiving and transmitting module is used for acquiring a first voice command input by a user;
The execution module is used for executing the following steps:
step 602, filling slot position contents corresponding to APP according to a first voice command;
in the step, an execution module analyzes the voice command, extracts key information and fills the slot;
step 603, calling an APP ecological map, and obtaining another one or more APPs which have directed edges with the APP and the arrow tail of the directed edge points to the APP;
step 604, pushing the filled slots and slot contents to the another one or more APP;
the detection module is used for detecting the use of the second APP by a user; when the user is judged to use the second APP, triggering the transceiver module to acquire a voice command input by the user;
the receiving and transmitting module is also used for acquiring a second voice command input by a user;
the execution module is further used for executing the following steps:
step 607, judging whether the slots required for executing the second voice command are all filled with content, if not, executing step 608;
step 608, calling the pushed slot and the slot content, and judging whether the pushed slot content can fill the slot required by executing the second voice command in the APP, if so, filling the slot with the slot content.
Preferably, step 608 specifically includes the steps of:
step 081, obtaining unfilled slots in slots required to be filled by the task related to the second voice command;
Step 082, judging whether the pushed slot is the same as the slot to be filled or has the same attribute; if yes, go to step 083;
step 083, filling unfilled slots with pushed slot content;
specifically, for each unfilled slot, judging whether a plurality of pushed slot contents can be used for filling the slot, and if not, filling the corresponding slot contents into the corresponding unfilled slot; if yes, go to step 084;
step 084, screening the slot position content, and filling the unfilled slot position with the selected slot position content.
Preferably, step 608 further comprises the steps of
Judging whether the voice command can be executed, if so, executing step 610, and if not, executing step 609; if not, go to step 609;
step 609, performing multiple rounds of dialogue with the user to obtain the content corresponding to the slot to be filled; step 610 is performed;
step 610, executing the task corresponding to the voice command.
Preferably, step 085 is performed after step 084, step 085 determining whether the user's second voice command can be performed; if yes, go to step 610; if not, go to step 609..
Preferably, after step 610, the execution module is further configured to perform the following steps:
step 507, judging whether the slot filling is accurate, if yes, executing step 508, and if not, executing step 509;
step 508, adding the weight coefficient of the directed edge between the APP executing the command and the candidate APP in the APP ecological map;
step 509, obtaining the corrected slot position content of the user, judging whether the corrected slot position content is identical to the slot position content filled by the APP in the APP ecological map, if so, increasing the weight of the directed edge if a directed edge exists between the APP executing the command and the APP with the same slot position content, and if no directed edge exists, establishing the directed edge.
The invention provides a voice interaction method, which comprises the following steps of
Step 701, acquiring a first voice command input by a user;
step 702, filling corresponding slots and public slots when a first APP executes a first task corresponding to a voice command according to the first voice command;
step 703, obtaining a second voice command input by a user;
step 704, filling the slots of the APP executing the second task corresponding to the voice command according to the second voice command;
step 705, determining whether there are one or more unfilled slots that must be filled to perform the second task, if so, executing step 706;
706, querying the association relation of the slot information, and judging whether the one or more slots which need to be filled can utilize a common slot content matrix, if so, filling the slots which need to be filled with the common slot content.
Preferably, the step 706 is performed by, in particular,
step 7061, the second APP determines whether it has one or more common slots with the same or the same attribute as the slot that must be filled, and if not, step 7062 is executed; if yes, taking the public slot as a public slot to be selected, and executing a step 7063;
step 7062, the second APP judges whether other APPs in the cluster to which the second APP belongs have one or more public slots with the same attribute or the same property as the slot to be filled, if so, the public slots are used as public slots to be selected;
step 7063, preprocessing the slot content matrix of the to-be-selected public slot, deleting the row of the matrix corresponding to the filling time meeting the deleting time, and screening the to-be-selected public slot with the slot content matrix not being a null matrix as a candidate public slot;
step 7064, selecting the slot content satisfying the condition from the slot content matrix of the candidate public slots to fill the necessary slot.
Preferably, in step 7065, it is specifically determined whether it is possible to obtain, based on the interaction process between the user and the APP, which feature the slot content the user intends to fill is the slot content related to, and if it is possible to determine, the slot content corresponding to the feature is preferentially selected to fill the slot to be filled.
Preferably, step 7065 is specifically to select, from the slot content matrix of candidate public slots, slot contents satisfying the condition to fill the necessary slot based on a certain rule.
The invention provides a device for voice interaction, which is characterized in that
The receiving and transmitting module is used for acquiring a first voice command input by a user;
the execution module is used for filling corresponding slots and public slots when the first APP executes a first task corresponding to the voice command according to the first voice command;
the receiving and transmitting module is also used for acquiring a second voice command input by a user;
the execution module is further used for executing the following steps:
step 704, filling the slots of the APP executing the second task corresponding to the voice command according to the second voice command;
step 705, determining whether there are one or more unfilled slots that must be filled to perform the second task, if so, executing step 706;
706, querying the association relation of the slot information, and judging whether the one or more slots which need to be filled can utilize a common slot content matrix, if so, filling the slots which need to be filled with the common slot content.
Preferably, the step 706 is performed by, in particular,
step 7061, determining whether the APP executing the second task has one or more common slots with the same or the same attribute as the slot that must be filled, and if not, executing step 7062; if yes, taking the public slot as a public slot to be selected, and executing a step 7063;
step 7062, judging whether other APP in the cluster to which the APP executing the second task belongs has one or more public slots with the same attribute or the same attribute as the slot to be filled, if so, taking the public slot as a public slot to be selected;
step 7063, preprocessing the slot content matrix of the to-be-selected public slot, deleting the row of the matrix corresponding to the filling time meeting the deleting time, and screening the to-be-selected public slot with the slot content matrix not being a null matrix as a candidate public slot;
step 7064, selecting the slot content satisfying the condition from the slot content matrix of the candidate public slots to fill the necessary slot.
Preferably, in step 7065, it is specifically determined whether it is possible to obtain, based on the interaction process between the user and the APP, which feature the slot content the user intends to fill is the slot content related to, and if it is possible to determine, the slot content corresponding to the feature is preferentially selected to fill the slot to be filled.
Preferably, step 7065 is specifically to select, from the slot content matrix of candidate public slots, slot contents satisfying the condition to fill the necessary slot based on a certain rule.
The invention provides a voice interaction method, which comprises the following steps of
Step 801, monitoring the use of APP by a user;
step 806, obtaining a voice command of a user;
step 807, judging whether the corresponding task can be executed according to the voice command of the user, if not, executing step 812;
step 812, querying the APP ecosystem, identifying one or more second APPs which are established with the APP, have directional side arrows pointing to the APP, and have directional side slots which are the same as or have the same attribute as the unfilled slots;
step 813, filling unfilled slots in the APP based on the identified one or more APPs;
step 813 specifically includes:
acquiring tag information of the one or more APP and the slot positions of the directional edges between the APP, determining an information source APP based on the tag information, acquiring the content of the slot positions which are the same as the slot positions of the directional edges from the information source APP, and filling the content into the corresponding unfilled slot positions of the APP;
The tag indicates the updating time of the slot position content corresponding to the slot position of the directed edge.
Preferably, after step 801, before step 806, the method further comprises the following steps of
Step 802, judging whether the terminal has a corresponding APP ecosystem if yes, and executing step 806.
Preferably, in step 807, if the determination result is yes, step 808 is performed;
step 808, executing the task, and acquiring the slot positions of the arrow tail pointing to the directional edge of the APP according to the APP ecological system, wherein the slot positions are the same as the slot positions filled by executing the task or have the same attribute; step 809 is performed;
step 809, adding a tag to the slot of the directed edge, where the tag indicates a slot content update time corresponding to the slot of the directed edge.
The invention provides a device for voice interaction, which is characterized in that
The detection module is used for monitoring the use of the APP by a user;
the receiving and transmitting module is used for acquiring a voice command of a user;
the execution module is used for executing the following steps:
step 807, judging whether the corresponding task can be executed according to the voice command of the user, if not, executing step 812;
step 812, querying the APP ecosystem, identifying one or more second APPs which are established with the APP, have directional side arrows pointing to the APP, and have directional side slots which are the same as or have the same attribute as the unfilled slots;
Step 813, filling unfilled slots in the APP based on the identified one or more APPs;
step 813 specifically includes:
acquiring tag information of the one or more APP and the slot positions of the directional edges between the APP, determining an information source APP based on the tag information, acquiring the content of the slot positions which are the same as the slot positions of the directional edges from the information source APP, and filling the content into the corresponding unfilled slot positions of the APP;
the tag indicates the updating time of the slot position content corresponding to the slot position of the directed edge.
Preferably, the judging module is configured to judge whether the terminal has a corresponding APP ecosystem.
Preferably, in step 807, if the determination result is yes, step 808 is performed;
step 808, executing the task, and acquiring the slot positions of the arrow tail pointing to the directional edge of the APP according to the APP ecological system, wherein the slot positions are the same as the slot positions filled by executing the task or have the same attribute; step 809 is performed;
step 809, adding a tag to the slot of the directed edge, where the tag indicates a slot content update time corresponding to the slot of the directed edge.
The APP ecological system comprises an APP ecological map and a correlation relation of slot position information;
an APP ecological map is a directed map among a plurality of APPs established according to interactivity among the APPs;
The directed graph between the APPs comprises nodes and directed edges, wherein the nodes represent the APPs, the directed edges represent the sequence of using the APPs by a user or the calling sequence between the APPs, and the arrows of the directed edges point to the APPs used or called later;
the association relation of the slot information refers to the association relation of slots with the same information transmission or information transmission requirements or the same attribute among a plurality of APP established according to the APP ecological map or according to the information transmission or information transmission requirements among the APP;
the slot of the directed edge refers to the slot of the same or same attribute that both APPs connected by the directed edge have.
The invention provides a computer device characterized in that it comprises a processor and a memory, in which a computer program is stored which is executable on the processor and which, when executed by the processor, implements a method as described above.
The present invention provides a computer readable storage medium, characterized in that it stores therein a computer program executable on a processor, which when executed implements a method as described above.
The invention provides a voice assistant system comprising an apparatus as claimed in any one of the preceding claims.
The present invention provides an apparatus comprising an apparatus as claimed in any one of the preceding claims, or comprising a voice assistant system as claimed in any one of the preceding claims.
By the method and the device, information transmission among the APP can be carried out in a targeted manner under the condition that the terminal does not have a real-time monitor, the dedicated APP information transmission mode of the user is customized, the intelligence of voice interaction is further improved, the man-machine interaction efficiency is improved, the power consumption of the terminal can be reduced, and the user experience is improved.
Drawings
FIG. 1 is a system utilizing an APP ecosystem in one embodiment of the present invention.
FIG. 2 is an APP ecosystem in one embodiment of the invention.
FIG. 3 is a method of initializing an APP ecological map in one embodiment of the invention.
Fig. 4 is an APP directed graph in one embodiment of the invention.
FIG. 5 is an APP ecological map in one embodiment of the invention.
FIG. 6 is a method of initializing an APP ecological map in another embodiment of the present invention.
Fig. 7 is a method of APP clustering in another embodiment of the invention.
Fig. 8 is a method of APP clustering in another embodiment of the invention.
Fig. 9 is a method for establishing a slot information association relationship in an embodiment of the present invention.
Fig. 10 is a schematic diagram of association of slot information in an embodiment of the present invention.
FIG. 11 is a generic APP ecological map generation method in one embodiment of the invention.
FIG. 12 is a call and update method of an ecomap in one embodiment of the invention.
FIG. 13 is a call method of an APP ecological map in one embodiment of the invention.
FIG. 14 is a call method of association of slot information in one embodiment of the invention.
FIG. 15 is an APP ecosystem call method in one embodiment of the invention.
Fig. 16 is an APP ecosystem generating device in one embodiment of the invention.
Fig. 17 is a general APP ecosystem generating device in another embodiment of the present invention.
Detailed Description
For the purpose of making the objects, technical solutions and advantages of the present invention more apparent, the embodiments of the present invention will be described in further detail with reference to the accompanying drawings.
One or more different inventions are described herein. The present application describes one or more inventions including various embodiments, and the various embodiments are not limited in scope and are applicable to one or more inventions, and one or more inventions can be modified or altered with the various embodiments. This application is neither a literal description of all embodiments of one or more inventions nor a listing of features of one or more inventions that are necessarily present in all embodiments. The section headings of this application are for ease of understanding and do not limit the invention. Furthermore, although the method steps of the invention are described in a sequential order, other orders in which the invention may be practiced may be substituted. For some steps, they may also be performed simultaneously.
The methods described herein may be implemented in hardware or a combination of software and hardware, and may be implemented by a processor invoking a computer program stored in memory, either as a plug-in to a voice assistant or other application, as a stand-alone application, or as a form for storing critical information.
Likewise, the methods described herein may all be implemented in one device or may be implemented by multiple device interactions, such as by terminal side and server side interactions. As shown in fig. 1, the system includes a part of software running on a terminal side, such as a plurality of APPs, a voice assistant, an APP ecosystem generating application, and the like, and a part of software running on a server side, such as a general APP ecosystem generating application, where the server may be a cloud server, which receives a message of the terminal and responds to the message of the terminal, and the number of servers may be one or more.
In one embodiment, information interaction can be performed between different terminals through a network, and communication can be performed between software running on different terminals under the triggering of the software for realizing the method described herein, so as to realize information interaction.
In addition, the server may acquire information from the outside as needed, and the information may be from other servers, or terminals.
In another embodiment, the data generated by the methods described herein may be stored on the terminal side, may be stored partially on the server side, or may be stored entirely on the server side.
Basic concept
The present document provides for the first time a number of concepts including APP ecosystem, APP ecomap, association of slot information, APP directed map, directed edge slots. Several concepts described are explained below to facilitate an understanding of this document.
Fig. 2 is an example of an APP ecosystem, which includes an APP ecomap and a relationship of slot information. The APP ecological map is a control plane of the APP ecological system, the slot positions and/or the slot position content are data planes of the APP ecological system, and the association relationship between the slot positions and the APP is a connecting tie of the control plane and the data planes.
The APP ecological graph is a directed graph among the APPs established according to the interactivity among the APPs, and is an association relation established among the APPs, wherein the association relation is a connection relation established among the plurality of APPs with information transmission requirements when a user realizes a specific task by using the plurality of APPs.
For example, a user needs to make a travel plan, determine information such as travel destination, traffic mode, accommodation, scenic spot, weather, diet and the like, and when using APPs such as carrying range, jindong, mass commentary, ink weather and the like, there is a requirement for information transmission, such as places and dates are consistent among the APPs, so that an association relationship is established among the APPs to form an APP ecological map, thereby facilitating voice interaction between the user and each APP.
The APP directed graph comprises nodes and directed edges, wherein the nodes represent the APPs, the directed edges represent the order of the application used by users or the calling order among the APPs, the arrows of the directed edges point to the APPs used or called later, for example, the directed graph APPi-APPj among the APPs, and the arrow directions of the directed edges represent that the APPi is used by the users to call the APPj by using the APPj or the APPi.
The association relation of the slot information refers to the association relation of slots with the same information transmission or information transmission requirements or the same attribute among a plurality of APP established according to the APP ecological map or according to the information transmission or information transmission requirements among the APP.
The association relationship of the slot information includes a slot and an association relationship between the slot and the APP, and further may include corresponding slot content (not shown in the figure).
The slot comprises slot content and slot attributes corresponding to the slot, wherein the slot content is slot filling content, the slot attributes are the categories of the slots, for example, the date slot attributes are time, and the travel land slot attributes are addresses.
The slot of the directed edge refers to a slot of the same or same attribute of two APP (application) connected by the directed edge, and for the slot, information transmission or information transmission requirements exist between the APP. As shown, slot 1 is a slot with directed edges between APP1 and APP2, and APP2 and APP 3.
The initialization of the APP ecological system comprises initialization of an APP ecological map and establishment of association relation of slot position information.
By utilizing the APP ecosystem, information transmission and call between the APPs can be effectively realized, and the power consumption of the terminal is reduced.
The method mentioned herein is described in detail below.
Initializing an APP ecological map:
step 105, initializing an APP ecological map;
the method specifically comprises the following steps of:
step 11, monitoring interaction between a user and an APP;
specifically, in the step, the APP ecosystem generation application monitors interaction between a user and the APP in real time and records the interaction process between the user and the APP; the interaction may be a voice interaction or other interaction modes, such as text input. The recorded information includes the time the user used the APP, the content corresponding to the slot fill when the user performed the task using the APP, and the time information corresponding to when the slot content was filled, e.g., the user used the take inquiry 10.1 at 8:00 am for accommodation in Shanghai and the take inquiry 10.1 at 8:20 for accommodation in Nanjing. In order to facilitate the subsequent use of the stored information, the content of the slot filling when the user uses the APP to perform the task and the time information corresponding to the content of the filled slot are recorded, for example, the information when the APP is used is stored in the manner shown in the following table by taking the use of the portable APP as an example.
Table 1 record table of functions performed by user interaction with APP
Or,
and acquiring a log of the user using the terminal at a preset time interval, wherein the log comprises interaction information of the user and each APP, and acquiring a record of the user interaction with the APP from the log, wherein the record comprises time information of the user interaction with the APP. For example, the log includes the user's travel at 8:00, ink weather at 8:10, 8:12, the information is extracted from the log using a hundred degree map and stored in the manner shown in the following table.
Table 2 log information store
Time APP
8:00 Carrying course
8:10 Ink weather
8:12 Hundred degree map
Step 12, acquiring and storing continuously used APP names and the sequence of using the APP;
herein, APP as used includes the following meanings:
1) The APP being used by the user, namely the APP in the foreground used by the user or in an idle state;
2) And switching from the background running state to the foreground APP.
Continuous use of an APP means that the time between when the APP in front of the foreground switches to background operation or switches off and the time when another APP opens or switches to foreground operation is less than a predetermined continuous time interval. The state switching of the two APPs comprises the fact that the calling among the APPs is caused, for example, the map information in the WeChat message is clicked, and the hundred-degree map can be directly called; or when the user executes a specific task, the user completes the task together through a plurality of APP, and the user manually switches the APP to cause, for example, the user wants to eat in a green tea restaurant, checks restaurant information through public critique, then closes the public critique, and opens a hundred-degree map to inquire the route of the restaurant. And if the time interval of the program running in the foreground is smaller than a preset continuous time interval, determining the WeChat and the hundred-degree map, wherein the WeChat and the hundred-degree map are two groups of APP which are continuously opened, and the opening sequence of the APP is the WeChat, the hundred-degree map, the WeChat and the hundred-degree map.
In this step, for a scenario in which interaction between a user and an APP is monitored in real time, a state change of the APP is monitored in real time, and the APP used continuously and the order of use are determined according to the APP state change and the corresponding time information.
And acquiring a log of a user using terminal at a preset time interval, acquiring a recorded scene of the user interaction with the APP from the log, and acquiring whether the time interval of the user using the two APPs is smaller than a preset continuous time interval according to the recorded information of the user interaction with the APP, if so, determining that the two used APPs are continuous use APPs, otherwise, determining that the two used APPs are not continuous use APPs. For example, the user uses Wechat at 8:00, hundred degree map at 8:03, 8: and 12, using the drop, wherein the using time intervals between the WeChat and the hundred-degree map, between the WeChat and the drop and between the hundred-degree map and the drop are smaller than the preset continuous time interval, and judging that the APP used continuously belongs to the APP used continuously.
In another embodiment, the acquired continuously used APP is stored, further, stored in pairs of APPs, for example:
{APP1,APP2}
wherein, it means that APP1 is used before and APP2 is used after;
for example, if the usage time intervals between two of the plurality of APPs used by the user as described above are smaller than the predetermined continuous time interval, APPs belonging to continuous opening are stored as a group of APP pairs:
{APP3,APP4}
{APP3,APP5}
{APP4,APP5}
The sequence of using the APP is as follows from first to last: APP3, APP4, APP5.
Step 13, judging whether information transmission or information transmission requirements exist between the continuously used APPs; if yes, go to step 14, if no, go to step 15.
Specifically, for a scenario in which interaction between a user and an APP is monitored in real time, determining whether there is information transfer or a need for information transfer between APPs that are continuously used includes the following steps:
judging whether a calling relationship exists between the APPs, if so, information transmission or information transmission requirements exist between the APPs, for example, when a map is clicked in a WeChat, a hundred-degree map is called to display detailed information of the map in the WeChat, and if so, the WeChat and the hundred-degree map have a calling relationship, and information transmission exists between the WeChat and the hundred-degree map.
Or, judging whether the same slot position content is filled into slots when the continuously used APP executes tasks, if so, determining that information transmission or information transmission requirements exist between the APPs, for example, a user opens a travel-carrying look-up air ticket in the Shanghai, which relates to a destination slot position: shanghai, then the user opens ink weather to query for weather on the sea, which relates to address slots: and (3) on the Shanghai, for the continuously opened carrying course and ink weather, the carrying course and the ink weather both have the same slot position content, namely, the slot position content corresponding to the address attribute is on the Shanghai, and the information transmission requirement of the carrying course and the ink weather is determined.
Further, if the slot contents are different, judging whether the continuously used APP has the same slots or has the same attributes, if so, determining that information transmission or information transmission requirements exist.
And acquiring logs of the user terminal at preset time intervals, acquiring recorded scenes of interaction between the user and the APP from the logs, judging whether the slots called when the continuously used APP executes the task are filled with the same slot content according to the information of interaction between the user and the APP recorded in the logs, if so, determining that the continuously used APP has information transmission or information transmission requirements, if not, judging whether the continuously used APP has the same slots or the same attributes, and if so, determining that the continuously used APP has information transmission or information transmission requirements.
Step 14, establishing a directed graph among the APPs according to the sequence of using the APPs by the user and/or the calling relation among the APPs; step 16 is performed;
in the step, for the APP with continuous use of information transmission or information transmission requirements, a directed graph between the APP is built, specifically, an APP pair with information transmission or information transmission requirements is taken as a data source for building the directed graph between the APP, and the directed graph between the APP is built according to a stored format of the APP pair, wherein the APP positioned in front of the APP pair is the starting point of the directed graph, and the APP positioned behind the APP pair is the terminal of the directed graph.
For example, the selected APP pair is { take, ink weather }, and a directed graph between the two is established based on the storage format, wherein the directed edge is from take to ink weather, specifically:
carry journey-ink weather
Step 15, deleting stored continuously used APP without information transfer or information transfer requirement;
specifically, when there is no information transmission or information transmission requirement between the APPs, deleting the stored APP pair;
and step 16, generating an APP ecological map according to the directed maps among the APPs.
Through the establishment of APP directed graph, can initially form APP ecological map, as shown in FIG. 4, formed a plurality of APP directed graphs, fuse a plurality of APP directed graphs of establishing, namely gather all APP directed graphs in a picture, set up each APP as the node, the connection on the directed limit between the node is the same with the connection on the directed limit of APP directed graph, forms, for example, the collection of directed graph between a plurality of APP as shown in FIG. 5, has generated APP ecological map promptly.
Through the method, the association relation among the APPs is established, when the user interacts with the APP used later through voice interaction or other interaction modes, the APP used later can acquire the information of unknown user indication by inquiring the APP ecological map, so that the convenience of interaction between the user and the APP is improved, and the user experience is improved.
In another embodiment, initializing the APP ecological map further comprises the steps of, as shown in fig. 6:
step 21, detecting the behavior of the voice assistant;
as known, a voice assistant plays an important role in man-machine interaction, a user can realize a specific task by interacting with the voice assistant, and in the process, the voice assistant calls the APP as required to assist the user to realize the specific task, so that the efficiency of generating the APP ecological map can be improved by detecting the behavior of the voice assistant.
In this step, the behavior of the voice assistant, such as the interaction behavior of the voice assistant with the user, or the behavior of the APP invoked by the voice assistant when performing a specific task, is monitored in real time.
Step 22, obtain and store the APP name that the voice assistant continuously calls when executing the task, and call the order of APP.
Wherein, continuously invoking an APP refers to the voice assistant invoking multiple APPs when the time interval between invoking the current APP and invoking another APP is less than a predetermined continuous time interval, or the voice assistant is executing a task or continuously executing a group of tasks. For example, the voice assistant performs the task of ordering coffee for the user, which includes two subtasks: ordering coffee and retrieving coffee, screening a coffee shop through a public comment when the task is executed, selecting starbucks, and then calling a hundred-degree map to navigate to the selected starbucks, wherein the time interval for switching from the public comment to the hundred-degree map is smaller than a preset continuous time interval, or calling the public comment and the hundred-degree map to complete the task of ordering coffee, the public comment and the hundred-degree map are APPs continuously called by a voice assistant, and the calling sequence is the public comment and the hundred-degree map in sequence.
The manner of storing the continuously called APP names is the same as the manner of storing the continuously used APP names, and the APP names are stored in an APP pair manner.
Step 23, judging whether information transmission or information transmission requirements exist between the continuously called APPs; if yes, go to step 24; if not, go to step 25;
in this step, the manner of determining whether or not there is information transfer or a need for information transfer between APPs is the same as that described above.
Step 24, establishing a directed graph among the APPs according to the sequence of continuously calling the APPs; step 26 is performed;
step 25, deleting stored APP which is not required to be transferred or continuously called by the information transfer;
step 26, generating an APP ecological map according to the directed maps among the APPs;
also, in this step, the APP directed graph is fused to generate an APP ecological graph.
In this embodiment, steps 24-26 are the same or similar to the specific implementation of steps 14-16 described above.
In another embodiment, a weight coefficient is set for the directed edge, the magnitude of the weight coefficient representing the magnitude of the probability of information transfer between the two APPs to which it is connected. When the directed edges of the directed graph are initially established between the APPs, the weight coefficients are all the same value.
Before establishing a directed graph between APPs in steps 14, 24, the following steps are performed:
step 241, judging whether a directed graph exists between the APPs, if so, executing step 242; if not, go to step 244;
step 242, determining whether the direction of the directional edge to be established is the same as the direction of the existing directional edge, if so, executing step 243, and if not, executing step 244;
step 243, increasing the weight coefficient of the directional edge in the same direction as the direction;
step 244, establishing a directed edge with a new direction;
step 245, establishing directed edges between the APPs.
Wherein the weight coefficient increases or decreases in step size of Deltaw.
In another embodiment, when the APP ecological map is generated, the weight coefficients of the directed edges between APPs are the same as the weight coefficients of the corresponding directed edges in the APP directed map.
Through setting up weight coefficient, when APP connects a plurality of directed limit, can be based on the APP that the highest directed limit of weight coefficient is connected of weight coefficient priority selection, acquire information or send information to the APP of selection from the APP of selection, effectively improved information transfer's efficiency and accuracy.
In another embodiment, before step 11 and/or 21, the method further comprises the steps of:
Step 01, acquiring an APP name installed by a terminal;
specifically, the terminal comprises a plurality of APP, and the APP ecosystem generates an APP name installed in the terminal;
step 02, classifying the APP according to functions, grouping the APP with the same or similar functions into a cluster, and forming one or more APP clusters; wherein the APP cluster comprises one or more APPs;
a user typically installs a large number of APPs at the terminal for implementing various functions, such as carrying a ticket when exiting, jindong, rail 12306 for booking a ticket, taxi taking software drops, ink weather for inquiring weather, hundred degree maps for navigation, altitude maps, etc. After the user-installed APP names are obtained, the APP is classified according to the main functions, and the APP with the same or similar functions is used as a cluster. For example, clusters are divided according to functions such as diet, trip, map, weather, etc.
Further, when an APP has multiple functions, it can be cross-partitioned, i.e., into multiple clusters, where the APP belongs to an intersection of multiple APP clusters.
As shown in fig. 7, APP is divided into three clusters, wherein APP within an ellipse enclosed by a dotted line belongs to the same cluster, and it can be seen from the figure that APP3 belongs to both cluster 1 and cluster 2.
Preferably, for APP with multiple functions, the clustering can be optimized in combination with the usage habit of the user, and the clustering is preferentially performed according to the usage habit of the user. For example, when a user uses a conventional Beijing east to order an air ticket, shopping is used to using a panned baby, but Beijing east is classified into a travel category and a panned baby is classified into a shopping category according to the user's usage habit.
In another embodiment, the APP ecosystem generating application detects that a new APP is installed in the terminal, or detects that there is an APP ecomap in the terminal or an APP not included in the APP ecosystem, adds the APP ecomap to an APP cluster corresponding to the APP function according to the APP function, and detects use of the new APP by a user, where the detecting operation may be performed under a trigger message sent to the APP ecosystem generating application when the new APP is started or used by the user.
In another embodiment, when a new APP is installed in the terminal, the new APP detects that there is an APP ecological map or APP ecological system or slot information association relationship in the terminal, and adds the new APP to a cluster with the same or similar functions as the APP ecological map or APP ecological system or slot information association relationship according to the function of the new APP.
As shown in fig. 8, APP7 is a new APP installed, which is added to cluster 2 according to its function. In this figure, although no directed edge is established between the APP ecological map and other APPs, when there is a need for acquiring information, the APP acquiring information can be predicted by combining the directed edges of other APPs in the cluster, in this APP ecological map, it can be seen that APPs 3 and 6 belonging to cluster 2 all establish directed edges with APP2, and the direction directions are all acquiring information from APP2, so that the information acquired from APP2 is preferentially selected.
Further, the APP ecosystem generating application or the APP itself detects whether information acquired from other APPs is correct, if so, the APP ecosystem generating application or the APP itself updates a corresponding APP ecomap or APP ecosystem or slot information association relationship, for example, establishes a new APP and a directed edge corresponding to the information source APP, if so, determines whether the directed edge can be updated based on user correction information, if so, updates the corresponding directed edge, and if the directed edge cannot be established, the APP ecosystem generating application continues to detect the use of the APP by the user, or the APP updates the APP based on the use of the APP ecomap or APP ecosystem or slot information association relationship.
Preferably, the APP ecosystem generating application starts a detection function based on a certain rule, for example, periodically, or according to a user setting, or when an event triggers, for example, after the APP ecosystem generating application is clustered into a new APP, a message is sent to the APP, or when the new APP is detected, a message is sent, where the message carries a message indicating that the APP does not establish a directed edge with other APPs, and after the new APP receives the message, when the new APP starts or is used by the user, a message is sent to the APP ecosystem generating application, and the use of the APP is triggered to be detected.
Through carrying out the cluster to APP, rationally utilized user's use habit, can improve the management efficiency to APP, strengthen the generation of APP ecological map, further improve information transfer's efficiency.
In another embodiment, prior to step 105, the method further comprises the steps of:
step 103, judging whether the terminal has an APP ecological map, if not, executing step 105; if so, ending.
The APP ecological system generation application judges whether the terminal has an APP ecological map, wherein the APP ecological map can be stored in the terminal locally or in a cloud server.
In the step, firstly, inquiring whether the APP ecological map is stored locally in the terminal, if so, ending, if not, sending an APP ecological map acquisition request to a cloud server, receiving a response message corresponding to the request returned by the cloud server, judging whether the response message carries the APP ecological map, and if not, executing step 105; if the portable terminal is carried, ending.
Further, a corresponding relation between the terminal and the APP ecological map is set, and the corresponding relation can identify the corresponding ecological map through a unique identifier of the terminal, wherein the unique identifier can be information of unique identifiers of the terminal such as IMEI of the terminal or user identifiers of the terminal, and the user identifiers uniquely identify one user.
Through the method, the APP ecological map of the terminal is initially established, and through the ecological map, the interaction relationship between the APPs is established, so that when the subsequently opened APPs need to acquire information from other APPs, the information acquisition is relatively fast and accurate, the efficiency of voice interaction with the user is further improved, the accuracy of voice semantic understanding of the user is improved, and the intelligence of the APPs is improved.
Establishing association relation of slot position information
After the APP ecological map is established, the association relationship between APPs can be determined, so that information can be preferentially queried or acquired from the associated APPs, in another embodiment, in order to accelerate the speed of the APPs responding to voice commands of users, a data layer associated with the APP ecological map is established, the association relationship of each APP slot information is established through the data layer, and the establishment of the slot information association relationship can be established after the APP ecological map is generated, can be established synchronously with the APP ecological map, or is generated independently of the APP ecological map. The method specifically comprises the following steps:
When the APP ecological map is generated and executed in step 13 or 23, if it is determined that there is information transfer or information transfer requirement between APPs, the following steps are further executed in step 14 or 24:
if there is a call relationship between the APPs, acquiring a slot position of the APP which is used by the called APP and is used before, and setting the slot position as a slot position with a directed edge;
if slots filled with the same slot content exist among the APP, setting the slots filled with the same slot content in advance as slots with directed edges, and determining the direction of the directed edges as the direction from the APP filled with the same slot content in advance to the APP filled with the same slot content in later;
in the step, the probability that the APP call with the same slot content is filled in advance is higher, so that the call relationship between the two APPs can be determined based on the time relationship of filling the same slot content, and the direction of the directed edge can be determined more accurately.
If the slot contents are different and the slots with the same or same attribute exist, the slots with the same attribute of the same slot or the APP used in the future of the prior APP are set as slots with a directed edge.
Through the process, the slot positions of the directed edges can be determined, and a complete APP ecological system is formed, wherein the system comprises the association relations among the APPs and the links for establishing the association relations among the APPs: the slot position can know the relevance between each APP in advance, namely the slot position for information transmission between the APPs, namely the acquisition direction of the clear slot position content, improves the intelligence of the APP and user interaction opened later, can monitor the terminal in real time without a monitor, and reduces the power consumption of the terminal.
Further, after the slots of the directed edges are established, when the APP ecological map is updated or a new APP ecological map is generated based on the existing APP ecological map, the slots of the directed edges are updated along with the corresponding directed edges, for example, when the directed edges are deleted, the corresponding slots are also deleted.
In another embodiment, another method for establishing a slot information association relationship is provided, as shown in fig. 9, and the method specifically includes the following steps:
step 201, an APP ecosystem generates an application execution detection function, and interaction between a user and the APP is detected;
in this step, the initiation of the detection function is based on certain rules as described above, such as periodically, or according to user settings, or upon event triggering, as exemplified in the above embodiments.
In one embodiment, the event triggering further comprises the following manner
The APP receives a command of a user; wherein the APP receives a user's command, indicating that the user will use the APP; the command can be a voice command or other commands, the APP judges whether the establishment completion mark of the slot information association relation is true, if yes, a message triggering the start of the APP ecosystem to generate the application is not sent, and if not, whether the APP ecosystem to generate the application is started is further judged; if the application is started, the APP does not send a message for enabling the application to be started to the APP ecosystem generation application, if the application is not started, the APP ecosystem generation application is sent a message, the starting of the application is triggered, the detection function is executed, and the APP ecosystem generation application is started and executes the detection function based on the received message.
The method comprises the steps that a slot information association relation establishment completion identifier is stored in a terminal and used for identifying whether the association relation is established or not, wherein a detection timer is set in an APP ecosystem generation application, when the time of the detection timer is longer than the detection completion time, the identifier is set to be true, otherwise, the identifier is set to be false, and the detection timer can be reset according to the requirements of a user.
Step 202, detecting interactions between a user and all used APPs;
in this step, the APP ecosystem generating application detects interactions between the user and all APPs, and detects tasks performed by the APPs and slots filled during the task execution and the contents of the slots filled.
Step 203, acquiring and storing slots filled when the APP executes the task, slot content and time for filling the slot content;
step 204, judging whether the user has interaction with the APP, if so, executing step 202; if not, go to step 205;
in the step, whether the user still interacts with the APP is judged, if so, the interaction between the user and the APP is continuously monitored, and if not, the subsequent steps are executed.
Step 205, judging whether the filled slots and the filled slot content information are stored when a plurality of APP execute tasks, and if not, executing step 206; if yes, go to step 207;
The APP ecological system generates information which is searched by the application and judges whether the related information of a plurality of APPs is stored, if so, the association relation of the slot information can be established based on the stored information, and if not, the association relation cannot be established based on the currently stored information.
Step 206, closing or dormancy APP ecosystem generation application, ending;
after the user finishes the interaction with all the APPs, the APP ecosystem generation application does not have the requirement of continuous monitoring and can be closed or enter a dormant state.
Step 207, judging whether information transmission or information transmission requirements exist between the APPs, if so, taking the slot positions with the information transmission or information transmission requirements as public slot positions between the APPs; if not, ending.
Specifically, the method comprises the following steps:
step 2071, judging whether the time interval of any two or more stored APP filling slot contents is smaller than a predetermined continuous time interval, if yes, executing step 2072, if no, executing step 2074;
step 2072, dividing the APP meeting the condition into a group; judging whether any two or more APP in each group fill the same slot position content or not based on the stored information; if yes, go to step 2073;
Step 2073, using the slots filled with the same slot content as the common slots;
step 2074, judging whether the filling time of the slot position content in the stored information and the current time interval are greater than or equal to the deleting time, if yes, deleting the item content corresponding to the filling time, and if no, ending.
Wherein the deletion time is greater than a predetermined continuous time interval.
In the step, the information with longer storage time is screened and deleted, so that the storage space can be effectively saved, and the resource waste is reduced.
Through the method, the association relation of the slot position information is established, as shown in fig. 10, the public slot position 1 is the public slot position of the APP1-3, the public slot position 2 is the public slot position of the APP1-2, the public slot position 3 is the public slot position of the APP2-3, and the public slot position 4 is the public slot position of the APP 4-5.
In the method, the establishment of the association relationship of the slot information can be independent of the generation of the APP ecological map, and the association relationship of the slot information can be only established.
In another embodiment, the weight coefficients are set for the common slots, and the default weight coefficients are the same when the common slots are initially established.
Further, in step 207, before determining the common slot, determining whether the slot is set as the common slot between the APP, if so, increasing the weight coefficient of the common slot; if not, the public slot is established;
In another embodiment, the weight coefficient w is set for the common slot ij Indicating that the common slot will be APP i Is transmitted to APP j Weight coefficient of (C), similar w ji Indicating that the common slot will be APP j Is transmitted to APP i Weight coefficient of (c) in the above-mentioned formula (c). The weight coefficients of the common slot 1 shown in fig. 10 include the following 4: w (w) 12 、w 13 、w 23 、w 32
Wherein the weight coefficient increases or decreases in step size of Deltaw.
In another embodiment, slot contents corresponding to the same common slot are stored in a matrix (denoted as a common slot content matrix), such as: the matrix is a column matrix, each row corresponds to one filled slot content, and each filled content is added one row after the last row of the matrix.
Further, the matrix further includes time stamp information, and the matrix format is [ slot content, time stamp ], where the time stamp is the time when APP fills the slot content in the same row of the matrix as the time stamp, and the row of the matrix is added in the same manner as described above.
In another embodiment, the matrix further includes a source APP, representing an APP that fills the content, such as [ slot content, source APP ].
In another embodiment, the slot content matrix corresponding to the slot includes one or more information of slot content, timestamp, source APP, and slot attribute, and the slot content and the timestamp associated therewith, and the source APP are stored as a row, for example:
[ slot content, fill time, source APP, slot Property ]
Further, when the APP queries the association relation of the slot information, judging whether the difference value between the current time and the time stamp is larger than or equal to the deleting time, if so, deleting the row of the matrix corresponding to the time stamp.
In one embodiment, the association may be stored as a table.
By the method, the public slot related to the transmitted information is established between the APP with the information transmission requirement, the association relation of the slot information is formed, the association relation is stored in the terminal, and when the APP performs tasks and needs to use the slot, the public slot and the content filled by the public slot can be directly utilized, so that the method is efficient and intelligent and is interacted with a user.
Similar to the above method, before the association relationship of the slot information is established, the APP ecosystem generating application clusters APPs according to functions, for example, before step 201, the above steps 01 and 02 are executed, and similarly, when the APP ecosystem generating application detects that the terminal installs a new APP, the APP ecosystem generating application adds the new APP into an APP cluster corresponding to the function according to the APP function, and sends a message to the APP, where the message indicates that when the APP detects that the APP uses the new APP by the user, the detection function of the APP ecosystem generating application is triggered. Similarly, when the new APP has a need to acquire information, the APP that acquires information can be predicted by combining the public slots of other APPs in the cluster, and the public slot content of the information is preferably acquired by other APPs in the cluster. Further, the APP ecosystem generating application detects whether the new APP acquired information is correct, if so, establishes a public slot for the new APP and the information source APP, if so, judges whether the public slot can be established based on the user correction information, if so, establishes a corresponding public slot, and if not, ends.
The association relation of the slot information can be generated based on the APP ecological map, and the slot association relation can be adaptively adjusted when the APP ecological map is adjusted, or the APP ecological map can be adjusted based on the slot information association relation. Correspondingly, after the general APP ecological map is generated, the general slot association relationship can be formed by adopting the method, so that the general APP ecological system is formed.
Sharing of APP ecological maps and generation of general APP ecological maps
In the above embodiment, how to generate an APP ecological map suitable for a specific user is described, and for various APPs, the APP ecological map is generic, and if each user trains to generate the APP ecological map independently, the time cost required for the APP ecological map is high, so a method for generating a generic APP ecological map and a method for sharing the APP ecological map are provided herein. The following describes one by one.
In another embodiment, a general APP ecological map generating method is provided, as shown in fig. 11, and mainly includes the following steps:
step 301, acquiring an APP ecological map;
in the step, the APP ecological map can be acquired by the mode that the user actively uploads the APP ecological map, or requests are sent to a plurality of users to acquire the APP ecological map of the users, and meanwhile, attribute information, such as preference, age, social group and the like, of the users, which is related to the users, is acquired.
Step 302, classifying the APP ecological map to form an APP ecological map cluster;
and classifying the obtained APP ecological maps according to the user attributes, classifying the APP ecological maps with the same user attributes into a group, for example, classifying according to the ages of the users, classifying according to the social groups of the users, classifying according to the favorites of the users and the like.
Through classification, APP ecological map clustering can be facilitated, and generation of a general ecological map is facilitated.
Step 303, training the APP ecological map in the APP ecological map cluster to form a general APP ecological map corresponding to the user attribute.
In this step, the method specifically comprises the following steps:
step 3031, obtaining APP included in a plurality of APP ecological maps in a cluster;
step 3032, adding the same label to a plurality of APP with the same or mutually replaceable functions;
for example, the hundred degree map and the Goldmap are both maps, and the same label is added to both maps.
Step 3033, fusing the APP ecological maps to form a general APP ecological map;
in this step, APP having the same tag is grouped into a group, called APP group; replacing the APP corresponding to the APP group in the plurality of APP ecological maps by the APP group; according to directed graphs among the APP and/or APP groups in the APP ecological graphs, establishing the directed graphs among the APP and/or APP groups included in the APP ecological graphs, and superposing the weight coefficients of the directed edges among the same APP or APP groups in the APP ecological graphs to form the weight coefficients of the directed edges in the general APP ecological graph.
Step 3035, storing the general APP ecological map.
In this step, the generic APP ecological map is stored in the storage space of the server.
In one embodiment, the user attributes corresponding to the generic APP ecological map are used as an index to store the corresponding generic APP ecological map.
In another embodiment, after step 3033, the method further comprises the steps of:
step 3034-1, deleting the directed edges with the weight coefficients lower than the lowest weight coefficient in the fused APP ecological map;
step 3034-2, judging whether an isolated APP or APP group exists, if so, deleting the APP or APP group to generate a simplified general APP ecological map;
step 3034-3, the reduced APP ecological map is stored.
In the step, the simplified APP ecological map is stored corresponding to the corresponding user attribute.
The above steps 3034-1 to 3034-3 may be performed before step 3035 or after step 3035.
The storage modes are as follows:
general APP ecological map storage mode
User attributes General APP ecological map Simplified APP ecological map
Hobbies: sports General APP ecological map 1 Simplified APP ecological map 1
Age: age 20-30 years General APP ecological map 2 Simplified APP ecological map 2
By the method, the requirement of the general APP ecological map on the storage space can be reduced, and the general APP can be conveniently called by the terminal especially when the storage space of the terminal is limited.
In one embodiment, the general or reduced general APP ecological system is generated by adopting the method, specifically, the APP ecological map in the method steps is replaced by the APP ecological system, wherein the formation of the directed edge slot position in the general or reduced general APP ecological system is synchronously updated and fused with the directed edge, namely, the same directed edge slot position is updated in an 'adding' mode.
In another embodiment, the user obtains the general APP ecological map or the simplified general APP ecological map before generating the user-specific APP ecological map, so that the APP ecological map training speed can be improved.
In addition, the user usually has a plurality of terminals, and there is a demand for APP ecological map sharing between the terminals of the user, where when the terminal currently used by the user does not have an APP ecological map, an ecological map acquisition request is preferentially sent to other terminals to acquire the APP ecological map, and if no response from the other terminals is received, the APP ecological map is acquired to other users or the cloud server.
In one embodiment, obtaining the APP ecological map comprises the steps of:
step 401, sending an APP ecological map acquisition request to other terminals of a user;
when the terminal does not have the APP ecological map, the terminal preferentially sends an acquisition request to other terminals of the user so as to acquire the APP ecological map specific to the user.
Step 402, judging whether an APP ecological map is obtained or not based on the received response; if yes, end, if not, go to step 403;
in the step, response messages sent by other terminals are received, and the subsequent execution step is determined according to whether the response messages comprise the APP ecological map.
Step 403, sending an APP ecological map acquisition request to friends with the same attribute as the user;
because the APP ecological map of friends with the same attribute as the user is generally more in line with the use habit of the user, an APP ecological map acquisition request is sent to friends with the same attribute as the user to acquire the APP ecological map of the friends.
Step 404, based on the received response, judging whether to obtain the APP ecological map from the friends, if not, executing step 405, if yes, executing step 407;
step 405, an APP ecological map acquisition request is sent to a cloud server, wherein the acquisition request carries attribute information of a user;
after receiving an APP ecological map acquisition request sent by a terminal, the cloud server generates an application by using a general APP ecological system and executes the following steps:
step 051, receiving an APP ecological map acquisition request sent by the terminal,
step 052, determining an APP ecological map meeting the user attribute requirements based on the attribute information of the user carried by the request; the APP ecological map may be a general and/or reduced general APP ecological map.
Step 054, transmitting a response message to the terminal of the user, wherein the response message carries the APP ecological map meeting the attribute requirements of the user;
further, in step 052, when the attribute information of the user includes a plurality of user attributes, the general APP ecological map satisfying the most user attributes is preferentially selected as the APP ecological map satisfying the user attribute requirements;
in another embodiment, when the attribute information of the user includes a plurality of user attributes, a minimum union of the universal APP ecological maps is acquired based on the user attributes, and the union of the user attributes of the universal APP ecological maps included in the minimum union is the same as the user attributes in the attribute information of the user carried in the APP ecological map acquisition request.
Fusing the minimum union of the universal APP ecological graphs, and taking the fused APP ecological graphs as the APP ecological graphs meeting the user attribute requirements; wherein the fusion method is the same as the fusion method of step 3033.
In another embodiment, the APP ecological map acquisition request carries capability information of the terminal, where the capability information includes storage capability of the terminal;
after step 052, before step 054, further comprising the steps of:
step 053, judging whether the terminal has the capability of storing the APP ecological map meeting the user attribute requirements according to the storage capability of the terminal, if so, executing step 054, if not, executing step 052, wherein the general APP ecological map in step 052 is replaced by the simplified APP ecological map, and further executing step 053, in step 053, if the terminal does not have the capability of storing the APP ecological map meeting the user attribute requirements, sending a response message to the user, wherein the response message carries the reason of failure in acquiring the APP ecological map.
Step 406, receiving a response message sent by the cloud server; if the response message carries the APP ecological map, step 407 is executed, and if the response message carries the reason for the failure in acquiring the APP ecological map and the reason is insufficient storage space, step 409 is executed;
step 407, identifying an APP application included in the terminal;
after the APP ecological map is obtained from friends or cloud servers, the obtained APP ecological map needs to be adjusted due to the fact that APP installed by different users is different, and therefore the requirements of the users are met.
In this step, the APP ecosystem generates an APP application that the application identification terminal includes.
Step 408, the APP ecological map is adjusted.
Step 409, sending the APP name installed by the terminal to the cloud server, so that the cloud server generates an APP ecological map suitable for the terminal.
Further, after the cloud server receives the message of the terminal, the APP ecological map meeting the user attribute requirements is adjusted based on the APP installed by the terminal, wherein the APP ecological map meeting the user attribute requirements is generated based on the general APP ecological map.
In step 408, the specific steps of adjusting the APP ecological map and the cloud server to adjust the APP ecological map meeting the user attribute requirement are as follows:
based on the APP installed by the terminal, the APP ecological system generating application identifies the APP which is not included in the terminal in the APP ecological map, and marks the APP which is not included in the APP ecological map in the terminal as APP2, judges whether the APP2 includes a substitute APP with the same function as the APP1, if so, replaces the APP in the corresponding APP1 with the APP with the same function in the APP 2; if not, deleting the APP1 and the directed edge connected with the APP1 in the APP ecological map, setting the APP3 which is not added to the APP ecological map in the APP ecological map by using an isolated node, and further placing the APP3 in a cluster corresponding to the function in the APP ecological map.
And after the cloud server generates the APP ecological map suitable for the terminal, the APP ecological map is sent to the terminal.
And the terminal receives the APP ecological map and stores the APP ecological map.
Further, when the storage space of the terminal is insufficient, a prompt is sent to the user, so that the user deletes some information to enable the terminal to meet the storage space.
By the method, the obtained APP ecological map can be adapted to the APP ecological map suitable for the user.
Similarly, the method for generating and sharing the general purpose APP ecological system is similar to the method for generating and sharing the general purpose APP ecological map, except that the slots corresponding to the directed edges in the APP ecological map in the source APP ecological system are synchronously related to the directed edges in the general purpose APP ecological system and the general purpose APP ecological system.
Invocation and updating of ecological maps
After the APP ecological map is established, the APP ecological map is dynamically updated along with the utilization of the user, so that the APP ecological map more accurately accords with the use habit of the user. Invoking and updating the ecological map includes the following steps, as in FIG. 12:
step 501, obtaining a voice command input by a user;
after the user starts the APP, or after the APP is switched from the background to the foreground, the APP acquires a voice command input by the user. For example, the user opens the ink weather, which gets the user's voice command as: what is the weather?
Step 502, judging whether the voice command of the user can be executed; if not, obtaining the unfilled slot of the APP execution voice command, and executing step 503;
in the step, the APP analyzes the voice command of the user, and fills the key information into the slot of the task corresponding to the voice command. For example, for ink weather, the slot positions relate to time and place, and the voice command of the user cannot accurately know whether the user is about to inquire the current position and the current weather condition or about other time conditions of other places according to the voice command of the user because the voice command of the user does not include key information.
Further, if the voice command of the user can be executed, the corresponding action is executed according to the voice command.
Step 503, invoking an APP ecological map, and obtaining candidate APP which has a directional edge with the APP executing the voice command and points to the APP executing the voice command in the direction of the directional edge;
specifically, after the APP ecological map is called, whether the APP executing the voice command has a directed edge which is associated with the APP ecological map and points to the APP executing the voice command in the directed edge direction is judged, and if so, candidate APP which has the directed edge with the APP executing the voice command and points to the APP executing the voice command in the directed edge direction is further extracted. If the APP has no directed edge meeting the above conditions, judging whether the APP belongs to a certain cluster, if the APP does not belong to the certain cluster, adding the APP into the APP cluster corresponding to the function according to the function of the APP, when the APP belongs to the certain cluster, acquiring APPs at the other ends of the directed edges of other APPs associated with other APPs belonging to the same cluster, further judging whether the APP at the other ends has a slot position of the unfilled content or a slot position with the same attribute as the slot position, if the APP has the slot position of the unfilled content or the APP at the other ends of the slot position with the same attribute as the slot position is taken as a candidate APP, otherwise, executing step 505.
In another embodiment, after step 502, before step 503, the steps of:
step 5031, judging whether an APP ecological map is stored, if so, executing step 503; if not, go to step 5032;
step 5032, sending an APP ecological map acquisition request;
in the step, an APP ecological map acquisition request is sent to a cloud server, and further the acquisition request comprises an identifier of a terminal, wherein the identifier is used for identifying an APP ecological map corresponding to the terminal.
The cloud server inquires the corresponding APP ecological map based on the identification, sends the inquired APP ecological map to the terminal, judges whether the APP ecological map is provided with the general APP ecological map if the APP ecological map is not inquired, if so, sends the general APP ecological map to the terminal, and otherwise, sends a failure response message to the terminal.
Step 5033, judging whether an APP ecological map is acquired or not based on the received message; if not, executing step 105, initializing the APP ecological map, and executing step 505; if yes, go to step 503;
preferably, in step 5033, the following steps are further included before performing step 503:
step 5034, judging the type of the APP ecological map, and if the APP ecological map is the APP ecological map corresponding to the terminal, executing step 503; if the APP ecological map is a general APP ecological map, step 5035 is executed;
Step 5035, adapt the generic APP ecological map to an APP ecological map consistent with the terminal-installed APP, and execute step 503.
In this step 503, based on the invoked APP ecological map, an APP that establishes an association with the APP that executes the voice command may be queried, and further, the APP that establishes an association with the APP that executes the voice command is extracted from the direction of the directed edge according to the direction of the directed edge.
In another embodiment, in step 503, it is further determined whether the extracted APP has a slot of the unfilled content or a slot having the same attribute as the slot, if so, the extracted APP is used as a preliminary selected APP, the preliminary selected APP is a candidate APP, otherwise, step 505 is performed.
Further, candidate APPs may be selected based on the weight coefficients of the directed edges, with the initially selected APP having a weight coefficient greater than a threshold value being the candidate APP.
In another embodiment, in the APP ecological map, a time stamp corresponding to the APP is further included, the time stamp indicating a time when the APP was most recently used. The method comprises the steps of sorting the primary selected APP according to time stamps, obtaining the primary selected APP with the latest time closest to the current time as a candidate APP, or sorting the primary selected APP screened by the weight coefficient according to the time stamps, screening the primary selected APP with the latest time closest to the current time as the candidate APP, wherein the number of the candidate APP can be one or more, and the union of the candidate APP is a minimum APP set comprising slots needing to be filled.
In another embodiment, the screening order of the factors may be adjusted when determining candidate APPs based on the factors, for example, selecting a plurality of APPs based on time ordering and then selecting based on weight coefficients to determine candidate APPs.
After determining candidate APP, step 504 is performed.
Step 504, extracting the content related to the unfilled slot from the candidate APP, and filling the content into the slot corresponding to the APP; step 506 is performed;
in the step, after the candidate APP is determined, the slots which are filled by the candidate APP and have the same properties or the same properties as the slots of the unfilled slot contents when the candidate APP executes the tasks before the candidate APP are acquired, and the slot contents related to the latest executed task are preferentially selected as the slot contents of the unfilled slots based on the time sequence of the candidate APP for executing the tasks related to the acquired slot contents.
Step 505, filling the slot based on the current state of the user, or initiating multiple rounds of dialogue to the user, and obtaining the slot content to be filled. Step 506 is performed.
Through the steps, whether the slot information can be filled according to the current state of the user is judged, for example, in the above example, if the user does not mention the time and place related information before opening the APP, the place slot is filled according to the position of the user, the slot information is filled according to the current time, and the weather condition of the current time of the current position is fed back to the user. If the content of the slot cannot be filled based on the current state of the user, a plurality of rounds of dialogue are initiated to the user, and information required for filling the slot is acquired in a dialogue mode with the user.
Further, step 506 is included to execute the task corresponding to the voice command.
Through the method, when the APP is opened by the user subsequently, the voice command of the user can be understood through the APP ecological map even if the voice command of the user does not contain complete information.
In another embodiment, the APP ecological map is used as shown in fig. 13:
step 601, acquiring a first voice command input by a user;
step 602, filling slot position contents corresponding to APP according to a first voice command;
in this step, APP parses the voice command, extracts key information, and fills the slot content.
Step 603, calling an APP ecological map, and obtaining another one or more APPs which have directed edges with the APP and the arrow tail of the directed edge points to the APP;
after the APP ecological map is called, judging whether a first APP executing a first voice command has a directed edge associated with the first APP in the APP ecological map, namely whether the first APP is an orphan point or not, if so, acquiring the directed edge which is provided with the first APP, and enabling the arrow tail of the directed edge to point to another one or more APPs of the APP; if not, adding the function to the APP cluster corresponding to the function according to the function.
Similarly, after step 602, before step 603, steps 5031 to 5035 are performed, and accordingly, step 502 in steps 5031 to 5035 is replaced with step 602, step 503 is replaced with step 603, and step 505 in step 5033 is performed with the end.
Step 604, pushing the filled slots and slot contents to the another one or more APP;
in one embodiment, slots and slot content are pushed to all other APPs having directed edges with the APP, with the directional edges pointed at the APP's arrow tails;
in another embodiment, the weight coefficient of the directed edge connected with the APP is selected to be larger than the threshold, and the arrow tail of the directed edge points to other APP of the APP, so that the slot position and the slot position content are pushed to the selected APP.
In another embodiment, it is determined whether the other APP or APPs have slots that are the same or have the same attributes as the filled slots, and if so, pushing the same or same attributes of slots and corresponding slot content.
Step 605, a second APP detection user, different from the APP from which the first voice command was acquired, uses the second APP; executing step 606 when the user is judged to use the second APP;
step 606, obtaining a second voice command input by a user;
step 607, judging whether the slots required for executing the second voice command are all filled with content, if not, executing step 608; if yes, go to step 610;
step 608, calling the pushed slot and the slot content, judging whether the pushed slot content can fill the slot required by executing the second voice command in the APP, if so, filling the slot by using the slot content, judging whether the voice command can be executed, if so, executing step 610, and if not, executing step 609; if not, go to step 609;
Step 609, performing multiple rounds of dialogue with the user to obtain the content corresponding to the slot to be filled; step 610 is performed;
step 610, executing the task corresponding to the voice command.
Further, the step 608 specifically includes the following steps:
step 081, obtaining unfilled slots in slots required to be filled by the task related to the second voice command;
step 082, judging whether the pushed slot is the same as the slot to be filled or has the same attribute; if yes, go to step 083, if not, go to step 609;
step 083, filling the corresponding unfilled slots by using the pushed slot contents;
specifically, for each unfilled slot, determining whether there are multiple pushed slot contents available for filling the slot, if not, filling the corresponding slot contents into the corresponding unfilled slot, and executing step 085; if yes, go to step 084;
step 084, screening slot position contents, and filling the unfilled slot positions with the selected slot position contents;
in one embodiment, the slot content with the highest weight coefficient of the directed edge associated with the slot content is selected for the unfilled slot filling content;
in another embodiment, the recently pushed slot content is selected for filling;
In another embodiment, the slot content with the directional edge weight coefficient greater than the threshold value associated with the slot content is used as the primary selection slot content, the primary selection slot content is ordered according to the pushing time, and the newly pushed primary selection slot content is selected to fill the unfilled slot.
Further, after step 084, the method further comprises the following steps:
step 085, judging whether the second voice command of the user can be executed; if yes, go to step 610; if not, go to step 609.
In another embodiment, after step 506 or 610, the method further comprises the steps of:
step 507, judging whether the voice command of the user is executed correctly, if so, executing step 508; if not, go to step 509;
in this step, the APP ecosystem generation application or APP determines whether the command executed by the APP according to the filled slot content is corrected by the user, and if not, it indicates that the information transfer is correct, and if so, it indicates that the information transfer is incorrect.
Step 508, adding a weight coefficient of a directed edge between the APP executing the command and the candidate APP with slot content utilization in the APP ecological map;
Wherein the APP ecosystem generating application or APP performs this step.
Step 509, obtaining the corrected slot position content of the user, judging whether the corrected slot position content is identical to the pushed slot position content in the APP ecological map, if so, increasing the weight of the directed edge when a directed edge exists between the APP executing the command and the APP with the same slot position content, and if not, establishing the directed edge.
Further, the weight coefficient of the directed edges between the APPs with the information transmission errors is reduced, and if the reduced weight coefficient is 0 or a negative value, the directed edges between the APPs are deleted.
Further, this step can also be performed by an APP ecosystem generating application or APP.
By the method, the APP ecological map can be dynamically updated and adjusted according to the use habit of the user, so that the APP ecological map is matched with the user.
Acquisition, storage and use of slot content
After the association relation of the slot information is established, the association relation of the slot and the stored information related to the slot content are called, so that the understanding and executing force of the APP on the voice command of the user can be improved, and the man-machine interaction efficiency and the intelligence of the machine are improved.
In one embodiment of the present invention, fig. 14 provides a calling method of association relation of slot information, which specifically includes the following steps:
Step 701, acquiring a first voice command input by a user;
the first APP detects and receives a voice command of a user, analyzes the voice command and determines a first task corresponding to the voice command.
Step 702, filling corresponding slots and public slots when a first APP executes a first task corresponding to a voice command according to the first voice command;
specifically, in the step, judging whether the filled slot comprises a public slot based on the established slot information association relation when filling the slot content, if so, filling the slot corresponding to the first task in the APP and simultaneously filling the slot content into a public slot content matrix;
alternatively, in another embodiment, if filling of the slot content involves filling of a common slot, the common slot is directly filled, the corresponding slot in the APP is no longer filled, and the APP directly calls the common slot when executing the task. By the method, the storage space of the terminal can be saved, and the same content is not required to be stored twice.
When the APP fills the public slot content matrix, judging whether the matrix is a null matrix, if so, directly filling the first row of the matrix; if the matrix is a non-empty matrix, preferably, judging whether the difference value between the time filled by the time stamp column of the matrix and the current time is greater than or equal to the deleting time, if so, deleting the row corresponding to the time stamp, and if not, not executing the deleting operation; in addition, one row is added to the matrix, and the information related to the common slot related to the first voice command is filled into the newly added row of the matrix.
For example, common slot 1 currently fills slots with contents of
Wherein the first column of the matrix is filled slot content, the second column is filling time, and the third column is information source.
After the APP1 acquires the voice command, judging that the filled slot relates to the public slot 1, firstly judging that the content matrix of the public slot 1 is a non-empty matrix, further judging that the time difference between the time stamp columns of the matrix and the current time is larger than the deleting time, deleting the first row of data, further adding one row behind the last row of the matrix, and filling the current data D, 15:40 and APP1, wherein the method comprises the following steps of:
step 703, obtaining a second voice command input by a user;
in this step, the second voice command input by the user may be obtained as the first APP or the second APP;
the second APP may be installed after the slot information association relationship is established for the terminal, or may be an APP included in the slot information association relationship.
Step 704, filling the slots of the APP executing the second task corresponding to the voice command according to the second voice command;
this step is performed in the same manner as step 702.
Step 705, determining whether there are one or more unfilled slots that must be filled for executing the second task, if yes, executing step 706, if no, executing step 710;
In this step, the second APP determines whether there is a slot that must be filled, and if so, further performs the subsequent steps.
Step 706, inquiring the association relation of the slot information, judging whether the one or more slots which must be filled can use the common slot content matrix, if so, filling the slots which must be filled by using the common slot content matrix, and executing step 708, otherwise, executing step 709;
specifically, the step 706 includes the steps of:
step 7061, the second APP determines whether it has one or more common slots with the same or the same attribute as the slot that must be filled, and if not, step 7062 is executed; if yes, taking the public slot as a public slot to be selected, and executing a step 7063;
step 7062, the second APP judges whether other APPs in the cluster to which the second APP belongs have one or more public slots with the same attribute or the same property as the slot to be filled, if so, the public slot is used as a public slot to be selected, and step 7063 is executed; if not, go to step 709;
step 7063, preprocessing the slot content matrix of the to-be-selected public slot, deleting the row of the matrix corresponding to the filling time meeting the deleting time, screening the to-be-selected public slot with the slot content matrix not being a null matrix as a candidate public slot, and executing step 7064; if there is no common slot for which the slot content matrix is not a null matrix, then step 709 is performed;
Step 7064, selecting slot contents meeting the conditions from the slot content matrix of the candidate public slots to fill the slots which need to be filled;
preferably, in the step, whether the slot content which is intended to be filled by the user is the slot content related to which feature can be obtained based on the interaction process of the user and the APP is determined, if so, the slot content corresponding to the feature is preferentially selected to fill the slot to be filled, and if not, the slot content is selected based on a certain rule.
Wherein the features include one or more of the following: time information, APP information, slot information, etc.
For example, the voice command interacted by the user and the second APP is "how to help me find the city weather to which me is going", the slots which need to be filled by the task corresponding to the voice command executed by the second APP include the place slots, the slots or the public slots with the attributes of the slots being the places are screened out based on the public slots associated with the APP, the slot content matrix of the public slots to be selected is updated, the rows in the matrix with the filling time and the current time interval being greater than or equal to the deleting time are deleted, and the slots corresponding to the slot content matrix which is not the empty matrix are selected as the candidate slots.
In addition, based on the voice command, it may be determined that the feature related to the slot content is an indicated region from a city to the slot to be filled by the user, based on the feature, it is determined that a common slot common to APP related to travel is preferentially selected, based on the information, the APP related to the feature is queried for the source APP in the slot content matrix of the common slot, for example, APP1 is queried, or APP1 and APP3 are queried, when there are a plurality of related APPs, based on a certain rule selection, when there is a related APP, the filling of the slot content corresponding to the APP is selected, further, if there are a plurality of filling contents related, the most recently filled content is preferentially selected.
The certain rule may be one of the following:
selecting the slot position content of the latest filling time in the public slot position content matrix to fill the slot position which is required to be filled;
selecting a row with filling time meeting preset selection time in a public slot content matrix, and selecting a slot with the highest weight coefficient to fill the necessary slot based on the weight coefficient transferred between the source APP and the second APP;
firstly, screening lines with weight coefficients higher than a preset weight coefficient based on the weight coefficients of information transmission between a source APP and a second APP in a public slot content matrix, and secondly, selecting slot contents with the latest filling time to fill slots which are required to be filled;
Step 708, determining whether the task corresponding to the second voice command can be executed, if yes, executing step 710, otherwise, executing step 709;
step 709, interacting with the user to obtain the slot content of the slots that must be filled, and executing step 710;
step 710, executing the task corresponding to the second voice command.
In another embodiment, after step 710, the method further comprises the steps of
Step 711, judging whether the call of the common slot is accurate, if yes, executing step 712, otherwise, executing step 713;
step 712, adding a weight coefficient between the second APP corresponding to the common slot and the slot content source APP;
step 713, obtaining the corrected slot position content of the user, judging whether the corrected slot position content has the same slot position content in the slot position content matrix of the common slot position with the same attribute or the same slot position which has to be filled, if so, adding the corresponding weight coefficient between the second APP and the source APP, reducing the weight coefficient corresponding to the slot position of the wrong common slot position content, and if not, constructing the common slot position for the second APP and the source APP.
In the method, the used APP stores the content with the possibility of information transmission in the corresponding public slot in advance based on the APP ecosystem, and when a user interacts with the APP used later, even if the information is provided insufficiently, the APP can analyze the semantics of the user, so that the intelligence of man-machine interaction is improved. In addition, after the APP ecosystem is established, a monitor does not need to be installed in the terminal to extract slot position contents, and the APP ecosystem is only required to be stored in the terminal or a server, so that information transmission among the APPs can be realized. Furthermore, the ecosystem can be trained and updated based on the use of the user, and when the user has an update requirement, the APP ecosystem generation application is started, and the update of the ecosystem is completed.
Utilization of APP ecosystems
How to utilize the ecosystem is described below in connection with practical applications, as shown in fig. 15.
Step 801, app monitors the use of the app by a user;
in this step, the APP monitors that the user uses the APP, e.g. the user opens the APP, the APP receives a command from the user, etc.
Step 802, judging whether a corresponding APP ecosystem exists in the terminal, if not, executing step 803, and if so, executing step 806;
in this step, when the APP detects that the user will use the APP, it is determined whether a corresponding APP ecosystem exists.
Step 803, sending an acquisition request to acquire an APP ecosystem;
in this step, the manner of acquiring the APP ecological system is similar to the manner of acquiring the APP ecological map described above, and specifically, the APP ecological map in the method of acquiring the APP ecological map described above is replaced with the APP ecological system.
When the APP ecosystem is adjusted to meet the user attribute requirement, if APP1 is used for replacing the APP in the APP ecosystem, the corresponding slot of the directed edge is replaced by the corresponding slot.
Step 804, judging whether an APP ecosystem is received, if yes, executing step 806;
in this step, when the APP ecosystem is received, a step of utilizing the APP ecosystem is performed.
Further, if the APP ecosystem is not received, step 805 is executed to initialize the APP ecosystem;
in this step, the APP ecosystem is initialized in the same manner as described above for the APP ecosystem generation method.
In another embodiment, before executing step 805, a confirmation message is sent to the user to make the user confirm whether to execute step 805, if the user chooses to execute step 805, the APP ecosystem generating application is triggered to execute step 805, and if the user chooses not to execute step 805, the user interacts with the APP in a manner that is conventional.
Step 806, obtaining a voice command of a user;
in this step, the APP obtains the voice command of the user.
Step 807, judging whether the corresponding task can be executed according to the voice command of the user, if so, executing step 808; if not, go to step 810;
in the step, the voice command of the user is analyzed, the task corresponding to the voice command is determined to be executed, the slot of the task is filled, and whether the task can be executed or not is judged based on the filling of the slot.
Step 808, executing the task, and acquiring the slot positions of the arrow tail pointing to the directional edge of the APP according to the APP ecological system, wherein the slot positions are the same as the slot positions filled by executing the task or have the same attribute; step 809 is performed;
In the step, the APP identifies the slot of the directed edge associated with the APP ecological system according to the slot filled by the execution task, and if the directed edge points to another APP, the slot filled by the APP execution task is identical to the slot of the directed edge or has the same attribute, and the slot of the directed edge is acquired.
Step 809, adding a tag to the slot of the directed edge, where the tag indicates a slot content update time corresponding to the slot of the directed edge; and (5) ending.
Specifically, when the slot filled by the execution task is the same as the slot of the directed edge associated with the APP, adding a timestamp to the slot, wherein a plurality of timestamps may be included to indicate different times when the slot is filled;
preferably, when the slot content of the relevant slot is not changed by the APP execution task for many times, the latest time stamp of filling the slot content is reserved, and further, if the time stamp is greater than or equal to the deletion time from the current time interval, the corresponding time stamp is deleted.
By adding a timestamp, the APP is facilitated to identify whether to call the slot content of another APP associated with the slot of the directed edge, and can identify which APP it calls based on time.
Step 810, when it is determined in step 804 that the APP ecosystem is received, step 811 is performed; if it is determined in step 802 that the terminal has a corresponding APP ecosystem, step 812 is executed;
Step 811, interacting with a user to obtain the content of unfilled slots which must be filled for executing a task; and performs step 808;
in the step, the APP ecological application is judged to be not started, and the probability of acquiring effective information is low, so that the task is executed in a common mode.
Step 812, querying the APP ecosystem, identifying one or more second APPs which are established with the APP, have directional side arrows pointing to the APP, and have directional side slots which are the same as or have the same attribute as the unfilled slots;
in this step, it is confirmed that the APP ecosystem has been previously enabled by the user, and then the slots may be filled according to the system query related information.
Step 813, filling unfilled slots in the APP based on the identified one or more APPs; step 814 is performed;
in one embodiment, tag information of the slots of the directed edges between the one or more APP and the APP is obtained, an information source APP is determined based on the tag information, the content of the slots identical to the slots of the directed edges is obtained from the information source APP, and the content of the slots is filled into the corresponding slots which are not filled by the APP;
in one embodiment, in this step, it is determined whether it is possible to obtain, based on the interaction procedure of the user with the APP, the slot content that the user intends to fill is the slot content related to which feature, if it is possible to determine, the corresponding slot content of the APP corresponding to the feature is preferentially invoked, and if it is impossible to determine, the invoked APP is selected based on a certain rule.
Wherein the features include one or more of the following: time information, APP information, slot information, etc.
And when a plurality of APP corresponding to the feature exist, selecting an information source APP based on a certain rule, and when one APP corresponding to the feature exists, selecting the slot position content filling corresponding to the APP.
The certain rule may be:
selecting an APP with a weight coefficient larger than a preset value based on weight screening of the directed edge between the APP and the information source APP, and further selecting an information source based on labels of slots of the directed edge, for example, the APP with the timestamp of the nearest time in the labels;
step 814, determining whether the task corresponding to the voice command of the user can be executed, if yes, executing step 808, and if not, executing step 811.
Further, the method comprises the following steps of:
step 815, judging whether the slot filling is accurate, if yes, executing step 816, otherwise, executing step 817;
step 816, increasing the weight coefficient of the directed edge between the APP executing the command and the information source APP in the APP ecosystem;
step 817, obtain the slot position content corrected by the user, judge whether the slot position content corrected is the same as the slot position content filled by APP in APP ecosystem, if so, when there is a directed edge between APP executing the command and APP with the same slot position content, then increase the weight of the directed edge, judge whether the slot position of the information source APP called the slot position content is the slot position of the directed edge, if not, then increase the slot position as the slot position of the directed edge, if not, then establish the directed edge, and set the slot position calling the slot position content as the slot position of the directed edge.
The method can realize flexible information transfer between the APPs, and the APP ecosystem can be updated at any time, and any APP using the APP ecosystem can be used for updating, thereby strengthening the information transfer path between the APPs, and through the ecosystem, the terminal can realize effective information transfer without adding a monitor to monitor the use of the APP, thereby improving the user experience and enhancing the intelligence of the interaction between the APP and the user.
The present invention also provides an APP ecosystem generating apparatus, see fig. 16, for initializing an APP ecomap and an APP ecosystem, comprising:
the monitoring module is used for monitoring interaction between a user and the APP;
specifically, in the step, a monitoring module monitors interaction between a user and an APP in real time, and records an interaction process between the user and the APP;
or,
and acquiring a log of the user using the terminal at a preset time interval, wherein the log comprises interaction information of the user and each APP, and acquiring a record of the user interaction with the APP from the log, wherein the record comprises time information of the user interaction with the APP. The generation module is used for acquiring and storing the continuously used APP names and the sequence of using the APP;
The generation module monitors the interaction scene between the user and the APP in real time, monitors the state change of the APP in real time, and determines the APP used continuously and the sequence of use according to the state change of the APP and the corresponding time information.
And for the log of the user using terminal at a preset time interval, acquiring a recorded scene of the user interaction with the APP from the log, and acquiring whether the time interval of the user using the two APPs is smaller than a preset continuous time interval or not by the generating module according to the recorded information of the user interaction with the APP, if so, determining that the two used APPs are the continuous use APPs, otherwise, determining that the two used APPs are not the continuous use APPs.
In another embodiment, the generation module stores the acquired continuously used APP, and further stores the acquired continuously used APP in an APP pair manner.
The judging module is used for judging whether information transmission or information transmission requirements exist between the continuously used APPs; if yes, the trigger generation module establishes a directed graph among the APPs, and if not, the trigger generation module deletes stored APP pairs without information transmission or information transmission requirements.
Specifically, for a scenario in which interaction between a user and an APP is monitored in real time, the judging module judges whether information transmission or a requirement for information transmission exists between APPs used continuously, including the following steps:
Judging whether a calling relationship exists between the APPs, if so, information transmission or information transmission requirements exist between the APPs.
Or judging whether the same slot position content is filled into slots when the continuously used APP executes tasks, if so, determining that information transmission or information transmission requirements exist between the APPs.
Further, if the slot contents are different, judging whether the continuously used APP has the same slots or has the same attributes, if so, determining that information transmission or information transmission requirements exist.
For the log of the user terminal at a preset time interval, a judging module acquires the recorded scene of the interaction between the user and the APP from the log, judges whether the slots called when the continuously used APP executes the task are filled with the same slot content according to the information of the interaction between the user and the APP recorded in the log, if yes, determines that the continuously used APP has the information transmission or information transmission requirement, if not, judges whether the continuously used APP has the slots with the same or the same attribute, and if yes, determines that the continuously used APP has the information transmission or information transmission requirement.
The generation module is used for establishing a directed graph among the APPs according to the sequence of using the APPs by the user and/or the calling relationship among the APPs;
Generating module establishes directed graph between APP for continuous use of information transmission or information transmission demand, specifically, uses APP pair for information transmission or information transmission demand as data source for establishing directed graph between APP, and constructs directed graph between APP according to APP pair stored format, wherein APP in front of APP pair is starting point of directed graph, and APP in back is terminal of directed graph.
The generating module is also used for executing actions corresponding to the trigger messages according to the trigger messages sent by the other modules;
the generation module is also used for generating an APP ecological map according to the directed maps among the APPs.
In another embodiment, the APP ecological map generating apparatus further performs the following method:
the monitoring module is used for detecting the behavior of the voice assistant;
the monitoring module monitors the behavior of the voice assistant in real time, such as the interaction behavior of the voice assistant with the user, or the behavior of the APP is invoked by the voice assistant when the voice assistant performs a specific task.
The generation module acquires and stores APP names which are continuously called when the voice assistant executes the task and the sequence of calling the APP.
The mode of the generation module for storing the continuously called APP names is the same as the mode of storing the continuously used APP names, and the APP names are stored in an APP pair mode.
The judging module is used for judging whether information transmission or information transmission requirements exist between the continuously called APPs; if yes, the trigger generation module establishes a directed graph between the APPs; if not, triggering the generation module to delete the stored APP pair without information transmission or information transmission requirements;
the generation module is also used for establishing a directed graph among the APPs according to the sequence of continuously calling the APPs; generating an APP ecological map according to the directed graph among the APPs
The generation module deletes stored APP which is not required to be transmitted by information or is continuously called by the information transmission according to the triggering message;
in another embodiment, the generating module sets a weight coefficient for the directed edge, the magnitude of the weight coefficient representing the magnitude of the probability of information transfer between two APPs to which it is connected. When the directed edges of the directed graph are initially established between the APPs, the weight coefficients are all the same value.
Before the generation module establishes the directed graph among the APPs, the following steps are executed:
step 241, judging whether a directed graph exists between the APPs, if so, executing step 242; if not, go to step 244;
step 242, determining whether the direction of the directional edge to be established is the same as the direction of the existing directional edge, if so, executing step 243, and if not, executing step 244;
Step 243, increasing the weight coefficient of the directional edge in the same direction as the direction;
step 244, establishing a directed edge with a new direction;
step 245, establishing directed edges between the APPs.
In another embodiment, the generation module is further configured to perform the following steps before the detection module performs its detection function:
step 01, acquiring an APP name installed by a terminal;
step 02, classifying the APP according to functions, grouping the APP with the same or similar functions into a cluster, and forming one or more APP clusters; wherein the APP cluster comprises one or more APPs;
further, when an APP has multiple functions, it can be cross-partitioned, i.e., into multiple clusters, where the APP belongs to an intersection of multiple APP clusters.
Preferably, for APP with multiple functions, the clustering can be optimized in combination with the usage habit of the user, and the clustering is preferentially performed according to the usage habit of the user.
In another embodiment, the detection module detects that a new APP is installed in the terminal, or detects that there is an APP ecological map in the terminal or an APP that is not included in the APP ecological system, the trigger generation module adds the APP to an APP cluster corresponding to the APP function, and in addition, the detection module detects use of the new APP by a user, where the detection operation may be performed when the new APP is started or used by the user, by sending a trigger message to the detection module.
Further, the detection module detects whether information obtained from other APP is correct, if so, the trigger generation module updates the corresponding APP ecological map or APP ecological system or slot information association relation, the generation module establishes a new APP and a directed edge corresponding to the information source APP, if so, the trigger generation module judges whether the directed edge can be updated based on user correction information, if so, the corresponding directed edge is updated, and if the directed edge cannot be established, the detection module continues to detect the use of the APP by a user.
Preferably, the detection module starts the detection function based on a certain rule, for example, periodically, or according to a user setting, or when an event is triggered, for example, after the generation module clusters for a new APP, a message is sent to the APP, or when the detection module detects the new APP, a message is sent to the APP, where the message carries a message indicating that the APP does not establish a directed edge with other APPs, and after the new APP receives the message, when the new APP starts or is used by the user, a message is sent to the detection module, so as to trigger the detection of the use of the APP.
In another embodiment, the judging module judges whether the terminal has an APP ecological map, if not, the APP ecological map generating device is triggered to initialize the APP ecological map, and the detecting module is triggered to execute the detecting function; if so, ending.
The judging module judges whether the terminal has an APP ecological map, wherein the APP ecological map can be stored in the terminal locally or in a cloud server.
Further, the device comprises a storage module for storing information such as the APP ecological map and the like.
The judging module firstly inquires whether the APP ecological map is stored locally in the terminal, if yes, the judging module is ended, if not, the triggering generating module sends an APP ecological map acquisition request to the cloud server, receives a response message corresponding to the request returned by the cloud server, judges whether the response message carries the APP ecological map, and if not, triggers the APP ecological map generating device to initialize the APP ecological map; if the portable terminal is carried, ending.
The generation module sets a corresponding relation between the terminal and the APP ecological map, wherein the corresponding relation can identify the corresponding ecological map through a unique identifier of the terminal, the unique identifier can be information of unique identifiers of the terminal such as IMEI of the terminal or user identifiers of the terminal, and the unique identifier of the user identifies a user.
In another embodiment, the APP ecosystem generating device is further configured to establish an association relationship of slot information.
The establishment of the slot information association relationship can be established after the generation of the APP ecological map, can be established synchronously with the APP ecological map, or can be generated independently of the APP ecological map. The method comprises the following steps:
If the judging module judges that information transmission or information transmission requirements exist between the APPs, the generating module is further used for executing the following steps:
if there is a call relationship between the APPs, acquiring a slot position of the APP which is used by the called APP and is used before, and setting the slot position as a slot position with a directed edge;
if slots filled with the same slot content exist among the APP, setting the slots filled with the same slot content in advance as slots with directed edges, and determining the direction of the directed edges as the direction from the APP filled with the same slot content in advance to the APP filled with the same slot content in later;
if the slot contents are different and the slots with the same or same attribute exist, the slots with the same attribute of the same slot or the APP used in the future of the prior APP are set as slots with a directed edge.
Further, after the slots of the directed edges are established, when the APP ecological map is updated or a new APP ecological map is generated based on the existing APP ecological map, the slots of the directed edges are updated along with the corresponding directed edges, for example, when the directed edges are deleted, the corresponding slots are also deleted.
In another embodiment, another method for establishing a slot information association relationship is provided:
The detection module is used for executing a detection function and detecting interaction between a user and the APP;
in this step, the initiation of the detection function is based on certain rules as described above, such as periodically, or according to user settings, or upon event triggering, as exemplified in the above embodiments.
In one embodiment, the event triggering further comprises the following manner
The APP receives a command of a user; wherein the APP receives a user's command, indicating that the user will use the APP; the command can be a voice command or other commands, the APP judges whether the establishment completion mark of the slot information association relation is true, if yes, a message triggering the start of the APP ecosystem to generate the application is not sent, and if not, whether the APP ecosystem to generate the application is started is further judged; if the application is started, the APP does not send a message for enabling the application to be started to the APP ecosystem generation application, and if the application is not started, the APP ecosystem generation application is sent a message, the start of the application is triggered, and the detection module is triggered to execute a detection function.
The device comprises a storage module, a detection timer, a trigger generation device, a channel information association relation establishment completion identification, a storage module and a detection control module, wherein the storage module is used for identifying whether the association relation is established or not, the detection timer is arranged in the device, when the time of the detection timer is longer than the detection completion time, the trigger generation device is triggered to set the identification as true, otherwise, the detection timer is set as false, and the detection timer can be reset according to the requirement of a user.
The detection module is also used for detecting interaction between a user and all used APP;
the detection module detects interaction between a user and all the APPs, and detects tasks executed by the APPs, filled slots and filled slot contents when the tasks are executed.
The generating module is used for acquiring and storing the slot positions filled when the APP executes the task, the slot position content and the time for filling the slot position content;
the judging module is used for judging whether the user has interaction with the APP or not, if so, the triggering detecting module is used for detecting the interaction between the user and all the used APP; if not, judging whether the filled slots and the filled slot content information are stored when a plurality of APP execute tasks, and if not, triggering a closing module to close or sleep the device; if so, judging whether information transmission or information transmission requirements exist between the APPs, and if so, triggering a generation module to take the slot with the information transmission or information transmission requirements as a public slot between the APPs;
the generating module is further configured to query the information stored in the storage module, determine whether related information of a plurality of APPs is stored, if yes, establish an association relationship of slot information based on the stored information, and if no, fail to establish the association relationship based on the currently stored information.
The closing module is used for closing or dormancy of the device according to the trigger message;
further, if it is determined that there is no information transfer or information transfer requirement between the APPs, ending.
Specifically, the judging module judges whether information transmission or information transmission requirements exist between the APPs or not, and the judging module comprises the following steps:
step 2071, judging whether the time interval of any two or more stored APP filling slot contents is smaller than a predetermined continuous time interval, if yes, executing step 2072, if no, executing step 2074;
step 2072, dividing the APP meeting the condition into a group; judging whether any two or more APP in each group fill the same slot position content or not based on the stored information; if yes, go to step 2073;
step 2073, the trigger generation module takes the slot previously filled with the same slot content as a public slot;
step 2074, judging whether the filling time of the slot position content in the stored information and the current time interval are greater than or equal to the deleting time, if yes, triggering the generating module to delete the item content corresponding to the filling time, and if not, ending.
Wherein the deletion time is greater than a predetermined continuous time interval.
In the step, the information with longer storage time is screened and deleted, so that the storage space can be effectively saved, and the resource waste is reduced.
In another embodiment, the generating module is further configured to set a weight coefficient for the common slot, where the default weight coefficients are the same when the common slot is initially established.
Further, before the generating module determines the public slot, judging whether the slot is set as the public slot between the APPs, if so, increasing the weight coefficient of the public slot; if not, the public slot is established;
in another embodiment, the generating module sets the weight coefficient w for the common slot ij Indicating that the common slot will be APP i Is transmitted to APP j Weight coefficient of (C), similar w ji Indicating that the common slot will be APP j Is transmitted to APP i Weight coefficient of (c) in the above-mentioned formula (c).
Wherein the weight coefficient increases or decreases in step size of Deltaw.
In another embodiment, the generation module stores slot content corresponding to the same common slot in a matrix.
Before the device establishes the slot information association relationship, the generation module clusters the APP according to functions, as shown in the description. The detection module detects that the terminal installs a new APP, the trigger generation module adds the new APP into an APP cluster corresponding to the function of the new APP according to the function of the APP, and sends a message to the APP, wherein the message indicates that when the APP detects that a user uses the new APP, the detection function of the detection module is triggered. Further, the detection module detects whether the new APP acquired information is correct, if so, the trigger generation module establishes a public slot for the new APP and the information source APP, if so, the trigger generation module judges whether the public slot can be established based on the user correction information, if so, the corresponding public slot is established, and if not, the trigger generation module ends.
The association relation of the slot information can be generated based on the APP ecological map, and when the generation module adjusts the APP ecological map, the association relation of the slot is adjusted adaptively, or the APP ecological map is adjusted based on the association relation of the slot information. Correspondingly, after the general APP ecological map is generated, the general slot association relationship can be formed by adopting the method, so that the general APP ecological system is formed.
Sharing of APP ecological maps and generation of general APP ecological maps
In another embodiment, a general APP ecosystem generating device is provided, for generating and sharing a general APP ecomap, as shown in fig. 17, the device includes:
the acquisition module is used for acquiring the APP ecological map;
the acquisition module can acquire the APP ecological map by receiving the APP ecological map actively uploaded by the user or send requests to a plurality of users so as to acquire the APP ecological map of the users and acquire attribute information of the users, such as favorites, ages, social groups and the like, related to the users.
The classifying module is used for classifying the APP ecological map to form an APP ecological map cluster;
and classifying the acquired APP ecological maps by a classification module according to the user attributes, and classifying the APP ecological maps with the same user attributes into a group.
And the training module is used for training the APP ecological graphs in the APP ecological graph clusters to form a general APP ecological graph corresponding to the user attributes.
The training module is specifically configured to perform the following steps:
step 3031, obtaining APP included in a plurality of APP ecological maps in a cluster;
step 3032, adding the same label to a plurality of APP with the same or mutually replaceable functions;
step 3033, fusing the APP ecological maps to form a general APP ecological map;
in this step, APP having the same tag is grouped into a group, called APP group; replacing the APP corresponding to the APP group in the plurality of APP ecological maps by the APP group; according to directed graphs among the APP and/or APP groups in the APP ecological graphs, establishing the directed graphs among the APP and/or APP groups included in the APP ecological graphs, and superposing the weight coefficients of the directed edges among the same APP or APP groups in the APP ecological graphs to form the weight coefficients of the directed edges in the general APP ecological graph.
Step 3035, the general APP ecological map is stored in the storage module.
In this step, the generic APP ecological map is stored in a storage module of the server.
In one embodiment, the user attributes corresponding to the generic APP ecological map are used as an index to store the corresponding generic APP ecological map.
In another embodiment, after step 3033, the method further comprises the steps of:
step 3034-1, deleting the directed edges with the weight coefficients lower than the lowest weight coefficient in the fused APP ecological map;
step 3034-2, judging whether an isolated APP or APP group exists, if so, deleting the APP or APP group to generate a simplified general APP ecological map;
step 3034-3, the reduced APP ecological map is stored in a storage module.
In the step, the simplified APP ecological map is stored corresponding to the corresponding user attribute.
The above steps 3034-1 to 3034-3 may be performed before step 3035 or after step 3035.
In one embodiment, the device is adopted to generate a general or reduced general APP ecological system, specifically, the APP ecological map is replaced by the APP ecological system in the method steps executed by the device, wherein the formation of the directed edge slot positions in the general or reduced general APP ecological system is synchronously updated and fused with the directed edge, namely, the same directed edge slot positions are updated in an 'adding' mode.
In another embodiment, the user obtains the general APP ecological map or the simplified general APP ecological map before generating the user-specific APP ecological map, so that the APP ecological map training speed can be improved.
In addition, the user usually has a plurality of terminals, and there is a demand for APP ecological map sharing between the terminals of the user, where when the terminal currently used by the user does not have an APP ecological map, an ecological map acquisition request is preferentially sent to other terminals to acquire the APP ecological map, and if no response from the other terminals is received, the APP ecological map is acquired to other users or the cloud server.
In one embodiment, the APP ecosystem generating device is further configured to obtain an APP ecological map, and the device further includes:
the acquisition module is used for sending an APP ecological map acquisition request to other terminals of the user;
when the terminal does not have the APP ecological map, the terminal preferentially sends an acquisition request to other terminals of the user so as to acquire the APP ecological map specific to the user.
The acquisition module judges whether an APP ecological map is obtained or not based on the received response; if yes, ending, if not, sending an APP ecological map acquisition request to friends with the same attribute as the user;
the acquisition module judges whether to acquire an APP ecological map from friends based on the received response, if not, an APP ecological map acquisition request is sent to a general APP ecological system generation device, and the acquisition request carries attribute information of a user; if yes, the trigger generation module identifies the APP contained in the terminal and adjusts the APP ecological map;
Step 405, an APP ecological map acquisition request is sent to a cloud server, wherein the acquisition request carries attribute information of a user;
after receiving the APP ecological map acquisition request sent by the acquisition module, the general APP ecological system generation device executes the following steps:
an acquisition module for receiving an APP ecological map acquisition request sent by the terminal,
the training module is used for determining an APP ecological map meeting the attribute requirements of the user based on the attribute information of the user carried by the request; the APP ecological map may be a general and/or reduced general APP ecological map.
The acquisition module is used for transmitting a response message to the terminal of the user, wherein the response message carries the APP ecological map meeting the attribute requirements of the user;
further, when the attribute information of the user includes a plurality of user attributes, the training module preferentially selects the general APP ecological map meeting the most user attributes as the APP ecological map meeting the user attribute requirements;
in another embodiment, when the attribute information of the user includes a plurality of user attributes, the training module acquires a minimum union of the user attributes of the general APP ecological map included in the minimum union based on the user attributes, and the union of the user attributes of the general APP ecological map is the same as the user attributes in the attribute information of the user carried in the APP ecological map acquisition request.
Fusing the minimum union of the universal APP ecological graphs, and taking the fused APP ecological graphs as the APP ecological graphs meeting the user attribute requirements; wherein the fusion method is the same as the fusion method of step 3033.
In another embodiment, the APP ecological map acquisition request carries capability information of the terminal, where the capability information includes storage capability of the terminal;
the training module judges whether the terminal has the capability of storing the APP ecological map meeting the user attribute requirements according to the storage capability of the terminal, if so, the acquisition module sends a response message to the terminal of the user, the response message carries the APP ecological map meeting the user attribute requirements, if not, the simplified general APP ecological map meeting the user attribute requirements is determined based on the attribute information of the user carried by the request, and further judges whether the terminal has the capability of storing the APP ecological map meeting the user attribute requirements according to the storage capability of the terminal, if the terminal does not have the capability of storing the APP ecological map meeting the user attribute requirements, the acquisition module is triggered to send a response message to the user, and the response message carries the reason of failure in acquiring the APP ecological map.
The acquisition module is used for receiving a response message sent by the universal APP ecosystem generation device; if the response message carries the APP ecological map, triggering the generation module to identify the APP application included in the terminal, and if the response message carries the cause of failure in acquiring the APP ecological map and the cause is insufficient storage space, sending the APP name installed by the terminal to the universal APP ecological system generation device so that the cloud server generates the APP ecological map suitable for the terminal;
Further, after the general APP ecological system generating device receives the message sent by the acquisition module, the APP ecological map meeting the user attribute requirements is adjusted based on the APP installed by the terminal, wherein the APP ecological map meeting the user attribute requirements is generated based on the general APP ecological map.
The specific steps for adjusting the APP ecological map and the general APP ecological system generating device to adjust the APP ecological map meeting the user attribute requirements are as follows:
based on the APP installed by the terminal, the generation module or the training module identifies the APP which is not included in the terminal in the APP ecological map, and marks the APP as APP1, and the APP which is not included in the APP ecological map in the terminal, marks the APP as APP2, judges whether the APP2 includes a substitute APP with the same function as the APP1, if so, replaces the APP in the corresponding APP1 with the APP with the same function in the APP 2; if not, deleting the APP1 and the directed edge connected with the APP1 in the APP ecological map, setting the APP3 which is not added to the APP ecological map in the APP ecological map by using an isolated node, and further placing the APP3 in a cluster corresponding to the function in the APP ecological map.
After the general APP ecological system generating device generates an APP ecological map suitable for the terminal, the acquisition module sends the APP ecological map to the acquisition module of the APP ecological system generating device.
And the acquisition module of the APP ecological system generation device triggers the storage module to store after receiving the APP ecological map.
Further, when the judging module judges that the storage space of the storage module is insufficient, a prompt is sent to the user, so that the user deletes some information to enable the terminal to meet the storage space.
In another embodiment, there is also provided a device for voice interaction, as in fig. 18, the device comprising:
the receiving and transmitting module is used for acquiring a voice command input by a user;
the execution module is used for executing the following steps:
step 502, judging whether the voice command of the user can be executed; if not, obtaining the unfilled slot of the APP execution voice command, and executing step 503;
step 503, invoking an APP ecological map, and obtaining candidate APP which has a directional edge with the APP executing the voice command and points to the APP executing the voice command in the direction of the directional edge;
the execution module analyzes the voice command of the user and fills the key information into the slot of the task corresponding to the voice command.
Further, if the execution module can execute the voice command of the user, the corresponding action is executed according to the voice command.
Specifically, after the execution module calls the APP ecological map, it is determined whether the APP executing the voice command has a directed edge associated with the APP ecological map and having a directed edge direction directed to the APP executing the voice command, and if so, candidate APPs having a directed edge with the APP executing the voice command and having a directed edge direction directed to the APP executing the voice command are further extracted. If the APP has no directed edge meeting the above conditions, judging whether the APP belongs to a certain cluster, if the APP does not belong to the certain cluster, adding the APP into the APP cluster corresponding to the function according to the function of the APP, when the APP belongs to the certain cluster, acquiring APPs at the other ends of the directed edges of other APPs associated with other APPs belonging to the same cluster, further judging whether the APP at the other ends has a slot position of the unfilled content or a slot position with the same attribute as the slot position, if the APP has the slot position of the unfilled content or the APP at the other ends of the slot position with the same attribute as the slot position is taken as a candidate APP, otherwise, executing step 505.
After step 502, before step 503, the execution module is further configured to execute the following steps:
step 5031, judging whether the storage module of the device stores an APP ecological map, if so, executing step 503; if not, go to step 5032;
step 5032, triggering a transceiver module to send an APP ecological map acquisition request;
the receiving and transmitting module sends an APP ecological map acquisition request to the cloud server or the universal APP ecological system generation device, and further, the acquisition request comprises an identifier of the terminal, wherein the identifier is used for identifying an APP ecological map corresponding to the terminal.
The cloud server or the universal APP ecological system generating device queries the corresponding APP ecological map based on the identification, sends the queried APP ecological map to the receiving-transmitting module, judges whether the queried APP ecological map is available or not if the queried APP ecological map is not available, if yes, sends the universal APP ecological map to the receiving-transmitting module, and otherwise, sends a failure response message to the receiving-transmitting module.
Step 5033, the execution module judges whether an APP ecological map is acquired or not based on the message received by the transceiver module; if not, triggering an APP ecological system generation device to initialize an APP ecological map, and executing step 505; if yes, go to step 503;
preferably, in step 5033, the execution module further performs the following steps before performing step 503:
Step 5034, judging the type of the APP ecological map, and if the APP ecological map is the APP ecological map corresponding to the terminal, executing step 503; if the APP ecological map is a general APP ecological map, step 5035 is executed;
step 5035, adapt the generic APP ecological map to an APP ecological map consistent with the terminal-installed APP, and execute step 503.
In this step 503, based on the invoked APP ecological map, an APP that establishes an association with the APP that executes the voice command may be queried, and further, the APP that establishes an association with the APP that executes the voice command is extracted from the direction of the directed edge according to the direction of the directed edge.
In another embodiment, in step 503, it is further determined whether the extracted APP has a slot of the unfilled content or a slot having the same attribute as the slot, if so, the extracted APP is used as a preliminary selected APP, the preliminary selected APP is a candidate APP, otherwise, step 505 is performed.
Further, candidate APPs may be selected based on the weight coefficients of the directed edges, with the initially selected APP having a weight coefficient greater than a threshold value being the candidate APP.
In another embodiment, in the APP ecological map, a time stamp corresponding to the APP is further included, the time stamp indicating a time when the APP was most recently used. The execution module sorts the primary selected APP according to the time stamp, acquires the primary selected APP with the latest time closest to the current time as a candidate APP, or sorts the primary selected APP screened by the weight coefficient according to the time stamp, screens the primary selected APP with the latest time closest to the current time as the candidate APP, wherein the candidate APP can be one or more, and the union of the candidate APP is the minimum APP set comprising the slots needing to be filled.
In another embodiment, the execution module may adjust the screening order of the factors when determining candidate APPs based on the factors, such as selecting a plurality of APPs based on a time ordering and then selecting based on a weight coefficient to determine candidate APPs.
After the execution module determines the candidate APP, step 504 is executed.
Step 504, extracting the content related to the unfilled slot from the candidate APP, and filling the content into the slot corresponding to the APP; step 506 is performed;
in the step, after the candidate APP is determined, the slots which are filled by the candidate APP and have the same properties or the same properties as the slots of the unfilled slot contents when the candidate APP executes the tasks before the candidate APP are acquired, and the slot contents related to the latest executed task are preferentially selected as the slot contents of the unfilled slots based on the time sequence of the candidate APP for executing the tasks related to the acquired slot contents.
In step 505, the execution module fills the slot based on the current state of the user, or initiates multiple rounds of dialogue to the user, to obtain the slot content to be filled. Step 506 is performed.
Further, the execution module is further configured to execute step 506 to execute the task corresponding to the voice command.
In another embodiment, the device for voice interaction is further configured to perform the following interaction method:
The receiving and transmitting module is used for acquiring a first voice command input by a user;
the execution module is used for executing the following steps:
step 602, filling slot position contents corresponding to APP according to a first voice command;
the execution module analyzes the voice command, extracts key information and fills the slot position content.
Step 603, calling an APP ecological map, and obtaining another one or more APPs which have directed edges with the APP and the arrow tail of the directed edge points to the APP;
after the execution module calls the APP ecological map, the execution module also judges whether a first APP executing the first voice command has a directed edge associated with the first APP in the APP ecological map, namely whether the first APP is an orphan point, if so, the first APP has the directed edge, and the arrow tail of the directed edge points to another APP or a plurality of APP of the APP; if not, adding the function to the APP cluster corresponding to the function according to the function.
Similarly, after step 602, before step 603, steps 5031 to 5035 are performed, and accordingly, step 502 in steps 5031 to 5035 is replaced with step 602, step 503 is replaced with step 603, and step 505 in step 5033 is performed with the end.
Step 604, pushing the filled slots and slot contents to the another one or more APP;
In one embodiment, slots and slot content are pushed to all other APPs having directed edges with the APP, with the directional edges pointed at the APP's arrow tails;
in another embodiment, the weight coefficient of the directed edge connected with the APP is selected to be larger than the threshold, and the arrow tail of the directed edge points to other APP of the APP, so that the slot position and the slot position content are pushed to the selected APP.
In another embodiment, it is determined whether the other APP or APPs have slots that are the same or have the same attributes as the filled slots, and if so, pushing the same or same attributes of slots and corresponding slot content.
Further, the device also comprises a detection module for detecting the use of the second APP by the user; when the user is judged to use the second APP, triggering the transceiver module to acquire a voice command input by the user;
the receiving and transmitting module is also used for acquiring a second voice command input by a user;
the execution module is further used for executing the following steps:
step 607, judging whether the slots required for executing the second voice command are all filled with content, if not, executing step 608; if yes, go to step 610;
step 608, calling the pushed slot and the slot content, judging whether the pushed slot content can fill the slot required by executing the second voice command in the APP, if so, filling the slot by using the slot content, judging whether the voice command can be executed, if so, executing step 610, and if not, executing step 609; if not, go to step 609;
Step 609, performing multiple rounds of dialogue with the user to obtain the content corresponding to the slot to be filled; step 610 is performed;
step 610, executing the task corresponding to the voice command.
Further, the step 608 specifically includes the following steps:
step 081, obtaining unfilled slots in slots required to be filled by the task related to the second voice command;
step 082, judging whether the pushed slot is the same as the slot to be filled or has the same attribute; if yes, go to step 083, if not, go to step 609;
step 083, filling the corresponding unfilled slots by using the pushed slot contents;
specifically, for each unfilled slot, determining whether there are multiple pushed slot contents available for filling the slot, if not, filling the corresponding slot contents into the corresponding unfilled slot, and executing step 085; if yes, go to step 084;
step 084, screening slot position contents, and filling the unfilled slot positions with the selected slot position contents;
in one embodiment, the slot content with the highest weight coefficient of the directed edge associated with the slot content is selected for the unfilled slot filling content;
in another embodiment, the recently pushed slot content is selected for filling;
In another embodiment, the slot content with the directional edge weight coefficient greater than the threshold value associated with the slot content is used as the primary selection slot content, the primary selection slot content is ordered according to the pushing time, and the newly pushed primary selection slot content is selected to fill the unfilled slot.
Further, after step 084, the method further comprises the following steps:
step 085, judging whether the second voice command of the user can be executed; if yes, go to step 610; if not, go to step 609.
In another embodiment, after step 610, the execution module is further configured to perform the steps of:
step 507, after the second voice command of the user is executed based on the APP ecological map filling slot content, judging whether the voice command of the user is executed correctly, if yes, executing step 508; if not, go to step 509;
the APP ecosystem generating device or the executing module judges whether the command executed according to the filled slot position content is corrected by a user, if not, the information transmission is correct, and if so, the information transmission is wrong.
Step 508, adding a weight coefficient of a directed edge between the APP executing the command and the candidate APP with slot content utilization in the APP ecological map;
Wherein this step can also be performed by the APP ecosystem generating application.
Step 509, obtaining the corrected slot position content of the user, judging whether the corrected slot position content is identical to the pushed slot position content in the APP ecological map, if so, increasing the weight of the directed edge when a directed edge exists between the APP executing the command and the APP with the same slot position content, and if not, establishing the directed edge.
Further, the weight coefficient of the directed edges between the APPs with the information transmission errors is reduced, and if the reduced weight coefficient is 0 or a negative value, the directed edges between the APPs are deleted.
Further, this step may also be performed by the APP ecosystem generating device or the execution module.
In a further embodiment, the device for voice interaction is further configured to perform the following method steps:
the receiving and transmitting module is used for acquiring a first voice command input by a user;
the receiving and transmitting module detects and receives a voice command of a user and sends the voice command to the executing module, and the executing module analyzes the voice command to determine a corresponding first task.
The execution module is used for filling corresponding slots and public slots when the first APP executes a first task corresponding to the voice command according to the first voice command;
Specifically, when the execution module fills the slot position content, judging whether the filled slot position comprises a public slot position based on the established slot position information association relation, if so, filling the slot position corresponding to the first task in the APP and filling the slot position content into a public slot position content matrix;
alternatively, in another embodiment, if filling of the common slot is related to filling of the slot content by the execution module, the common slot is directly filled, the corresponding slot in the APP is not filled any more, and the common slot is directly called when the APP executes the task.
When the execution module fills the common slot content matrix, judging whether the matrix is a null matrix, if so, directly filling the first row of the matrix; if the matrix is a non-empty matrix, preferably, judging whether the difference value between the time filled by the time stamp column of the matrix and the current time is greater than or equal to the deleting time, if so, deleting the row corresponding to the time stamp, and if not, not executing the deleting operation; in addition, one row is added to the matrix, and the information related to the common slot related to the first voice command is filled into the newly added row of the matrix.
The receiving and transmitting module is also used for acquiring a second voice command input by a user;
the second voice command may be input to the first APP for the user or to the second APP;
The second APP may be installed after the slot information association relationship is established for the terminal, or may be an APP included in the slot information association relationship.
The execution module is further used for executing the following steps:
step 704, filling the slots of the APP executing the second task corresponding to the voice command according to the second voice command;
step 705, determining whether there are one or more unfilled slots that must be filled for executing the second task, if yes, executing step 706, if no, executing step 710;
step 706, inquiring the association relation of the slot information, judging whether the one or more slots which must be filled can use the common slot content matrix, if so, filling the slots which must be filled by using the common slot content matrix, and executing step 708, otherwise, executing step 709;
specifically, the step 706 includes the steps of:
step 7061, determining whether the APP executing the second task has one or more common slots with the same or the same attribute as the slot that must be filled, and if not, executing step 7062; if yes, taking the public slot as a public slot to be selected, and executing a step 7063;
step 7062, judging whether other APP in the cluster to which the APP executing the second task belongs has one or more public slots with the same attribute or the same attribute as the slot that must be filled, if so, taking the public slot as a public slot to be selected, and executing step 7063; if not, go to step 709;
Step 7063, preprocessing the slot content matrix of the to-be-selected public slot, deleting the row of the matrix corresponding to the filling time meeting the deleting time, screening the to-be-selected public slot with the slot content matrix not being a null matrix as a candidate public slot, and executing step 7064; if there is no common slot for which the slot content matrix is not a null matrix, then step 709 is performed;
step 7064, selecting slot contents meeting the conditions from the slot content matrix of the candidate public slots to fill the slots which need to be filled;
preferably, in the step, whether the slot content which is intended to be filled by the user is the slot content related to which feature can be obtained based on the interaction process of the user and the APP is determined, if so, the slot content corresponding to the feature is preferentially selected to fill the slot to be filled, and if not, the slot content is selected based on a certain rule.
Wherein the features include one or more of the following: time information, APP information, slot information, etc.
The certain rule may be one of the following:
selecting the slot position content of the latest filling time in the public slot position content matrix to fill the slot position which is required to be filled;
selecting a row with filling time meeting preset selection time in a public slot content matrix, and selecting a slot with the highest weight coefficient to fill the necessary slot based on the weight coefficient transferred between the source APP and the second APP;
Firstly, screening lines with weight coefficients higher than a preset weight coefficient based on the weight coefficients of information transmission between a source APP and a second APP in a public slot content matrix, and secondly, selecting slot contents with the latest filling time to fill slots which are required to be filled;
step 708, determining whether the task corresponding to the second voice command can be executed, if yes, executing step 710, otherwise, executing step 709;
step 709, interacting with the user to obtain the slot content of the slots that must be filled, and executing step 710;
step 710, executing the task corresponding to the second voice command.
In another embodiment, after the execution module performs step 710, the following steps are also performed
Step 711, judging whether the call of the common slot is accurate, if yes, executing step 712, otherwise, executing step 713;
step 712, adding a weight coefficient between the second APP corresponding to the common slot and the slot content source APP;
step 713, obtaining the corrected slot position content of the user, judging whether the corrected slot position content has the same slot position content in the slot position content matrix of the common slot position with the same attribute or the same slot position which has to be filled, if so, adding the corresponding weight coefficient between the second APP and the source APP, reducing the weight coefficient corresponding to the slot position of the wrong common slot position content, and if not, constructing the common slot position for the second APP and the source APP.
In another embodiment, the apparatus for voice interaction is further configured to perform the following method.
The detection module is used for monitoring the use of the APP by a user;
the judging module is used for judging whether the terminal has a corresponding APP ecosystem or not, and if not, triggering the receiving-transmitting module to send an acquisition request;
the receiving and transmitting module is used for sending an acquisition request to acquire an APP ecosystem;
the judging module is used for judging whether the APP ecosystem is received or not;
the means for voice interaction utilizes the APP ecosystem when it is received.
Further, if the APP ecosystem is not received, the judging module triggers a device for generating the APP ecosystem to initialize the APP ecosystem;
in another embodiment, before the device triggering the generation of the APP ecosystem initializes the APP ecosystem, the transceiver module sends a confirmation message to the user to confirm whether to perform the APP ecosystem initialization operation, if the transceiver module receives the user confirmation message, the APP ecosystem generating device is triggered to initialize the APP ecosystem, and if the transceiver module receives a message that the user does not perform the initialization, the triggering operation is not performed.
The receiving and transmitting module is also used for acquiring a voice command of a user;
The execution module is used for executing the following steps:
step 807, judging whether the corresponding task can be executed according to the voice command of the user, if so, executing step 808; if not, go to step 810;
step 808, executing the task, and acquiring the slot positions of the arrow tail pointing to the directional edge of the APP according to the APP ecological system, wherein the slot positions are the same as the slot positions filled by executing the task or have the same attribute; step 809 is performed;
step 809, adding a tag to the slot of the directed edge, where the tag indicates a slot content update time corresponding to the slot of the directed edge.
Specifically, when the slot filled by the execution task is the same as the slot of the directed edge associated with the APP, adding a timestamp to the slot, wherein a plurality of timestamps may be included to indicate different times when the slot is filled;
preferably, when the slot content of the relevant slot is not changed by the APP execution task for many times, the latest time stamp of filling the slot content is reserved, and further, if the time stamp is greater than or equal to the deletion time from the current time interval, the corresponding time stamp is deleted.
By adding a timestamp, the APP is facilitated to identify whether to call the slot content of another APP associated with the slot of the directed edge, and can identify which APP it calls based on time.
Further, when the judging module judges that the APP ecosystem is received, the executing module executes step 811; when the judging module judges that the corresponding APP ecological system exists in the terminal, the executing module executes step 812;
step 811, interacting with a user to obtain the content of unfilled slots which must be filled for executing a task; and performs step 808;
step 812, querying the APP ecosystem, identifying one or more second APPs which are established with the APP, have directional side arrows pointing to the APP, and have directional side slots which are the same as or have the same attribute as the unfilled slots; and step 813 is performed;
step 813, filling unfilled slots in the APP based on the identified one or more APPs; step 814 is performed;
in one embodiment, the execution module obtains tag information of the one or more APP and the slot of the directed edge between the APP, determines an information source APP based on the tag information, obtains the content of the slot identical to the slot of the directed edge from the information source APP, and fills the content into the corresponding slot not filled by the APP;
in one embodiment, the execution module determines whether the slot content that the user intends to fill is the slot content related to which feature can be obtained based on the interaction process of the user and the APP, if so, the corresponding slot content of the APP corresponding to the feature is preferentially called, and if not, the called APP is selected based on a certain rule.
Wherein the features include one or more of the following: time information, APP information, slot information, etc.
And when a plurality of APP corresponding to the feature exist, selecting an information source APP based on a certain rule, and when one APP corresponding to the feature exists, selecting the slot position content filling corresponding to the APP.
The certain rule may be:
selecting an APP with a weight coefficient larger than a preset value based on weight screening of the directed edge between the APP and the information source APP, and further selecting an information source based on labels of slots of the directed edge, for example, the APP with the timestamp of the nearest time in the labels;
step 814, determining whether the task corresponding to the voice command of the user can be executed, if yes, executing step 808, and if not, executing step 811.
Further, the execution module is further configured to update the APP ecosystem in real time, and execute the following steps:
step 815, judging whether the slot filling is accurate, if yes, executing step 816, otherwise, executing step 817;
step 816, increasing the weight coefficient of the directed edge between the APP executing the command and the information source APP in the APP ecosystem;
step 817, obtain the slot position content corrected by the user, judge whether the slot position content corrected is the same as the slot position content filled by APP in APP ecosystem, if so, when there is a directed edge between APP executing the command and APP with the same slot position content, then increase the weight of the directed edge, judge whether the slot position of the information source APP called the slot position content is the slot position of the directed edge, if not, then increase the slot position as the slot position of the directed edge, if not, then establish the directed edge, and set the slot position calling the slot position content as the slot position of the directed edge.
An embodiment of the present invention provides an apparatus including a processor and a memory storing computer instructions executable by the processor, which when executed by the processor, implement a method as described above.
Embodiments of the present invention provide a computer readable storage medium storing computer instructions for implementing a method as described above.
A terminal comprising an apparatus as described above.
Any combination of one or more computer readable media may be employed. The computer readable medium may be a computer readable signal medium or a computer readable storage medium. The computer readable storage medium can be, for example, but not limited to, an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or a combination of any of the foregoing. The computer readable storage medium may include: an electrical connection having one or more wires, a portable computer diskette, a hard disk, a Random Access Memory (RAM), a read-only memory (ROM), a flash memory, an erasable programmable read-only memory (EPROM), an optical fiber, a portable compact disc read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the foregoing. In this document, a computer readable storage medium may be any tangible medium that can contain, or store a program for use by or in connection with an instruction execution system, apparatus, or device.
Computer program code for carrying out operations of the present invention may be written in one or more programming languages, or combinations thereof
The above description is only an example for the convenience of understanding the present invention, and is not intended to limit the scope of the present invention. In the specific implementation, the person skilled in the art may change, increase, decrease the components of the apparatus according to the actual situation, and may change, increase, decrease or change the order of the steps of the method according to the actual situation on the basis of not affecting the functions implemented by the method.
While embodiments of the invention have been shown and described, it will be understood by those skilled in the art that: various changes, modifications, substitutions and alterations can be made to these embodiments without departing from the principles and spirit of the invention, the scope of which is defined by the claims and their equivalents, and modifications which are not to be construed as being within the scope of the invention.

Claims (6)

1. A voice interaction method is characterized in that
Step 801, monitoring the use of APP by a user;
step 802, judging whether a corresponding APP ecosystem exists in the terminal, if not, executing step 803, and if so, executing step 806;
In the step 802, when the APP detects that the user will use the APP, determining whether a corresponding APP ecosystem exists;
step 803, sending an acquisition request to acquire an APP ecosystem; the APP ecological system comprises an association relation of slot position information and an APP ecological map;
an APP ecological map is a directed map among a plurality of APPs established according to interactivity among the APPs;
the directed graph between the APPs comprises nodes and directed edges, wherein the nodes represent the APPs, the directed edges represent the sequence of using the APPs by a user or the calling sequence between the APPs, and the arrows of the directed edges point to the APPs which are used or called later;
the association relation of the slot information refers to the association relation of slots with the same information transmission or the same attribute among a plurality of APP which are established according to the APP ecological map or according to the information transmission among the APP or the information transmission requirements;
the slot positions of the directed edges refer to slot positions with the same or same attribute of two APP connected by the directed edges;
the method for acquiring the APP ecological system comprises the following steps:
sending an APP name installed by a terminal to a cloud server, so that the cloud server generates an APP ecosystem suitable for the terminal;
when the cloud server adjusts the APP ecosystem to meet the user attribute requirements, if APP1 is used for replacing the APP in the APP ecosystem, the corresponding slot of the directed edge is replaced by the corresponding slot;
Step 804, judging whether an APP ecosystem is received, if yes, executing step 806;
step 806, obtaining a voice command of a user;
step 807, judging whether the corresponding task can be executed according to the voice command of the user, if so, executing step 808; if not, go to step 810;
in the step 807, the voice command of the user is analyzed, the task corresponding to the voice command is determined to be executed, the slot of the task is filled, and whether the task can be executed is judged based on the filling of the slot;
step 808, executing the task, and acquiring the slot position of the directed edge pointed by the arrow tail to the APP according to the APP ecological system, if the slot position filled by the APP for executing the task is the same as the slot position of the directed edge or has the same attribute, acquiring the slot position of the directed edge; step 809 is performed;
step 809, adding a tag to the slot of the directed edge, where the tag indicates a slot content update time corresponding to the slot of the directed edge;
step 810, when it is determined in step 804 that the APP ecosystem is received, step 811 is performed; if it is determined in step 802 that the terminal has a corresponding APP ecosystem, step 812 is executed;
step 811, interacting with a user to obtain the content of unfilled slots which must be filled for executing a task; and performs step 808;
Step 812, querying an APP ecosystem to identify one or more second APPs that establish a directed graph with the APP, that direct an arrow of a directed edge to the APP, and that have the same or the same attribute as the unfilled slot;
step 813, filling unfilled slots in the APP based on the identified one or more second APPs;
step 813 specifically includes:
acquiring tag information of a slot position of a directed edge between the second APP and the APP, determining an information source APP based on the tag information, acquiring the content of the slot position identical to the slot position of the directed edge from the information source APP, and filling the content into an unfilled corresponding slot position of the APP.
2. A device for voice interaction is characterized in that
The detection module is used for monitoring the use of the APP by a user;
the receiving and transmitting module is used for acquiring a voice command of a user;
the judging module is used for judging whether a corresponding APP ecosystem exists in the terminal or not;
an execution module for executing the method steps of claim 1.
3. A computer device comprising a processor and a memory, the memory storing a computer program executable on the processor, the computer program implementing the method of claim 1 when executed by the processor.
4. A computer readable storage medium, characterized in that it has stored therein a computer program executable on a processor, which computer program, when executed, implements the method according to claim 1.
5. A voice assistant system comprising the apparatus of claim 2.
6. An apparatus comprising the apparatus of claim 2 or comprising a voice assistant system of claim 5.
CN201911363189.XA 2019-12-26 2019-12-26 Voice interaction method and device for APP ecosystem Active CN111061453B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201911363189.XA CN111061453B (en) 2019-12-26 2019-12-26 Voice interaction method and device for APP ecosystem

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201911363189.XA CN111061453B (en) 2019-12-26 2019-12-26 Voice interaction method and device for APP ecosystem

Publications (2)

Publication Number Publication Date
CN111061453A CN111061453A (en) 2020-04-24
CN111061453B true CN111061453B (en) 2023-12-26

Family

ID=70303716

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201911363189.XA Active CN111061453B (en) 2019-12-26 2019-12-26 Voice interaction method and device for APP ecosystem

Country Status (1)

Country Link
CN (1) CN111061453B (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111768780B (en) * 2020-06-28 2021-12-07 广州小鹏汽车科技有限公司 Voice control method, information processing method, vehicle and server
CN114024872B (en) * 2020-07-17 2024-10-29 北京奇虎科技有限公司 Voice semantic platform abnormality alarm method, device, storage medium and apparatus

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5201046A (en) * 1990-06-22 1993-04-06 Xidak, Inc. Relational database management system and method for storing, retrieving and modifying directed graph data structures
CN103226949A (en) * 2011-09-30 2013-07-31 苹果公司 Using context information to facilitate processing of commands in a virtual assistant
JP2019101830A (en) * 2017-12-05 2019-06-24 株式会社日立製作所 System for evaluating system characteristics and device for evaluating system characteristics
CN109948017A (en) * 2018-04-26 2019-06-28 华为技术有限公司 A kind of information processing method and device
CN110310641A (en) * 2019-02-26 2019-10-08 北京蓦然认知科技有限公司 A kind of method and device for voice assistant

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107248937A (en) * 2017-06-30 2017-10-13 北京百度网讯科技有限公司 A kind of method and system interacted with user based on Internet of Things
US10372482B2 (en) * 2017-09-28 2019-08-06 Ca, Inc. Domain transversal based transaction contextualization of event information

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5201046A (en) * 1990-06-22 1993-04-06 Xidak, Inc. Relational database management system and method for storing, retrieving and modifying directed graph data structures
CN103226949A (en) * 2011-09-30 2013-07-31 苹果公司 Using context information to facilitate processing of commands in a virtual assistant
JP2019101830A (en) * 2017-12-05 2019-06-24 株式会社日立製作所 System for evaluating system characteristics and device for evaluating system characteristics
CN109948017A (en) * 2018-04-26 2019-06-28 华为技术有限公司 A kind of information processing method and device
CN110310641A (en) * 2019-02-26 2019-10-08 北京蓦然认知科技有限公司 A kind of method and device for voice assistant

Also Published As

Publication number Publication date
CN111061453A (en) 2020-04-24

Similar Documents

Publication Publication Date Title
US9621650B2 (en) Mobile application state identifier framework
US20180129221A1 (en) System and method for inputting a second taxi-start location parameter for an autonomous vehicle to navigate to whilst reducing distraction
WO2019228190A1 (en) Network failure analysis method and apparatus
CN104133724A (en) Concurrent task scheduling method and concurrent task scheduling device
CN103840950A (en) Information pushing method and system
CN102298627A (en) Method and system for providing search aiming at instant communication tool
CN103678531A (en) Friend recommendation method and friend recommendation device
CN111061453B (en) Voice interaction method and device for APP ecosystem
CN104050287A (en) Method and system for replying messages during instant chat
CN103036910B (en) A kind of user's web access Behavior-Based control method and device
CN108810053A (en) Internet of things application processing method and internet of things application system
CN113449207A (en) Method, device, server, system and storage medium for positioning electronic equipment
CN111124866B (en) Voice interaction method and device
CN104750718A (en) Data information search method and data information search device
CN116016421A (en) Method, computing device readable storage medium, and computing device for facilitating media-based content sharing performed in a computing device
CN106330768B (en) A kind of application and identification method based on cloud computing
CN111372221B (en) Method and device for generating and sharing general APP ecological map
CN111026628B (en) Voice interaction method and device
CN111125452B (en) Voice interaction method and device based on information association
CN111949859A (en) User portrait updating method and device, computer equipment and storage medium
CN111124649B (en) Method and device for generating APP ecosystem
CN111026538B (en) APP ecosystem establishing and using method and device
KR101744317B1 (en) Sever and method for managing position change of terminals
US7460552B2 (en) Method for managing a group in a star network and apparatus using the method
CN111048088A (en) Voice interaction method and device for multiple application programs

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
TA01 Transfer of patent application right

Effective date of registration: 20220117

Address after: 310024 floor 5, zone 2, building 3, Hangzhou cloud computing Industrial Park, Zhuantang street, Xihu District, Hangzhou City, Zhejiang Province

Applicant after: Hangzhou suddenly Cognitive Technology Co.,Ltd.

Address before: Room 401, gate 2, block a, Zhongguancun 768 Creative Industry Park, 5 Xueyuan Road, Haidian District, Beijing 100083

Applicant before: BEIJING MORAN COGNITIVE TECHNOLOGY Co.,Ltd.

TA01 Transfer of patent application right
TA01 Transfer of patent application right

Effective date of registration: 20231130

Address after: 101318 Building 6-163, Ronghuiyuan, Lingkong Economic Core Zone, Shunyi District, Beijing

Applicant after: Beijing Guanjiang Space Technology Co.,Ltd.

Address before: 310024 floor 5, zone 2, building 3, Hangzhou cloud computing Industrial Park, Zhuantang street, Xihu District, Hangzhou City, Zhejiang Province

Applicant before: Hangzhou suddenly Cognitive Technology Co.,Ltd.

TA01 Transfer of patent application right
GR01 Patent grant
GR01 Patent grant