CN105830048A - Systems and methods for providing a virtual assistant - Google Patents

Systems and methods for providing a virtual assistant Download PDF

Info

Publication number
CN105830048A
CN105830048A CN201380081661.5A CN201380081661A CN105830048A CN 105830048 A CN105830048 A CN 105830048A CN 201380081661 A CN201380081661 A CN 201380081661A CN 105830048 A CN105830048 A CN 105830048A
Authority
CN
China
Prior art keywords
user
information
virtual assistant
equipment
action
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.)
Pending
Application number
CN201380081661.5A
Other languages
Chinese (zh)
Inventor
H·夸斯特
C·拉德巴赫
K·S·哈尔佩尔
A·哈格
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.)
Nuance Communications Inc
Original Assignee
Nuance Communications Inc
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 Nuance Communications Inc filed Critical Nuance Communications Inc
Priority claimed from US14/107,499 external-priority patent/US9804820B2/en
Priority claimed from US14/107,545 external-priority patent/US10534623B2/en
Priority claimed from US14/107,622 external-priority patent/US9571645B2/en
Priority claimed from US14/107,466 external-priority patent/US9479931B2/en
Publication of CN105830048A publication Critical patent/CN105830048A/en
Pending legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/64Hybrid switching systems
    • H04L12/6418Hybrid transport
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/10Office automation; Time management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • G06Q30/06Buying, selling or leasing transactions
    • G06Q30/0601Electronic shopping [e-shopping]
    • G06Q30/0631Item recommendations
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • G06Q30/02Marketing; Price estimation or determination; Fundraising
    • G06Q30/0241Advertisements
    • G06Q30/0251Targeted advertisements

Abstract

The invention discloses systems and methods for providing a virtual assistant. According to the invention, a method is performed by at least one computer having access to information related to users in a network of users, the network of users comprising a first user and at least a second user associated with the first user via the network. The method comprises using the at least one computer to perform acts of: accessing information related to at least the second user; and causing a virtual assistant, executing on a device different from the at least one computer, to interact with the first user at least in part by performing at least one action based on the accessed information.

Description

For providing the system and method for virtual assistant
Background technology
Virtual assistant provides and enables a person to and calculating equipment (such as, smart phone or other meter Calculation equipment) mutual a type of user interface.Virtual assistant can be configured at some Aspect simulation people so that the people mutual with calculating equipment can have with the help of virtual assistant It is similar to the experience mutual with another person rather than machine.Such as, virtual assistant can allow It is mutual with calculating equipment that people provides phonetic entry by speaking to virtual assistant.Conventional is virtual Assistant can explain that customer-furnished phonetic entry, input based on user perform one or many Individual action and by utilizing speech interface " to reply " to user.
Summary of the invention
Some embodiments provide system, including: at least one computer-readable recording medium, Its multiple user profiles being configured to store the first user profile including first user;And extremely A few processor, it is coupled at least one computer-readable recording medium described, and joins It is set to execution action: perform the first virtual assistant with mutual with first user first from being configured to Equipment receives the first request accessing first user profile;In response to receiving the first request, to First equipment provides the access at least some information in first user profile so that first is empty Intend assistant and can customize its row when mutual with first user based on the information that at least some accesses For;Receive with the second equipment mutual with first user visit from being configured to perform the second virtual assistant Ask the second request of first user profile;And in response to receiving the second request, set to second The standby access provided at least some information so that the second virtual assistant can be based at least some Information customization its behavior when mutual with first user accessed.
In certain embodiments, including any of above embodiment, first user profile includes specifying The information of the first virtual assistant role, to first equipment provide in first user profile at least The access of some information includes providing the information specifying the first virtual assistant role to the first equipment Access so that when mutual with first user, the first virtual assistant uses the first virtual assistant Role, and provide the access at least some information in first user profile to the second equipment Including providing the access to the information specifying the first virtual assistant role to the second equipment so that when Time mutual with first user, the second virtual assistant uses the first virtual assistant role.
In certain embodiments, including any of above embodiment, it is intended that the first virtual assistant role Information specified speech font at least in part so that when the first virtual assistant uses first virtual During assistant role, the first virtual assistant is configured at least partially through raw according to voice font Become speech mutual with first user.
In certain embodiments, including any of above embodiment, it is intended that the first virtual assistant role Information specified speech font at least in part so that when the first virtual assistant uses first virtual During assistant role, the first virtual assistant is configured at least partially through raw according to voice font Become speech mutual with first user.
In certain embodiments, including any of above embodiment, at least one processor described is also It is configured to execution action: based on the information updating provided via the first equipment by first user One user profiles;And provide the access to the first user profile updated to the second equipment, make Obtain the second virtual assistant information based at least some renewal in the first user profile updated fixed System its behavior when mutual with first user.
In certain embodiments, including any of above embodiment, at least one processor quilt described Be configured to execution action: from the first equipment receive with at least partially through utilizing the first equipment to hold The information that the task of row is relevant;At least partially through utilizing the second equipment rather than the first equipment Determine whether the execution of task continues;And when true at least partially through utilizing the second equipment Determine the execution of task to be continued time, provide the access to the information received to the second equipment.
In certain embodiments, including any of above embodiment, with appointing of being performed by the first equipment Which part of the information appointed task that business is relevant is performed by the first equipment.
Some embodiments provide method, including: utilize at least one processor execution action: Access the is received with the first equipment mutual with first user from being configured to perform the first virtual assistant First request of the first user profile of one user;In response to receiving the first request, to first Equipment provides access at least some information in first user profile so that first virtual helps Reason can customize its behavior when mutual with first user based on the information that at least some accesses; Access the is received with the second equipment mutual with first user from being configured to perform the second virtual assistant Second request of one user profiles;And in response to receiving the second request, carry to the second equipment For the access at least some information so that the second virtual assistant can access based at least some Information customization its behavior when mutual with first user.
In certain embodiments, including any of above embodiment, first user profile includes specifying The information of the first virtual assistant role, to first equipment provide in first user profile at least The access of some information includes providing the information specifying the first virtual assistant role to the first equipment Access so that when mutual with first user, the first virtual assistant uses the first virtual assistant Role, and provide the access at least some information in first user profile to the second equipment Including providing the access to the information specifying the first virtual assistant role to the second equipment so that when Time mutual with first user, the second virtual assistant uses the first virtual assistant role.
In certain embodiments, including any of above embodiment, it is intended that the first virtual assistant role Information specified speech font at least in part so that when the first virtual assistant uses first virtual During assistant role, the first virtual assistant is configured at least partially through raw according to voice font Become speech mutual with first user.
In certain embodiments, including any of above embodiment, it is intended that the first virtual assistant role Information specified speech font at least in part so that when the first virtual assistant uses first virtual During assistant role, the first virtual assistant is configured at least partially through raw according to voice font Become speech mutual with first user.
In certain embodiments, including any of above embodiment, the method also includes that utilization is described At least one processor execution action: based on the information provided via the first equipment by first user Update first user profile;And provide the visit to the first user profile updated to the second equipment Ask so that the second virtual assistant updates based at least some in the first user profile updated Information customization its behavior when mutual with first user.
In certain embodiments, including any of above embodiment, the method also includes that utilization is described At least one processor execution action: from the first equipment receive with at least partially through utilizing the The information that the task that one equipment performs is relevant;At least partially through utilize the second equipment rather than First equipment determines whether the execution of task continues;And when at least partially through utilizing the Two equipment determine when the execution of task is to be continued, and provide the information received to the second equipment Access.
In certain embodiments, including any of above embodiment, with appointing of being performed by the first equipment Which part of the information appointed task that business is relevant is performed by the first equipment.
Some embodiments provide the non-transitory meter of at least one storage processor executable Calculation machine readable storage medium storing program for executing, when instruction performed by least one processor time so that described at least One processor performs method, including: perform the first virtual assistant to use with first from being configured to First request of the first user profile of the first equipment reception access first user that family is mutual;Ring Ying Yu receives the first request, provides at least some in first user profile to the first equipment The access of information so that the first virtual assistant can customize based on the information that at least some accesses Its behavior when mutual with first user;From being configured to perform the second virtual assistant to use with first Second request of the second equipment reception access first user profile that family is mutual;And in response to connecing Receive the second request, provide the access at least some information to the second equipment so that second is empty Intend information customization its behavior when mutual with first user that assistant can access based at least some.
In certain embodiments, including any of above embodiment, first user profile includes specifying The information of the first virtual assistant role, to first equipment provide in first user profile at least The access of some information includes providing the information specifying the first virtual assistant role to the first equipment Access so that when mutual with first user, the first virtual assistant uses the first virtual assistant Role, and provide the access at least some information in first user profile to the second equipment Including providing the access to the information specifying the first virtual assistant role to the second equipment so that when Time mutual with first user, the second virtual assistant uses the first virtual assistant role.
In certain embodiments, including any of above embodiment, it is intended that the first virtual assistant role Information specified speech font at least in part so that when the first virtual assistant uses first virtual During assistant role, the first virtual assistant is configured at least partially through raw according to voice font Become speech mutual with first user.
In certain embodiments, including any of above embodiment, it is intended that the first virtual assistant role Information specified speech font at least in part so that when the first virtual assistant uses first virtual During assistant role, the first virtual assistant is configured at least partially through raw according to voice font Become speech mutual with first user.
In certain embodiments, including any of above embodiment, the method also includes: based on by The information updating first user profile that first user provides via the first equipment;And set to second The standby access provided the first user profile updated so that the second virtual assistant is based on renewal Information customization its row when mutual with first user that at least some in first user profile updates For.
In certain embodiments, including any of above embodiment, the method also includes: from first Equipment receives the information relevant at least partially through task of utilizing the first equipment to perform;Extremely Determine whether the execution of task continues at least partially through utilizing the second equipment rather than the first equipment Continuous;And when at least partially through utilize the second equipment to determine the execution of task is to be continued time, The access to the information received is provided to the second equipment.
Some embodiments provide at least one processor including being arranged for carrying out virtual assistant Equipment, at least one processor described is configured to execution action: by with at least one and equipment Different compunications accesses at least some information in first user profile, and based on The behavior of the information customizing virtual assistant that at least some accesses in first user profile.
Some embodiments provide the method for realizing virtual assistant, the method include utilizing to A few processor performs action: by the compunication different with equipment from least one Access at least some information in first user profile, and use first based at least some The behavior of the information customizing virtual assistant accessed in the profile of family.
Some embodiments provide the non-transitory meter of at least one storage processor executable Calculation machine readable storage medium storing program for executing, when instruction performed by least one processor time so that described at least One processor performs for the method realizing virtual assistant, and the method includes: by with at least One compunication different from equipment accesses at least some information in first user profile, And the behavior of the information customizing virtual assistant accessed in first user profile based at least some.
Some embodiments providing mobile device, it includes the user being configured to store mobile device At least one computer-readable recording medium of subscriber profile information;And at least one processes Device, it is coupled at least one computer-readable recording medium described, and is configured to perform to move Make: providing the second equipment, it is configured to perform the first virtual assistant, can use at least some Family profile information accesses so that the first virtual assistant can be based at least some subscriber profile information Customization its behavior when mutual with user.
In certain embodiments, including any of above embodiment, mobile device is configured to set up With the direct wireless communication channel of the second equipment, and via direct wireless communication channel to second Equipment provides the access at least some subscriber profile information.
In certain embodiments, including any of above embodiment, subscriber profile information is specified virtual Assistant role, and provide the access at least some subscriber profile information to include to the second equipment There is provided the access of information specifying virtual assistant role to the second equipment so that first virtual helps Reason can use virtual assistant role when mutual with user.
In certain embodiments, including any of above embodiment, it is intended that the letter of virtual assistant role Cease specified speech font and/or locution at least in part.
In certain embodiments, including any of above embodiment, at least one processor described is also Be configured to execution action: perform the second virtual assistant, the second virtual assistant be configured to Fewer subscriber profile information customization its behavior when mutual with user.
In certain embodiments, including any of above embodiment, at least one processor described is also It is configured to execution action: determine whether the second equipment has the mandate accessing user profiles;And And only when determining that the second equipment has the mandate accessing user profiles, just perform to set to second Standby offer is to the action of the access of at least some information in user profiles.
In certain embodiments, including any of above embodiment, at least one processor described is also It is configured to execution action: the second equipment rather than mobile device are true at least partially through utilizing Whether the execution of fixed being performed by mobile device at least in part of task continues;And ought be at least When partially by utilizing the second equipment to determine, the execution of task is to be continued, provide to the second equipment Access to the information relevant to task.
Some embodiments providing the method performed by mobile device, mobile device is configured to storage The subscriber profile information of the user of mobile device, the method includes: provide the second equipment, and it is joined It is set to perform the first virtual assistant, at least some subscriber profile information can be accessed so that the One virtual assistant can be based at least some subscriber profile information customization its row when mutual with user For.
In certain embodiments, including any of above embodiment, the method also includes setting up moving Direct wireless communication channel between equipment and the second equipment, and believe via direct wireless communication Road provides the access at least some subscriber profile information to the second equipment.
In certain embodiments, including any of above embodiment, subscriber profile information is specified virtual Assistant role, and provide the access at least some subscriber profile information to include to the second equipment There is provided the access of information specifying virtual assistant role to the second equipment so that first virtual helps Reason can use virtual assistant role when mutual with user.
In certain embodiments, including any of above embodiment, it is intended that the letter of virtual assistant role Cease specified speech font and/or locution at least in part.
In certain embodiments, including any of above embodiment, the method is additionally included in mobile setting Standby upper execution the second virtual assistant, the second virtual assistant is configured at least some user profiles Information customization its behavior when mutual with user.
In certain embodiments, including any of above embodiment, the method also includes determining second Whether equipment has the mandate accessing user profiles;And only when determining that the second equipment has visit When asking the mandate of user profiles, just perform to provide at least some in user profiles to the second equipment The action of the access of information.
In certain embodiments, including any of above embodiment, the method also includes: at least portion Ground is divided to hold by mobile device by utilizing the second equipment rather than mobile device to determine at least in part Whether the execution of the task of row continues;And when true at least partially through utilizing the second equipment Determine the execution of task to be continued time, provide the access to the information relevant to task to the second equipment.
Some embodiments provide the non-transitory meter of at least one storage processor executable Calculation machine readable storage medium storing program for executing, when instruction is configured to store the user profiles of the user of mobile device When the mobile device of information performs so that mobile device performs method, including: provide second to set Standby, it is configured to perform the first virtual assistant, can access at least some subscriber profile information, Make the first virtual assistant can work as mutual with user based on the customization of at least some subscriber profile information Time its behavior.
In certain embodiments, including any of above embodiment, the method also includes setting up moving Direct wireless communication channel between equipment and the second equipment, and believe via direct wireless communication Road provides the access at least some subscriber profile information to the second equipment.
In certain embodiments, including any of above embodiment, subscriber profile information is specified virtual Assistant role, and provide the access at least some subscriber profile information to include to the second equipment There is provided the access of information specifying virtual assistant role to the second equipment so that first virtual helps Reason can use virtual assistant role when mutual with user.
In certain embodiments, including any of above embodiment, it is intended that the letter of virtual assistant role Cease specified speech font and/or locution at least in part.
In certain embodiments, including any of above embodiment, the method is additionally included in mobile setting Standby upper execution the second virtual assistant, the second virtual assistant is configured at least some user profiles Information customization its behavior when mutual with user.
In certain embodiments, including any of above embodiment, the method also includes determining second Whether equipment has the mandate accessing user profiles;And only when determining that the second equipment has visit When asking the mandate of user profiles, just perform to provide at least some in user profiles to the second equipment The action of the access of information.
Some embodiments provide at least one processor including being arranged for carrying out virtual assistant Equipment, at least one processor described is configured to execution action: from being configured to storage mobile device User subscriber profile information mobile device receive at least some subscriber profile information;And Behavior based on the information customizing virtual assistant that at least some receives.
Some embodiments provide method, including: utilize at least one processor to perform action: At least one is received from the mobile device being configured to store the subscriber profile information of the user of mobile device A little subscriber profile information;And row based on the information customizing virtual assistant that at least some receives For.
Some embodiments provide the non-transitory meter of at least one storage processor executable Calculation machine readable storage medium storing program for executing, when instruction performed by least one processor time so that described at least One processor performs method, including: from being configured to store user's letter of the user of mobile device The mobile device of shelves information receives at least some subscriber profile information;And connect based at least some The behavior of the information customizing virtual assistant received.
Some embodiments providing method, the method is by accessing and the user in user network At least one computer of relevant information performs, and user network includes first user and via net At least the second user that network is associated with first user, the method includes: described in utilization at least one Individual computer execution action: (A) accesses and at least the second user-dependent information;And (B) make on the equipment different from least one computer described perform virtual assistant extremely Mutual with first user at least partially through performing at least one action based on the information accessed.
In certain embodiments, including any of above embodiment, action (A) includes accessing to be known The not information of the theme that at least the second user is interested;And action (B) includes so that virtual The information relevant to the theme identified is presented to first user by assistant.
In certain embodiments, including any of above embodiment, action (A) includes that access refers to Show that at least the second user likes the information of certain project;And action (B) includes so that virtual Assistant by described project recommendation to first user.
In certain embodiments, including any of above embodiment, described project is media content.
In certain embodiments, including any of above embodiment, first is given by described project recommendation User includes the advertisement of described project is presented to first user.
In certain embodiments, including any of above embodiment, action (A) include accessing to Partially specify the information of the schedule of the second user;And action (B) includes so that void Intend assistant based on specifying the information of schedule of the second user at first user and at least in part Arrangement activity between two users.
In certain embodiments, including any of above embodiment, action (A) includes that access refers to The information of the planning location of fixed second user;And action (B) includes so that virtual assistant leads to Know the first user planning location about the second user.
In certain embodiments, including any of above embodiment, action (B) is additionally included in meter Draw position and arrange the meeting between first user and the second user.
Some embodiments provide can access with the user-dependent information in user network be System, user network includes first user and be associated with first user at least the second via network User, this system includes: at least one computer, is configured to execution action: (A) accesses With at least the second user-dependent information;And (B) make with described at least one calculate The virtual assistant performed on the equipment that machine is different performs at least partially through based on the information accessed At least one action is mutual with first user.
In certain embodiments, including any of above embodiment, action (A) includes accessing to be known The not information of the theme that at least the second user is interested;And action (B) includes so that virtual The information relevant to the theme identified is presented to first user by assistant.
In certain embodiments, including any of above embodiment, action (A) includes that access refers to Show that at least the second user likes the information of certain project;And action (B) includes so that virtual Assistant by described project recommendation to first user.
In certain embodiments, including any of above embodiment, first is given by described project recommendation User includes the advertisement of described project is presented to first user.
In certain embodiments, including any of above embodiment, action (A) include accessing to Partially specify the information of the schedule of the second user;And action (B) includes so that void Intend assistant based on specifying the information of schedule of the second user at first user and at least in part Arrangement activity between two users.
In certain embodiments, including any of above embodiment, action (A) includes that access refers to The information of the planning location of fixed second user;And action (B) includes so that virtual assistant leads to Know the first user planning location about the second user.
Some embodiments provide the non-transitory meter of at least one storage processor executable Calculation machine readable storage medium storing program for executing, when instruction can be accessed and the user-dependent letter in user network When at least one computer of breath performs so that at least one computer implemented method described, use Family network includes first user and at least the second user being associated via network with first user, The method includes action: (A) accesses and at least the second user-dependent information;And (B) Make the virtual assistant performed on the equipment different from least one computer described at least part of Ground is mutual with first user by performing at least one action based on the information accessed.
In certain embodiments, including any of above embodiment, action (A) includes accessing to be known The not information of the theme that at least the second user is interested;And action (B) includes so that virtual The information relevant to the theme identified is presented to first user by assistant.
In certain embodiments, including any of above embodiment, action (A) includes that access refers to Show that at least the second user likes the information of certain project;And action (B) includes so that virtual Assistant by described project recommendation to first user.
In certain embodiments, including any of above embodiment, first is given by described project recommendation User includes the advertisement of described project is presented to first user.
In certain embodiments, including any of above embodiment, action (A) include accessing to Partially specify the information of the schedule of the second user;And action (B) includes so that void Intend assistant's information based on the described schedule specifying the second user at least in part at first user And the second arrangement activity between user.
In certain embodiments, including any of above embodiment, action (A) includes that access refers to The information of the planning location of fixed second user;And action (B) includes so that virtual assistant leads to Know the first user planning location about the second user.
Some embodiments providing method, the method is by accessing and the user in user network The equipment of relevant information performs, and this device programming is for realizing virtual assistant, and user network includes First user and at least the second user being associated with first user via network, the method includes: (A) access and at least the second user-dependent information;And (B) utilizes virtual assistant extremely Mutual with first user at least partially through performing at least one action based on the information accessed.
Some embodiments provide and can access and the setting of the user-dependent information in user network Standby, this device programming is for realizing virtual assistant, and user network includes first user and via network At least the second user being associated with first user, this equipment includes: be configured to perform following moving At least one processor made: (A) accesses and at least the second user-dependent information;And (B) utilize virtual assistant dynamic at least partially through performing at least one based on the information accessed Make mutual with first user.
Some embodiments provide the non-transitory meter of at least one storage processor executable Calculation machine readable storage medium storing program for executing, when instruction can be accessed and the user-dependent letter in user network Breath equipment perform time so that equipment perform method, this device programming for realizing virtual assistant, User network includes first user and at least the second user being associated via network with first user, The method includes: (A) accesses and at least the second user-dependent information;And (B) profit At least one action and first is performed at least partially through based on the information accessed with virtual assistant User is mutual.
Some embodiments providing method, the method is performed by least one computer, the method Including: utilize at least one computer execution action described: access specify by user specify to The information of user's required movement of few user's specified requirements and at least one correspondence, user refers to Determine action to perform when user's specified requirements is satisfied;Determine at least one user's specified requirements Whether it is satisfied;And when determining that at least one user's specified requirements is satisfied so that with The virtual assistant performed in the mobile device that at least one computer described is different performs at least one User's required movement.
In certain embodiments, including any of above embodiment, at least one user's specified requirements Designated key;Determine that at least one user's specified requirements is satisfied to include determining at least some and master The information that topic is relevant is the most obtained;And make virtual assistant perform at least one user to refer to Determine action and include that the information relevant to theme at least some obtained so that virtual assistant is presented to User.
In certain embodiments, including any of above embodiment, the method also includes in response to void Intend assistant and the information that at least some obtains is presented to user, receive and the information presented from user Relevant phonetic entry;And utilize automatic speech recognition technology and/or natural language technology Process phonetic entry.
In certain embodiments, including any of above embodiment, utilize automatic speech recognition technology Process phonetic entry includes: at least partially through utilizing the language model identification language for theme Sound inputs.
In certain embodiments, including any of above embodiment, the method also include monitor and/ Or one or more sources of search information, the information relevant to theme to obtain at least some.
In certain embodiments, including any of above embodiment, virtual assistant is configured at least Partially by utilize be configured to perform on the mobile apparatus another application program perform to A few action.
In certain embodiments, including any of above embodiment, the method also includes setting from mobile Standby user receives phonetic entry, and at least one user's specified requirements and at least is specified in phonetic entry One corresponding user's required movement;And at least partially through utilizing automatic speech recognition Identify the user of at least one user's specified requirements and at least one correspondence specified by phonetic entry Required movement.
Some embodiments provide system, including: at least one is configured to perform following action Computer: access and specify at least one the user's specified requirements specified by user right with at least one The information of the user's required movement answered, user's required movement will be when user's specified requirements be satisfied Perform;Determine whether at least one user's specified requirements is satisfied;And when determining at least one When user's specified requirements is satisfied so that set in the movement different from least one computer described The virtual assistant of standby upper execution performs at least one user's required movement.
In certain embodiments, including any of above embodiment, at least one user's specified requirements Designated key;Determine that at least one user's specified requirements is satisfied to include determining at least some and master The information that topic is relevant is the most obtained;And make virtual assistant perform at least one user to refer to Determine action and include that the information relevant to theme at least some obtained so that virtual assistant is presented to User.
In certain embodiments, including any of above embodiment, at least one computer described is also It is configured to execution action: present to use by the information that at least some obtains in response to virtual assistant Family, receives the phonetic entry relevant to the information presented from user;And utilize knowledge of automatically talking Other technology and/or natural language technology process phonetic entry.
In certain embodiments, including any of above embodiment, utilize automatic speech recognition technology Process phonetic entry includes: at least partially through utilizing the language model identification language for theme Sound inputs.
In certain embodiments, including any of above embodiment, at least one computer described is also It is configured to supervision and/or the search in one or more sources of execution information, to obtain at least Some information relevant to theme.
In certain embodiments, including any of above embodiment, virtual assistant is configured at least Partially by utilize be configured to perform on the mobile apparatus another application program perform to A few action.
In certain embodiments, including any of above embodiment, at least one computer described is also Being configured to execution action: receive phonetic entry from the user of mobile device, phonetic entry is specified At least one user's specified requirements and user's required movement of at least one correspondence;And at least portion At least one user dividing ground to specify by phonetic entry by utilizing automatic speech recognition to identify refers to Fixed condition and user's required movement of at least one correspondence.
Some embodiments provide the non-transitory meter of at least one storage processor executable Calculation machine readable storage medium storing program for executing, when instruction performed by least one computer time so that described at least The method that one computer performs to include following action: access and specify at least specified by user The information of user's required movement of individual user's specified requirements and at least one correspondence, user specifies dynamic Work to perform when user's specified requirements is satisfied;Whether determine at least one user's specified requirements It is satisfied;And when determining that at least one user's specified requirements is satisfied so that with at least The virtual assistant performed in the mobile device that one computer is different performs at least one user and specifies Action.
In certain embodiments, including any of above embodiment, at least one user's specified requirements Designated key;Determine that at least one user's specified requirements is satisfied to include determining at least some and master The information that topic is relevant is the most obtained;And make virtual assistant perform at least one user to refer to Determine action and include that the information relevant to theme at least some obtained so that virtual assistant is presented to User.
In certain embodiments, including any of above embodiment, the method also includes in response to void Intend assistant and the information that at least some obtains is presented to user, receive and the information presented from user Relevant phonetic entry;And utilize automatic speech recognition technology and/or natural language technology Process phonetic entry.
In certain embodiments, including any of above embodiment, utilize automatic speech recognition technology Process phonetic entry includes: at least partially through utilizing the language model identification language for theme Sound inputs.
In certain embodiments, including any of above embodiment, the method also include monitor and/ Or one or more sources of search information, the information relevant to theme to obtain at least some.
In certain embodiments, including any of above embodiment, virtual assistant is configured at least Partially by utilizing another application program being configured to perform on the mobile apparatus to perform State at least one action.
Some embodiments providing the method performed by mobile device, the method includes: utilizes and moves Dynamic equipment realizes virtual assistant, virtual assistant execution action: access what appointment was specified by user At least one user's specified requirements and at least one to perform when user's specified requirements is satisfied The information of corresponding user's required movement;Determine whether at least one user's specified requirements is satisfied; And when determining that at least one user's specified requirements is satisfied, perform at least one user and specify Action.
Some embodiments providing the mobile device being arranged for carrying out virtual assistant, virtual assistant is held Action is made: accesses and specifies at least one the user's specified requirements specified by user and to refer to user The information of user's required movement of at least one correspondence performed when fixed condition is satisfied;Determine to Whether few user's specified requirements is satisfied;And when determining at least one user's specified requirements When being satisfied, perform at least one user's required movement.
Some embodiments provide the non-transitory meter of at least one storage processor executable Calculation machine readable storage medium storing program for executing, when instruction is configured to the mobile device execution realizing virtual assistant, Make the virtual assistant execution action in mobile device: access and specify at least specified by user Individual user's specified requirements and at least one correspondence to perform when user's specified requirements is satisfied The information of user's required movement;Determine whether at least one user's specified requirements is satisfied;And When determining that at least one user's specified requirements is satisfied, perform at least one user's required movement.
Some embodiments provide in MPTY and interactive voice response (IVR) system Between carry out the method conversed, MPTY utilizes equipment to converse, and equipment is configured to perform void Intending assistant, the method includes: be supplied to MPTY during conversing at least partially through impact Information pattern and/or during conversing between equipment and IVR system the information of transmission Content utilizes virtual assistant to converse.
In certain embodiments, including any of above embodiment, the method also includes accessing calling At least some information in the profile of side;And exert one's influence based on the information accessed.
In certain embodiments, including any of above embodiment, described profile includes specifying virtual The information of assistant role;At least some information in access profile includes accessing specifies virtual assistant The information of role;And virtual assistant is at least partially through the letter received from IVR Breath is supplied to during MPTY use virtual assistant role, is supplied to the information of MPTY by impact Pattern converse.
In certain embodiments, including any of above embodiment, it is intended that the letter of virtual assistant role Cease specified speech font and/or locution at least in part so that when virtual assistant uses void When intending assistant role, the first virtual assistant is configured at least partially through according to voice font And/or locution generates speech and the information received from IVR is supplied to MPTY.
In certain embodiments, including any of above embodiment, the method also includes from IVR Receive the request to the information from MPTY;Determine whether virtual assistant can access at least one The information asked a bit;When determining that virtual assistant can access the information that at least some is asked, Information at least some asked is supplied to IVR, and does not point out MPTY to provide at least some The information asked;And when determining that virtual assistant cannot access the letter that at least some is asked During breath, prompting MPTY provides the information that at least some is asked.
In certain embodiments, including any of above embodiment, to the information from MPTY Request includes the request to the information identifying MPTY, and determines whether virtual assistant can visit Ask that the information that at least some is asked includes determining that whether the information identifying MPTY is at MPTY In profile.
In certain embodiments, including any of above embodiment, the profile storage reflection of MPTY MPTY in the data with the behavior in one or more previous call of IVR system, and Determine information that at least some asked whether the profile of MPTY include determining with IVR One or more previous call of system reflect whether the data of MPTY behavior include at least one The information asked a bit.
Some embodiments provide for being used to answer at MPTY and interactive voice by MPTY Answering the equipment carrying out conversing between (IVR), this equipment is configured to perform virtual assistant, should Equipment includes: at least one processor being configured to perform following action: at least partially through Impact is supplied to the pattern of the information of MPTY and/or at equipment during conversing during conversing With the content of the information of transmission utilizes virtual assistant to converse between IVR system.
In certain embodiments, at least one processor wherein said is configured to execution action: Access at least some information in MPTY profile;And exert one's influence based on the information accessed.
In certain embodiments, including any of above embodiment, described profile includes specifying virtual The information of assistant role;At least some information in access profile includes accessing specifies virtual assistant The information of role;And virtual assistant is at least partially through the letter received from IVR Virtual assistant role is used to be supplied to the information of MPTY by impact when breath is supplied to MPTY Pattern converse.
In certain embodiments, including any of above embodiment, it is intended that the letter of virtual assistant role Cease specified speech font and/or locution at least in part so that when virtual assistant uses void When intending assistant role, the first virtual assistant is configured at least partially through according to voice font And/or locution generates speech and the information received from IVR is supplied to MPTY.
In certain embodiments, including any of above embodiment, at least one processor described is also It is configured to execution action: receive the request to the information from MPTY from IVR;Determine Whether virtual assistant can access the information that at least some is asked;When determining that virtual assistant is permissible When accessing the information that at least some is asked, information at least some asked is supplied to IVR, And do not point out MPTY to provide the information that at least some is asked;And when determining that virtual assistant is not When can access the information that at least some is asked, prompting MPTY provides at least some to be asked Information.
In certain embodiments, including any of above embodiment, to the information from MPTY Request includes the request to the information identifying MPTY, and determines whether virtual assistant can visit Ask that the information that at least some is asked includes determining that whether the information identifying MPTY is at MPTY In profile.
In certain embodiments, including any of above embodiment, the profile storage reflection of MPTY MPTY in the data with the behavior in one or more previous call of IVR system, and Determine information that at least some asked whether the profile of MPTY include determining with IVR One or more previous call of system reflecting, whether the data of the behavior of MPTY include at least Some information asked.
The non-transitory computer-readable recording medium of at least one storage processor executable, When instruction is performed by least one processor so that at least one processor described performs to be used for The method carrying out conversing between MPTY and interactive voice response (IVR), MPTY profit Conversing with equipment, equipment is configured to perform virtual assistant, and the method includes: at least partly Ground is supplied to the pattern of the information of MPTY and/or during conversing during conversing by impact Between equipment and IVR system, the content of the information of transmission utilizes virtual assistant to converse.
In certain embodiments, including any of above embodiment, the method also includes accessing calling At least some information in side's profile;And exert one's influence based on the information accessed.
In certain embodiments, including any of above embodiment, described profile includes specifying virtual The information of assistant role;At least some information in access profile includes accessing specifies virtual assistant The information of role;And virtual assistant is at least partially through the letter received from IVR Virtual assistant role is used to be supplied to the information of MPTY by impact when breath is supplied to MPTY Pattern converse.
In certain embodiments, including any of above embodiment, it is intended that the letter of virtual assistant role Cease specified speech font and/or locution at least in part so that when virtual assistant uses void When intending assistant role, the first virtual assistant is configured at least partially through according to voice font And/or locution generates speech and the information received from IVR is supplied to MPTY.
In certain embodiments, including any of above embodiment, the method also includes from IVR Receive the request to the information from MPTY;Determine whether virtual assistant can access at least one The information asked a bit;When determining that virtual assistant can access the information that at least some is asked, Information at least some asked is supplied to IVR, and does not point out MPTY to provide at least some The information asked;And when determining that virtual assistant cannot access the letter that at least some is asked During breath, prompting MPTY provides the information that at least some is asked.
In certain embodiments, including any of above embodiment, to the information from MPTY Request includes the request to the information identifying MPTY, and determines whether virtual assistant can visit Ask that the information that at least some is asked includes determining that whether the information identifying MPTY is at MPTY In profile.
It is above the non-limiting general introduction of the present invention defined by the appended claims.
Accompanying drawing explanation
Various aspects and embodiment will be described with reference to following figure.Should be appreciated that these figures It is not drawn necessarily to scale.All figures that the item occurred in multiple figures occurs at them use phase Same or similar label instruction.
Figure 1A is shown in which that some embodiments of disclosure provided herein are manipulable Illustrative environment.
Figure 1B is shown in which that some embodiments of disclosure provided herein are manipulable Another Illustrative environment.
Fig. 2 be some embodiments according to disclosure provided herein, be stored in illustrative The block diagram of the information in user profiles.
Fig. 3 A is some embodiments according to disclosure provided herein, example virtual The block diagram of the component software of assistant.
Fig. 3 B be some embodiments according to disclosure provided herein, be configured to one The block diagram of the component software of the illustrative servers that individual or multiple virtual assistants communicate.
Fig. 4 be some embodiments according to disclosure provided herein, by being programmed to implement That the equipment of virtual assistant performs, for working as based at least some information customization in user profiles With user's flow chart of the illustrative process of the behavior of virtual assistant time mutual.
Fig. 5 be some embodiments according to disclosure provided herein, deposited by least one That the equipment of storage user profiles performs, be programmed to implement and can access user profiles for providing The flow chart of the illustrative process of at least one equipment of virtual assistant.
Fig. 6 be some embodiments according to disclosure provided herein, for setting second The flow chart of the illustrative process of the execution of the task that standby upper continuation is initiated on the first device.
Fig. 7 be illustrate some embodiments according to disclosure provided herein, at least partly The diagram of ground user network based on the information creating in user profiles.
Fig. 8 A be some embodiments according to disclosure provided herein, by virtual assistant That perform, for based on and the relevant information of other users one or more of being associated of user Flow chart via the user network illustrative process mutual with user.
Fig. 8 B is some embodiments according to disclosure provided herein, virtual for making Assistant based on and the relevant information of other users one or more of being associated of first user via The flow chart of the illustrative process that network is mutual with user.
Fig. 9 is some embodiments according to disclosure provided herein, right for determining One or more user's specified requirementss of Ying Yu (one or more) user's required movement are satisfied Time, make the flow chart of the illustrative process of the virtual assistant one or more user's required movements of execution.
Figure 10 is shown in which that some embodiments of disclosure provided herein are manipulable Another Illustrative environment.
Figure 11 A be some embodiments according to disclosure provided herein, for passing through Utilize that virtual assistant carries out conversing between MPTY and interactive voice response system is illustrative The flow chart of process.
Figure 11 B be some embodiments according to disclosure provided in this article, for base Information in MPTY profile is conversed between MPTY and interactive voice response system The flow chart of illustrative process.
Figure 12 is to embodiment described herein the illustrative computer system that can realize thereon Block diagram.
Detailed description of the invention
I. summarize
Applicants have recognized that, conventional virtual assistant be limited to that they can access about void Intend the information type of the user that assistant is interacting, if present.Applicant recognizes Knowledge is arrived, if virtual assistant is able to access that the user's that interacting about virtual assistant is attached Add information type, then can provide and improve and more personalized Consumer's Experience.Therefore, herein Some embodiments described relate to accessing the user profiles comprising the information about user and Based at least some information in profile customize when with user's virtual assistant of its behavior time mutual. The information in user profiles that accesses allows virtual assistant with any various ways (such as, by adjusting Whole wherein virtual assistant presents the pattern of information to user and/or virtual assistant presents to user's The content of information) cater to the preference of user.
User can use multiple equipment, the most each equipment to have the conventional void realized thereon Intend assistant.Such as, user can be by utilizing the conventional virtual assistant realized on smart phone Mutual with his/her smart phone, and can be by utilizing realization on tablet PC Conventional virtual assistant is mutual with his/her tablet PC.Applicants have recognized that, i.e. use Family can customize wherein in the upper routine realized of an equipment (such as, the smart phone of user) The mode that virtual assistant is mutual with user, at miscellaneous equipment (such as, the tablet PC of user) Needs are also customized individually by the conventional virtual assistant of upper realization by user.Such as, if user It is arranged on his/her smart phone the virtual assistant performed and Spanish output is provided, then The virtual assistant performed on the tablet PC of user would be unaware that the void on smart phone Intend how assistant is configured.User performs needing for the virtual assistant on tablet PC Additional changes the step arranged, to be configured to also provide for western class by the virtual assistant realized on it Tooth language exports.Therefore, mutual with the multiple virtual assistants on multiple equipment user must be individually Customizing each virtual assistant, this is inconvenient, or when different from realize on multiple equipment Conventional virtual assistant has inconsistent Consumer's Experience time mutual.
Applicants have recognized that, the experience of user can be by providing the void on wherein distinct device The customization of mode intending assistant's performance (such as, mutual with user) improves so that virtual help It is same across multiple equipment utilizations that reason shows and provide a user with him/her in a uniform matter The impression of virtual assistant.Therefore, certain embodiments described herein relates to allowing on distinct device The virtual assistant performed access at least some information in user profiles and based in profile extremely Fewer information customize its behavior.Access that user profiles allows to perform on different devices is virtual Assistant customizes its behavior, in order to provide a user with in the experience consistent time mutual with virtual assistant. As non-limitative example, the virtual assistant performed on different devices can be based on user profiles The information that middle instruction wherein user preference makes information present to his/her pattern uses identical sample Formula presents information (such as, locution, text style, GUI pattern etc.) to user.Make For another non-limitative example, the virtual assistant performed on different devices can based on The user preference specified in the profile of family presents content to user.
Certain embodiments described herein solves the institute that applicant has recognized with regard to conventional virtual assistant There are the problems referred to above.But, each embodiment the most described below solves in these problems Each problem, and some embodiments may not solve any one problem in these problems. It will thus be appreciated that the embodiment of disclosure provided herein is not limited to solve conventional virtual Whole or any of above problem of assistant.
Some embodiments at least some information that can access in user profiles and based on The information accessed in user profiles customizes the virtual assistant of its behavior.User profiles can be stored in Any suitable position or the addressable position of virtual assistant.Such as, user profiles can be deposited Store up on the equipment performing virtual assistant and/or be directly or indirectly communicably coupled to perform virtual (such as, one or more servers, use on one or more miscellaneous equipments of the equipment of assistant The smart phone etc. at family).
In certain embodiments, virtual assistant can by customize wherein virtual assistant to user in The pattern of existing information customizes its behavior when mutual with user.User profiles can include specifying The information of virtual assistant role, and virtual assistant can access this information and by when with Use this virtual assistant role to customize its behavior when family is mutual.As a non-limitative example, The information specifying virtual assistant role can be with specified speech font (voice font) and/or speak Style and virtual assistant can come by generating speech according to voice font and/or locution Use virtual assistant role.As another non-limitative example, it is intended that virtual assistant role's Information can specify GUI pattern (such as, text style) and virtual assistant to pass through Generate text according to the text style specified and/or other graphical information uses virtual assistant angle Color.Virtual assistant how can customize wherein it present to user the pattern of information these and its Its example is more particularly described below.
In certain embodiments, virtual assistant can present to user's by customizing virtual assistant The content of information customizes its behavior when mutual with user.User profiles can specify instruction to use The information of family interest, and virtual assistant can access this information and by for those interest Cutting it present to the information of user to customize its behavior.As a non-limitative example, use Family profile can include information (such as, the Russia of one or more themes that appointment user is interested Ross politics, patriot football team of New England, automobile etc.) and virtual assistant can to Family provides the letter that (inputting on one's own initiative and/or in response to user) is relevant to one or more themes Breath (such as, news article, advertisement etc.).As another non-limitative example, Yong Hujian Shelves can include indicating user to like certain types of media content (such as, film school, sound Happy school, musician, have the film etc. of specific actors) information, and virtual assistant is permissible (inputting on one's own initiative and/or in response to user) this certain types of media content is recommended to user.
Some embodiments are for being configured to provide to the multiple virtual assistants performed on different devices System to the access of at least some public information in user profiles.By this way, virtual Assistant can customize its behavior when mutual with user based on the information in user profiles, in order to User provides consistent experience.Such as, system can be from the equipment performing virtual assistant (such as, the smart phone of user) receives the request of at least some information in user profiles that accesses, And provide the access to the information asked (if it is determined that this equipment has permissible to this equipment Carry out the license of this access) so that the virtual assistant performed on the device can be based on institute Information customization its behavior when mutual with user accessed.Then, system can be virtual from performing Another equipment (such as, the kneetop computer of user) of assistant receives and accesses user profiles Request, and system can be to another equipment offer access to profile so that at another The virtual assistant performed on equipment can customize its behavior based on the information in profile.With this Mode, performs the two equipment (such as, the smart phone of user and kneetop computer) is upper At least some public information that is able to access that in user profiles of virtual assistant.
Correspondingly, the virtual assistant performed on different devices can be based on the letter in user profiles Breath customizes its behavior, thus shows in the same or a similar manner, with to void different from these Intend the Consumer's Experience that the mutual user of assistant provides consistent.Perform on different devices virtual helps Reason can be supplied to the pattern of the information of user and/or content customization is same or similar 's.As non-limitative example, user profiles can include the information specifying virtual assistant role And the virtual assistant performed on different devices can access this information and mutual with user Virtual assistant role identical for Shi Caiyong.
In certain embodiments, the virtual assistant performed on one device can update user's letter Shelves so that the virtual assistant performed on another can be based in user profiles at least one A little information customization its behaviors when mutual with user updated.As a non-limitative example, Can be at user profiles at the upper virtual assistant performed of an equipment (such as, the automobile of user) Middle storage instruction user listens the information of special audio book the most onboard.At another equipment (such as, The home computer of user) the upper virtual assistant performed can access this information in user profiles, And when automatically helping user's (such as, when the user is at home) to continue to listen him/her onboard (such as, by prompting user's query, whether he/her wants to continue to listen this audio frequency the audio books listened Book).As may be appreciated from the example above, it is allowed to perform on different devices virtual helps Reason access and the information updated in (such as, add, revise and/or delete) user profiles can To allow users with multiple equipment execution task (such as, listening audio books).User can be Task (such as, listen music on his car) is performed on one equipment, and can be in difference Equipment on continue the execution of that task and (such as, continue with his home stereo system System listens identical music).Striding equipment continues the execution of task and carries out more detailed below with reference to Fig. 6 Carefully describe.
In certain embodiments, user profiles can be stored remotely from virtual assistant and holds the most thereon The equipment (such as, on one or more equipment that can access via network) of row.As one Individual non-limitative example, user profiles can be stored in the addressable clothes in one or more the Internet On business device.Local device (such as, the laptop computer of user, the smart phone of user Deng) the upper virtual assistant performed can be via network access information in the profile of remotely storage. Local device can store the local replica of user profiles.The local replica of user profiles can be Any suitable time and in any suitable manner user profiles with remotely storage carry out synchronize, Because each side of disclosure provided herein does not the most limit.These embodiments exist It is described in more detail below with reference to Figure 1A.
In certain embodiments, user profiles can store on the mobile apparatus.Non-as one Limitative examples, user profiles can be stored on the smart phone of user.At another equipment (such as, the TV etc. of the laptop computer of user, user) upper virtual assistant performed can With the information accessed in any suitable manner in the profile of storage in the mobile device of user, Such as, direct wired or wireless be connected by setting up with mobile device (such as, bluetooth connect, Near field RF connection etc.).By this way, the mobile device operation of user is profile concentrator, Making when user has mobile device together with him/her, mobile device allows at miscellaneous equipment The virtual assistant of upper execution access the information in user profiles and without accessing any network.These Embodiment is described in more detail below with reference to Figure 1B.
As it has been described above, virtual assistant can customize it based at least some information in user profiles Behavior.But, the information that virtual assistant is not limited to be based only in user profiles customizes its behavior. Alternatively or additionally, in certain embodiments, virtual assistant can be based on except virtual assistant (one or many of other users one or more outside the user of the equipment performed the most thereon Individual) at least some information in profile customizes its behavior.(one or more) other users can With via user network (such as, social networks) and/or in any other suitable way with The user of equipment is associated.
Operation on the equipment of specific user's (for the sake of quoting, " Alice ") Virtual assistant can letter in based on other users one or more (one or more) profile Breath customizes its behavior with any various ways.As a non-limitative example, hand over Alice Mutual virtual assistant can access specify at least in part at least one other user (one or Multiple) information of schedule, and based on the information accessed at Alice and at least one other Arrangement activity between user (such as, meeting, telephone relation etc.).Unrestricted as another Property example, the information in (one or more) profile of other users one or more is permissible Including identifying the information of (one or more) other users one or more themes interested also And virtual assistant can be by presenting and (one or more) the theme phase identified to Alice The information (such as, news article, advertisement etc.) closed customizes its behavior.Such as, via network The one or more users being associated with Alice may have in its profile instruction they to pass In the information that the news of Egyptian politics is interested.Correspondingly, mutual with Alice virtual help Reason can provide to Alice (on one's own initiative or in response to the input from Alice) to about angstrom And the link of the news article of politics.As another non-limitative example, via network with One or more users that Alice is associated can have instruction in its profile, and they like special The information of fixed one or more projects (such as, media content, product etc.) and virtual help Reason can provide (on one's own initiative or in response to the input from Alice) specific to Alice The recommendation of (one or more) project is (such as, by presenting the advertisement of media content, product Deng).Such as, user may want to see a film together with his friend Joe and can be to void Intend the suggestion of the film that assistant's inquiry all can be liked about him and Joe two people.As response, empty Intend the electricity that assistant can indicate Joe and user to like in the profile of profile based on Joe and user The information of the type of shadow provides the recommendation to film.
As from described above it should be understood that in certain embodiments, virtual assistant can be (such as, information is provided a user with) based at least some in user profiles time mutual with user Information and/or (one or more) of other users one or more being associated with user At least some information in profile performs one or more action on one's own initiative.Additionally or alternative Ground, when one or more user's specified requirementss are satisfied, virtual assistant can perform one or Multiple user's required movements.
In certain embodiments, user can specify at least one condition and when this at least one When user's specified requirements is satisfied, the action of at least one correspondence to be held by the virtual assistant of user OK.When (such as, by virtual assistant or be configured to communicate with the equipment performing virtual assistant Another computer) determine that, when user's specified requirements is satisfied, virtual assistant can perform user Required movement.As a non-limitative example, when the user determining equipment will be late meeting Time, virtual assistant may remind the user that (such as, by changing equipment that it runs thereon Background color on desktop).As another non-limitative example, when virtual assistant determines body When educating match (such as, Basketball Match) score change threshold amount (such as, ten points), empty Intend assistant and can present the renewal of score to user.User's specified requirements and corresponding user specify Other example of action is presented below.
In certain embodiments, when corresponding user's specified requirements is satisfied (such as, when When weather forecast is rainy, when the prices of designated speculative stock is to during less than threshold value etc.), virtual help Reason can be at least partially through utilizing another application program (such as, e-mail applications journey Sequence, alert applications program etc.) perform user's required movement (such as, weather forecast will be included The Email of link be sent to my spouse, alarm etc. of sounding).In other embodiments, Virtual assistant need not to use other application program one or more to perform action because some User's required movement (such as, providing a user with information by generation speech) can be helped by virtual Manage and oneself perform.
Applicant have also realized that, when MPTY uses equipment (such as, smart mobile phone) with mutual During the call of formula voice answer-back (IVR) system, the virtual assistant performed on equipment is utilized to carry out Call can provide between MPTY and IVR system improve mutual.Correspondingly, some are real Executing example offer utilizes the virtual assistant performed on calling party device at IVR system and MPTY Between converse.Virtual assistant can access at least some information in MPTY profile and By based on access informational influence wherein during conversing to MPTY provide information pattern and / or come for carrying out the content of the information of transmission between the equipment conversed at IVR with by MPTY Converse.
In certain embodiments, MPTY profile can include the information specifying virtual assistant role And virtual assistant can be by adopting when the information received from IVR is supplied to MPTY Affect with virtual assistant role and the pattern of information is wherein provided to MPTY during conversing.Example As, virtual assistant role can with specified speech font and/or locution and virtual assistant To generate speech, with the information that will receive from IVR according to voice font and/or locution Pass to MPTY.By this way, from the information of IVR with the virtual assistant of MPTY That be familiar with and personalized style presents to MPTY rather than direct by conventional IVR system The speaking style provided.
In certain embodiments, virtual assistant is by providing IVR system from MPTY profile Desired at least some information is conversed, and without asking user to input this information.As One non-limitative example, MPTY profile can include identifying the information of MPTY (such as, Name, address, social security number etc.) and virtual assistant can to IVR system provide extremely The information of fewer identification MPTYs so that MPTY is without inputting this information.As another Individual non-limitative example, MPTY profile can be included between MPTY and IVR system One or more previous call are supplied to information (such as, the account of IVR system by MPTY Number, credit card number etc.), and virtual assistant can provide at least some to IVR system This information provided by MPTY, and input it without MPTY.
Should be appreciated that and embodiment described herein and can realize with any various ways.Specific reality Existing example is presented below, being merely to illustrate property purpose.Should be appreciated that these embodiments with And the feature/function provided can be used alone, be used together or with two or more Multiple is used in any combination, because each side of disclosure provided herein does not has in this respect Restricted.
The most ubiquitous virtual assistant
Some embodiments of disclosure provided herein can be such as saying shown in Figure 1A The environment of bright property environment 100 operates.In Illustrative environment 100, user 102a is permissible Mutual with calculating equipment 104a, to access information via the equipment of calculating, to provide to the equipment of calculating Input, obtain from calculating equipment output, use calculating equipment one or more application programs, Utilize operating system on calculating equipment perform one or more actions and/or for any its Its suitable purpose.Similarly, in exemplary environments 100, user 102a can be with meter Calculation equipment 104b is mutual, and user 102b can in order to any of above purpose or any other Suitably purpose is mutual with calculating equipment 104b and 104c.
Calculating equipment 104a, 104b and 104c be programmed to realize respectively virtual assistant 105a, 105b and 105c.User 102a can at least partially through utilize virtual assistant 105a with Equipment 104a is mutual in calculating.User 102a and 102b can be at least partially through utilizing void Intend assistant 105b mutual with calculating equipment 104b.User 102b can be at least partially through Utilize virtual assistant 105c mutual with calculating equipment 104c.In the illustrated embodiment, each Calculating equipment 104a, 104b and 104c are programmed to realize a virtual assistant.But, this The each side of the disclosure that literary composition provides the most does not limits, because each calculating equipment can To be programmed to realize multiple virtual assistant.
As it was previously stated, virtual assistant can access the information in user profiles and based on user's letter At least some information in Dang customizes its behavior.(how can be based on user about virtual assistant Information in profile customizes the example of its behavior and provides in this article).Such as, virtual assistant 105a can be configured to access the profile of user 102a and profile based on user 102a In at least some information customization its behavior when mutual with user 102a.As another example Son, virtual assistant 105b can be configured to access user 102a profile, and based on At least some information customization its behavior when mutual with user 102a in the profile of family 102a. As an also example, virtual assistant 105b can be configured to access the profile of user 102b also And at least some information in profile of based on user 102b customizes when mutual with user 102b Its behavior.As another example also having, virtual assistant 105c can be configured to access At least some information customization in the profile of user 102b and profile based on user 102b is worked as Its behavior time mutual with user 102b.
In the environment of diagram, virtual assistant 105a and 105b can be based on user 102a Information in profile customizes its behavior, in order to show in the same or a similar manner, thus when using When family 102a is mutual with these virtual assistants, provide consistent Consumer's Experience to him/her.Similar Ground, virtual assistant 105b and 105c can information customization in profile based on user 102b Its behavior, in order to show in the same or a similar manner, thus when user 102b is empty with these When plan assistant is mutual, provide consistent Consumer's Experience to him/her.
As from example above it should be understood that the virtual assistant (example performed on a single device As, the virtual assistant 105b performed on equipment 104b) can be based in different user (example Such as, user 102a and 102b) information that accesses in respective profile customizes in a different manner The behavior of virtual assistant when the user different from these is mutual.As a non-limitative example, Virtual assistant 105b can use (such as, at user 102a when mutual with user 102a Profile in specify, make virtual assistant utilize there is the female voice of Britain's accent to speak by slow word speed ) a virtual assistant role, and use when mutual with user 102b and (such as, exist That the profile of user 102b is specified, make virtual assistant by prolixity in the way of speak with male voice ) another virtual assistant role.As concrete non-limitative example, calculate equipment 104b can be home videos and the virtual assistant that performs thereon can with each family Personalized experience is provided to him or she when member is mutual.Concrete non-limiting as another Example, calculating equipment 104b can be the calculating equipment (such as, navigation elements) in automobile, And the virtual assistant performed thereon can carry to him or she when mutual with each kinsfolk For personalized experience.
In certain embodiments, when virtual assistant is configured to mutual with multiple users, virtual Assistant may determine that virtual assistant is mutual with which specific user so that virtual assistant is permissible Specific user is customized its behavior (such as, based on the information in specific user profile).Virtual With any various ways, assistant can determine that it is mutual with which user.In some embodiments In, when virtual assistant be utilized be associated with specific user particular utterance (such as, keyword, Phrase, title etc.) when calling, virtual assistant may determine that it is mutual with specific user. Such as, the different members of family can utilize different titles to call the virtual assistant in automobile (such as, father can by says " hello, Pepper " call virtual assistant and because of His virtual assistant of father is called " Pepper ", therefore virtual assistant may determine that it with Father is mutual, mother can by say " hello, Bettie " call virtual assistant and because of Being called " Bettie " for her virtual assistant of mother, therefore virtual assistant may determine that it is Mutual with mother, etc.).In certain embodiments, virtual assistant can be by based on user Speech recognition user (such as, by utilizing the voice signature of user) determine it with Specific user is mutual.Should be appreciated that virtual assistant can (example in any other suitable way As, utilize the combination of above-mentioned technology) determine that it is mutual with which user, because herein The each side of the disclosure provided the most does not limits.
In certain embodiments, when virtual assistant is configured to mutual with multiple users, virtual Assistant can be mutual with multiple users concurrently.Such as, virtual assistant can be handed over a user Mutually, while, the dialogue with another user is also at active state.Virtual assistant can be concurrently It is that a user performs task and performs another task for another user, and can be with right The mode of each user customization is mutual with that user.As a non-limitative example, work as father Father and mother the most onboard time, father can ask virtual assistant that car navigates to specific destination (such as, " hello, Pepper, please navigate to Four Seasons ").When they Drive and virtual assistant provides direction (such as, to pass through base in the way of to father's customization Information in father's Yu profile provides output) time, mother can ask virtual assistant to check weather (such as, " George, the weather forecast of tomorrow how ") and virtual assistant are with to mother The mode of customization provides this information (such as, by providing defeated based on the information in mother's profile Go out).
Virtual assistant can be configured on the equipment that virtual assistant performs the most thereon locally And/or remotely access user profiles from one or more miscellaneous equipments.As non-limiting example Son, virtual assistant 105a can be configured to calculate on equipment 104a locally and/or from Server 110 remotely accesses the profile (being described in greater detail below) of user 102a. When the copy of user profiles had both been locally stored on the equipment being arranged for carrying out virtual assistant, again When being remotely stored on one or more miscellaneous equipment, these copies can with any suitably Mode carries out synchronizing (such as, by virtual assistant and/or other software).
Virtual assistant can be mutual with user in any suitable manner.In certain embodiments, Virtual assistant can be by receiving any type of the equipment being supplied to execution virtual assistant by user Input, process provided input, perform based on the input that provided one or more actions, In response to the input provided to user present one or more output and/or perform any its Its suitably (one or more) function is mutual with user.In certain embodiments, virtual help Reason by performing one or more action on one's own initiative, and can input without user and hand over user Mutually.Such as, virtual assistant can provide a user with one or more output (such as, information Prompting, notice etc.), perform one or more action (such as, from/to one or more should With program and/or perform virtual assistant equipment on perform operating system send/reception information, Call one or more application program and/or the operation performed on the equipment performing virtual assistant One or more functions of system, etc.) and/or perform that any other is suitable on one's own initiative (one or more) function.As a non-limitative example, virtual assistant can be on one's own initiative Or enter through the information updated in user's calendar based on user mutual with user (such as, automatically Arrange work meeting based on the invitation from boss user in ground).
In certain embodiments, virtual assistant can receive phonetic entry from user.Phonetic entry It can be any suitable input that can be provided by voice of user.In certain embodiments, language Sound input can include being configured to one group of predefined language to be processed from virtual assistant One or more language of (that is, fixing grammer).But, in other embodiments, use Family is not limited by says one or more language from fixing grammer and provides voice to virtual assistant Input, and such as can provide by providing the phonetic entry of free form naturally to speak Phonetic entry.Therefore, in certain embodiments, phonetic entry can include that natural language inputs And virtual assistant can be configured to, with any suitable speech recognition and/or natural language Understand that technical finesse natural language inputs.Speech recognition and natural language understanding technology can be by holding The calculating equipment (such as, calculating equipment 104a) of row virtual assistant performs, completely by performing The calculating equipment of virtual assistant can to its other calculating equipment one or more accessed (such as, One or more web servers) completely perform or can be at least in part by performing void Intend assistant calculate equipment and at least in part by perform virtual assistant calculating equipment can be right Its one or more other accessed calculates equipment (such as, one or more web servers) Perform.
In embodiments more described below, it is defeated that virtual assistant is not limited to receive voice from user Enter, and also other class any calculating equipment being provided to perform virtual assistant can be received The input of type.But, not every embodiment limits the most in this respect, and herein The each side of the disclosure provided can be defined to receive the virtual assistant of phonetic entry and use.
In certain embodiments, virtual assistant includes the automatic speech recognition identifying the speech of user (ASR) engine, and analyze the speech that identified to determine the nature of action that user wants Language understanding (NLU) engine (or communicating with).These assemblies can be realized individually Or the most integrated (many of which example is known), because herein The each side of the disclosure provided is not limited to any kind of ASR or any kind of NLU engine.These and other assembly of virtual assistant is carried out below with reference to Fig. 3 A in more detail Description.
Virtual assistant can provide a user with the output of any suitable type.In certain embodiments, Virtual assistant can utilize one or more display to provide a user with visual output, utilize one Or multiple speaker provides voice output, provides sense of touch to export (such as, by making virtual assistant The calculating vibration equipment performed the most thereon) and/or provide any other suitably to export.
In the illustrated embodiment, calculating equipment 104a is desk computer, calculates equipment 104b is tablet PC, and the equipment 104c of calculating is laptop computer.But, this The each side of the disclosure that literary composition provides the most does not limits, because of according to described herein Embodiment each virtual assistant can user can be virtual at least partially through utilizing wherein Realize on any electronic equipment that assistant interacts.Such as, in certain embodiments, calculate Any one in equipment 104a-c can be the portable set of such as intelligent movable phone, individual Personal digital assistant (PDA), laptop computer, tablet PC or wherein user can With at least partially through other portable set any utilizing virtual assistant to interact.Can Alternatively, any one calculated in equipment 104a-c can be fixing electronic equipment, such as Desk computer, server, frame type computer or wherein user can be at least in part By other the suitable stationary electronic devices any utilizing virtual assistant to interact.Should manage Solve, although in certain embodiments, virtual assistant can utilize the meter that wherein user interacts Calculation equipment (such as, calculate equipment 104a-c) realizes, but in other embodiments, empty Intend assistant and can utilize one or more server (such as, server 110), or at least Partially by the calculating equipment utilizing wherein user to interact and at least partially through profit Realize with one or more servers, because each side of disclosure provided herein is at this Aspect does not limit.
In certain embodiments, user (such as, can use with at the calculating equipment belonging to user Computer etc. in the laptop computer at family, the smart phone of user, user's car) upper execution Virtual assistant mutual.But, user is not limited to and only execution on the equipment belong to user Virtual assistant is mutual, and in certain embodiments, can be with what its suitable equipment in office On the mutual (hotel that the computer in the car that such as, user rents, user stay of virtual assistant Entertainment systems in room, the unility computer etc. in the Internet cafe).The equipment that no matter calculates is No belonging to user, calculating equipment can realize being configured to ask to visit the information in user profiles The virtual assistant asked, and if virtual assistant license that institute solicited message accessed is awarded, Then customize its behavior based on the information accessed.
Each in calculating equipment 104a, 104b and 104c is configured to via communication link 106a-106d communicates with server 110 with network 108.Network 108 can be any properly The network of type, such as LAN, wide area network, the Internet, Intranet or any other close Suitable network.Each communication link 106a-106d can be wired communications links, radio communication Link or the communication link of other suitable type any.Calculating equipment 104a-104c and service Device 110 can be communicated by any suitable networking protocol (such as, TCP/IP), because of For wherein information at server 110 and the mode of transmission between equipment 104a-104c that calculates it is not Restriction to each side of disclosure provided herein.
Server 110 can store user's letter of each user in one or more users Shelves.In the illustrated embodiment, server 110 stores the first user for user 102a Profile and the second user profiles for user 102b.Server 110 can store for appointing The user profiles of what suitable quantity user.Server 110 can in any suitable manner and with Any suitable form storage user profiles, because each side of disclosure provided herein exists This respect does not limit.Server 110 can be one or more computer.For wherein taking Business device 110 includes the embodiment of multiple computer, and computer need be not necessarily positioned at Same Physical position also And can be distributed across multiple physical locations.In certain embodiments, server 110 can be cloud A part for computing environment.
Server 110 can be configured to from one or more calculating equipment that (such as, calculating sets Standby 104a, 104b or 104c) receive access one or more users (such as, user 102a And 102b) profile in the request of information.Server 110 may determine that request accesses and uses Whether the calculating equipment of family profile has the license of at least some information accessed in user profiles, When server 110 determines that calculating equipment has being permitted of at least some information in access user profiles Can time, server 110 can provide access to information to the equipment of calculating.Server 110 can Whole with access to request that the equipment that calculates of the information in user profiles provides in user profiles Information, some information or the access without any information.
Should be appreciated that environment 100 is merely exemplary, and many variants are possible.Example As, although environment 100 illustrates two users, and each user calculates equipment alternately with two, But this be only used to introduce simple for the sake of because Illustrative environment 100 can include appoint What appropriate number of user (such as, at least 100, at least 1000, at least 10,000 Individual, etc.), each user utilizes the respective virtual assistant realized on the computing device and appoints What appropriate number of calculating equipment is mutual.
In such as those some embodiments that can operate in the Illustrative environment 100 of Figure 1A In, user profiles can be stored remotely on the server of one or more network-accessible And the calculating equipment that interacts user (such as, user laptop computer, in interconnection The computer etc. that the user of net Internet bar is currently in use) the upper virtual assistant performed can be via network Access the information in the profile of the remotely storage of user.But, retouch below with reference to Figure 1B In the other embodiments stated, user profiles can be stored in the portable set (example belonging to user As, the smart phone of user) what its calculating equipment (such as, knee joint of user upper and in office Laptop computer, the computer at the Internet cafe, the computer etc. in automobile) upper execution Virtual assistant can be stored in user just by setting up with the access that is directly connected to of portable set The information in profile in portable device.In certain embodiments, user profiles can be stored For encryption data, to provide Information Security.User profiles can come in any suitable manner Encryption, because each side of disclosure provided herein does not the most limit.
In Illustrative environment 150 (Figure 1B), user 152 carries to have and stores thereon The portable set 154 of user profiles.Portable set 154 can be with any suitable side Formula and store user profiles in any other suitable format, because disclosure provided herein is each Aspect does not the most limit.
Portable set 154 can be configured to provide right to other calculating equipment one or more The access of the user profiles being stored in portable set 154.In the illustrated embodiment, just Portable device 154 is configured to provide the profile to user 152 to calculating equipment 156 and 158 Access so that the virtual assistant performed thereon can be based at least some information in profile Customize its behavior when mutual with user 152.
Portable set 154 can be configured to provide via portable to another calculating equipment The access to user profiles of the DCL between equipment and other calculating equipment.Directly logical Letter link can be wired or wireless communication link, such as Bluetooth link, near field radio frequency link, Near field infrared link or the wireless communication link of other suitable type any.Enforcement in diagram In example, portable set 154 be configured to calculating equipment 156 and 158 provide respectively via Directly wireless link 155a and the 155b access to the profile of user 152.But, it should reason Solving, in other embodiments, the communication link between portable set and other calculating equipment can To be wire link and/or to utilize other calculating equipment one or more (such as, one or many Individual repeater, one or more router, one or more network equipment etc.) set up indirect Link.
Portable set 154 can be the smart phone of user, the PDA of user, user Tablet PC, the laptop computer of user and/or can set to one or more other Any other type of portable set of the standby access that the profile to user 152 is provided.Such as, Portable set 154 can be can store user profiles and can with one or more other Any equipment of computing device communication.
In certain embodiments, portable set 154 can be configured to realize virtual assistant. Virtual assistant can be configured to access the profile of user 152 and based at least in profile A little information customizations its behavior when mutual with user 152.
Each in calculating equipment 156 and 158 can be arranged to realize appointing of virtual assistant The calculating equipment of what type.As a non-limitative example, in Illustrative environment 150, Calculating equipment 156 is TV and to calculate equipment 158 be laptop computer.At the equipment of calculating 156 (or calculating equipment 158) upper virtual assistant realized can be configured to access user 152 Profile, and customize its behavior based at least some information in profile.
As described by earlier in respect of figures 1A, virtual assistant can be configured to the most virtual On the equipment that assistant performs the most thereon locally and/or long-range from one or more miscellaneous equipments Ground accesses user profiles.Such as, in Illustrative environment 150, calculate equipment 156 (or 158) the upper virtual assistant performed can be configured at calculating equipment 156 (or 158) upper originally Ground, ground and/or remotely access the profile of user 152 from portable set 154.When user's letter The copy of shelves had both been locally stored in and has been arranged for carrying out the equipment of virtual assistant (such as, calculating sets Standby 156) one or more miscellaneous equipment (such as, portable set it is remotely stored in again on 154), time above, these copies can be synchronized.Synchronization can be held in any suitable manner OK, because each side of disclosure provided herein does not the most limit.
User profiles can include can by virtual assistant make for customize its behavior any suitably Information.The non-limitative example of the information can being stored in user profiles is below with reference to Fig. 2 There is provided, wherein Fig. 2 be some embodiments according to disclosure provided herein, be stored in The block diagram of the information in illustrative user profile 200.
Exemplary user profile 200 stores identification information 202, personal information 204, virtual helps Reason Role Information 206, application and service information 208, facility information 209, conversation history letter Breath 210 and user preference 212.The non-limiting example of the information of each type listed above Son is presented below, but user profiles can alternatively or additionally store any other and close The information of suitable type.
User profiles 200 is the profile of specific user, and in certain embodiments, mark letter Breath 202 can include any suitable information identifying specific user.Identification information unrestricted Property example includes the user login name for accessing user profiles and password, the name of user, use The address at family, the answer to one or more safety problems, the social security number of user, one Or the identifier of each in multiple subscriber equipment (such as, the smart phone, above-knee of user The identifier of type computer etc.), the numeral of (one or more) user fingerprints represents or raw Thing characteristic information, such as can be used to voice based on user (such as, the voice signature of user) Identify the information of user and/or can be used to identify other suitable information any of user.
In certain embodiments, identification information 202 can include that appointment can access user profiles The information of one or more equipment.Such as, identification information 202 can specify addressable user The particular list of the equipment of profile is (such as, by device identifier or other is suitable with any The each equipment of mode identification).As another example, identification information can be specified and be may have access to use The certain form of equipment of family profile (such as, mobile device, be positioned at certain or some geographic regions Equipment in territory, the equipment etc. belonging to or being runed by special entity).As also have another Example, identification information 202 can specify the one or more equipment that can not access user profiles. In certain embodiments, identification information 202 can also specify each equipment to may have access to user profiles Which part (such as, virtual assistant Role Information, personal information, all information etc.).
In certain embodiments, identification information 202 can include specifying addressable user profiles, One or more other users' different from the user that its information is included in user profiles 200 Information.Identification information 202 can also specify other users can access which portion of user profiles Divide (such as, the interest of user, all information etc.), and can be every other globally User, for the group of user or do so individually for other users each.
Personal information 204 can include any suitable personal information about user.Individual's letter Breath non-limitative example include (one or more) address of user, (the one of user Individual or multiple) telephone number, (one or more) e-mail address of user, one or Multiple user accounts (such as, bank account, credit card etc.) number, make to by user Log-on message (such as, the user of one or more online servicesLog in letter Breath, userLog-on message, userLog-on message, etc. Deng), identify the contact person of one or more user information (such as, they name, he Address, they telephone number, they e-mail address, they are at one or many Online identifier in individual social networks) and/or other suitable personal information any.
Virtual assistant Role Information 206 can include that appointment virtual assistant can when mutual with user The information of the one or more roles to use.Such as, virtual assistant Role Information can be specified The virtual assistant role that can use when virtual assistant is mutual with user the most operationally, with And when another virtual assistant angle that virtual assistant and user just at home can use time mutual Color.As another example, virtual assistant Role Information can specify virtual assistant can be to use Family with virtual assistant time mutual may perform one or more types task in each of (task dispatching that the task that such as, business is relevant, the task of lying fallow relevant, family are correlated with) is adopted Virtual assistant role.
The information specifying virtual assistant role can specify help virtual when using virtual assistant role How reason " talks " and/or " performance ".As a non-limitative example, it is intended that empty The information of plan assistant role can be specified can root when virtual assistant uses this virtual assistant role The voice font of speech is generated according to it.Voice font can with specified speech be male voice or female voice, The tone of voice, the accent of voice, the speed etc. of voice.As another non-limitative example, The information specifying virtual assistant role can be specified when virtual assistant uses this virtual assistant role Can according to its generate speech locution (such as, speech be prolixity or succinct, Speech is whether informal or formal, speech is whether humorous, speech is irreverent , speech whether to use simple or complicated vocabulary, etc.).
The information specifying virtual assistant role can be specified when virtual assistant uses this virtual assistant angle Can be according to the text style of its generation text during color.Text style can correspond to any of above (such as, virtual assistant can generate prolixity or succinct word, informal to locution Or formal word, word, the word of irreverent of humour, utilize simple or complicated word The word converged, etc.) or other suitable text style any, because disclosure provided herein The each side of content does not the most limit.
The information specifying virtual assistant role can be specified when virtual assistant uses this virtual assistant angle One or more graphic user interfaces (GUI) element of user can be presented to during color.Such as, The information specifying virtual assistant role may indicate that virtual assistant will be to user when mutual with user Show that one or more image (such as, represents the particular picture of virtual assistant, such as assistant Xiao As form, the background image of trying to please user, etc.).As another example, it is intended that virtual The information of assistant role may indicate that virtual assistant to show that (or alternately hiding) provides Text transcription to any spoken output of user.
The information specifying virtual assistant role can specify the virtual assistant having used this role by right The one or more of its response wake up phrase and/or name up.Such as, it is intended that virtual assistant role Information can be virtual assistant specify name (such as, Alice, Bob, Sam, Johnny Deng) and say the name of virtual assistant in response to user, virtual assistant will start to hand over user Mutually.As another example, it is intended that the information of virtual assistant role can specify virtual assistant to incite somebody to action (such as, " wake up ", " you can help me to the phrase that wakes up up responsed to which?", etc.).
Application and service information 208 can include about user with any suitably (one or many Individual) one or more application programs on equipment and/or via any suitably (or many Individual) the mutual information of one or more services that accesses of equipment.In certain embodiments, should Can include and the one or more equipment interacted by user with information on services 208 The information that the one or more tasks performed are relevant.As a non-limitative example, application and Information on services 208 may indicate that user is utilizing and is configured on the smart phone of user play The application program of music listens song, and alternatively, user hear song (the most such as, If making user stop listening song, then user can continue to listen this song afterwards).Make For another non-limitative example, application and service information 208 may indicate that user is just user Car in listen audio books, and alternatively, user has heard where (such as, making of audio books If obtaining user to stop listening audio books, then user can continue to listen this audio books afterwards).Make For another non-limitative example also having, application and service information 208 may indicate that user is just In the sports tournament watched on its home videos.
Application and service information 208 can include indicate user used which application program and/ Or information, the user serviced is supplied to application program and/or services what input, application program And/or service be supplied to what information of user, when user employ specific application program and/ Or service, when user use specific application program and/or service time user be positioned at place, And/or any other suitable information.
Application and service information 208 can include with one or more application and/or service in Each information being associated.The information being associated with application program and/or service can by or Represent application and/or service is written in user profiles.The letter being associated with application and/or service Breath can be stored in and apply and/or service (such as, registration, special etc.) being associated In a part for profile.By this way, apply and/or service (such as, the application in hotel) Information (such as, the instruction smokeless room of user preference and commercial house can be added to user profiles Between).Whether application and/or service can specify and may be used with applying and/or servicing the information being associated With by other application and/or service access.
Facility information 209 can be included as being configurable to access the one or more of user profiles The information of each equipment storage in equipment.Information for equipment storage can include by equipment The information that the virtual assistant of upper execution (such as, when with user time mutual) uses.As one Non-limitative example, can include can be used to being authenticated user for the information of equipment storage The voice signature of user.Information for distinct device can include different voice signature, because of For equipment may use in different acoustic enviroments (such as, TV may be in internal use, Guider may use in car, mobile phone may use outside, etc.).As Another non-limitative example, the information for equipment storage can include that one or more equipment sets Put (such as, one or more UI Preferences, one or more networking arrange, one or Multiple security set, one or more Power Management Setup, etc.).Equipment performs Virtual assistant can arrange setting of change equipment based on be stored in user profiles for equipment Put.As another non-limitative example also having, the information for equipment storage can include using Identification information (such as hwid, the unique mark provided by virtual assistant software in equipment Know symbol, etc.).Different types of information is potentially stored on different equipment.
Conversation history information 210 include user with on one or more equipment perform one or One or more mutual transcribing between multiple virtual assistants.Such as, for user 102a User profiles can include any mutual the turning between user 102a and virtual assistant 105a Any mutual transcribing between record and user 102a and virtual assistant 105b.User and void Mutual the transcribing intended between assistant can include corresponding to being supplied to virtual assistant extremely by user Lack texts of some inputs and corresponding to being supplied at least some output of user by virtual assistant Text.
Interest information 212 can include that what any suitable information is the interest of instruction user be. As a non-limitative example, interest information may indicate that interested one or more of user Website.As another non-limitative example, interest information 212 may indicate that user is interested One or more themes (such as, Muscovite politics, patriot football team of New England, Automobile etc.).As another non-limitative example also having, interest information 212 may indicate that One or more products that wherein user may be interested.As also have another is non-limiting Example, interest information 212 may indicate that (such as, user likes certain types of media content Film school, musical genre, musician, there is the film etc. of specific actors).
The embodiment of virtual assistant can use hardware, software or conduct hard as described herein The combination of part and software realizes (such as, as being stored at least one non-transitory computer On computer-readable recording medium, perform the function of virtual assistant when executed by one or more processors Processor executable).At least partially through the virtual assistant utilizing software to realize one Plant embodiment to illustrate in figure 3 a, it illustrates the component software of illustrative virtual assistant 300 Block diagram.It should be appreciated that the component software illustrated in figure 3 a is merely illustrative, And virtual assistant can by utilize as the component software illustrated in figure 3 a add or Other component software substituted realizes.
Any suitable calculating equipment (such as, calculate equipment 104a, 104b, 104c, 154, 156 and 158) or two or more calculate equipment set can be programmed to realize void Intend assistant 300, because each side of disclosure provided herein does not the most limit. Such as, in certain embodiments, virtual assistant 300 can utilize the calculating that user interacts Equipment (such as, mobile computing device) realizes.In certain embodiments, virtual assistant 300 can utilize one or more server (such as, server 110) to realize.One In a little embodiments, virtual assistant 300 can interact at least partially through utilizing user Equipment and at least partially through utilizing one or more server to realize.
Example virtual assistant 300 includes multi-mode user interface (UI) assembly 302, is used for Support between user and virtual assistant mutual with two or more patterns.Illustrate in figure 3 a Illustrative embodiment in, multi-mode UI assembly 302 include acoustics UI assembly 304 and figure Shape UI assembly 306.
As it was previously stated, virtual assistant can be configured to from user receive sound input and to Family presents voice output.This function can be held by acoustics UI assembly 304 at least in part OK.In order to by utilizing speech mutual with user, acoustics UI assembly 304 can use any Suitably technology, such as speech recognition (ASR) and/or text synthesize to speech automatically (TTS) technology.In the illustrated embodiment, this function can be respectively by ASR 310 and tts engine 314 provide.Additionally, it is as discussed above, in some embodiments In, the speech of user is unfettered and user can speak naturally.In these embodiments, Virtual assistant can also include (or can access) natural language understanding (NLU) assembly 312。
ASR 310 can be configured to locate reason user and be supplied to virtual assistant 300 Any phonetic entry and the text representation of generation phonetic entry, and include when being counted by least one Calculation equipment (such as, calculates other suitable (one or more) meter of equipment 104a or any Calculation equipment or (one or more) processor) perform time, be configured to of do so or many Individual computer program.Such as, ASR 310 can be configured to, with one or more Acoustic model, language model, dictionary, vocabulary, grammer and/or these or other suitable The input acoustic waveform being supplied to virtual assistant 300 is performed to say by the combination in any of ASR technology Words identify, because each side of disclosure provided herein is not by the concrete reality of ASR Now limit.
NLU assembly 312 can be configured to explanation and is supplied to virtual assistant 300 by user Any phonetic entry, and include when (such as, being calculated equipment by least one calculating equipment 304 or any other suitable (one or more) calculate equipment or (one or more) place Reason device) perform time, be configured to one or more computer programs of do so.Therefore, NLU Assembly 312 can be used to understand the implication of the phonetic entry being supplied to virtual assistant.NLU group Part 312 can be configured in any suitable manner with utilize any suitable natural language to manage Solve technical interpretation phonetic entry, because each side of disclosure provided herein is not with any side Formula is implemented restriction by NLU assembly.
In certain embodiments, NLU assembly 312 can be configured at least partially through Text representation that analyze its correspondence, that can be produced by ASR 310 is to explain that voice is defeated Enter.Therefore, although in the illustrated embodiment, NLU assembly 312 and ASR 310 Separate, but in other embodiments, ASR 310 and NLU assembly 312 can be A part for same assembly, because each side of disclosure provided herein does not has in this respect Limit.
Should be appreciated that NLU assembly 312 is not limited to explain phonetic entry and can be used to Explain any multiple other type of input being provided to virtual assistant 300.Such as, NLU Assembly can be used to explain by keying in, writing and/or provide in any other suitable way Input to the text of virtual assistant.
Tts engine 314 can be configured to be converted to the text representation of content the speech of synthesis, And including when by least one calculating equipment (such as, calculate equipment 104a or any other Suitably (one or more) calculate equipment or (one or more) processor) when performing, It is configured to one or more computer programs of do so.Tts engine 314 can use splicing Synthesis, formant synthesis, synthesis based on model, sounding synthesis, synthesis based on HMM, Sinusoidal wave synthesis or the method for other speech synthesis any, because in disclosure provided herein The each side held is not implemented restriction by tts engine.Such as, in certain embodiments, Tts engine 314 can be configured to present the acoustic waveform of record to user.
In certain embodiments, tts engine 314 can be configured to according to by virtual assistant The virtual assistant role creation speech that 300 use.Such as, if virtual assistant 300 uses tool Have the virtual assistant role of special sound font and/or locution, then tts engine 314 can To generate speech according to specific voice font and/or locution.
A part although illustrated as the virtual assistant 300 in Fig. 3 A, but it is to be understood that Each in ASR 310, NLU assembly 312 and tts engine 314 can be with Virtual assistant 300 realizes discretely and communicates with virtual assistant 300.Correspondingly, by The function that ASR 310, NLU assembly 312 and tts engine 314 perform can be by compiling Journey is that the calculating equipment (such as, calculating equipment 104a) realizing virtual assistant 300 is in this locality Perform completely, can access by the calculating equipment being programmed to implement virtual assistant 300 one or Multiple other calculate equipment (such as, such as server 110 via such as Intranet or interconnection One or more web servers of network-accessible of net) performing the most completely or In this locality and remotely performing at least in part at least in part.In certain embodiments, volume is worked as Journey is that the calculating equipment (such as, mobile device) realizing virtual assistant 300 has limited money Source (such as, disposal ability, memorizer etc.) time, by ASR 310, NLU assembly 312 and the function that performs of tts engine 314 can remotely perform at least in part.When by At least the one of the function that ASR 310, NLU assembly 312 and tts engine 314 perform Part when remotely performing, is somebody's turn to do (one or more) remote by one or more remote computing device Journey calculates equipment and can have that can be accessed by virtual assistant 300, for performing this function Any suitable information (such as, it is provided that to the phonetic entry of virtual assistant 300).
In certain embodiments, virtual assistant 300 can be configured to via one or more figures Shape user interface is mutual with user.Virtual assistant can use graphic user interface (GUI) from User obtains input and/or presents visual output (text and/or figure) to user.This merit Energy can be at least in part by graphic user interface (GUI) assembly 306 of virtual assistant 300 Perform.GUI component 306 can be configured to, with any (one or more) suitable class The graphic user interface of type obtains input from user and/or presents information to user.
Virtual assistant 300 includes that being configured to obtain identification from the user mutual with this virtual assistant uses The Subscriber Identity Module 313 of the information at family.Subscriber Identity Module 313 can make virtual assistant 300 point out with its mutual user to, to provide any polytype identification information, There is provided herein the example of identification information.
Virtual assistant 300 includes being configured to provide one or more users to virtual assistant 300 The user profiles module 316 of the access of the information in profile.User profiles module 316 can be by Be configured to access locally stored on the equipment being programmed to implement virtual assistant 300 and/or It is programmed to implement one or more miscellaneous equipments that it can be accessed by the equipment of virtual assistant 300 The user profiles of upper remotely storage.
User profiles module 316 can be configured to remotely deposit at least partially through sending to access The request of at least some information in the user profiles of storage is (such as, to server 110 or to just Portable device 152) access the user profiles remotely stored.Request can specify virtual assistant Information in the user profiles desired access to.As a non-limitative example, request can refer to Determine the virtual assistant Role Information that virtual assistant desires access to be stored in user profiles so that empty Intending assistant can be the virtual assistant role using personalization with user time mutual.As another Non-limitative example, request can specify virtual assistant to desire access to all letters in user profiles Breath.Alternatively or additionally, request can include identifying that user profiles module 316 please Seek the information of the user accessing its profile and/or identify the equipment that virtual assistant performs the most thereon Information.
User profiles module 316 can access on the equipment being programmed to implement virtual assistant 300 The locally stored information in any user profiles.Virtual assistant 300 can be by one or more User profiles is locally stored in Profile Repository 318 and user profiles module 316 is permissible Access the information in the most locally stored any profile.In certain embodiments, Yong Hujian Shelves module 316 can be in the profile of access of specific time user, such as, when user logs on When being programmed to implement in the equipment of virtual assistant 300.By this way, in certain embodiments, When another user has signed in and has been programmed to implement in the equipment of virtual assistant 300, Yong Hujian Shelves module 316 may not access the information in user profiles.
Although in the illustrated embodiment, profile bin 318 is illustrated as storing three user's letters Shelves (that is, user profiles 318a, 318b and 318c), but profile bin 318 is permissible Store any suitable quantity (such as, zero, one, two, four, at least five, extremely Few ten, at least 25, etc.) user profiles because disclosure provided herein Each side the most do not limit.
When user profiles can be accessed locally or remotely, user profiles module 316 is permissible (such as, based on which copy by required for most recently updated, remote access user's profile Time and/or any other (one or more) suitably factor) determine user to be accessed Which copy of profile.User profiles module 316 can synchronize user profiles this locality and/or Remote copy (such as, determines local and remote pair to user profiles when user profiles module When originally making the change of number of thresholds, or based on some other standards).
That illustrative virtual assistant 300 includes being used by virtual assistant, be programmed to implement in utilization The IVR carrying out conversing between MPTY and the IVR system of the equipment of virtual assistant 300 is mutual Module 320.IVR interactive module 320 can receive information from IVR system, to IVR system System provides the information inputted by MPTY and/or is expected by IVR system to IVR system offer MPTY profile at least some information.This is carried out below with reference to Figure 10-12 in more detail Discussion.
As it was previously stated, some embodiments are for being configured to virtual help to perform on different devices Reason provides the system of the access at least some information in user profiles.The enforcement of this system Example can the combination with hardware, software or as hardware and software realize (such as, making For the processor executable being stored at least one non-transitory computer-readable medium, Wherein when instruction is executed by one or more processors, perform to be configured to on different devices The virtual assistant performed provides the merit of the system of the access of at least some information in user profiles Can).A kind of embodiment at least partially through this system utilizing software to realize is being schemed Shown in 3B, it illustrates be configured to different virtual assistants provide in user profiles at least The block diagram of the component software of the system 350 of the access of some information.It should be appreciated that at figure Component software shown in 3B is merely illustrative, and system 350 can be by utilizing Other component software adjunctively or alternatively as the component software shown in Fig. 3 B realizes. Any suitable calculating equipment (such as, server 110) or two or more calculating equipment Set can be programmed to the system that realizes 350, because each side of disclosure provided herein Face does not the most limit.
System 350 includes being configured to (such as, calculate equipment at one or more miscellaneous equipments 104a, 104b and 104c) go up the virtual assistant offer performed to one or more user profiles In the use of access of information (such as, the information in the profile of user 102a and 102b) Family profile module 352.User profiles module 352 can be configured to access profile bin User profiles in 354, this be illustrated as in figure 3b storing three user profiles 356a, 356b and 356c.(such as, at least profile bin 354 can store any suitable quantity Ten, at least 100, at least 1000, at least 10,000, at least 50,000, Etc.) user profiles because each side of disclosure provided herein does not has in this respect Limit.
System 350 can store user's letter in any suitable manner and in any other suitable format Shelves.In certain embodiments, system 350 can utilize (such as, the service of a calculating equipment Device) or multiple calculating equipment (such as, multiple servers) storage user profiles.Real at some Executing in example, system 350 can be a part for cloud computing environment or be configured to and cloud computing Environmental interface, and at least some user profiles can be stored in cloud computing environment.
User profiles module 354 can be configured to from request the letter one or more users In Dang, the virtual assistant of the access of at least some information of storage receives request.As it has been described above, use Request in the information accessed in user profiles can identify the use asking to access its profile Family (such as, by providing the information identifying user), and virtual assistant can be specified to wish Information in the user profiles accessed.In response to the access received the information in user profiles Request, user profiles module 354 can perform process (their own or with one or more its Its equipment together, the most one or more certificate servers) determine the letter in user profiles The license of access request of breath is the most to be granted, and is then based on determining, or authorize or Person refuses this request.
As it was previously stated, in certain embodiments, virtual assistant can based in user profiles extremely Fewer information customization its behavior when mutual with user.One this embodiment is shown in the diagram Going out, it illustrates can be on any calculating equipment being programmed to implement at least one virtual assistant Perform, and can such as by with reference to Figure 1A and 1B describe calculating equipment 104a, What the virtual assistant realized in any one in 104b, 104c, 156 and 158 performed says The flow chart of bright property process 400.
Process 400 starts from determining frame 402, and wherein virtual assistant determines whether to access user's letter Shelves.In certain embodiments, virtual assistant may determine that and accesses when user calls virtual assistant User profiles.By offer, user can include that the calculating equipment when being performed process 400 receives Then, the phonetic entry (pass of such as, " waking up " of the invoked particular utterance of virtual assistant is made Key word or phrase), or make invoked other the suitable class any of virtual assistant by offer Virtual helping is called in the input (such as, press the button, click on screen, shake equipment etc.) of type Reason.In certain embodiments, virtual assistant is not limited to when being called by user determine whether to access User profiles, and can be while mutual with user and/or in office time what it is suitable Between determine access user profiles.
When determining that virtual assistant does not accesses user profiles at decision frame 402, before process 400 Entering action 418, wherein virtual assistant is mutual with user, and without using in user profiles Any information.
On the other hand, when determining virtual assistant user profiles to be accessed, process 400 proceeds to Determine frame 404, wherein determine that virtual assistant is intended to access and be stored in the equipment performing virtual assistant On the local replica of user profiles still access the user being stored on another or multiple equipment The remote copy of profile.This determine and can make in any suitable manner.Such as, if If the equipment performing virtual assistant does not have the basis of the local replica user profiles of user profiles If ground copy has not updated in threshold time period or virtual assistant determines user profiles Remote copy be more closely updated than the local replica of user profiles, then virtual assistant is permissible Determine the remote copy accessing user profiles.
When determining the local replica of virtual assistant user profiles to be accessed at decision frame 404, mistake Journey 400 proceeds to action 412 and 414, the information during wherein virtual assistant accesses user profiles And based on information customization its behavior when mutual with user accessed, and arrive action subsequently 416, wherein virtual assistant is mutual with user according to the behavior of customization.On the other hand, when determining During the remote copy of virtual assistant user profiles to be accessed, process 400 proceeds to action 406, The equipment wherein performing virtual assistant is set up and another of remote copy that can access user profiles The communication link of individual calculating equipment.
In certain embodiments, the equipment performing virtual assistant can be set up and can access user The calculating equipment (server 110 such as, described with reference to Figure 1A) of the remote copy of profile Communication link (such as, via the network of such as the Internet).In other embodiments, hold The equipment of row virtual assistant can set up with its on store the portable set of copy of user profiles DCL (its example of (portable set 154 such as, described with reference to Figure 1B) Son is provided above).When perform virtual assistant equipment Inspection to and/or be alerted existence During portable set, the equipment performing virtual assistant can be attempted setting up and storing user's letter on it The communication link of the portable set of the copy of shelves.
It follows that process 400 proceeds to action 408, wherein virtual assistant is from storage user's letter The license to accessing at least some information being stored in user profiles of the device request of the copy of shelves. As it was previously stated, request can include that identification virtual assistant asks to access the user's of its profile Information, and/or identify the information of equipment that virtual assistant performs the most thereon.Additionally, one In a little embodiments, request can specify the specific letter in the user profiles that virtual assistant desires access to Breath (such as, virtual assistant Role Information, information about user interest, etc.).But It should be understood that can include any for accessing the request of at least some information in user profiles Other suitable information, because each side of disclosure provided herein does not the most limit System.Additionally, in certain embodiments, request can not specify the letter that virtual assistant desires access to Customizing messages in Dang, and can be the request of any information in access profile.
It follows that process 400 proceeds to determine frame 410, wherein determine the visit to user profiles The license asked is awarded the most.If virtual assistant there is no the license accessing user profiles, Then process 400 proceeds to action 418, and wherein virtual assistant is mutual with user, and without using Any information in user profiles.
On the other hand, if the license accessing user profiles is awarded, then process 400 is advanced To action 412 and 414, information during wherein virtual assistant accesses user profiles and based on visit The information asked customizes its behavior, and arrives action 416 subsequently, and wherein virtual assistant is according to customization Behavior mutual with user.
Virtual assistant can customize its behavior in any suitable manner based on the information accessed, its The example of middle mode is being discussed above.Such as, as described earlier, virtual assistant is permissible Access the information of appointment virtual assistant role in user profiles and employing should when mutual with user Virtual assistant role.Virtual assistant role can specify sound font, locution and/or literary composition This pattern, and virtual assistant can be according to the voice font specified and/or locution generation Speech, and text can be generated according to the text style specified.Alternatively or additionally, Virtual assistant can be according to the relevant letter of the GUI specified for the virtual assistant role in user profiles Cease and present personalized GUI to user.
As discussed above, in certain embodiments, virtual assistant can pass through customizing virtual Assistant presents to its behavior when mutual with user of the content customization of the information of user.Such as, as Previously described, virtual assistant can access in user profiles the information indicating user interest, And by for those interest cuttings, it is presented to the information of user and customizes its behavior.Such as, Virtual assistant can provide a user with and the one or more masters interested according to user profiles user The information that topic is relevant, or ignore the information about the uninterested theme of wherein user.As Another example, the type that virtual assistant can be liked according to user profiles user to user's recommendation Media content.Virtual assistant can on one's own initiative, without user input in the case of or In response to user's input provide a user with the information relevant to one or more themes, suggestion and/ Or any other suitable information, because each side of disclosure provided herein is in this respect Do not limit.
In certain embodiments, virtual assistant can use information in user profiles with can be to User passes on the mode of sympathetic response to communicate.Virtual assistant can present to user's by customizing it The content of information and/or wherein it presents the pattern of information to pass on sympathetic response to user.Such as, In certain embodiments, virtual assistant can use instruction virtual assistant to understand that user is come by what Say important word or expression.As a non-limitative example, virtual assistant can access use Family profile indicates the information that user is the football fan of Boston Celtics basketball team, as user Inquiring the response about Celtics games results, virtual assistant can generate " good!C team Defeat Lakes team, 46 to 33 ".On the other hand, if Celtics falls behind, the most virtual Assistant can generate " uh, C team falls behind Lakes team, the 88 to 80, the 4th also 2 points Clock.Also it is hopeful!”.By this way, virtual assistant is used by passing on it to understand to user Family is the sympathetic response that Celtic football fan causes with user.
As another example, in certain embodiments, virtual assistant can access user profiles The which type of information content of middle instruction to the important information of user and change its locution with Reflect that level of significance.Such as, if the information being provided is urgent and/or important , then virtual assistant can generate the speech with the more serious tone, and if not urgent And/or important, then generate the more easygoing tone.As concrete non-limitative example, Virtual assistant in user's car can access and indicate user to wish to avoid the jams in user profiles Information, and can be with the serious tone (such as, with more serious than the message about weather The tone) " there is traffic jam in front, uses and disuses and recalculates route to generate message?”.
In certain embodiments, virtual assistant can based on by virtual assistant when mutual with user The information updating user profiles obtained.Virtual assistant can by from user profiles delete information, The information in user profiles and/or editor's user profiles that adds information to is to update user profiles. As a non-limitative example, virtual assistant can be by being supplied to virtual assistant by user Input add the conversation history information in user profiles to update user profiles.As another Individual non-limitative example, user can provide to virtual assistant and exist with at least partially through utilization Another application program (such as, music player application, the movie player performed on equipment Application, photo application, web browser application, calendar application etc.) task of performing is (such as, Listen music or audio books, see a film, check picture, access website, arrange for an engagement) relevant Information, and virtual assistant can add the information relevant to task to user profiles.With The information that task is relevant can include that identification mission (such as, plays audio books, music, film Deng) information, specify the one or more inputs of the customer-furnished execution for task Information (such as, the title of audio books, music, film etc.), which part of appointed task The information that has been performed or be not the most performed (such as, audio books, music, film etc. by Where it is played to).As described in more detail below, storing this information in user profiles can To allow another calculating equipment access this information and continue the execution of task.
As it was previously stated, in certain embodiments, system can be to the void performed on different devices Intend assistant and the access at least some information in user profiles is provided.One this embodiment exists Shown in Fig. 5, it illustrates and can be programmed for other calculating equipment one or more offer To perform on any calculating equipment of the access of at least some information in user profiles, and, For example, it is possible to by the server 110 described with reference to Figure 1A and Figure 1B respectively with portable set The flow chart of standby 154 illustrative process 500 performed.
Process 500 starts from action 502, wherein performs the calculating equipment of process 500 from separately The virtual assistant performed on one calculating equipment receives asking the license accessing specific user profile Ask.Request can be to reading the request of information from user profiles and/or writing information to The request of user profiles.As it was previously stated, the request received can include any following information: Identify that virtual assistant is asked to access the information of the user of its profile, identified virtual assistant The information calculated in the user profiles that the information of equipment, virtual assistant desire access to that performs on it, And/or any other suitable information.
In response to receiving the request accessing specific user profile, process 500 proceeds to determine frame 504, wherein determine whether the license accessing user profiles asked is awarded.This determines Can make in any suitable manner based on the information in the request received.As one Non-limitative example, it is possible to use identify information (such as, the login name and close of user in request Code information, biological information and/or any other properly identify information) attempt to Family is authenticated, and if user certified, then the license accessing user profiles can be awarded Give.As another non-limitative example, the equipment initiated from it when access request (or equipment Type) when being designated as the equipment that can access user profiles in user profiles, access and use The license of family profile can be awarded.As another example also having, when user is based on request The middle equipment that information is certified and user profiles instruction access request is initiated from it identifying user When can access user profiles, the license accessing user profiles can be awarded.As also have Another example, when determine request from its equipment initiated can with access specific information time, access In user profiles, the license of customizing messages can be awarded.Such as, the equipment (example of user is belonged to As, the smart phone of user, laptop computer etc.) can access and be stored in user profiles The personal information of user, and miscellaneous equipment (such as, in the car of rent, in hotel room, Calculating equipment in the Internet cafe etc.) personal information of user may not be accessed.
In certain embodiments, the information in request can not uniquely identify user to it The user profiles that request accesses can not be uniquely identified.On the contrary, one group of user's letter can be identified Shelves.In which case it is possible to use identify that request comes at this from the information of its equipment initiated Group user profiles identifies the user profiles that it is accessed by request.This can be with any suitable side Formula completes.In certain embodiments, can be based on identifying the request letter from its equipment initiated Breath determines that the certain profiles designated equipment in this group user profiles can access user profiles.With This mode, its user profiles accessed can be uniquely identified and access that by request The license of the information in user profiles can be awarded.
In certain embodiments, the request accessing user profiles can be mutual with user from performing The calculating equipment of virtual assistant receives.But, each side of disclosure provided herein is at this Aspect does not limit, because the request of the information of access can receive from other suitable equipment any. In certain embodiments, third party may want to access the information in user profiles.As one Non-limitative example, hotel may want to access user profiles and determines/specify user preference The type of hotel room, when user lived that this hotel maybe will stay in this hotel, user lives should The rate that the rate that hotel paid maybe will pay, etc..As another non-limiting example Son, automobile rental corporation may want to access user profiles and determines/specify that user preference is driven The type of car.As another non-limitative example also having, (such as, make with third party Another person for user friend) mutual virtual assistant may want to access in user profiles Information customize when with third party time mutual its behavior (such as, the virtual assistant of friend may be wished Activity between prestige arrangement friend and user, and for doing so, it may be desirable to access user About the information of user availability in profile).There is many other to may want to access user's letter Third-party example (such as, grocery store, credit card company, telephone operator, the aviation public affairs of shelves Department etc.) because each side of disclosure provided herein does not the most limit.One In a little embodiments, when user profiles specifies third party to be allowed access to user profiles, third party The license that access user profiles can be awarded.Such as, if user often stays in Hilton Hotel, then user can authorize Hilton hotel and access at least some information in user profiles License.
Below the example that how can make the decision authorizing the access to user profiles is illustrative And indefiniteness, and authorize access to user profiles decision can with any properly Alternate manner make.
When the license determining access user profiles at decision frame 504 is to be rejected, process 500 Proceed to determine frame 508, where it is determined whether have been received by accessing any user profiles another Individual request.On the other hand, when determining that the license accessing user profiles is to be granted, process 500 proceed to action 506, and the equipment that wherein calculates allows for the information in user profiles Reading and/or write.
After action 506 (or after following the "No" branch determining frame 504), Process 500 proceeds to action 508, where it is determined whether have been received by accessing any user profiles Another request.When determining that another request is received, process 500 returns to certainly Determine frame 504 and process it with ways discussed above.When determining that being not received by other asks, Process 500 terminates.
III. striding equipment continues task
As it was previously stated, the information being stored in user profiles is so that perform on one device Task can continue executing with on one or more miscellaneous equipments.User profiles can comprise knowledge The information of not performing on one device of task, and when user is near continuing this task Another equipment of execution time, this another equipment can access in user profiles and identify and held The information of the task of row and continue the execution of task.
As a non-limitative example, user may be with his/her smart phone audition Find pleasure in, and user profiles can include indicating user to listen music with his/her smart phone Information.As user to family, the stereo system of user can access user profiles, really Listening music with his/her smart phone before determining user and (be automatically or based on The input of user) determine and continue to play music (such as, the same broadcasting listened before user The same song of same place, same broadcasting station etc. in list).
As another non-limitative example, user just may listen audio books in his/her car, And user profiles can include the information indicating user just listening audio books in his/her car. When user arrives his/her hotel, the information entertainment in hotel can access user profiles, In his/her car, just listening audio books before determining user and (be automatically or based on use The input at family) determine that the position of audio books continues to broadcast when user leaves car in hotel room Put audio books.
As another non-limitative example, user wishes to perform the task in restaurant.User can To use his/her smart phone to subscribe restaurant, and user profiles can include indicating user Subscribe the information in restaurant.Afterwards, when user enters in his car, the navigation system of car is permissible Access user profiles and automatically (such as, based on time and/or the position of user) or Determine that user wishes to be driven to restaurant based on user's input.Then navigation system can carry to user It is fed to the direction in restaurant.
In certain embodiments, by application program (such as, the intelligence of user on an equipment Music player on phone) user task that performs can be by same type on another equipment Another application program (such as, the music player on user's laptop computer) continue. In other embodiments, (such as, can on the smart phone of user by the application on an equipment To be used for subscribing the application program in restaurant) user task that performs can by another equipment not (such as, user's car is used for navigate the user to restaurant with another application program of type Application program) continue.
Fig. 6 be some embodiments according to disclosure provided herein, for setting second The flow chart of the standby illustrative process 600 above continuing executing with performing on the first device of task. Process 600 can by the first equipment (such as, the cell phone of user) or by be configured to First equipment and the second equipment communication and be programmed for providing to other calculating equipment one or more To the 3rd calculating equipment of the access of at least some information in user profiles (such as, with reference to figure The server 110 that 1A describes) perform.
In action 602, the calculating equipment of execution process 600 receives and performs on the first device The relevant information of task, and in action 604, the information received is stored in user's letter In Dang (such as, in the application and service information 208 with reference to Fig. 2 description).First equipment can Be user can by utilize on equipment perform virtual assistant interact any properly Calculating equipment, its example provided herein is.Relevant with performing on the first device of task Information can be by virtual assistant and/or other the suitable software any performed on the first device Program is supplied to the calculating equipment of execution process 600.
The information relevant to task can be when being provided to another equipment, can allow another Individual equipment continues any suitable information of tasks carrying.Such as, as described earlier, with The information that task is relevant can include that the information of identification mission (such as, is play audio books, removed meal Have supper in shop), specify the customer-furnished letter for the one or more input of tasks carrying Breath (such as, identifying the information of audio books to be play, for the information subscribed at the restaurant), (such as, audio books is for the information which part of appointed task has been performed or has not been performed Play and how much, the most subscribe restaurant) and/or can be made for continuing by another equipment Other suitable information any of tasks carrying.Which part of appointed task is by an equipment The information performed can allow another equipment to continue the execution of this task, and without repeat by The execution of executable portion (such as, continues to play audio books, and was listened by user without resetting The part of audio books).
It follows that process 600 proceeds to determine frame 606, whether wherein determine the execution of task To continue on another.The determination continuing to perform on another task can be with Any suitable mode is made.In certain embodiments, continue to perform on another to appoint (such as, the determination of business can include identifying the one or more equipment that can be used for continuing tasks carrying By with (one or more) equipment communication or from server receive indicate which (a bit) equipment Available information), and determine whether to continue in an available devices wherein the execution of task. In certain embodiments, the calculating equipment performing process 600 can be (such as, near user Equipment in one or more equipment and/or positioning service from calculating equipment) obtain and refer to Determine the information of customer location, and when user sufficiently closes to another equipment (such as, at its threshold Value apart from interior) time, can automatically or be based at least partially on user input determine holding of task Row to continue on another.Such as, when the use just listening audio books in his/her car Time getting home in family, the calculating equipment of execution process 600 can obtain instruction user at home (and not In his/her car) and the stereo system of user's family can continue to play audio frequency The information of book.The calculating equipment of execution process 600 (such as, the cell phone, permissible of user Obtain the server etc. of the information specifying customer location) can be with execution in stereo system Virtual assistant communicates, and makes stereo system automatically continue to play audio books or master Inquire user whether it wishes that stereo system continues to play audio books dynamicly.
In certain embodiments, the calculating equipment performing process 600 can input based on user Determine that the execution of task to continue on another.User can with the first equipment on or another Virtual assistant on one equipment is mutual, and to indicate user to wish, task continues on another Continuous.Such as, listen the user of music can be to his smart phone with his/her smart phone (such as, via virtual assistant) or (such as, pass through to his/her stereo system Press the button) provide user to wish to continue to listen the input of music by stereo system.At some In the case of, user profiles storage instruction on another continue tasks carrying it is determined that It is also based on the information that user's input is made by automatically being made.
In certain embodiments, determine on another continue tasks carrying can based on from The input that the equipment continuing executing with this task receives being made, this input instruction equipment to continue The execution of continuous task.The equipment continuing executing with task can be made this in any suitable manner Kind determine, such as, such as, proximity based on user to equipment, based on user to equipment Input, based on added to by user his/her profile preference arrange, based in profile by void Intend the preference setting that assistant learns automatically, etc..Such as, user can be at his/her car In listen audio books, go back home and to he stereo system indicate (such as, via The virtual assistant that performs in stereo system, by promoting the button etc. in stereo system) Stereo system to continue to play audio books.This input is received in response to from user, vertical Body sound system can notify that the system of execution process 600 (such as, is such as retouched with reference to Figure 1A The server of the server 110 stated, or the portable set 154 such as described with reference to Figure 1B Portable set) stereo system to continue play audio books.Should be appreciated that above-mentioned really It is illustrative for determining the mode that the execution of task to continue on another, and determine can To make in any other suitable way, because each side of disclosure provided herein exists This respect does not limit.
When the execution determining task to continue on another, process 600 proceeds to move Making 608, other in which equipment can access information relevant to this task in user profiles. When the execution determining task does not continues on some miscellaneous equipments, perform the calculating of process 600 Device end.But, the information stored in act 604 is retained, in order to holding of this task Row can continue by time point afterwards on some miscellaneous equipments.
IV. social hypergraph (supergraph)
Applicants have recognized that, if virtual assistant can not only access virtual assistant with its Information in the profile of mutual user, and it is able to access that the contact person with user (such as, Friend, acquaintance, business contact, it is connected to user via one or more social networking service People, etc.) relevant information, then the Consumer's Experience of improvement can be provided.Access and user The relevant information of contact person virtual assistant can be allowed to present his/her contact person's sense to user The information of interest, recommend media content that his/her contact person likes to user, arrange user And activity (such as, meeting, the telephone relation between his/her one or more contact person Deng) and/or perform when with virtual assistant time mutual by that user is produced improvement and the most individual Any multiple other type of action of the experience of property.
Correspondingly, in certain embodiments, virtual assistant can based on and user be associated Other user-dependent at least some information one or more customization its behavior when mutual with user. Can be (one or more) other use with other (one or more) user-dependent information Any information in (one or more) profile at family and/or other suitable information any. (one or more) other users can be associated with user in any suitable manner, and In certain embodiments, can be via being based at least partially on user profiles and (one or many Individual) user network of information structuring in other user profiles is associated with user, such as following institute Describe.
In certain embodiments, user network by including a group node and can connect this group node In the figure (network) of network on one group of limit of at least some node represent.In network Node can represent user, and the limit connecting two nodes can represent and represented by node Connection between two users.Number in the profile of the user that each node can represent with node According to being associated.Therefore, user network coding about each user in network information and about Internuncial information between user in network.User network can be by for coded graphics Any data structure or other suitably (one or more) data structure any encode, because of Each side for disclosure provided herein does not the most limit.
In certain embodiments, it is configured to access the system of the user profiles of one group of user (such as, The server 110 described with reference to Figure 1A) information in user profiles can be used to build use Family network.This can complete in any suitable manner.Such as, in certain embodiments, System can each by least some (such as, all) user in this group user Perform following steps and carry out structuring user's network: (1) is that node is added in network by user; (2) indicate user another with represented by the node in network when the information in user profiles When one user is associated, network connects two nodes representing the two user.
The profile of one user (" user A ") indicates this user and another user The non-limitative example of the information that (" user B ") is associated includes indicating user A and B The information that connects via at least one social networking service (such as, user A and B viaConnect, user A and B existsUpper connection, user A existOn follow user B and/or vice versa, etc.), instruction user B be user The information of the contact person of A (such as, the profile of user A comprises the contact details of user B, Such as his/her e-mail address, address, telephone number etc.) and/or instruction use Other suitable information any that family A and user B is associated.
As from above it should be understood that the system being configured to access the user profiles of one group of user can It it not the user network of the subset of any single existing user network with structure.Such as, structure Via the first social networks (such as, network can includeBut) connect Not via the second social networks (such as,) connection between the people that connects, and But and include the people connected not via the first social networks connected via the second data network Between connection.Correspondingly, the network of network figure of structure is neither represent the first social networks The subgraph of network, be not the subgraph of the network representing the second social networks.But, Representing that the network of the first social networks is each with the network representing the second social networks can be Subgraph according to the network of network figure that technique described herein builds.In this sense, structure The network of network figure made is considered network " hypergraph ".
One of the user network of the information creating being based at least partially in the profile of user network Example figure 7 illustrates.Fig. 7 show include each user 702,704a-b, 706a-d, A part for the exemplary network graph 700 of the node of 708a-b and 710a-b.It is connected to user The user that identical shade instruction in the middle of any node of 702 is represented by these nodes is with similar Mode is associated with user 702.Such as, user 704a and 704b is each social via first Network service (such as, LinkedIn) is connected to user 702, and therefore, at network (via user 702) it is indirectly connected through a network of nodes in 700.As another example, user 706a- 706d is each via second social networking service different from first network service (such as, Facebook) it is connected to user 702, and therefore, is connected in network 700.Make For also have another example, user 708a-708b be the contact person of user 702 (such as, The contact application of user is listed), and therefore, quilt in network 700 Connect.User 710a and 710b is indirectly connected through a network of nodes user 702 in network 700.
Should be appreciated that the number of users shown in network 700 is illustrative rather than limit Property processed, because network can represent any appropriate number of user (such as, at least 10 Individual, at least 100, at least 1000, at least 10,000, at least 25,000, etc. Deng) and any appropriate number of connection between them.
In certain embodiments, virtual assistant can be based on relevant with user to via user network Other user-dependent information one or more customization its behavior when mutual with user of connection.Empty Intend assistant and can customize its behavior by performing any polytype action based on the information accessed. One this embodiment illustrates in fig. 8 a, and Fig. 8 A is can be programmed to implement at least one The flow chart of the illustrative process 800 performed on any calculating equipment of individual virtual assistant, its example Son is described herein.
Process 800 starts from action 802, and the virtual assistant wherein performed on equipment can be through By subscriber network access with and other users one or more of being associated of the user of equipment relevant Information.User network can be any suitable user network, for example, it may be at least partly Ground user network based on the information architecture in user profiles, as previously discussed.
Virtual assistant can access relevant with other users one or more in any suitable manner Information.In certain embodiments, equipment (such as, the meter that virtual assistant performs the most thereon Calculation equipment 104a) may be coupled to can to virtual assistant provide with (one or more) other One or more other of user-dependent information calculates equipment (such as, server 110). Virtual assistant can be in response to request and (one or more) other user-dependent information and quilt This information is provided, or can be provided this on one's own initiative by other calculating equipment one or more Information, and without having requested that this information.
With and the relevant information of (one or more) other users of being associated of the user of equipment can To be the information of any suitable type.This information can be (one or more) other users' In profile, accessed and/or from the profile of (one or more) other users information draws. Presented below with the non-limitative example of (one or more) other user-dependent information.
The information accessed in action 802 may be be associated with user via user network Or any suitable group of multiple user is relevant.As a non-limitative example, the group of user The user being directly connected to user via user network can be only included.Unrestricted as another Property example, the group of user can be included in user network user certain apart from interior (such as, In the separating degree of number of thresholds) user.As another non-limitative example, user's Group can be to have the one or more aspects common with user in user network (such as, jointly Interest, common geographical position, common age group, common history, common employer, Characteristic, etc.) the group of any user.As another non-limitative example, the group of user Can include by the specially appointed user of virtual assistant (such as, when request is about the day of particular person When the information of journey table is to dispatch the meeting between they and user).
In certain embodiments, virtual assistant can during action 802 (example mutual with user As, virtual assistant can carry out the dialogue with user), and in other embodiments, virtual help Reason can perform on the backstage on equipment during action 802.In either case, when virtual When assistant accesses the information relevant with (one or more) other users, virtual assistant can be with base Any suitable action (such as, provide a user with notice) is performed on one's own initiative in the information accessed, And without performing the input of this action from the request of user.
Correspondingly, access relevant to other users one or more at virtual assistant in action 802 Information after, process 800 proceeds to action 804, wherein virtual assistant can by based on It is mutual with the user of equipment that the information accessed performs one or more actions.Virtual assistant can connect Receive the additional information for performing certain form of action.Such as, when performing in action 804 Action relates to when user presents additional information, and virtual assistant can be from other meters one or more Calculation equipment (such as, server 110) obtains additional information.The action of these and other type Example presented below.After virtual assistant execution action, process 800 terminates.
As a non-limitative example, the information accessed in action 802 can be at least in part (such as, this information can specify the one of user to specify the availability of other users one or more A little friends the schedule in one or more evenings, one or more colleagues of user at one or Schedule between multiple date, the calendar of other users one or more, one or more The itinerary of other users, etc.).In action 804, virtual assistant can be attempted at least Be based in part on appointment (one or more) other users availability format user and Activity (such as, meeting, telephone relation etc.) between (one or more) other users.
As another non-limitative example, the information accessed in action 802 can identify one Or multiple other users (rather than only only keep track (one or many at the planning location of future time Individual) current location of other users).Such as, the information accessed in action 802 can be specified The outside the city friend of user will come to town at specific one day, and some friends of user plan at certain The individual time is in specific place meeting etc..As another example, user may be in (example of advancing As, drive), and action 802 access information can identify that user's is one or more Contact person is by the position in future close to the user along user's course.The planning location of user Can indicate from user profiles the information of user availability, from user profiles leading by user Information that boat system is positioned there and/or obtain from other suitably source any.Dynamic Make 804, virtual assistant can based on access information inform the user (one or more) its The planning location of he user and/or attempt at planning location or near arrangement user with (one Or multiple) activity (such as, meeting, telephone relation etc.) between other users.
As another non-limitative example also having, the information accessed in action 802 can be known At least one theme (such as, theme of news, body that other users the most one or more are interested Educate relevant theme, theme that amusement is relevant, etc.), and in action 804, virtual help Reason can present the information relevant to the theme interested identified (such as, to webpage to user Link, brief message, etc.).Such as, virtual assistant can provide a user with bag The link of the webpage of the information containing the theme of news interested about other users one or more. This link can be supplied to virtual by other calculating equipment one or more of such as server 110 Assistant, and/or can be obtained in any other suitable way by virtual assistant.
As another non-limitative example also having, the information accessed in action 802 can be known Media content (such as, film, music, the TV Festival that other users the most one or more like Mesh, newspaper article, magazine article etc.).In action 804, virtual assistant can push away to user Recommend media content.Such as, virtual assistant can present media content (such as, movie trailer, Song sample, article extracts etc.) preview, generate notified his at least five friend of user See the message of certain movie and/or recommended media content in any other suitable way.
As another non-limitative example also having, the information accessed in action 802 can be known Other users the most one or more accessed or want access place (such as, music hall, restaurant, Club, gymnasium etc.).In action 804, virtual assistant can advise that user accesses this Institute.As another non-limitative example also having, the information accessed in action 802 can refer to Show, with user, there are other user's executed actions multiple of one or more common aspect, and In action 804, virtual assistant can advise that user performs this action and/or helps user to perform this Action.Such as, if user is the 37 years old male staying in San Diego area, and Action 802 access information instruction multiple stay in San Diego area age 35-40 year Male user searched the information of the sportsman about San Diego Charger rugby team, Then virtual assistant can advise that user searches the information about this sportsman and/or presents pass to user Information in this sportsman.
As another non-limitative example also having, the information accessed in action 802 can refer to Show that the user of at least number of thresholds is carrying out task (such as, searchStock Price, search are about particular person or the news in place, online viewing popular video etc.).Dynamic Making 804, virtual assistant can provide a user with which other users of instruction are carrying out on one's own initiative The information of task (such as, generates message: " people are in searchStock valency Lattice ") and/or provide a user with the out of Memory relevant to task (such as, to about specific The link of the news report in people or place, link etc. to popular video).
As another non-limitative example also having, the information accessed in action 802 can be known Other user close friend and kinsfolk and their schedule.In action 804, virtual Assistant may determine that each other the time gets together and sends out to the friend identified and kinsfolk easily Send the invitation in the time party determined.
As another non-limitative example also having, the information accessed in action 802 can be known Product that the most one or more users have bought (such as, specific grill apparatus, electronic equipment, One bottle of wine etc.).In action 804, virtual assistant can be (such as, logical to user's recommended products Cross and present advertisement, generation message etc.).
As another non-limitative example also having, the information accessed in action 802 can refer to Show that the user of the equipment performed the most thereon with virtual assistant has another user of similar interest Added user network (or other social networks any, such as).In action 804, to user, virtual assistant can advise that user is at this user network (or other social networks) Middle foundation is directly connected to other users'.
Should be appreciated that above-mentioned example is merely illustrative and virtual assistant can access and one Other suitable information any that individual or multiple other users are relevant, and based on the information accessed Perform other suitably (one or more) action any.
In certain embodiments, calculating equipment (such as, server 110) can be via user Network access with and the relevant information of other users one or more of being associated of user, and make Virtual assistant (such as, the smart phone of the user) base that must perform on another calculating equipment One or more actions are performed in the information accessed.One this embodiment illustrates in the fig. 8b, Fig. 8 B is can be in other computing device communication being configured to be programmed to implement virtual assistant The upper example process 850 performed of any suitable calculating equipment (such as, server 110) Flow chart.
Process 850 starts from action 852, and the calculating equipment wherein performing process 850 can be visited The letter that other users one or more of asking and be associated with specific user via user network are relevant Breath.User network can be any suitable user network, and for example, it may be at least portion Divide ground user network based on the information architecture in user profiles, as described above.Dynamic The information making 852 access can be organized relevant with any suitable user, and its example is with reference to figure 8A is described.With (one or more) other user-dependent any suitable information Can obtain in action 852, its example is described with reference to Fig. 8 A.
It follows that process 850 proceeds to action 854, the calculating wherein performing process 850 sets Virtual on the equipment of specific user (such as, the smart phone of user) can be made to perform Assistant performs one or more actions based on the information accessed in action 852.So that it is virtual The example of the action that assistant performs is described with reference to Fig. 8 A.
The calculating equipment of execution process 850 can instruction is virtual to be helped by sending to another equipment The information (such as, message, function call etc.) of the action that reason is to be performed makes another equipment On virtual assistant execution action, and virtual assistant can in response to receive message perform institute The action of instruction.Execution process 850 calculate equipment so that virtual on another equipment Assistant performs action in any other suitable way, because disclosure provided herein is each Aspect does not the most limit.
In certain embodiments, make virtual assistant perform certain form of action can include to void Intend assistant and the additional information for performing those actions is provided.Such as so that virtual assistant presents (product such as, bought for other users) advertisement can include carrying to virtual assistant For advertisement.As another example, make virtual assistant provide a user with article and (such as, close In the theme that other users are interested) link can include to virtual assistant provide link.? After action 854 completes, process 800 terminates.
Applicants have recognized that, by the user network bag of the information architecture in the profile of user network Abundant information containing other purpose that can be used in addition to the behavior of customizing virtual assistant.Such as, In certain embodiments, the information in user network can be analyzed, interested any to draw (such as, user's knowledge in U.S.'s metropolitan area work travels frequently between place of working and family Annual distribution).As another example, in certain embodiments, user network can be analyzed In information, to identify which information user wishes to consume and the result analyzed can be supplied to Another entity.For example, it is possible to the information in analysis user network, to identify in network at least The user of threshold percentage is interested in the news about particular topic, and this information is permissible There is provided (such as, selling) to news agency.As another example, can analyze in user network Information determine have the user of threshold percentage to make in past twenty four hours in east coast By its weather application more than three times.
V. background proxy
As it has been described above, in certain embodiments, virtual assistant can based in user profiles extremely Fewer information and/or be associated with user (one or many of other users one or more Individual) at least some information in profile performs one or more dynamic on one's own initiative when mutual with user Make.Alternatively or additionally, in certain embodiments, bar is specified as one or more users When part is satisfied, virtual assistant can perform one or more user's required movement.One this Embodiment figure 9 illustrates, and Fig. 9 being configured to and can be programmed to implement virtual assistant The explanation that on any suitable equipment of miscellaneous equipment communication, (such as, server 110) perform The flow chart of property process 900.
Process 900 starts from action 902, wherein perform the equipment of process 900 access specify by One or more conditions that user specifies and being helped by virtual when user's specified requirements is satisfied The information of corresponding user's required movement that reason performs.The information accessed in action 902 can be attached Specify which virtual assistant (such as, on the smart phone of user, in the car of user, to use with adding Virtual assistant in the laptop computer at family etc.) user to be performed (one or more) that specify Action.This information can be accessed from any suitable source.Such as, it is intended that user specifies bar The information of part and corresponding user's required movement can be stored in execution process 900 equipment and/ Or be on the addressable any miscellaneous equipment of equipment by execution process 900, and can be from its quilt Access.
As a non-limitative example, the information accessed in action 902 can be specified and user When the information that theme interested is relevant can be used, and virtual assistant to provide a user with main with that The information that topic is relevant.Such as, what user can specify when the sports team liked about him/her is new Article when being published, virtual assistant to notify to this user with regard to new article, and to user The link of this article is provided to.As another example, user can specify when user likes When singer issues new song, virtual assistant to download this song from suitably source.As Another non-limitative example, the information accessed in action 902 can be specified when on the road of user When there are traffic problems on line, on the equipment in the car that user is driving, the virtual of execution helps Reason to provide a user with the information about traffic problems, and advises new route to user.Make For another non-limitative example also having, the information accessed in action 902 can be specified when really Determine user when wanting meeting to be late, the virtual assistant intelligence to be changed performed on the smart phone of user Can background color on phone and/or make smart phone utilize specific vibration mode to vibrate. As another non-limitative example also having, the information in action 902 access can be specified and be worked as When the score (or the difference of counting between team) of sports tournament changes threshold quantity, virtual assistant The score of renewal to be provided a user with.
In certain embodiments, the information accessed in action 902 can be specified to be had with subscriber equipment The one or more user's specified requirementss closed and the action of one or more correspondence.As one Non-limitative example, the information accessed in action 902 can be specified when the mobile device of user exists Time in the car of user, the virtual assistant performed in the mobile device of user to be set up with car and to be connected (such as, direct wireless connections).As another non-limitative example, visit in action 902 The information asked can be specified when the mobile device of user is in offline mode, on the mobile apparatus The virtual assistant performed to close all application programs needing network to connect performed on equipment. As another non-limitative example also having, the information in action 902 access can be specified and be worked as The mobile device of user with exceed per second one inch mobile time, in the mobile device of user perform Virtual assistant mobile device to be made flash of light and/or send alarm.As also have another is non- Limitative examples, the information accessed in action 902 can be specified when the mobile device of user receives (example when arriving message (such as, text message, the email message etc.) of inquiry customer location As, receive message " you are where "), the virtual assistant performed on the mobile apparatus is to disappearing The sender of breath automatically sends and comprises this position of mobile equipment of instruction (such as, gps coordinate) The response of information.
Should be appreciated that user's specified requirements is to say with the above-mentioned example of corresponding user's required movement Bright property.User can specify other suitable condition any and corresponding action, because herein The each side of the disclosure provided the most does not limits.
User can specify one or more condition and one or more right in any suitable manner The action answered.In certain embodiments, user virtual can help to what user was interacting Reason (or being configured to receive other suitable application program any of phonetic entry from user) provides Phonetic entry, the action of at least one condition and at least one correspondence is specified in phonetic entry.Virtual Assistant can utilize automatic speech recognition, natural language understanding and/or other suitable skill any Art processes the input that receives and identifies (one or more) condition specified and correspondence (one or more) action.User can utilize one or more logical operator to specify one Or multiple condition and/or action (such as, AND, OR, XOR, NOT etc.).As One non-limitative example, user can be with specified requirements, when " being Friday " AND " star The weather forecast of phase six is fine day " AND NOT " Stacy is in town " time, virtual assistant want Perform " message ' see you tomorrow for let us ' is sent to Lisa " AND " at Ritz Carlton The seat of 6 in the afternoon is subscribed in restaurant ".
Information in the action specifying at least one user's specified requirements and at least one correspondence is being moved After work 902 is accessed, process 900 proceeds to determine frame 904, wherein makes about user The determination that (one or more) condition specified has been satisfied the most.This can with any properly Mode complete.Such as, in certain embodiments, the equipment of execution process 900 can be supervised Depending on and/or search for one or more information source (such as, one or more sources of news, traffic Report data source, stock price source, social networks etc.) determine that user specifies (one Or multiple) condition is satisfied the most.
When (one or more) condition determining that user specifies the most is not satisfied, process 900 may return to determine frame 904.By this way, this process can monitor use continuously (one or more) condition that family is specified is satisfied the most.This determines can be by any appointment Time interval repeated to make, can be by the generation of event or other is the most square with any Formula triggers.When (one or more) condition determining that user specifies is satisfied, process 900 proceed to action 906, and the calculating equipment wherein performing process 900 makes on the equipment of user The virtual assistant performed performs the one or more user's required movements corresponding to user's specified requirements. Although some user's required movements individually can be performed by virtual assistant (such as, to generate voice Notice), but in certain embodiments, user's required movement can be at least in part by programming In order to realize another application program of execution on the equipment of virtual assistant, (such as, Email should By program, music player, alert program, calendar applications, web browser application journey Sequence etc.) perform.After action 906 completes, process 900 terminates.
In certain embodiments, process 900 can perform by utilizing multiple ageng. Each ageng can be programmed to determine whether at least one user's specified requirements is satisfied, And when ageng determines that at least one user's specified requirements is satisfied, ageng is permissible Virtual assistant is made to perform at least one use of (one or more) condition specified corresponding to user Family required movement.Correspondingly, in certain embodiments, different agengs can be responsible for really The most different fixed user's specified requirements is satisfied.Such as, an ageng can be configured For monitoring transport information determines whether there are traffic problems on the route of user, when determining user Route on when there are traffic problems so that perform on the equipment in the car that user is driving Virtual assistant provide a user with the information about traffic problems.Different agengs can be by It is configured to monitor one or more source of news, to determine the new of the sports team liked about user Article be the most published, and when determining that new article is published so that Yong Hushe Standby upper virtual assistant provides a user with the link of new article.
Ageng can be to include when executed by least one processor so that described at least The program of the processor executable of one processor agency's one or more function of execution.Soft Part agency can automatically be called, and inputs without calling any user of ageng.Soft Part agency can perform on backstage on equipment, and mutual without the user with equipment.At one The ageng performed on equipment can be " transferred " to another equipment, thus is set by one The process that standby upper ageng performs continues on another (such as, to be performed by it Ageng) perform.Ageng can will send information on any suitable equipment Other software programs one or more (such as, ageng, virtual assistant, the application performed Program, operating system etc.) and receive from it information.Ageng can make in office the most suitable Equipment on perform other software program execution actions one or more.Such as, set at one It is virtual that the ageng of standby upper execution can make to perform on identical device or on another equipment Assistant performs any suitable action, and its example is provided with reference to Fig. 9.
In certain embodiments, when process 900 is performed by multiple agengs, ageng Can be on an equipment (such as, server, be programmed to implement the equipment etc. of virtual assistant) Perform or in a distributed way at multiple equipment (such as, multiple servers, at least one clothes Business device and at least one equipment etc. being programmed to implement at least one virtual assistant) upper execution.Phase Ying Di, in certain embodiments, process 900 virtual can help being programmed to implement at least one (such as, calculate equipment 104a) on the equipment of reason, be configured to and be programmed to implement at least One virtual assistant one or more equipment communication equipment on (such as, server 110), Or at least in part with at least part of on the equipment be programmed to implement at least one virtual assistant Ground communicates at the one or more equipment being configured to be programmed to implement at least one virtual assistant Perform on equipment.In certain embodiments, when ageng is in a distributed way at multiple equipment Upper when performing, wherein the execution of ageng is distributed on the mode in the middle of multiple equipment and can take Certainly in availability and/or the cost of the calculating resource being associated with equipment.Such as, wherein software The execution of agency is distributed on the mode in the middle of multiple equipment and can depend on one or more equipment On available computing capability, available memory on one or more equipment, one or more set Standby network connectivity, it is connected to the cost of network by one or more equipment (such as, even It is cheap for connecing, and the WLAN in such as family connects, or costliness, the most abroad Cell phone connect), one or more equipment be battery powered to be also attached to power supply, Etc..
In certain embodiments, (such as, as process after virtual assistant execution action In a part for the action 906 of 900 or what its suitable context in office), user is permissible The dialogue relevant with action is carried out to virtual assistant.User can be by providing language to virtual assistant Sound is inputted (such as, natural language input), is inputted by key entry and/or close with any other Suitable mode provides input to engage in the dialogue with virtual assistant.Virtual assistant can utilize ASR, The speech treatment technology of NLU and/or other suitable type any processes input.Implement at some In example, virtual assistant can use language model that one or more theme is relevant to identify user Spoken input.As a non-limitative example, present letter in response to virtual assistant to user (such as, New England Patriots defeats New York Giants's with great disparity score in Super Bowl to breath Notice), the contingency question that user can be relevant to the information presented by inquiring virtual assistant (such as, " Tim Tebow has thrown away how many and has reached battle array (touchdown)?") ask Virtual assistant provides a user with additional information.Virtual assistant can utilize for identify with motion and / or the relevant language model of the theme of the relevant speech input of other suitable language model any Identify the phonetic entry received.
In the above-described embodiments, the condition that will be performed by virtual assistant and corresponding action are by user Specify.But, each side of disclosure provided herein is not limited to have is specified bar by user Part and corresponding action.In other embodiments, condition and corresponding action can be based on users Information in profile is automatically specified.As a non-limitative example, user can be analyzed Information in profile identifies the theme (such as, Botswana's politics) that user is interested, and And can be relevant to indicating the theme when interested to the user identified with specified requirements-action When information can use (such as, the news article about Botswana's election is published), virtual help Reason to provide a user with the information (such as, to the link of new article) relevant to that theme. As specific non-limitative example, the information in user profiles of can analyzing is to identify this user Be related people in region, Ohio, and can be with specified requirements-action to indicating when about Russia When the information in last of the twelve Earthly Branches Russia region can use, (such as, tornado has attacked the Dayton in area, Ohio City), virtual assistant to provide a user with this information (such as, to the link, logical of news article Know).As another specific non-limitative example, the letter in user profiles can be analyzed Breath determines user to be liked Black Sabbath band (such as, user has listened many Black Sabbath song) and can be with specified requirements-action to indicating when about Ozzy When the information of Osbourne occurs in news, this information to be supplied to use by virtual assistant Family.
Should be appreciated that the information in user profiles, including can be analyzed automatically to specify bar Part and the information of corresponding action, can be specified by user that (such as, user explicitly specifies sense The theme of news of interest), automatically from (one or more) action recognition performed by user (such as, when user searches the information about theme of news repeatedly, system infers that this is new Hearing theme is that user is interested and that information be stored in user profiles) and/or The most automatically identify.
Condition and corresponding action can be by any suitable equipment of addressable user profiles Any suitable software performed automatically is specified, and its example is provided herein.Condition and right The action answered can the most automatically be specified.Such as, condition and corresponding moving Work can be configured to determine that condition has the most been satisfied and has made when condition is satisfied by establishment Virtual assistant performs the ageng of corresponding action and specifies.Alternately, condition and correspondence Action can the most automatically specify (such as, storage reflection condition The data of/action pair) because each side of disclosure provided herein does not has in this respect Limit.
VI. virtual assistant is utilized to converse with interactive voice response system
As it has been described above, some embodiments provide utilizes the virtual assistant performed on calling party device Converse between IVR system and this MPTY.Virtual assistant can by impact wherein During conversing, it is supplied to the pattern of the information of MPTY and/or uses at IVR with by MPTY Carry out the content of the information of transmission between the equipment conversed to converse.In some embodiments In, virtual assistant can access at least some information in MPTY profile, and by based on Access informational influence be wherein supplied to during conversing MPTY information pattern and/or IVR and made the content of the information for carrying out between the equipment conversed transmission lead to by MPTY Words.
Figure 10 is shown in which between MPTY and IVR system to carry out relevant disclosure of conversing The manipulable illustrative non-limiting environmental 1000 of some embodiments of content.
In environment 1000, MPTY 1002 can use any suitable equipment 1004 Carry out and the call of IVR system 1010.In one embodiment, equipment 1004 can be MPTY 1002 can be used to any suitable mobile device communicated with IVR system 1010. Such as, equipment 1004 can be special mobile phone (such as, cell phone), mobile Smart phone, PDA, laptop computer, tablet PC, maybe can pass through communication media (such as, wired or wireless communication medium) supports other mobile device any of call.At it In its embodiment, MPTY 1002 is not limited by and utilizes mobile device to converse, and Any equipment that can support call can be used.Such as, MPTY 1002 can be by profit Be connected to land line phone, be connected to the network of such as the Internet desk computer or Any miscellaneous equipment that utilization can communicate with IVR system 1010 leads to IVR system 1010 Letter.
In certain embodiments, equipment 1004 can be programmed to according to enforcement described herein Example realizes at least one virtual assistant.The virtual assistant realized on equipment 1004 can be joined Be set to based on MPTY profile (such as, with reference to Fig. 2 describe user profiles 200) in extremely Fewer information are conversed between MPTY 1002 and IVR system.MPTY profile can To be locally stored on equipment 1004 and/or to be remotely stored in equipment 1004 via communication Medium 1008 is connected on its server 1012, and the void performed on equipment 1004 Intend assistant and can be configured to access the copy stored locally and/or remotely of MPTY profile. Server 1012 can be the server of any suitable type, and for example, it may be reference The server 110 that Figure 1A describes.Server 1012 can be one or more server.? In the environment 1000 of diagram, equipment 1004 is illustrated as utilizing identical communication media to be connected to IVR system and server 1012.But, in other embodiments, equipment 1004 can be in order to It is connected to IVR system 1010 with different communication medias and server 1012 (such as, utilizes The Internet is connected to server 1012 and utilizes cellular phone network to be connected to IVR system 1010).In certain embodiments, virtual assistant can be on equipment 1004, at server Perform on 1012 or partly on equipment 1004 and partly on server 1012 (such as, virtual assistant can exist at least in part by utilizing server end dialogue management function Perform on server 1012).
In certain embodiments, IVR system 1010 can based in MPTY profile at least Some information are carried out and the call of MPTY 1002.IVR system 1010 can be configured to visit Ask in the MPTY profile being stored on calling party device 1004 and/or server 1012 extremely Fewer information.
Call can be the communication of any suitable type supporting voice communication.Call can be passed through MPTY is allowed to provide sound input and/or reception voice output that MPTY can be communicated. Call is not limited by the type of the communications infrastructure or communication media for supporting call.Such as, Call can be by utilizing public switch telephone network, wireless cellular network or other telephone network The telephone relation supported.As another example, call can be by being configured to support the Internet Public (such as, the Internet) or privately owned (such as, corporate intranet) network support of agreement VoIP call, or any other type of call.
In certain embodiments, the call between MPTY 1002 and IVR system 1010 can With by (performing on the calling party device 1004 and/or server 1012) virtual assistant, By IVR system 1010 or partly by virtual assistant with partly by IVR system 1010 Manage.Such as, (perform on calling party device 1004 and/or server 1012) Virtual assistant can perform dialogue management function during conversing.As another example, IVR System 1010 can perform dialogue management function during conversing.As another example also having Son, dialogue management partly can be performed by virtual assistant and partly be performed by IVR system. As a non-limitative example, virtual assistant can manage relevant to performing simple task right Words, such as data input (such as, input address), and IVR system can be at IVR The other side of management of dialogs during call between system and MPTY.
In the environment 1000 of diagram, equipment 1004 is by communication media 1008 and IVR system System 1010 communication.Communication media 1008 can be any suitable network or other type of logical Letter medium.Such as, communication media 1008 can be cellular network, LAN, circuit switching Telephone network, public switch telephone network, the Internet, foregoing combination in any or can Support other communication media any of telecommunications.
In the environment 1000 of diagram, equipment 1004 is via wireless connections 1006a coupling communicatedly Closing utilizes wired connection 1006b to be communicatively coupled to communication media 1008, IVR system 1010 It is communicably coupled to communication media 1008 and server 1012 via wired connection 1006c Communication media 1008.For the sake of this is merely to illustrate that, because equipment 1004, IVR system 1010 and server 1012 in each can be communicably coupled in any suitable manner Communication media 1008, including wired and/or wireless connections.
IVR system 1010 includes one or more computer (such as, server), each It is configured to perform the process relevant to the function of support IVR system.Embodiment in diagram In, IVR system 1010 includes individual server, but in other embodiments, any properly The server of quantity can be used to and be distributed by any way.Such as, real at some Execute in example, IVR system 1010 can include at least ten, at least one hundred or at least one Thousand servers.Wherein IVR system is included to the embodiment of multiple server, server Need be not necessarily positioned at identical physical location, and can be distributed across multiple physical locations.Each service Device can be configured to support one by (individually or with other server combinations one or more) Or multiple IVR application and can be configured to perform other program any.Such as, service One or more servers in device can be configured to perform for supporting and call management, right Words management, speech recognition, text to talk synthesize and/or by IVR system use any its The program of the function that its function is relevant.
For by utilizing that virtual assistant carries out conversing between MPTY and IVR system Kind embodiment is shown in Figure 11 A, and Figure 11 A can be by carrying out and IVR system Call and be programmed to implement any equipment (such as, equipment of at least one virtual assistant 1004) flow chart of the illustrative process 1100 performed.
Process 1100 starts from action 1102, wherein converses between MPTY and IVR system Start.MPTY is currently in use the equipment of execution process 1100 and converses.MPTY and Call between IVR system can start in any suitable manner.MPTY can utilize The virtual assistant performed on equipment starts the call to IVR system.Alternately, calling Side can utilize another application program launching call (such as, telephony application, enable The program etc. of the upper voice of IP).IVR system can start call, or call to MPTY Can by the opposing party, such as by another IVR system or by client call be represented as MPTY Start.
When call is started in action 1102 by virtual assistant, virtual assistant can be by from exhaling The side of crying obtain information (such as, MPTY can via natural language input and/or any other The input of suitable type provides information) and the information of acquisition is supplied to IVR system, with And by receiving information from IVR system and the information received is supplied to MPTY entering Row call (such as, by generate speech, by generate text, via graphic user interface, And/or in any other suitable way).
When call is not over when utilizing virtual assistant to start, then after call is activated, logical Words can be conversed in any of above mode to be handed over to virtual assistant and virtual assistant. Call can transfer virtual assistant in any suitable manner to.As a non-limitative example, IVR system may determine that called party uses the equipment carrying out conversing to be programmed to realize virtual helping Reason, and can ask equipment that the process of call is handed to virtual assistant.Non-as another Limitative examples, the application program for starting call can point out MPTY to inquire him/her, Whether he/her wants by the virtual assistant on equipment to process call.As also have another is non- Limitative examples, virtual assistant can perform on backstage, and can detect MPTY and Call between IVR is established, and or points out MPTY to inquire that he/her is about him/her Whether want to be processed call or the process of alternatively adapter call by virtual assistant.
It follows that process 1100 proceeds to action 1104, wherein virtual assistant accesses MPTY At least some information in profile.Virtual assistant (such as, can held from any suitable source On the equipment of row process 1100, on the remote server connected via network, via directly The portable set connecing wireless connections is first-class) and access MPTY profile in any suitable manner Copy, any method described (such as, with reference to Figure 1A and 1B) including herein.
It follows that process 1100 proceeds to action 1106, wherein virtual assistant is at least in part The call with IVR system is carried out based on the information accessed.This can be in any suitable manner Complete.Such as, in certain embodiments, virtual assistant can access caller's profile middle finger Information and the virtual assistant of determining virtual assistant role can be in the information that will receive from IVR It is supplied to during MPTY use virtual assistant role.Such as, when the letter that will receive from IVR Breath is when being supplied to MPTY, and virtual assistant can be according to voice font and/or virtual with use The tongue that assistant role is associated generates speech.As another example, when will be from IVR When the information received is supplied to MPTY, virtual assistant can be according to the virtual assistant with employing The text style that role is associated generates text.By this way, the information obtained from IVR MPTY can be supplied in the way of personalized.
In certain embodiments, MPTY happiness is identified during virtual assistant can access MPTY profile The information of the music (such as, one or more songs, musician, music type etc.) vigorously listened. When IVR system wishes to play music to MPTY (such as, when MPTY is in holding shape During state), virtual assistant system can play at least some music, and these music are at MPTY Profile is identified as the music that MPTY is liked listening rather than the music exported by IVR system.
In certain embodiments, virtual assistant can identify by the desired information of IVR system (such as, the name of MPTY, the address of MPTY, account, the date of birth of MPTY, The schedule etc. of MPTY), and determine whether it can provide this letter to IVR system Breath.When virtual assistant determines that desired for IVR system information can be supplied to IVR system by it Time, virtual assistant can access this information (such as, in MPTY profile), and it It is supplied to IVR system.This can utilize or complete without any input from MPTY. As a non-limitative illustration example, MPTY can start the IVR with Utilities Electric Co. The call of system preengages meeting so that electrician is to the residence of MPTY.The virtual assistant of MPTY The MPTY schedule in MPTY profile can be accessed and be based at least partially on MPTY Schedule arrangement is met with electrician's.When virtual assistant determines that it is not allowed to by IVR system When desired information of uniting is supplied to IVR system (and/or when virtual assistant determines MPTY profile When not including information desired by IVR system), virtual assistant can point out MPTY so that Obtain permit by desired information from MPTY profile be supplied to IVR system (and/or provide the phase The information hoped).
In certain embodiments, MPTY profile can store with MPTY and IVR system it Between the relevant data of one or more previous call and virtual assistant can at least part of ground Converse between MPTY and IVR system in these data.Such as, MPTY may Asking to access service (such as, during one or more previous call of IVR system Follow the tracks of parcel, check account balance, inquiry schedule flight state etc.), and may identify Service one or more themes (such as, which parcel to follow the tracks of, which bank account balances Report, which flight status to check).Virtual assistant can be pointed out MPTY to determine and be exhaled The side of crying the most is calling IVR system to ask identical service, and will identify service Information (such as, follow the tracks of of parcel) and service theme (such as, the parcel of recognition and tracking with Track number) it is supplied to IVR system, and without pointing out MPTY to re-enter this information.
In certain embodiments, MPTY profile can store the letter being associated with IVR system Breath and virtual assistant can be based at least partially on this information at MPTY and IVR system Between converse.The information being associated with IVR system can include by IVR system or generation Table IV R system writes in MPTY profile and (such as, is being registered to the MPTY of IVR system In the part of profile) information.As a non-limitative example, relevant to IVR system The information of connection can include any suitable information (example in IVR data base about MPTY As, the payment history of MPTY, the call history of MPTY, at one or more previous call Period by MPTY be supplied to the information of IVR, during one or more previous call by IVR be supplied to MPTY information, by IVR from third party source obtain about MPTY Information etc.).In certain embodiments, the information being associated with IVR system can store At position (such as, the server stored with the out of Memory in wherein MPTY profile 1012) different another positions (such as, server 1010).MPTY profile Part can link by quoting.Such as, the MPTY letter being stored on server 1012 Drawing of the part of MPTY profile that the part of shelves is possibly stored to be stored on server 1010 With (such as, link).
As it has been described above, in certain embodiments, MPTY use the equipment carrying out conversing permissible Access the information in MPTY profile and the virtual assistant that performs on equipment can use this letter Breath is conversed between MPTY and IVR system.But, virtual assistant is not limited to only profit Carry out the call between MPTY and IVR system by the information in MPTY profile, and make For the information in MPTY profile adjunctively or alternatively, it is possible to use other suitable information any Converse, because each side of disclosure provided herein does not the most limit.
In other embodiments, at least some letter during IVR system can access MPTY profile Breath, and carry out the call with MPTY based on the information accessed.One this embodiment reference Figure 11 B is described, and illustrated therein is and (such as, is described with reference to Figure 10 by IVR system IVR system 1010) flow chart of illustrative process 1150 that performs.
Process 1150 starts from action 1152, the wherein call between IVR system and MPTY It is activated.Call can start in any suitable manner, its example reference process 1100 It is described.It follows that process 1150 proceeds to action 1154, wherein IVR system please Seek at least some information accessed in MPTY profile.IVR system suitably can come from any Source (such as, is used the equipment of call, the remote service carried out with IVR system by MPTY Device (such as, server 1012) etc.) ask to access the copy of MPTY profile.At some In embodiment, when at least some information in MPTY profile instruction profile can be by IVR system When system accesses, the access to the information in MPTY profile can be provided to IVR system.
It follows that process 1150 proceeds to action 1156, wherein IVR system is at least based on exhaling Some information in the side's of crying profile carry out the call with MPTY.After the conversation is over, process 1150 terminate.IVR system can be based on the information in MPTY profile with any suitable side Formula carries out the call with MPTY.Such as, in certain embodiments, IVR system can access MPTY profile is specified the information of virtual assistant role, and can be by according to voice font And/or the locution being associated with virtual assistant role generates speech to customize it to MPTY Present the mode of voice output.By this way, IVR can utilize and be customized to caller preferences Voice MPTY " is spoken ".
In certain embodiments, MPTY happiness is identified during IVR system can access MPTY profile The information of the music (such as, one or more songs, musician, music type etc.) vigorously listened. (such as, it is in hold mode when MPTY when IVR system plays music to MPTY Time), IVR system can play at least some music, and these music are in MPTY profile It is identified as the music that MPTY is liked listening.
In certain embodiments, at least some during IVR system can access MPTY profile Information (such as, the name of MPTY, the MPTY that IVR system expectation is collected from MPTY Address, account, the date of birth of MPTY, the schedule etc. of MPTY).Work as IVR system When can access its desired information in MPTY profile, IVR system can use this information And without any input from user, or information that user confirms to access can be pointed out whether Correctly (such as, IVR system can inquire " your address or 55Peach is Tree Lane?”).
In the above-described embodiments, IVR system can be based on the information being stored in MPTY profile Customize it and export the voice to MPTY and/or music.Alternatively or additionally, IVR system System can it exports the voice to MPTY and/or music based on the information customization obtained from service, Wherein services package is containing obtaining voice and/or music preferences from people and making the information obtained to this Any IVR system of service registry can be with (such as, collecting the charges).
Correspondingly, in certain embodiments, service can be in any suitable manner from any conjunction The user of suitable quantity obtains voice and/or musical taste, and provides the letter that at least some obtains Breath is to IVR system.User can access this service (such as, via website, via people Mobile device on perform application program etc.), and to this service provide specify user language Sound and/or the information of musical taste.(such as, user can input by providing natural language By saying " I really likes unkempt person "), by selecting to be supplied to by service one of user Or multiple music option (such as, selects one in via web displaying to the list of songs of user Individual or multiple songs) and/or provide appointment his/her music in any other suitable way The information of preference.
User can provide the information specifying his/her voice hobby in any suitable manner, Such as, one or more by being supplied to by service from one group the TTS voice of user selects Voice.In certain embodiments, service can present one or more TTS voice to user List (such as, " there is the female voice of Britain's accent ", " there is the male voice of Britain's accent ", " sound of girl ", " sound of Johnny Depp ", " sound of Angelina Jolie Sound ", " sound of Roger Rabbit ", etc.), and user can select from list Select one of them sound.In order to help user to select TTS voice from list, service permissible User is allowed to listen the speech sample according to one or more TTS speech productions.Service all right Allow the one or more TTS voices in user's custom tabular (such as, by allowing user Arrange/change any suitable speech parameter, including tone, word speed etc.).Implement at some In example, service can allow user at least partially through analyzing customer-furnished phonetic entry Listen with utilizing the result analyzed to create to sound like the TTS voice of user speech to create Carry out the TTS voice of the voice as user oneself.
VII. personalized guide
In certain embodiments, mutual with user virtual assistant can serve as the guide of user. Virtual assistant can create comprise one or more position tourism, guide user from a position Go sight-seeing next position, provide a user with the information about the position traveled and/or perform Other suitable action any goes sight-seeing each position with help user in tourism.Virtual assistant can To perform some or all in these actions based at least some information in user profiles.Example As, user profiles can include specifying the information of user interest and virtual assistant can create pin To the tourism of those interest cuttings (such as, by including, in tourism, the ground that user is interested Just), in the tourism for user interest cutting, provide a user with information, etc..With this Mode, virtual assistant can serve as the guide of user individual.
In certain embodiments, user can provide input request virtual assistant wound to virtual assistant Build the tourism of personalization.User can ask (such as, city, town, neighbouring district, certain region Territory, area etc.), at least one position (such as, museum, terrestrial reference, castle) and/ Or the personalized tourism Anywhere that can be visited.It is specific that user can ask tourism to continue Time quantum (such as, one-day tour, the tourism of three hours, the trip etc. of driving of a week).With Can ask to travel and include that (such as, " establishment includes for the ad-hoc location in certain region in family Boston tourism of Fenway Park ").Alternatively or additionally, when request tourism, User can provide other suitable information any, because each side of disclosure provided herein Face does not the most limit.
In response to receiving user and create the request of personalized tourism, virtual assistant can at least portion Divide ground based on the information creating tourism in request.In certain embodiments, virtual assistant can be with base At least some information in user profiles creates tourism.Such as, Boston is asked as user When tourism and user profiles specify the interest of user to include reading with Thailand's meal, virtual assistant can To include that bookstore and the lunch in Thailand restaurant stop in personalization tourism.
Virtual assistant can by select will one or more positions that tourism includes and its Their order of middle access creates tourism.Virtual assistant can create trip in asking based on user Information in the information of trip and user profiles creates tourism.This can be in any suitable manner Complete.As a non-limitative example, virtual assistant can by accessing (such as, from GIS-Geographic Information System, map provider etc. obtain) include diving in one group of tourism to be included in In the information of position, and select in tourism to be included in based on the information in user profiles Individual or multiple potential sites (such as, select at least when user profiles instruction user likes reading One bookstore) create tourism.As another non-limitative example, virtual assistant can lead to Crossing the multiple positions being optionally comprised in tourism makes the time span traveled be that user is asked Length (such as, about 5 hours) creates tourism.
After creating personalization tourism, virtual assistant can allow user to edit/change tourism (such as, by removing specific position from tourism, changing the suitable of wherein accessible location Sequence etc.).Specify tourism information can be used for tourism and/or be saved, with After time travel.
Virtual assistant can guide user in the tourism created.Virtual assistant can use the whole world Alignment system (GPS) information provides a user with a position from tourism to another position Direction.Each position in tourism, virtual assistant can provide a user with about that The information (virtual assistant can obtain the information about position from any suitable source) of position. Virtual assistant can answer user about the position in tourism and/or the problem (example of tourism itself As, " when this church is built up ", " the most how far to Thailand restaurant ", etc.).
In certain embodiments, virtual assistant can use the equipment specifying it to perform the most thereon The position of (such as, smart phone) and/or towards information, right to identify that equipment points to As (such as, building, statue etc.), and provide a user with the information about this object. In certain embodiments, the image of virtual assistant equipment can be made to show object that this equipment points to. Image can be superimposed upon on the out of Memory shown by equipment (such as, in travel folder, tourism The augmented reality image etc. of position).In certain embodiments, equipment can be configured to through By one or more auxiliary equipments from user receive input and/or present output to user.Such as, Equipment can be configured to receive audio frequency input via the earphone being connected to equipment and to present audio frequency defeated Go out.As another example also having, equipment can be configured to via intelligent glasses to user Visually show information (such as, with present about subscriber equipment point to the user visual field in right The information of elephant, such as building).
Although in certain embodiments, virtual assistant can realize the function of personalized guide, but It is that each side of disclosure provided herein does not the most limit.In certain embodiments, Personalized guide can not be embodied as virtual assistant, but as independent application program, based on The service of web or in any other suitable way.
VIII. task is grand
Applicants have recognized that, user may want to use calculating equipment (such as, mobile device, Desk computer etc.) perform to include the task of multiple different subtask, but utilizing to use is somebody's turn to do Equipment performs multiple different subtask may need the multiple application programs on user's use equipment, This is time-consuming, especially when task to be repeated perform time.
As a non-limitative example, user may want to perform at the restaurant with his/her friend The task of friend's tissue dinner.This task may relate to perform multiple subtask, including: identify and work as Time (such as, utilizing calendar applications) that everyone has time, identify at everyone The free any time has the restaurant at the seat that can be used for whole party and (such as, utilizes restaurant Subscribe application program) and the invitation email listing dinner option is sent to each friend Friend's (such as, utilizing email application).In this example, user may need (such as, application is subscribed in calendar applications, restaurant to use the application program that at least three is different Program, email application) perform this task, this is time-consuming, if especially used Family is repeatedly carried out this task.
Applicants have recognized that, if it is possible to automatization comprises multiple subtask at least in part The execution of task, then can provide the Consumer's Experience of improvement.Therefore, some embodiments are by wound Build task macro (being called for short task grand) and provide the execution of the task of including multiple subtask extremely Small part automatization, wherein task macro is to include upon being performed, the most automatically Change the software program of the processor executable of tasks carrying.Task is grand can be with order (example Such as, voice command, press the button) it is associated, and user can adjust by utilizing order With task grand (such as, say voice command, press the button).
In certain embodiments, task is grand can make through subtask sequence by guiding user User need not clearly in initiating sequence the execution of each subtask carry out automatization's bag at least in part Include the execution of the task of multiple subtasks sequence.By this way, task macrocoding is used for performing The workflow of task.Task is grand can be automatically provided the one or more subtasks of execution needed for One or more inputs.Continuing above-mentioned example, the task of the dinner being used for tissue and friend is grand can Initially to present the user interface of calendar application to user, and when user indicates user to prepare When proceeding to well next subtask (such as, by by the Next button or with any its Its suitable mode), the grand user that automatically can present restaurant reservation application to user of task Interface, and when user indicates user to get out proceed to next subtask, task is grand can Automatically to present the user interface of e-mail applications to user, and display to the user that utilization The e-mail address of user friend and for inviting them to enter in a restaurant identified wherein The Email rough draft that the rough draft text of row dinner is pre-charged with.
Task is grand can (call via to application program API) with for perform one or Other application programs one or more of each subtask in multiple subtasks are mutual.Such as, For tissue and the task of friend's dinner are grand can be based on from for performing of a subtask The information that application program (being such as used for identifying the restaurant pre-booking process with available restaurant) obtains To the application program offer input for performing another subtask (such as, by the title in restaurant It is supplied to email application, for creating the electronics postal inviting user friend to go to this restaurant Part rough draft).In certain embodiments, task is grand can be realized by one or more agengs, This is being described herein.
In certain embodiments, task grand can access about user and/or one or more its At least some information of he user.Such as, task is grand can visit with any method described herein Ask in the profile of user and/or in (one or more) profile of other users one or more At least some information.Such as, task is grand can access the people wishing to invite dinner about user The information of the schedule in its user profiles.
Task is grand can be created in any suitable manner.In certain embodiments, Yong Huke With by providing user to wish the grand instruction of establishment task and grand establishment to grand establishment application program Application program at least partially through monitoring and to record the subsequent action of user grand to create task, User is provided to complete next " record " task of the grand instruction of establishment task until user grand.Such as, Grand establishment application program can monitor and record user use which application program, user with Any order uses they and/or user providing anything to input to each application program, and And it is grand to be based at least partially on this information creating task.In other embodiments, user is permissible By utilizing the graphic user interface of grand establishment application program to create grand, to be used to specify The application program sequence and/or the user that perform task to be supplied to one or more application program In the parameter of each.User complete establishment task grand after, grand establishment application program can Grand with store tasks and by it with the time that can be used to afterwards (such as, by equipment The virtual assistant performed provides verbal commands or in any other suitable way) calling task is grand (user can specify) order be associated.
IX. process based on body
In certain embodiments, virtual assistant can be based at least partially on from one or more The information that body obtains is mutual with user.Body can be that the concept encoded in the world is (such as, right As, position, the classification of object and/or other suitable concept any) and these concepts it Between the representation of knowledge of relation (such as, hierarchical structure or the relation of other suitable type any). As a non-limitative example, body can encode the name of a specific Italian restaurant Concept " Luigi ' s ", concept " Italian restaurant ", concept " restaurant " and concept " position ".Body can also be a kind of " Italy's meal by coding instruction " Luigi ' s " Shop ", " Italian restaurant " be a kind of " restaurant " and " restaurant " be a type of The information of " position " encodes the relation between these concepts.
Body can include identifying and one or many of the one or more conceptual dependencies connection in body The information of individual action.As a non-limitative example, the body of Coded concepts " restaurant " can To include that navigation by recognition is arrived the information of the action in " restaurant " and subscribes and concept in " restaurant " " restaurant " is associated.As another non-limitative example, including the basis of concept " flight " Body can include the information specifying the action of " flight " state of inspection, and subscribes " flight " It is associated with concept " flight ".Example above is merely illustrative, because general in body Thought can be associated with any suitably (one or more) action.
Virtual assistant can be at least partially through utilizing with any various ways from one or more The information that body obtains is mutual with user.As a non-limitative example, provide bag user After including the input of concept in the body, virtual assistant can help user to perform in the body The identified one or more actions joined with this conceptual dependency.Such as, virtual assistant can be from User receives input and " tells that I am about the situation of Luigi ' s ", can access in body and comprise The information of concept " Luigi ' s " and determine that " Luigi ' s " is one based on the information in body The restaurant of type, and therefore, subscribes and the action navigated is associated with " Luigi ' s ". Correspondingly, virtual assistant can help user to carry out subscribing (such as, by asking at Luigi ' s Ask user that " you want to subscribe at Luigi ' s?", start restaurant and subscribe application etc.), navigation To Luigi ' s, (such as, by inquiry user, " I should tell you the most thereunto?”、 Map shows the position etc. of Luigi ' s) and/or help user's execution to be indicated by body Other the suitable action any being associated with concept " Luigi ' s ".Unrestricted as another Property example, virtual assistant can use one or more NLU technology to analyze user input (such as, the input etc. of the speech of identification, key entry) and (one or more) NLU skill Art can use the information obtained from body to perform analysis.Such as, (one or more) Based on the information analysis user input obtained from body, NLU technology can determine that user expects Action.As specific example, user input can be provided " to carry me to arrive Luigi ' s " and And virtual assistant can be the Italy's meal that can navigate to it based on indicating Luigi ' s in body The information in shop determines that user wishes to be driven to the Italian restaurant of entitled Luigi ' s, and permissible User is helped to navigate to this restaurant.
Virtual assistant can access ontology information in any suitable manner.In certain embodiments, (such as, ontology information can be stored remotely from the position of the equipment that virtual assistant performs the most thereon Storage ontology information one or more servers on) and virtual assistant can pass through (example As, via network) store the equipment communications access information of ontology information with (one or more). But, about this during when each user quotes one or more concept, virtual assistant accesses body The information of (one or more) concept can be time-consuming.Correspondingly, in certain embodiments, At least some ontology information can be stored in user profiles and virtual assistant can access user Ontology information in profile.Such as, at least some ontology information can be stored in execution virtual On the equipment of assistant in the locally stored copy of the user profiles of storage and/or at such as server 110, deposit on the one or more calculating equipment that can communicate with of equipment of performing virtual assistant In the long-range stored copies of the user profiles of storage.Should be appreciated that away from virtual assistant the most thereon The ontology information of the equipment storage performed can be stored in to store subscriber profile information identical On (one or more) equipment (such as, server 110) or different (one or more) On equipment.
Any suitable ontology information can be stored in user profiles.In certain embodiments, Virtual assistant can access on the one or more servers being remotely stored in storage ontology information Ontology information and the information of access is stored in user profiles.Non-limiting as one Example, user can provide and quote concept (such as, Luigi ' input s) and virtual help Reason can access in the body of remotely storage information about the concept quoted (such as, it is intended that Which other concept and concept " Luigi ' s " are relevant, which action and concept " Luigi ' s " The relevant information waited), and the information of access can be stored in user profiles.With this Mode, when user quotes certain concept repeatedly, the concept that virtual assistant need not just be quoted is anti- Access long-range ontology information again, and the ontology information being stored in user profiles can be utilized. Ontology information can in any suitable manner (such as, character string, key-value, right, etc.) It is stored in user profiles, because each side of disclosure provided herein does not has in this respect Limit.
In certain embodiments, the ontology information that is stored in user profiles and/or (such as, On one or more servers of storage ontology information) ontology information of remotely storage can change, Make the ontology information of storage in user profiles no longer Tong Bu with the ontology information of remotely storage. Body can be modified in any suitable manner, including removing concept in the body, by new Concept is added body to, is associated and/or separate concept etc. in the body.
In some cases, remotely the ontology information of storage can be modified, to support with automatic Speech recognition, natural language understanding, dialogue management and/or at least partially through utilizing Or multiple server is at least partially through the relevant place of any task utilizing ontology information to perform Reason.As concrete non-limitative example, body can be by by concept, " northern Italy eats Shop ", " south Italian restaurant " and " Pizza " replacement concept " Italian restaurant " come more Newly.As another the concrete non-limitative example also having, new concept " Ristorante Mario " body can be added to and body can be updated, to encode instruction Ristorante Mario is the information of a type of " Italian restaurant ".
In some cases, the ontology information being stored in user profiles can be modified.Such as, One or more third-party application can be configured to access the body letter being stored in user profiles (such as, navigation system application can access the ontology information in user profiles to breath, to check use Which favorite restaurant, family is) and this ontology information can be updated.This third-party application (such as, hotel application) can increase one or more concepts to body, and (such as, hotel should With concept " hotel " can be added to body, it is a type of position together with instruction " hotel " The information put).
Correspondingly, in certain embodiments, when the ontology information made in user profiles not with The body letter of (such as, on one or more servers of storage ontology information) remotely storage Breath synchronizes timing really, and body can be synchronized so that ontology information in user profiles or Or its subset identical with the ontology information of remotely storage.Synchronization can any suitable time Between and occur in any suitable manner, because each side of disclosure provided herein is at this Aspect does not limit.In certain embodiments, synchronization can be by one or more server (examples As, central body server) perform.In certain embodiments, perform synchronization can include Determine whether synchronization can be performed automatically, and when determining that synchronization can be performed automatically Time, by the ontology information of the ontology information in the profile of one or more users with remotely storage Synchronize.On the other hand, when determining that synchronization can not be performed automatically, one or more users Profile in storage and not Tong Bu with the ontology information of remotely storage ontology information extremely Few some parts can be deactivated (such as, delete, be labeled as unusable etc.).With this Mode, virtual assistant is possible to prevent to use out-of-date ontology information.
X. ID service
Exist in which the many situations that may need to verify user identity.Non-limiting as one Example, user is possibly into shop and wishes to pay purchase with the credit card, and shop is wished Hope that checking user is the validated user of the credit card.As another non-limitative example, Yong Hushen Part may need to be verified to enter (such as, office building, airport, such as sound, specific region The happy Room, the place of stadiums, etc.).As another example also having, when user wishes Hope when performing bank transaction (such as, withdraw cash, transfer accounts, save, open an account, Close Account etc.), User identity may need to be verified.
In certain embodiments, user identity can be verified so that is stored in user profiles Personal information can be accessed, to perform one or more transaction.Non-limiting as one Example, user is possibly into shop and wishes with its information (such as, credit number, effectively Phase etc.) Credit Card Payments that is stored in user profiles buys.When user identity is verified, Shop can be authorized to, the credit card information being stored in user profiles with access.With this side Formula, user need not his/her credit card together with him/her.It is stored in user profiles also And the example that can be accessed to perform the personal information of one or more transaction includes the surname of user Name, address, bank account information, passport number, licence number, (one or more) account Family number, subscription information, Flight Information, etc..
In certain embodiments, the identification information being stored in user profiles can be used to checking and uses The identity at family.As described earlier, user profiles (such as, user profiles 200) is permissible Including any polytype user totem information.The example of identification information includes login name and close Code information, the answer to one or more safety problems, (one or more) of coding user The information of fingerprint, can be used to voice based on user (such as, the vocal print of user) and identify and use The information at family, can be used to the information of image recognition user based on user (such as, by profit By facial recognition), can be used to information based on retina scanning identification user and/or permissible It is used for identifying other suitable biological information any of user.In certain embodiments, know Other information can be stored as the data of encryption.In certain embodiments, user identity can be with base Verify in the identification information not stored in user profiles, such as by from except user profiles Outside other one or more source access any of above types identification information and/or with appoint What its suitable mode, because each side of disclosure provided herein does not has in this respect Limit.Such as, in certain embodiments, in order to provide additional data security layer, mark letter Breath can be stored in the position different from (one or more) position of user profiles storage.
The identification information being stored in user profiles can be used to verify user with any various ways Identity.In certain embodiments, enter and stored in user profiles from what user obtained Identification information can be used to verify the identity of user.In certain embodiments, obtain from user Input can directly compare with the identification information that is stored in user profiles (such as, by with Login name-the password of family input to can directly with the login name being stored in user profiles-close Code is to comparing).In other embodiments, the input obtained from user can be processed, To obtain the information for verifying user identity.Such as, one or more features can from from Family obtain input in extract (such as, one or more features can from the image of user, by The spoken input that user provides etc. are extracted), and the identity of user can be based in user's letter (one or more) feature and the identification information that extract in Dang are verified.Unrestricted as one Property example, user can provide spoken input (such as, saying inquiry language, pass phrase etc.) And the identity of user can be by utilizing any suitable speech recognition skill of spoken language input Identification information (such as, the vocal print of user) in art and user profiles is verified.As another Individual non-limitative example, can shoot user image (such as, user face-image, regard Nethike embrane scanogram, fingerprint image etc.) and the image that shoots can be with the mark in user profiles Knowledge information (such as, is used for the image based on the user letter by facial recognition techniques identification user Cease, encode the information of user fingerprints, coding and/or obtain from the relatively early retina scanning of user Information etc.) compare.
Should be appreciated that the checking of user identity is not limited to be based only upon from user a type of Input (such as, only finger print information, only spoken language input, are only used for the image of facial recognition) comes Perform, and in certain embodiments, can come based on the polytype input from user Perform so that the identity of user can utilize multiple technologies, and (such as, facial recognition and voice are known Not, other is suitable for facial recognition and fingerprint recognition and/or two or more technology any Combination) be verified.
As from described above it should be understood that in certain embodiments, the identity of user can be in order to Verify with biological information (such as, the voice of user), and be stored in and identified use Information (such as, credit card information) in the user profiles at family may be used for performing one or many Individual transaction (such as, utilizes the credit card to buy in shop).Utilize biological information The information in the profile of user and the identified user of access that identifies allows user to authorize one or more The execution of transaction (such as, Credit Card Payments), and without using identifying his/her appoint What project (such as, photo numbering, passport etc.) and/or for performing the project (example concluded the business As, the credit card, account number etc.).By this way, user need not to carry any this type of Project is together with him/her.Such as, user can wear his/her swimming suit and come into Tahiti's Shop and hiring a car, and without his/her passport with the credit card together with him/her.
Any suitable system can be used to enter and stored in user based on obtain from user Identification information in profile verifies user identity.In certain embodiments, checking can joined Be set to access the identification information being stored in user profiles and one of customer-furnished input or (such as, or many of the storage user profiles of such as server 110 is performed on multiple equipment The storage portable set of user profiles, the configuration of individual server, such as portable set 154 One communicated with the one or more equipment being configured to store user profiles for the execution service for checking credentials Individual or multiple server, its any suitable combination etc.).As an illustrative example, use Family may want to use her credit card to buy in shop.Identity in order to verify her is letter With the authorized user of card, user can provide spoken input, such as pass phrase.Spoken input With the information (such as, user says that she is " Mary Smith ") that identification user censures identity The server being configured to perform the addressable the Internet of the service for checking credentials can be supplied to.Server can To access the letter of " the Mary Smith " that be potentially stored on server and/or another equipment Information in Dang, and determine based on the identification information in the profile accessed and read code (R.C.) phrase Whether this user is Mary Smith.
In certain embodiments, transaction authorisation system can be mutual with user, to help user to hold The one or more transaction of row (such as, carrying out buying, performing bank transaction etc.).This can be with Any suitable mode completes.In certain embodiments, transaction authorisation system can ask to use Family identifies his/her, and as response, user can be to transaction authorisation system offer sound The information of fit part (such as, name, the particular number of ID, such as social security number, Etc.) and can be used to confirm that whether user is the identification information of the people that he/her claims.As Upper described, (such as, user can provide any suitable identification information to transaction authorisation system User can say be identified by his/her voice one or more pronunciations, provide and refer to Stricture of vagina, other suitable biometric identification information any is provided, PIN code and/or offer are provided Other suitable identification information any).
In certain embodiments, transaction authorisation system can from user obtain clear and definite license come to visit Ask the information (such as, credit card information, bank account information etc.) being associated with user.Example As, transaction authorisation system can point out user provide the license to transaction authorisation system access with Information (information such as, being stored in user profiles) and user that user is associated are permissible There is provided instruction transaction authorisation system can access the input of the information about user.Implement at some In example, transaction authorisation system can notify user, after user is identified, and Trading Authorization system Unite and will access information (such as, the credit card information of user, the bank account being associated with user Information etc.).
In certain embodiments, alleged identity is provided (such as, to claim that user is user " Mary Smith ") information and identification information (such as, for the spoken language of voice identifier Language) after, transaction authorisation system can access the letter of the user being associated with the identity claimed Shelves (profile of such as, entitled " Mary Smith " user) and will be stored in access Profile in identification information with by claim to be Mary Smith user provide identification information Compare.Correspondingly, the identity of user can be based on the information in user profiles with by user The identification information being supplied to transaction authorisation system is verified.Transaction authorisation system can be with any conjunction Suitable mode accesses the profile of user, such as, by the calculating with addressable subscriber profile information Equipment communicates, the server 110 such as described with reference to Fig. 1.
When the identity of user is not successfully verified (such as, it is provided that identification information and storage Identification information in the profile of the user being claimed in its identity does not mates), transaction authorisation system Can refuse to approve to execute desired transaction.On the other hand, it is successfully verified when the identity of user Time, transaction authorisation system can access in user profiles for performing the information of transaction (such as, Bank account information, credit card information, social security number, licence number, address and/or can Other suitable information any for performing transaction).
In certain embodiments, the information for performing to conclude the business can be tested by transaction authorisation system Card.As a non-limitative example, whether transaction authorisation system can verify credit card number Effectively.As another non-limitative example, transaction authorisation system can verify that bank account is No effectively and/or there is the most certain remaining sum.When determine the information being used for performing transaction without During effect, transaction authorisation system can be refused to approve to execute desired transaction.On the other hand, when really Surely to be used for performing the information of transaction effective time, this transaction can go through.
In certain embodiments, transaction authorisation system can be included in the one of one or more position Individual or multiple calculating equipment is (such as, the business being connected to one or more server via network One or more calculating equipment at shop).As a non-limitative example, Trading Authorization system One of the one or more computing device communication that may be configured to and store user profiles of uniting Or multiple server and be configured to (one or more) server communication one or more Calculating equipment (such as, in shop, the calculating equipment of bank etc.).
The most device-dependent behavior
In certain embodiments, of the equipment that virtual assistant can perform thereon based on it Or multiple characteristic customizes its behavior.Such as, at an equipment (such as, laptop computer) The virtual assistant of upper execution and another equipment (such as, mobile phone) upper perform another Individual virtual assistant can show different when mutual from same user.As a non-limiting example Son, virtual assistant can call the different application for performing same task on different devices (for example, it is possible to call different reproducing music programs, different web browser program Deng).As another non-limitative example, virtual assistant can depend on equipment available Display space amount provide a user with different images outputting amount (such as, without figure, some figures Deng) (such as, virtual assistant can provide ratio more on a laptop computer Many images outputting).As another non-limitative example also having, virtual assistant can change Become it and be supplied to the response contents of user.Such as, in response to user's query, " what you have Dream?", the virtual assistant performed on the mobile apparatus can answer that " I has to be fallen in lavatory Bad dream ", and the virtual assistant performed on TV can be answered, and " I dreams of into Lay preferably Depressed place star ".
In certain embodiments, equipment (such as, automotive infotainment) can access pass In the group of two or more users of equipment, the information of each user is (such as, about taking advantage of The information of kinsfolk by bus) and using about this group of access can be based at least partially on Information customization its behavior when mutual with that specific user of specific user in family.As one Non-limitative example, equipment can be configured to based on the information of content specifying user to like to User provides individualized content.Such as, automotive infotainment can access about by family The information of media content liked of each member (such as, child, father and mother, grand parents etc.) (such as, film, music, TV programme, broadcast program etc.) and can be to each family Member provides the media content that they may like.Such as, automotive infotainment can be by The kidvid that child in family likes is shown to be sitting in car passenger below, because Passenger in car back seat is probably child.
That XII. adds realizes details
The computer system can being used in combination with any embodiment of disclosure provided herein The illustrative realization of 1200 figure 12 illustrates.Computer system 1200 can include one Or multiple processor 1210 and include one of non-transitory computer-readable recording medium or Multiple manufactures (such as, memorizer 1220 and one or more non-volatile memory medium 1230).Processor 1210 can control to write data to memorizer in any suitable manner 1220 and non-volatile memory device 1230 and be read out from data, because provided herein The each side of disclosure does not the most limit.In order to perform any function described herein, Processor 1210 can perform to be stored in one or more non-transitory computer-readable storage medium One or more processor executable in matter (such as, memorizer 1220), wherein Non-transitory computer-readable recording medium can serve as storage for being performed by processor 1210 The non-transitory computer-readable recording medium of processor executable.
Terms used herein " program " or " software " refer to any kind of in general sense Computer code or sets of processor-executable instructions, this computer code or processor can perform to refer to Make collection can be used to computer or other processor program to realize embodiment as discussed above Various aspects.It is to be further understood that according to an aspect, perform basis when executed One or more computer programs of the method for the disclosure that literary composition provides are without residing in single meter On calculation machine or processor, but can be distributed in modular form multiple different computer or To realize the various aspects of disclosure provided herein among processor.
Processor executable can be with all multi-form, such as by one or more calculating The program module that machine or miscellaneous equipment perform.It is said that in general, program module includes performing specific It is engaged in or realizes the routine of particular abstract data type, program, object, assembly, data structure etc.. Generally, can combine as desired in various embodiments or the function of distribution program module.
And, data structure can be stored in one or more non-transitory in any appropriate form In computer-readable recording medium.For simplifying explanation, can be shown as to have by data structure and pass through The field being correlated with in position in data structure.This relation again may be by for field The position passed between field in the non-transitory computer-readable medium of relation of storage distribution come Realize.It is however possible to use the information that any suitable mechanism is in the field of data structure it Between opening relationships, including by using pointer, label or opening relationships between data element Other mechanism.
Additionally, various inventive concepts can be presented as one or more process, its example (figure 4,5,6,8A-8B, 9 and 11A-11B) it is provided.A part as each process The action performed can be ranked up in any suitable manner.Therefore, embodiment can be by structure Make for wherein action be different from diagram order perform, wherein can include simultaneously holding Some actions of row, although being illustrated as continuous print action in an illustrative embodiment.
Use the such as ordinal number art such as " first ", " second ", " the 3rd " in the claims Language is modified claim elements itself and is not meant to a claim elements relatively another right Require any priority for key element, superiority or order, or the method that wherein performs is moved The time sequencing made.These terms are solely for labelling and distinguish a power with certain title Profit requires key element and has another key element of same names (but being used for using ordinal term).
Phraseology and terminology employed herein is for purposes of description, and should not be considered as Limit.Use " including ", " comprising ", " having ", " containing ", " relating to " and Its deformation means to contain items listed thereafter and other project.
The several embodiment of technique described herein is described in detail, for this area skill For art personnel, will readily appreciate that various modifications and improvements.These amendments and improvement are intended to belong to Within the spirit and scope of present disclosure.Therefore, description above is merely possible to example, It is not intended as limiting.This technology is only restricted to be come by following claims and equivalent thereof Definition.

Claims (20)

1. one kind by being able to access that and at least one of the user-dependent information in user network The method that computer performs, user network includes first user and via network and first user phase At least the second user of association, described method includes:
At least one computer execution action described in utilizing:
(A) access and at least the second user-dependent information;And
(B) the virtual of execution on the equipment different from least one computer described is made to help Manage and perform at least one action and first user at least partially through based on the information accessed Alternately.
2. the method for claim 1, wherein:
Action (A) includes the information accessing the theme identifying that at least the second user is interested;And
Action (B) includes so that the information relevant to the theme identified is presented by virtual assistant To first user.
3. the method for claim 1, wherein:
Action (A) includes that accessing instruction at least the second user likes the information of certain project;And
Action (B) includes described project recommendation so that virtual assistant to first user.
4. method as claimed in claim 3, wherein said project is media content.
5. method as claimed in claim 3, wherein by described project recommendation to first user First user is presented to including by the advertisement of described project.
6. the method for claim 1, wherein:
Action (A) includes the information accessing the schedule specifying the second user at least in part; And
Action (B) includes so that virtual assistant is based on the day specifying the second user at least in part The information of journey table is arrangement activity between first user and the second user.
7. the method for claim 1, wherein:
Action (A) includes the information accessing the planning location specifying the second user;And
Action (B) includes so that the planning location of the second user is notified to first by virtual assistant User.
8. method as claimed in claim 7, wherein action (B) is additionally included in plan position Put and be between first user and the second user arrangement meeting.
9. it is able to access that and a system for the user-dependent information in user network, user Network includes first user and at least the second user being associated via network, institute with first user The system of stating includes:
At least one computer, is configured to execution action:
(A) access and at least the second user-dependent information;And
(B) the virtual of execution on the equipment different from least one computer described is made to help Manage and perform at least one action and first user at least partially through based on the information accessed Alternately.
10. system as claimed in claim 9, wherein:
Action (A) includes the information accessing the theme identifying that at least the second user is interested;And
Action (B) includes so that the information relevant to the theme identified is presented by virtual assistant To first user.
11. systems as claimed in claim 9, wherein:
Action (A) includes that accessing instruction at least the second user likes the information of certain project;And
Action (B) includes described project recommendation so that virtual assistant to first user.
12. systems as claimed in claim 11, wherein use described project recommendation to first Family includes the advertisement of described project is presented to first user.
13. systems as claimed in claim 9, wherein:
Action (A) includes the information accessing the schedule specifying the second user at least in part; And
Action (B) includes so that virtual assistant is based on the day specifying the second user at least in part The information of journey table is arrangement activity between first user and the second user.
14. systems as claimed in claim 9, wherein:
Action (A) includes the information accessing the planning location specifying the second user;And
Action (B) includes so that the planning location of the second user is notified to first by virtual assistant User.
At least one non-transitory computer-readable storage of 15. storage processor executable Medium, described processor executable is being able to access that the user to user network is relevant Information at least one computer perform time so that at least one computer implemented method described, User network includes first user and at least the second user being associated via network with first user, Described method includes action:
(A) access and at least the second user-dependent information;And
(B) the virtual of execution on the equipment different from least one computer described is made to help Manage and perform at least one action and first user at least partially through based on the information accessed Alternately.
16. at least one non-transitory computer-readable storage medium as claimed in claim 15 Matter, wherein:
Action (A) includes the information accessing the theme identifying that at least the second user is interested;And
Action (B) includes so that the information relevant to the theme identified is presented by virtual assistant To first user.
17. at least one non-transitory computer-readable storage medium as claimed in claim 16 Matter, wherein:
Action (A) includes that accessing instruction at least the second user likes the information of certain project;And
Action (B) includes described project recommendation so that virtual assistant to first user.
18. at least one non-transitory computer-readable storage medium as claimed in claim 17 Matter, wherein includes the advertisement of described project is presented to first user by described project recommendation One user.
19. at least one non-transitory computer-readable storage medium as claimed in claim 15 Matter, wherein:
Action (A) includes the information accessing the schedule specifying the second user at least in part; And
Action (B) includes so that virtual assistant specifies the second user at least in part based on described Information arrangement activity between first user and the second user of schedule.
20. at least one non-transitory computer-readable storage medium as claimed in claim 15 Matter, wherein:
Action (A) includes the information accessing the planning location specifying the second user;And
Action (B) includes so that the planning location of the second user is notified to first by virtual assistant User.
CN201380081661.5A 2013-12-16 2013-12-16 Systems and methods for providing a virtual assistant Pending CN105830048A (en)

Applications Claiming Priority (9)

Application Number Priority Date Filing Date Title
US14/107,499 US9804820B2 (en) 2013-12-16 2013-12-16 Systems and methods for providing a virtual assistant
US14/107,545 US10534623B2 (en) 2013-12-16 2013-12-16 Systems and methods for providing a virtual assistant
US14/107,622 2013-12-16
US14/107,466 2013-12-16
US14/107,622 US9571645B2 (en) 2013-12-16 2013-12-16 Systems and methods for providing a virtual assistant
US14/107,466 US9479931B2 (en) 2013-12-16 2013-12-16 Systems and methods for providing a virtual assistant
PCT/US2013/075457 WO2015094169A1 (en) 2013-12-16 2013-12-16 Systems and methods for providing a virtual assistant
US14/107,545 2013-12-16
US14/107,499 2013-12-16

Publications (1)

Publication Number Publication Date
CN105830048A true CN105830048A (en) 2016-08-03

Family

ID=56557420

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201380081661.5A Pending CN105830048A (en) 2013-12-16 2013-12-16 Systems and methods for providing a virtual assistant

Country Status (4)

Country Link
EP (1) EP3063646A4 (en)
KR (1) KR20160101079A (en)
CN (1) CN105830048A (en)
WO (1) WO2015094169A1 (en)

Cited By (75)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106528137A (en) * 2016-10-11 2017-03-22 深圳市天易联科技有限公司 Method and apparatus for conversation with virtual role
CN107800614A (en) * 2016-08-30 2018-03-13 谷歌有限责任公司 The disclosure of having ready conditions of the content controlled in group's context individual
CN107957776A (en) * 2016-10-14 2018-04-24 谷歌公司 active virtual assistant
CN108600071A (en) * 2018-04-16 2018-09-28 青岛海信移动通信技术股份有限公司 A kind of sharing method and mobile terminal of virtual portrait
CN108984078A (en) * 2017-05-31 2018-12-11 联想(新加坡)私人有限公司 The method and information processing unit of output setting are adjusted based on the user identified
CN109257941A (en) * 2017-05-12 2019-01-22 苹果公司 The synchronization of digital assistants and task delegation
CN109542557A (en) * 2018-10-31 2019-03-29 维沃移动通信有限公司 A kind of interface display method and terminal device
CN109615382A (en) * 2018-10-26 2019-04-12 阿里巴巴集团控股有限公司 Transfer account method, device and equipment
CN109635130A (en) * 2017-05-16 2019-04-16 苹果公司 The intelligent automation assistant explored for media
CN110121696A (en) * 2016-11-03 2019-08-13 三星电子株式会社 Electronic equipment and its control method
CN110310641A (en) * 2019-02-26 2019-10-08 北京蓦然认知科技有限公司 A kind of method and device for voice assistant
CN110442438A (en) * 2019-02-26 2019-11-12 北京蓦然认知科技有限公司 Task cooperative method, equipment and system between a kind of more equipment
CN110506247A (en) * 2017-01-25 2019-11-26 克拉蔻股份有限公司 System and method for the interactive elements in reality environment
CN110637464A (en) * 2017-05-17 2019-12-31 谷歌有限责任公司 Determining an agent for performing an action based at least in part on image data
CN110928521A (en) * 2020-02-17 2020-03-27 恒信东方文化股份有限公司 Intelligent voice communication method and intelligent voice communication system
US10791176B2 (en) 2017-05-12 2020-09-29 Apple Inc. Synchronization and task delegation of a digital assistant
US10878809B2 (en) 2014-05-30 2020-12-29 Apple Inc. Multi-command single utterance input method
US10978090B2 (en) 2013-02-07 2021-04-13 Apple Inc. Voice trigger for a digital assistant
US10984798B2 (en) 2018-06-01 2021-04-20 Apple Inc. Voice interaction at a primary device to access call functionality of a companion device
US11009970B2 (en) 2018-06-01 2021-05-18 Apple Inc. Attention aware virtual assistant dismissal
US11037565B2 (en) 2016-06-10 2021-06-15 Apple Inc. Intelligent digital assistant in a multi-tasking environment
US11070949B2 (en) 2015-05-27 2021-07-20 Apple Inc. Systems and methods for proactively identifying and surfacing relevant content on an electronic device with a touch-sensitive display
US11087759B2 (en) 2015-03-08 2021-08-10 Apple Inc. Virtual assistant activation
US11120372B2 (en) 2011-06-03 2021-09-14 Apple Inc. Performing actions associated with task items that represent tasks to perform
US11126400B2 (en) 2015-09-08 2021-09-21 Apple Inc. Zero latency digital assistant
US11133008B2 (en) 2014-05-30 2021-09-28 Apple Inc. Reducing the need for manual start/end-pointing and trigger phrases
US11152002B2 (en) 2016-06-11 2021-10-19 Apple Inc. Application integration with a digital assistant
US11169616B2 (en) 2018-05-07 2021-11-09 Apple Inc. Raise to speak
US11237797B2 (en) 2019-05-31 2022-02-01 Apple Inc. User activity shortcut suggestions
US11257504B2 (en) 2014-05-30 2022-02-22 Apple Inc. Intelligent assistant for home automation
US11321116B2 (en) 2012-05-15 2022-05-03 Apple Inc. Systems and methods for integrating third party services with a digital assistant
US11348582B2 (en) 2008-10-02 2022-05-31 Apple Inc. Electronic devices with voice command and contextual data processing capabilities
CN114650263A (en) * 2017-06-29 2022-06-21 谷歌有限责任公司 Proactive provision of new content to group chat participants
US11380310B2 (en) 2017-05-12 2022-07-05 Apple Inc. Low-latency intelligent automated assistant
US11388291B2 (en) 2013-03-14 2022-07-12 Apple Inc. System and method for processing voicemail
US11423886B2 (en) 2010-01-18 2022-08-23 Apple Inc. Task flow identification based on user intent
US11431642B2 (en) 2018-06-01 2022-08-30 Apple Inc. Variable latency device coordination
US11467802B2 (en) 2017-05-11 2022-10-11 Apple Inc. Maintaining privacy of personal information
US11468282B2 (en) 2015-05-15 2022-10-11 Apple Inc. Virtual assistant in a communication session
US11488406B2 (en) 2019-09-25 2022-11-01 Apple Inc. Text detection using global geometry estimators
US11500672B2 (en) 2015-09-08 2022-11-15 Apple Inc. Distributed personal assistant
US11516537B2 (en) 2014-06-30 2022-11-29 Apple Inc. Intelligent automated assistant for TV user interactions
US11521038B2 (en) 2018-07-19 2022-12-06 Samsung Electronics Co., Ltd. Electronic apparatus and control method thereof
US11526368B2 (en) 2015-11-06 2022-12-13 Apple Inc. Intelligent automated assistant in a messaging environment
US11532306B2 (en) 2017-05-16 2022-12-20 Apple Inc. Detecting a trigger of a digital assistant
US11580990B2 (en) 2017-05-12 2023-02-14 Apple Inc. User-specific acoustic models
US11599331B2 (en) 2017-05-11 2023-03-07 Apple Inc. Maintaining privacy of personal information
US11657813B2 (en) 2019-05-31 2023-05-23 Apple Inc. Voice identification in digital assistant systems
US11656884B2 (en) 2017-01-09 2023-05-23 Apple Inc. Application integration with a digital assistant
US11671920B2 (en) 2007-04-03 2023-06-06 Apple Inc. Method and system for operating a multifunction portable electronic device using voice-activation
US11675491B2 (en) 2019-05-06 2023-06-13 Apple Inc. User configurable task triggers
US11696060B2 (en) 2020-07-21 2023-07-04 Apple Inc. User identification using headphones
US11705130B2 (en) 2019-05-06 2023-07-18 Apple Inc. Spoken notifications
US11710482B2 (en) 2018-03-26 2023-07-25 Apple Inc. Natural assistant interaction
US11727219B2 (en) 2013-06-09 2023-08-15 Apple Inc. System and method for inferring user intent from speech inputs
US11755276B2 (en) 2020-05-12 2023-09-12 Apple Inc. Reducing description length based on confidence
US11765209B2 (en) 2020-05-11 2023-09-19 Apple Inc. Digital assistant hardware abstraction
US11783815B2 (en) 2019-03-18 2023-10-10 Apple Inc. Multimodality in digital assistant systems
US11790914B2 (en) 2019-06-01 2023-10-17 Apple Inc. Methods and user interfaces for voice-based control of electronic devices
US11798547B2 (en) 2013-03-15 2023-10-24 Apple Inc. Voice activated device for use with a voice-based digital assistant
US11809783B2 (en) 2016-06-11 2023-11-07 Apple Inc. Intelligent device arbitration and control
US11809483B2 (en) 2015-09-08 2023-11-07 Apple Inc. Intelligent automated assistant for media search and playback
US11831799B2 (en) 2019-08-09 2023-11-28 Apple Inc. Propagating context information in a privacy preserving manner
US11838734B2 (en) 2020-07-20 2023-12-05 Apple Inc. Multi-device audio adjustment coordination
US11854539B2 (en) 2018-05-07 2023-12-26 Apple Inc. Intelligent automated assistant for delivering content from user experiences
US11853536B2 (en) 2015-09-08 2023-12-26 Apple Inc. Intelligent automated assistant in a media environment
US11853647B2 (en) 2015-12-23 2023-12-26 Apple Inc. Proactive assistance based on dialog communication between devices
US11886805B2 (en) 2015-11-09 2024-01-30 Apple Inc. Unconventional virtual assistant interactions
US11888791B2 (en) 2019-05-21 2024-01-30 Apple Inc. Providing message response suggestions
US11887594B2 (en) 2017-03-22 2024-01-30 Google Llc Proactive incorporation of unsolicited content into human-to-computer dialogs
US11893992B2 (en) 2018-09-28 2024-02-06 Apple Inc. Multi-modal inputs for voice commands
US11908465B2 (en) 2016-11-03 2024-02-20 Samsung Electronics Co., Ltd. Electronic device and controlling method thereof
US11914848B2 (en) 2020-05-11 2024-02-27 Apple Inc. Providing relevant data items based on context
US11929069B2 (en) 2017-05-03 2024-03-12 Google Llc Proactive incorporation of unsolicited content into human-to-computer dialogs
US11947873B2 (en) 2015-06-29 2024-04-02 Apple Inc. Virtual assistant for media playback

Families Citing this family (72)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8677377B2 (en) 2005-09-08 2014-03-18 Apple Inc. Method and apparatus for building an intelligent automated assistant
US10002189B2 (en) 2007-12-20 2018-06-19 Apple Inc. Method and apparatus for searching using an active ontology
US9330720B2 (en) 2008-01-03 2016-05-03 Apple Inc. Methods and apparatus for altering audio output signals
US20100030549A1 (en) 2008-07-31 2010-02-04 Lee Michael M Mobile device having human language translation capability with positional feedback
US10276170B2 (en) 2010-01-18 2019-04-30 Apple Inc. Intelligent automated assistant
US8682667B2 (en) 2010-02-25 2014-03-25 Apple Inc. User profiling for selecting user specific voice input processing information
US9262612B2 (en) 2011-03-21 2016-02-16 Apple Inc. Device access using voice authentication
US10057736B2 (en) 2011-06-03 2018-08-21 Apple Inc. Active transport based notifications
US10134385B2 (en) 2012-03-02 2018-11-20 Apple Inc. Systems and methods for name pronunciation
KR20150046100A (en) 2012-08-10 2015-04-29 뉘앙스 커뮤니케이션즈, 인코포레이티드 Virtual agent communication for electronic devices
WO2014197335A1 (en) 2013-06-08 2014-12-11 Apple Inc. Interpreting and acting upon commands that involve sharing information with remote devices
CN110442699A (en) 2013-06-09 2019-11-12 苹果公司 Operate method, computer-readable medium, electronic equipment and the system of digital assistants
US10296160B2 (en) 2013-12-06 2019-05-21 Apple Inc. Method for extracting salient dialog usage from live data
US9571645B2 (en) 2013-12-16 2017-02-14 Nuance Communications, Inc. Systems and methods for providing a virtual assistant
US9804820B2 (en) 2013-12-16 2017-10-31 Nuance Communications, Inc. Systems and methods for providing a virtual assistant
US9479931B2 (en) 2013-12-16 2016-10-25 Nuance Communications, Inc. Systems and methods for providing a virtual assistant
US20170017501A1 (en) 2013-12-16 2017-01-19 Nuance Communications, Inc. Systems and methods for providing a virtual assistant
US9430463B2 (en) 2014-05-30 2016-08-30 Apple Inc. Exemplar-based natural language processing
US9633004B2 (en) 2014-05-30 2017-04-25 Apple Inc. Better resolution when referencing to concepts
US9818400B2 (en) 2014-09-11 2017-11-14 Apple Inc. Method and apparatus for discovering trending terms in speech requests
US10127911B2 (en) 2014-09-30 2018-11-13 Apple Inc. Speaker identification and unsupervised speaker adaptation techniques
US10074360B2 (en) 2014-09-30 2018-09-11 Apple Inc. Providing an indication of the suitability of speech recognition
US9668121B2 (en) 2014-09-30 2017-05-30 Apple Inc. Social reminders
US10152299B2 (en) 2015-03-06 2018-12-11 Apple Inc. Reducing response latency of intelligent automated assistants
US9721566B2 (en) 2015-03-08 2017-08-01 Apple Inc. Competing devices responding to voice triggers
US10567477B2 (en) 2015-03-08 2020-02-18 Apple Inc. Virtual assistant continuity
US10083688B2 (en) 2015-05-27 2018-09-25 Apple Inc. Device voice control for selecting a displayed affordance
US9578173B2 (en) 2015-06-05 2017-02-21 Apple Inc. Virtual assistant aided communication with 3rd party service in a communication session
US11025565B2 (en) 2015-06-07 2021-06-01 Apple Inc. Personalized prediction of responses for instant messaging
US10049668B2 (en) 2015-12-02 2018-08-14 Apple Inc. Applying neural network language models to weighted finite state transducers for automatic speech recognition
US11227589B2 (en) 2016-06-06 2022-01-18 Apple Inc. Intelligent list reading
US10049663B2 (en) 2016-06-08 2018-08-14 Apple, Inc. Intelligent automated assistant for media exploration
US10474753B2 (en) 2016-09-07 2019-11-12 Apple Inc. Language identification using recurrent neural networks
US10043516B2 (en) 2016-09-23 2018-08-07 Apple Inc. Intelligent automated assistant
US11281993B2 (en) 2016-12-05 2022-03-22 Apple Inc. Model and ensemble compression for metric learning
DK201770383A1 (en) 2017-05-09 2018-12-14 Apple Inc. User interface for correcting recognition errors
US10417266B2 (en) 2017-05-09 2019-09-17 Apple Inc. Context-aware ranking of intelligent response suggestions
US10395654B2 (en) 2017-05-11 2019-08-27 Apple Inc. Text normalization based on a data-driven learning network
DK201770439A1 (en) 2017-05-11 2018-12-13 Apple Inc. Offline personal assistant
US11301477B2 (en) 2017-05-12 2022-04-12 Apple Inc. Feedback analysis of a digital assistant
DK201770431A1 (en) 2017-05-15 2018-12-20 Apple Inc. Optimizing dialogue policy decisions for digital assistants using implicit feedback
DK201770432A1 (en) 2017-05-15 2018-12-21 Apple Inc. Hierarchical belief states for digital assistants
US10311144B2 (en) 2017-05-16 2019-06-04 Apple Inc. Emoji word sense disambiguation
DK179549B1 (en) 2017-05-16 2019-02-12 Apple Inc. Far-field extension for digital assistant services
US10403278B2 (en) 2017-05-16 2019-09-03 Apple Inc. Methods and systems for phonetic matching in digital assistant services
US10657328B2 (en) 2017-06-02 2020-05-19 Apple Inc. Multi-task recurrent neural network architecture for efficient morphology handling in neural language modeling
US11200027B2 (en) 2017-09-19 2021-12-14 Google Llc Virtual assistant configured to automatically customize groups of actions
US10445429B2 (en) 2017-09-21 2019-10-15 Apple Inc. Natural language understanding using vocabularies with compressed serialized tries
US10755051B2 (en) 2017-09-29 2020-08-25 Apple Inc. Rule-based natural language processing
US10636424B2 (en) 2017-11-30 2020-04-28 Apple Inc. Multi-turn canned dialog
US10733982B2 (en) 2018-01-08 2020-08-04 Apple Inc. Multi-directional dialog
US10733375B2 (en) 2018-01-31 2020-08-04 Apple Inc. Knowledge-based framework for improving natural language understanding
US10789959B2 (en) 2018-03-02 2020-09-29 Apple Inc. Training speaker recognition models for digital assistants
US10592604B2 (en) 2018-03-12 2020-03-17 Apple Inc. Inverse text normalization for automatic speech recognition
US10909331B2 (en) 2018-03-30 2021-02-02 Apple Inc. Implicit identification of translation payload with neural machine translation
US11049076B2 (en) 2018-05-07 2021-06-29 Microsoft Techology Licensing, Llc Routing of meeting requests and follow-up queries by digital assistants
US10984780B2 (en) 2018-05-21 2021-04-20 Apple Inc. Global semantic word embeddings using bi-directional recurrent neural networks
US11386266B2 (en) 2018-06-01 2022-07-12 Apple Inc. Text correction
DK201870355A1 (en) 2018-06-01 2019-12-16 Apple Inc. Virtual assistant operation in multi-device environments
US10496705B1 (en) 2018-06-03 2019-12-03 Apple Inc. Accelerated task performance
US11010561B2 (en) 2018-09-27 2021-05-18 Apple Inc. Sentiment prediction from textual data
US10839159B2 (en) 2018-09-28 2020-11-17 Apple Inc. Named entity normalization in a spoken dialog system
US11170166B2 (en) 2018-09-28 2021-11-09 Apple Inc. Neural typographical error modeling via generative adversarial networks
US11475898B2 (en) 2018-10-26 2022-10-18 Apple Inc. Low-latency multi-speaker speech recognition
US11638059B2 (en) 2019-01-04 2023-04-25 Apple Inc. Content playback on multiple devices
US10425533B1 (en) 2019-01-16 2019-09-24 Capital One Services, Llc Interacting with an interactive voice response system device or agent device of an organization
US11423908B2 (en) 2019-05-06 2022-08-23 Apple Inc. Interpreting spoken requests
US11475884B2 (en) 2019-05-06 2022-10-18 Apple Inc. Reducing digital assistant latency when a language is incorrectly determined
US11289073B2 (en) 2019-05-31 2022-03-29 Apple Inc. Device text to speech
US11496600B2 (en) 2019-05-31 2022-11-08 Apple Inc. Remote execution of machine-learned models
US11360641B2 (en) 2019-06-01 2022-06-14 Apple Inc. Increasing the relevance of new available information
WO2022125078A1 (en) * 2020-12-08 2022-06-16 Google Llc Identifying and providing requested user information during voice calls and video calls

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1971604A (en) * 2005-11-23 2007-05-30 阿尔卡特公司 System and method for calendar presence retrieval
CN101305340A (en) * 2005-11-08 2008-11-12 诺基亚公司 Active notes application
CN101427556A (en) * 2006-04-20 2009-05-06 思科技术公司 Accessing a calendar server to facilitate initiation of a scheduled call
CN102017649A (en) * 2008-04-24 2011-04-13 三星电子株式会社 Method and apparatus for recommending broadcast contents
CN102591912A (en) * 2006-10-06 2012-07-18 联合视频制品公司 Systems and methods for acquiring, categorizing and delivering media in interactive media guidance applications
CN102947844A (en) * 2010-06-22 2013-02-27 微软公司 Social task lists

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7640160B2 (en) * 2005-08-05 2009-12-29 Voicebox Technologies, Inc. Systems and methods for responding to natural language speech utterance
US8819729B2 (en) * 2011-02-25 2014-08-26 Avaya Inc. Advanced user interface and control paradigm for multiple service operator extended functionality offers
US20130332521A1 (en) * 2012-06-07 2013-12-12 United Video Properties, Inc. Systems and methods for compiling media information based on privacy and reliability metrics
US9648369B2 (en) * 2012-06-11 2017-05-09 Verizon Patent And Licensing Inc. Cross-platform schedule management interface

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101305340A (en) * 2005-11-08 2008-11-12 诺基亚公司 Active notes application
CN1971604A (en) * 2005-11-23 2007-05-30 阿尔卡特公司 System and method for calendar presence retrieval
CN101427556A (en) * 2006-04-20 2009-05-06 思科技术公司 Accessing a calendar server to facilitate initiation of a scheduled call
CN102591912A (en) * 2006-10-06 2012-07-18 联合视频制品公司 Systems and methods for acquiring, categorizing and delivering media in interactive media guidance applications
CN102017649A (en) * 2008-04-24 2011-04-13 三星电子株式会社 Method and apparatus for recommending broadcast contents
CN102947844A (en) * 2010-06-22 2013-02-27 微软公司 Social task lists

Cited By (109)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11671920B2 (en) 2007-04-03 2023-06-06 Apple Inc. Method and system for operating a multifunction portable electronic device using voice-activation
US11348582B2 (en) 2008-10-02 2022-05-31 Apple Inc. Electronic devices with voice command and contextual data processing capabilities
US11900936B2 (en) 2008-10-02 2024-02-13 Apple Inc. Electronic devices with voice command and contextual data processing capabilities
US11423886B2 (en) 2010-01-18 2022-08-23 Apple Inc. Task flow identification based on user intent
US11120372B2 (en) 2011-06-03 2021-09-14 Apple Inc. Performing actions associated with task items that represent tasks to perform
US11321116B2 (en) 2012-05-15 2022-05-03 Apple Inc. Systems and methods for integrating third party services with a digital assistant
US11862186B2 (en) 2013-02-07 2024-01-02 Apple Inc. Voice trigger for a digital assistant
US10978090B2 (en) 2013-02-07 2021-04-13 Apple Inc. Voice trigger for a digital assistant
US11557310B2 (en) 2013-02-07 2023-01-17 Apple Inc. Voice trigger for a digital assistant
US11636869B2 (en) 2013-02-07 2023-04-25 Apple Inc. Voice trigger for a digital assistant
US11388291B2 (en) 2013-03-14 2022-07-12 Apple Inc. System and method for processing voicemail
US11798547B2 (en) 2013-03-15 2023-10-24 Apple Inc. Voice activated device for use with a voice-based digital assistant
US11727219B2 (en) 2013-06-09 2023-08-15 Apple Inc. System and method for inferring user intent from speech inputs
US11257504B2 (en) 2014-05-30 2022-02-22 Apple Inc. Intelligent assistant for home automation
US11699448B2 (en) 2014-05-30 2023-07-11 Apple Inc. Intelligent assistant for home automation
US11670289B2 (en) 2014-05-30 2023-06-06 Apple Inc. Multi-command single utterance input method
US11133008B2 (en) 2014-05-30 2021-09-28 Apple Inc. Reducing the need for manual start/end-pointing and trigger phrases
US11810562B2 (en) 2014-05-30 2023-11-07 Apple Inc. Reducing the need for manual start/end-pointing and trigger phrases
US10878809B2 (en) 2014-05-30 2020-12-29 Apple Inc. Multi-command single utterance input method
US11516537B2 (en) 2014-06-30 2022-11-29 Apple Inc. Intelligent automated assistant for TV user interactions
US11838579B2 (en) 2014-06-30 2023-12-05 Apple Inc. Intelligent automated assistant for TV user interactions
US11087759B2 (en) 2015-03-08 2021-08-10 Apple Inc. Virtual assistant activation
US11842734B2 (en) 2015-03-08 2023-12-12 Apple Inc. Virtual assistant activation
US11468282B2 (en) 2015-05-15 2022-10-11 Apple Inc. Virtual assistant in a communication session
US11070949B2 (en) 2015-05-27 2021-07-20 Apple Inc. Systems and methods for proactively identifying and surfacing relevant content on an electronic device with a touch-sensitive display
US11947873B2 (en) 2015-06-29 2024-04-02 Apple Inc. Virtual assistant for media playback
US11500672B2 (en) 2015-09-08 2022-11-15 Apple Inc. Distributed personal assistant
US11550542B2 (en) 2015-09-08 2023-01-10 Apple Inc. Zero latency digital assistant
US11853536B2 (en) 2015-09-08 2023-12-26 Apple Inc. Intelligent automated assistant in a media environment
US11126400B2 (en) 2015-09-08 2021-09-21 Apple Inc. Zero latency digital assistant
US11809483B2 (en) 2015-09-08 2023-11-07 Apple Inc. Intelligent automated assistant for media search and playback
US11954405B2 (en) 2015-09-08 2024-04-09 Apple Inc. Zero latency digital assistant
US11809886B2 (en) 2015-11-06 2023-11-07 Apple Inc. Intelligent automated assistant in a messaging environment
US11526368B2 (en) 2015-11-06 2022-12-13 Apple Inc. Intelligent automated assistant in a messaging environment
US11886805B2 (en) 2015-11-09 2024-01-30 Apple Inc. Unconventional virtual assistant interactions
US11853647B2 (en) 2015-12-23 2023-12-26 Apple Inc. Proactive assistance based on dialog communication between devices
US11657820B2 (en) 2016-06-10 2023-05-23 Apple Inc. Intelligent digital assistant in a multi-tasking environment
US11037565B2 (en) 2016-06-10 2021-06-15 Apple Inc. Intelligent digital assistant in a multi-tasking environment
US11152002B2 (en) 2016-06-11 2021-10-19 Apple Inc. Application integration with a digital assistant
US11809783B2 (en) 2016-06-11 2023-11-07 Apple Inc. Intelligent device arbitration and control
US11749275B2 (en) 2016-06-11 2023-09-05 Apple Inc. Application integration with a digital assistant
CN107800614B (en) * 2016-08-30 2021-03-16 谷歌有限责任公司 Conditional disclosure of individually controlled content in a group context
US10635832B2 (en) 2016-08-30 2020-04-28 Google Llc Conditional disclosure of individual-controlled content in group contexts
CN107800614A (en) * 2016-08-30 2018-03-13 谷歌有限责任公司 The disclosure of having ready conditions of the content controlled in group's context individual
CN106528137A (en) * 2016-10-11 2017-03-22 深圳市天易联科技有限公司 Method and apparatus for conversation with virtual role
US11823068B2 (en) 2016-10-14 2023-11-21 Google Llc Proactive virtual assistant
CN107957776B (en) * 2016-10-14 2021-04-02 谷歌有限责任公司 Active virtual assistant
CN107957776A (en) * 2016-10-14 2018-04-24 谷歌公司 active virtual assistant
CN113010016A (en) * 2016-10-14 2021-06-22 谷歌有限责任公司 Active virtual assistant
US11908465B2 (en) 2016-11-03 2024-02-20 Samsung Electronics Co., Ltd. Electronic device and controlling method thereof
CN110121696A (en) * 2016-11-03 2019-08-13 三星电子株式会社 Electronic equipment and its control method
US11656884B2 (en) 2017-01-09 2023-05-23 Apple Inc. Application integration with a digital assistant
CN110506247B (en) * 2017-01-25 2023-08-04 克拉蔻股份有限公司 System and method for interactive elements within a virtual reality environment
CN110506247A (en) * 2017-01-25 2019-11-26 克拉蔻股份有限公司 System and method for the interactive elements in reality environment
US11887594B2 (en) 2017-03-22 2024-01-30 Google Llc Proactive incorporation of unsolicited content into human-to-computer dialogs
US11929069B2 (en) 2017-05-03 2024-03-12 Google Llc Proactive incorporation of unsolicited content into human-to-computer dialogs
US11599331B2 (en) 2017-05-11 2023-03-07 Apple Inc. Maintaining privacy of personal information
US11467802B2 (en) 2017-05-11 2022-10-11 Apple Inc. Maintaining privacy of personal information
US11862151B2 (en) 2017-05-12 2024-01-02 Apple Inc. Low-latency intelligent automated assistant
US10791176B2 (en) 2017-05-12 2020-09-29 Apple Inc. Synchronization and task delegation of a digital assistant
US11405466B2 (en) 2017-05-12 2022-08-02 Apple Inc. Synchronization and task delegation of a digital assistant
US11837237B2 (en) 2017-05-12 2023-12-05 Apple Inc. User-specific acoustic models
US11580990B2 (en) 2017-05-12 2023-02-14 Apple Inc. User-specific acoustic models
US11380310B2 (en) 2017-05-12 2022-07-05 Apple Inc. Low-latency intelligent automated assistant
CN109257941A (en) * 2017-05-12 2019-01-22 苹果公司 The synchronization of digital assistants and task delegation
US11538469B2 (en) 2017-05-12 2022-12-27 Apple Inc. Low-latency intelligent automated assistant
CN109635130A (en) * 2017-05-16 2019-04-16 苹果公司 The intelligent automation assistant explored for media
US11532306B2 (en) 2017-05-16 2022-12-20 Apple Inc. Detecting a trigger of a digital assistant
US11675829B2 (en) 2017-05-16 2023-06-13 Apple Inc. Intelligent automated assistant for media exploration
CN110637464B (en) * 2017-05-17 2022-04-12 谷歌有限责任公司 Method, computing device, and storage medium for determining an agent for performing an action
CN110637464A (en) * 2017-05-17 2019-12-31 谷歌有限责任公司 Determining an agent for performing an action based at least in part on image data
CN108984078A (en) * 2017-05-31 2018-12-11 联想(新加坡)私人有限公司 The method and information processing unit of output setting are adjusted based on the user identified
CN114650263A (en) * 2017-06-29 2022-06-21 谷歌有限责任公司 Proactive provision of new content to group chat participants
US11710482B2 (en) 2018-03-26 2023-07-25 Apple Inc. Natural assistant interaction
CN108600071A (en) * 2018-04-16 2018-09-28 青岛海信移动通信技术股份有限公司 A kind of sharing method and mobile terminal of virtual portrait
US11900923B2 (en) 2018-05-07 2024-02-13 Apple Inc. Intelligent automated assistant for delivering content from user experiences
US11907436B2 (en) 2018-05-07 2024-02-20 Apple Inc. Raise to speak
US11169616B2 (en) 2018-05-07 2021-11-09 Apple Inc. Raise to speak
US11487364B2 (en) 2018-05-07 2022-11-01 Apple Inc. Raise to speak
US11854539B2 (en) 2018-05-07 2023-12-26 Apple Inc. Intelligent automated assistant for delivering content from user experiences
US11360577B2 (en) 2018-06-01 2022-06-14 Apple Inc. Attention aware virtual assistant dismissal
US11431642B2 (en) 2018-06-01 2022-08-30 Apple Inc. Variable latency device coordination
US11009970B2 (en) 2018-06-01 2021-05-18 Apple Inc. Attention aware virtual assistant dismissal
US10984798B2 (en) 2018-06-01 2021-04-20 Apple Inc. Voice interaction at a primary device to access call functionality of a companion device
US11630525B2 (en) 2018-06-01 2023-04-18 Apple Inc. Attention aware virtual assistant dismissal
US11521038B2 (en) 2018-07-19 2022-12-06 Samsung Electronics Co., Ltd. Electronic apparatus and control method thereof
US11893992B2 (en) 2018-09-28 2024-02-06 Apple Inc. Multi-modal inputs for voice commands
CN109615382A (en) * 2018-10-26 2019-04-12 阿里巴巴集团控股有限公司 Transfer account method, device and equipment
CN109542557A (en) * 2018-10-31 2019-03-29 维沃移动通信有限公司 A kind of interface display method and terminal device
CN110442438A (en) * 2019-02-26 2019-11-12 北京蓦然认知科技有限公司 Task cooperative method, equipment and system between a kind of more equipment
CN110310641A (en) * 2019-02-26 2019-10-08 北京蓦然认知科技有限公司 A kind of method and device for voice assistant
US11783815B2 (en) 2019-03-18 2023-10-10 Apple Inc. Multimodality in digital assistant systems
US11705130B2 (en) 2019-05-06 2023-07-18 Apple Inc. Spoken notifications
US11675491B2 (en) 2019-05-06 2023-06-13 Apple Inc. User configurable task triggers
US11888791B2 (en) 2019-05-21 2024-01-30 Apple Inc. Providing message response suggestions
US11237797B2 (en) 2019-05-31 2022-02-01 Apple Inc. User activity shortcut suggestions
US11657813B2 (en) 2019-05-31 2023-05-23 Apple Inc. Voice identification in digital assistant systems
US11360739B2 (en) 2019-05-31 2022-06-14 Apple Inc. User activity shortcut suggestions
US11790914B2 (en) 2019-06-01 2023-10-17 Apple Inc. Methods and user interfaces for voice-based control of electronic devices
US11831799B2 (en) 2019-08-09 2023-11-28 Apple Inc. Propagating context information in a privacy preserving manner
US11488406B2 (en) 2019-09-25 2022-11-01 Apple Inc. Text detection using global geometry estimators
CN110928521A (en) * 2020-02-17 2020-03-27 恒信东方文化股份有限公司 Intelligent voice communication method and intelligent voice communication system
US11924254B2 (en) 2020-05-11 2024-03-05 Apple Inc. Digital assistant hardware abstraction
US11765209B2 (en) 2020-05-11 2023-09-19 Apple Inc. Digital assistant hardware abstraction
US11914848B2 (en) 2020-05-11 2024-02-27 Apple Inc. Providing relevant data items based on context
US11755276B2 (en) 2020-05-12 2023-09-12 Apple Inc. Reducing description length based on confidence
US11838734B2 (en) 2020-07-20 2023-12-05 Apple Inc. Multi-device audio adjustment coordination
US11696060B2 (en) 2020-07-21 2023-07-04 Apple Inc. User identification using headphones
US11750962B2 (en) 2020-07-21 2023-09-05 Apple Inc. User identification using headphones

Also Published As

Publication number Publication date
KR20160101079A (en) 2016-08-24
EP3063646A4 (en) 2017-06-21
WO2015094169A1 (en) 2015-06-25
EP3063646A1 (en) 2016-09-07

Similar Documents

Publication Publication Date Title
CN105830048A (en) Systems and methods for providing a virtual assistant
US10534623B2 (en) Systems and methods for providing a virtual assistant
US9804820B2 (en) Systems and methods for providing a virtual assistant
US9571645B2 (en) Systems and methods for providing a virtual assistant
US9479931B2 (en) Systems and methods for providing a virtual assistant
Born Rationalizing culture: IRCAM, Boulez, and the institutionalization of the musical avant-garde
Janarthanam Hands-on chatbots and conversational UI development: build chatbots and voice user interfaces with Chatfuel, Dialogflow, Microsoft Bot Framework, Twilio, and Alexa Skills
US10853582B2 (en) Conversational agent
CN105190607B (en) Pass through the user training of intelligent digital assistant
AU2017204217B2 (en) Intelligent automated assistant
CN104813311B (en) The system and method recommended for the virtual protocol of more people
CN105808200B (en) Intelligent automation assistant
CN109635130A (en) The intelligent automation assistant explored for media
CN104584010B (en) Voice-based media research
CN107480161A (en) The intelligent automation assistant probed into for media
CN103226949B (en) Using context information to facilitate processing of commands in a virtual assistant
CN109463004A (en) The far field of digital assistants service extends
CN107430858A (en) The metadata of transmission mark current speaker
CN107004410A (en) Voice and connecting platform
CN104335234A (en) Systems and methods for interating third party services with a digital assistant
CN101292282A (en) Mobile systems and methods of supporting natural language human-machine interactions
Brodie Is Stand-Up Comedy Art? Brodie
SANCHEZ Facebook messenger chatbots. How businesses can benefit from this opportunity
Gao et al. Study on design principles of voice interaction design for smart mobile devices
McTear The role of spoken dialogue in user–environment interaction

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
RJ01 Rejection of invention patent application after publication
RJ01 Rejection of invention patent application after publication

Application publication date: 20160803