IP Library › Granted Patent US 12,136,419
Granted Patent B2
US 12,136,419 · App. 18/240,986 · Granted Nov 5, 2024

Multimodality in digital assistant systems

Inventors: Pierre P. Greborio (Sunnyvale, CA); Didier Rene Guzzoni (Mont-sur-Rolle, CH); Philippe P. Piernot (Los Gatos, CA)
Assignee: Apple Inc.
G10L15/1815G10L15/1822G10L15/22G10L15/30G10L2015/223
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 12,136,419
App. No.
18/240,986
Filed
Aug 31, 2023
Granted
Nov 5, 2024
Kind
B2
Art Unit
2654
USPC
704/257
Abstract

Systems and processes for operating an intelligent automated assistant are provided. An example process for determining user intent includes receiving a natural language input and detecting an event. The process further includes, determining, at a first time, based on the natural language input, a first value for a first node of a parsing structure; and determining, at a second time, based on the detected data event, a second value for a second node of the parsing structure. The process further includes in accordance with a determination that the first time and the second time are within the predetermined time: determining, using the parsing structure, the first value, and the second value, a user intent associated with the natural language input; initiating a task based on the determined intent; and providing an output indicative of the task.

Claims (93)

1. A non-transitory computer-readable storage medium storing one or more programs, the one or more programs comprising instructions, which when executed by one or more processors of an electronic device, cause the electronic device to:

detect a context of the electronic device;

in accordance with a determination that the context of the electronic device corresponds to a predetermined type of event:

receive a natural language input;

determine, based on the natural language input, a first value for a first node of a plurality of nodes of a parsing structure, the first node corresponding to a natural language data stream;

determine, based on the detected context, a second value for a second node of the plurality of nodes of the parsing structure; and

perform a task associated with the natural language input using the parsing structure, the first value, and the second value.

2. The non-transitory computer-readable storage medium of claim 1 , wherein the first value is determined at a first time, the second value is determined at a second time, and the task is determined in accordance with a determination that the first time and the second time are within a predetermined time.

3. The non-transitory computer-readable storage medium of claim 1 , wherein the second value is determined without processing the natural language input.

4. The non-transitory computer-readable storage medium of claim 1 , wherein:

the first node and the second node depend from a group node of the plurality of nodes; and

determining the user intent associated with the natural language input comprises determining, using the group node, one or more values for a property of the user intent based on at least one of the first value and the second value.

5. The non-transitory computer-readable storage medium of claim 4 , wherein the group node determines the one or more values for the property in accordance with a rule associated with the group node being satisfied.

6. The non-transitory computer-readable storage medium of claim 5 , wherein the rule associated with the group node is satisfied when the first value and the second value are each determined within a predetermined time.

7. The non-transitory computer-readable storage medium of claim 5 , wherein the rule associated with the group node is satisfied when the first value is determined before the second value is determined.

8. The non-transitory computer-readable storage medium of claim 1 , wherein determining the user intent comprises:

determining a candidate intent based on the first value and the second value;

determining a confidence score associated with the candidate intent; and

selecting, using a second group node of the plurality of nodes, the candidate intent as the user intent based on the confidence score.

9. The non-transitory computer-readable storage medium of claim 1 , wherein the one or more programs further comprise instructions, which when executed by one or more processors of the electronic device, cause the electronic device to:

in accordance with the determination that the context corresponds to the predetermined type of event:

initiate a session of a digital assistant; and

wherein the natural language input is received in accordance with initiating the session of the digital assistant.

10. The non-transitory computer-readable storage medium of claim 1 , wherein the one or more programs further comprise instructions, which when executed by one or more processors of the electronic device, cause the electronic device to:

in accordance with a determination that the first value is not determined within a second predetermined time after determining the second value, provide a request for user input, wherein the natural language input is received responsive to the request for user input.

11. The non-transitory computer-readable storage medium of claim 1 , wherein the context of the electronic device includes a location of the electronic device, whether a particular setting of the electronic device is activated, and an attribute of the electronic device.

12. The non-transitory computer-readable storage medium of claim 1 , wherein the predetermined type of event includes detecting data from a predetermined sensor.

13. The non-transitory computer-readable storage medium of claim 1 , wherein the predetermined type of event includes detecting data indicating a user context.

14. The non-transitory computer-readable storage medium of claim 13 , wherein the user context includes an activity of the user.

15. The non-transitory computer-readable storage medium of claim 13 , wherein the user context includes a preference of the user.

16. A method for processing natural language requests, the method comprising:

detecting a context of an electronic device;

in accordance with a determination that the context of the electronic device corresponds to a predetermined type of event:

receiving a natural language input;

determining, based on the natural language input, a first value for a first node of a plurality of nodes of a parsing structure, the first node corresponding to a natural language data stream;

determining, based on the detected context, a second value for a second node of the plurality of nodes of the parsing structure; and

performing a task associated with the natural language input using the parsing structure, the first value, and the second value.

17. An electronic device, comprising:

one or more processors;

memory; and

one or more programs stored in the memory, the one or more programs including instructions for:

detecting a context of the electronic device;

in accordance with a determination that the context of the electronic device corresponds to a predetermined type of event:

receiving a natural language input;

determining, based on the natural language input, a first value for a first node of a plurality of nodes of a parsing structure, the first node corresponding to a natural language data stream;

determining, based on the detected context, a second value for a second node of the plurality of nodes of the parsing structure; and

performing a task associated with the natural language input using the parsing structure, the first value, and the second value.

18. The method of claim 16 , wherein the first value is determined at a first time, the second value is determined at a second time, and the task is determined in accordance with a determination that the first time and the second time are within a predetermined time.

19. The method of claim 16 , wherein the second value is determined without processing the natural language input.

20. The method of claim 16 , wherein:

the first node and the second node depend from a group node of the plurality of nodes; and

determining the user intent associated with the natural language input comprises determining, using the group node, one or more values for a property of the user intent based on at least one of the first value and the second value.

21. The method of claim 20 , wherein the group node determines the one or more values for the property in accordance with a rule associated with the group node being satisfied.

22. The method of claim 21 , wherein the rule associated with the group node is satisfied when the first value and the second value are each determined within a predetermined time.

23. ((New) The method of claim 21 , wherein the rule associated with the group node is satisfied when the first value is determined before the second value is determined.

24. The method of claim 16 , wherein determining the user intent comprises:

determining a candidate intent based on the first value and the second value;

determining a confidence score associated with the candidate intent; and

selecting, using a second group node of the plurality of nodes, the candidate intent as the user intent based on the confidence score.

25. The method of claim 16 , further comprising:

in accordance with the determination that the context corresponds to the predetermined type of event:

initiate a session of a digital assistant; and

wherein the natural language input is received in accordance with initiating the session of the digital assistant.

26. The method of claim 16 , further comprising:

in accordance with a determination that the first value is not determined within a second predetermined time after determining the second value, provide a request for user input, wherein the natural language input is received responsive to the request for user input.

27. The method of claim 16 , wherein the context of the electronic device includes a location of the electronic device, whether a particular setting of the electronic device is activated, and an attribute of the electronic device.

28. The method of claim 16 , wherein the predetermined type of event includes detecting data from a predetermined sensor.

29. The method of claim 16 , wherein the predetermined type of event includes detecting data indicating a user context.

30. The method of claim 29 , wherein the user context includes an activity of the user.

31. The method of claim 29 , wherein the user context includes a preference of the user.

32. The electronic device of claim 17 , wherein the first value is determined at a first time, the second value is determined at a second time, and the task is determined in accordance with a determination that the first time and the second time are within a predetermined time.

33. The electronic device of claim 17 , wherein the second value is determined without processing the natural language input.

34. The electronic device of claim 17 wherein:

the first node and the second node depend from a group node of the plurality of nodes; and

determining the user intent associated with the natural language input comprises determining, using the group node, one or more values for a property of the user intent based on at least one of the first value and the second value.

35. The electronic device of claim 34 , wherein the group node determines the one or more values for the property in accordance with a rule associated with the group node being satisfied.

36. The electronic device of claim 35 , wherein the rule associated with the group node is satisfied when the first value and the second value are each determined within a predetermined time.

37. The electronic device of claim 35 , wherein the rule associated with the group node is satisfied when the first value is determined before the second value is determined.

38. The electronic device of claim 17 , wherein determining the user intent comprises:

determining a candidate intent based on the first value and the second value;

determining a confidence score associated with the candidate intent; and

selecting, using a second group node of the plurality of nodes, the candidate intent as the user intent based on the confidence score.

39. The electronic device of claim 17 , the one or more programs further including instructions for:

in accordance with the determination that the context corresponds to the predetermined type of event:

initiate a session of a digital assistant; and

wherein the natural language input is received in accordance with initiating the session of the digital assistant.

40. The electronic device of claim 17 , the one or more programs further including instructions for:

in accordance with a determination that the first value is not determined within a second predetermined time after determining the second value, provide a request for user input, wherein the natural language input is received responsive to the request for user input.

41. The electronic device of claim 17 , wherein the context of the electronic device includes a location of the electronic device, whether a particular setting of the electronic device is activated, and an attribute of the electronic device.

42. The electronic device of claim 17 , wherein the predetermined type of event includes detecting data from a predetermined sensor.

43. The electronic device of claim 17 , wherein the predetermined type of event includes detecting data indicating a user context.

44. The electronic device of claim 43 , wherein the user context includes an activity of the user.

45. The electronic device of claim 43 , wherein the user context includes a preference of the user.

Continuity (4)
Continuation 17732243 · Apr 28, 2022
Continuation 16441461 · Jun 14, 2019
Provisional Application 62820164 · Mar 18, 2019
Related Publication 20230410798A1 · Dec 21, 2023
Cited By (2)
US 12,457,476 US 12,671,964