IP Library Granted Patent US 12,271,934
Granted Patent B2
US 12,271,934 · App. 18/372,483 · Granted Apr 8, 2025

Enhancing functionalities of virtual assistants and dialog systems via plugin marketplace

Inventors: Ilya Gennadyevich Gelfenbeyn (Sunnyvale, CA); Artem Goncharuk (Mountain View, CA); Pavel Aleksandrovich Sirotin (Sunnyvale, CA)
Assignee: GOOGLE LLC
G06Q30/0601
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,271,934
App. No.
18/372,483
Granted
Apr 8, 2025
Kind
B2
Abstract

A method for enhancing dialog systems is disclosed herein. The method may include maintaining an online marketplace that may have a plurality of dialog system extension elements. The plurality of dialog system extension elements may include at least one of a dialog system plugin, a dialog system add-on, a dialog system update, and a dialog system upgrade. The method may further include receiving a selection of one of the plurality of dialog system extension elements from an end user. The end user may be associated with a dialog system. The method may continue with associating the one of the plurality of dialog system extension elements with the dialog system of the end user.

Claims (63)

1. A method performed by one or more processors, the method comprising:

maintaining a plurality of plugins each created by a corresponding developer, wherein the plugins include a given plugin that is created by a given developer of the corresponding developers;

receiving, from an end user, a selection of the given plugin from the plurality of maintained plugins;

in response to receiving the selection:

linking the given plugin with a dialog system that is associated with the end user, wherein the dialog system is associated with a virtual assistant at least partially installed on a user device of the end user;

subsequent to linking the given plugin with the dialog system that is associated with the end user:

receiving a user request from the end user via a dialog system interface of the dialog system that is associated with the end user, wherein the dialog system interface is running on the user device;

identifying the given plugin based on the linking with the dialog system and based on the user request being received via the dialog interface of the dialog system;

processing the user request using the dialog system and without using the given plugin;

determining, based on processing the user request using the dialog system interface and without using the given plugin, to use the given plugin in processing the user request,

wherein determining to use the given plugin is further based on the linking with the dialog system and based on the user request being received via the dialog interface of the dialog system; and

in response to determining to use the dialog extension element in processing the user request:

using the dialog extension element in generating a response to the user request; and

causing the response to be rendered at the user device via the dialog system and responsive to the user request.

2. The method of claim 1 , wherein the user request is a speech-based user request and further comprising:

processing the speech-based user request using an automatic speech recognizer to generate recognized text;

wherein processing the user request using the dialog system and without using the dialog extension element comprises processing the recognized text using the dialog system.

3. The method of claim 2 , wherein the automatic speech recognizer is a dynamically created recognizer.

4. The method of claim 1 , further comprising:

subsequent to linking the given plugin with the dialog system that is associated with the end user:

receiving an additional user request from the end user via the dialog system interface;

identifying the given plugin based on the linking with the dialog system and based on the user request being received via the dialog interface of the dialog system;

processing the additional user request using the dialog system and without using the given plugin;

determining, based on processing the additional user request using the dialog system interface and without using the given plugin, to provide an additional response, to the additional user request, without using the given plugin in processing the additional user request; and

causing the additional response to be rendered at the user device via the dialog system and responsive to the additional user request.

5. The method of claim 1 , wherein the response is an audio response.

6. The method of claim 1 , wherein the dialog system interface is implemented as a mobile application.

7. The method of claim 1 , wherein linking the given plugin with the dialog system comprises:

using authorization data to link the given plugin with the dialog system associated with the end user.

8. The method of claim 7 , wherein the authorization data is for an online marketplace at which the plugins are maintained.

9. The method of claim 1 , wherein the given plugin is associated with metadata that includes a description of the plugin.

10. A system, comprising:

memory operable to maintain a plurality of plugins each created by a corresponding developer, wherein the plugins include a given plugin that is created by a given developer of the corresponding developers; and

one or more processors operable to:

receive, from an end user, a selection of the given plugin from the plurality of maintained plugins;

in response to receiving the selection:

link the given plugin with a dialog system that is associated with the end user, wherein the dialog system is associated with a virtual assistant at least partially installed on a user device of the end user;

subsequent to linking the given plugin with the dialog system that is associated with the end user:

receive a user request from the end user via a dialog system interface of the dialog system that is associated with the end user, wherein the dialog system interface is running on the user device;

identify the given plugin based on the linking with the dialog system and based on the user request being received via the dialog interface of the dialog system;

process the user request using the dialog system and without using the given plugin;

determine, based on processing the user request using the dialog system interface and without using the given plugin, to use the given plugin in processing the user request,

wherein in determining to use the given plugin one or more of the processors are to determine to use the plugin further based on the linking with the dialog system and based on the user request being received via the dialog interface of the dialog system; and

in response to determining to use the dialog extension element in processing the user request:

use the dialog extension element in generating a response to the user request; and

cause the response to be rendered at the user device via the dialog system and responsive to the user request.

11. The system of claim 10 , wherein the user request is a speech-based user request and one or more of the processors are further operable to:

process the speech-based user request using an automatic speech recognizer to generate recognized text;

wherein in processing the user request using the dialog system and without using the dialog extension element one or more of the processors are to process the recognized text using the dialog system.

12. The system of claim 11 , wherein the automatic speech recognizer is a dynamically created recognizer.

13. The system of claim 11 , one or more of the processors are further operable to:

subsequent to linking the given plugin with the dialog system that is associated with the end user:

receive an additional user request from the end user via the dialog system interface;

identify the given plugin based on the linking with the dialog system and based on the user request being received via the dialog interface of the dialog system;

process the additional user request using the dialog system and without using the given plugin;

determine, based on processing the additional user request using the dialog system interface and without using the given plugin, to provide an additional response, to the additional user request, without using the given plugin in processing the additional user request; and

cause the additional response to be rendered at the user device via the dialog system and responsive to the additional user request.

14. The system of claim 11 , wherein the response is an audio response.

15. The system of claim 11 , wherein the dialog system interface is implemented as a mobile application.

16. The system of claim 11 , wherein in linking the given plugin with the dialog system one or more of the processors are to:

use authorization data to link the given plugin with the dialog system associated with the end user.

17. The system of claim 16 , wherein the authorization data is for an online marketplace at which the plugins are maintained.

18. The system of claim 16 , wherein the given plugin is associated with metadata that includes a description of the plugin.

Assignments (3)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 4, 2023
From: GELFENBEYN, ILYA GENNADYEVICH; GONCHARUK, ARTEM; SIROTIN, PAVEL ALEKSANDROVICH
To: SPEAKTOIT, INC.
Reel/Frame 065127/0429 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 4, 2023
From: SPEAKTOIT, INC.
To: GOOGLE INC.
Reel/Frame 065127/0439 →
CHANGE OF NAME Recorded Oct 4, 2023
From: GOOGLE INC.
To: GOOGLE LLC
Reel/Frame 065129/0534 →
Continuity (6)
Continuation 18094256 · Jan 6, 2023
Continuation 17521115 · Nov 8, 2021
Continuation 16424783 · May 29, 2019
Continuation 15166293 · May 27, 2016
Provisional Application 62166686 · May 27, 2015
Related Publication 20240013269A1 · Jan 11, 2024
References Cited (65)
US 6665640B1 · Bennett et al. · 2003 [cited by applicant]
US 6665650B1 · O'Grady, Jr. et al. · 2003 [cited by applicant]
US 7861167B2 · Fernando et al. · 2010 [cited by applicant]
US 8261231B1 · Hirsch et al. · 2012 [cited by applicant]
US 9363372B2 · Wu et al. · 2016 [cited by applicant]
US 10217059B2 · Yang et al. · 2019 [cited by applicant]
US 10311492B2 · Gelfenbeyn et al. · 2019 [cited by applicant]
US 11170415B2 · Gelfenbeyn et al. · 2021 [cited by applicant]
US 11551273B2 · Gelfenbeyn et al. · 2023 [cited by applicant]
US 20040034860A1 · Fernando · 2004 [cited by examiner]
US 20050021689A1 · Marvin et al. · 2005 [cited by applicant]
US 20050091057A1 · Phillips et al. · 2005 [cited by applicant]
US 20060129979A1 · Fernando et al. · 2006 [cited by applicant]
US 20060242077A1 · Dettinger et al. · 2006 [cited by applicant]
US 20070180444A1 · Hoover et al. · 2007 [cited by applicant]
US 20070201655A1 · Shenfield · 2007 [cited by applicant]
US 20070233782A1 · Tali · 2007 [cited by applicant]
US 20080139314A1 · Yates et al. · 2008 [cited by applicant]
US 20080201701A1 · Hofhansl et al. · 2008 [cited by applicant]
US 20080301669A1 · Rao et al. · 2008 [cited by applicant]
US 20090210702A1 · Welingkar · 2009 [cited by examiner]
US 20100037204A1 · Lin et al. · 2010 [cited by applicant]
US 20100262956A1 · Okada · 2010 [cited by applicant]
US 20100306689A1 · Jarvenpaa et al. · 2010 [cited by applicant]
US 20110023092A1 · Wen et al. · 2011 [cited by applicant]
US 20110167405A1 · Min · 2011 [cited by applicant]
US 20110302623A1 · Ricci · 2011 [cited by applicant]
US 20110321008A1 · Jhoney et al. · 2011 [cited by applicant]
US 20120185821A1 · Yaseen et al. · 2012 [cited by applicant]
US 20130124700A1 · Miller et al. · 2013 [cited by applicant]
US 20130185362A1 · Clagg et al. · 2013 [cited by applicant]
US 20130191823A1 · Davidson et al. · 2013 [cited by applicant]
US 20130247030A1 · Kay et al. · 2013 [cited by applicant]
US 20140047413A1 · Sheive et al. · 2014 [cited by applicant]
US 20140053126A1 · Watson et al. · 2014 [cited by applicant]
US 20140109073A1 · Fawcett · 2014 [cited by applicant]
US 20140129303A1 · Aiglstorfer · 2014 [cited by applicant]
US 20140298443A1 · Amaro · 2014 [cited by applicant]
US 20140310606A1 · Liu et al. · 2014 [cited by applicant]
US 20140337148A1 · Kannan et al. · 2014 [cited by applicant]
US 20150033217A1 · Mellor · 2015 [cited by applicant]
US 20150039292A1 · Suleman · 2015 [cited by examiner]
US 20150135160A1 · Gauvin et al. · 2015 [cited by applicant]
US 20150186123A1 · Piunno · 2015 [cited by applicant]
US 20160259767A1 · Gelfenbeyn et al. · 2016 [cited by applicant]
US 20170185582A1 · Gelfenbeyn et al. · 2017 [cited by applicant]
US 20170235559A1 · Saenz et al. · 2017 [cited by applicant]
US 20230153876A1 · Gelfenbeyn et al. · 2023 [cited by applicant]
CN 102668499 · 2012 [cited by applicant]
CN 103119557 · 2013 [cited by applicant]
CN 103246530 · 2013 [cited by applicant]
WO 2008042984 · 2008 [cited by applicant]
Intellectual Property India; Examination Report issued in Application No. 202148006382; 7 pages; dated Jan. 10, 2023. [cited by applicant]
Great Britain Intellectual Property Office; Hearing Decision issued in Application No. GB1714456.9; 9 pages; dated Jan. 7, 2022. [cited by applicant]
Great Britain Intellectual Property Office; Hearing Letter issued for Application No. GB1714456.9 dated Nov. 22, 2021. 12 pages. [cited by applicant]
Great Britain Intellectual Property Office; Examination Report issued in Application No. GB1714456.9; 7 pages; dated Jul. 8, 2021. [cited by applicant]
China National Intellectual Property Administration; Notice of Allowance issue in Application No. 201680018980.5; 7 pages; dated May 10, 2021. [cited by applicant]
Intellectual Property Office of Great Britain; Examination Report issued in Application No. 1714456.9; 5 pages; dated Apr. 30, 2021. [cited by applicant]
China National Intellectual Property Administration; Notification of Second Office Action issue in Application No. 201680018980.5; 26 pages; dated Sep. 24, 2020. [cited by applicant]
India Intellectual Property; Examination Report issue in Application No. 201747044774; 8 pages; dated Aug. 18, 2020. [cited by applicant]
China National Intellectual Property Administration; Notification of First Office Action issue in Application No. 201680018980.5; dated Mar. 18, 2020. [cited by applicant]
International Search Report and Written Opinion of Ser. No. PCT/US2016/034505; 9 pages; dated Aug. 31, 2016. [cited by applicant]
India Intellectual Property; Hearing Notice issue in Application No. 201747044774; 2 pages; dated Nov. 23, 2023. [cited by applicant]
China National Intellectual Property Administration; Notification of Reexamination issue in Application No. 201680018980.5; 21 pages; dated Dec. 13, 2023. [cited by applicant]
Intellectual Property India; Hearing Notice issued in Application No. 202148006382; 3 pages; dated Jan. 24, 2025. [cited by applicant]