-
HINTERGRUND
-
Informationshandhabungsgeräte („Geräte“), beispielsweise Smartphones, Tabletgeräte, Laptopcomputer, Smart-Lautsprecher und dergleichen, können sprachaktivierte digitale Assistenten verwenden („digitale Assistenten“), die in der Lage sind, hörbare Kommandos zu verarbeiten. In Reaktion auf ein Erkennen eines hörbaren Kommandos, das durch einen Nutzer bereitgestellt wird, kann der digitale Assistent eine entsprechende Aufgabe ausführen.
-
KURZE ZUSAMMENFASSUNG
-
Zusammenfassend stellt ein Aspekt ein Verfahren bereit, umfassend: Empfangen eines Hinweises, um einen kontextabhängigen Modus zu initiieren, der mit einem Kontext assoziiert ist, auf einem Informationshandhabungsgerät; Empfangen wenigstens einer Kontexteingabe während einer Dauer des kontextabhängigen Modus auf dem Gerät; und in Reaktion auf das Empfangen wenigstens einer Kontexteingabe, Verlängern der Dauer des kontextabhängigen Modus, wobei die verlängerte Dauer nicht einen Empfang von nachfolgenden Hinweisen erfordert.
-
Ein anderer Aspekt stellt ein Informationshandhabungsgerät bereit, umfassend: einen Prozessor; ein Speichergerät, das Instruktionen speichert, die durch den Prozessor ausführbar sind, zum: Empfangen eines Hinweises, um einen kontextabhängigen Modus, der mit einem Kontext assoziiert ist, zu initiieren; Empfangen wenigstens einer Kontexteingabe während einer Dauer des kontextabhängigen Modus; und in Reaktion auf ein Empfangen von wenigstens einer Kontexteingabe, Verlängern der Dauer des kontextabhängigen Modus, wobei die verlängerte Dauer nicht einen Empfang von nachfolgenden Hinweisen erfordert.
-
Ein weiterer Aspekt stellt ein Produkt bereit, umfassend: ein Speichergerät, das einen Code speichert, wobei der Code durch einen Prozessor ausführbar ist und umfasst: einen Code, der einen Hinweis empfängt, um einen kontextabhängigen Modus, der mit einem Kontext assoziiert ist, zu initiieren; einen Code, der wenigstens eine Kontexteingabe während einer Dauer des kontextabhängigen Modus empfängt; und in Reaktion auf das Empfangen der wenigstens eine Kontexteingabe, einen Code, der die Dauer des kontextabhängigen Modus verlängert, wobei die verlängerte Dauer nicht einen Empfang von nachfolgenden Hinweisen erfordert.
-
Das Vorhergehende ist eine Zusammenfassung und kann somit Vereinfachungen, Verallgemeinerungen und Auslassungen von Details enthalten; konsequenterweise werden diejenigen, die mit der Technik vertraut sind, erkennen, dass die Zusammenfassung nur darstellend ist und sie nicht darauf abzielt, in irgendeiner Weise begrenzend zu sein.
-
Für ein besseres Verständnis der Ausführungsformen, zusammen mit anderen und weiteren Merkmalen und Vorteilen davon, wird auf die nachfolgende Beschreibung in Verbindung mit den begleitenden Zeichnungen Bezug genommen. Der Rahmen der Erfindung wird in den anhängenden Ansprüchen aufgezeigt.
-
Figurenliste
-
- 1 zeigt ein Beispiel einer Informationshandhabungs-Geräteschaltung.
- 2 zeigt ein anderes Beispiel einer Informationshandhabungs-Geräteschaltung.
- 3 zeigt ein beispielhaftes Verfahren zum Initiieren eines kontextabhängigen Eingabemodus.
-
DETAILLIERTE BESCHREIBUNG
-
Es ist ohne weiteres verständlich, dass die Komponenten der Ausführungsformen, wie sie hierin allgemein beschrieben und in den Figuren gezeigt werden, zusätzlich zu den beschriebenen beispielhaften Ausführungsformen in einer weiten Vielzahl von unterschiedlichen Konfigurationen angeordnet und konstruiert sein können. Somit ist die nachfolgende detaillierte Beschreibung von beispielhaften Ausführungsformen, wie sie in den Figuren repräsentiert werden, nicht dazu geeignet, den Rahmen der Ausführungsformen wie beansprucht zu begrenzen, sondern nur um beispielhafte Ausführungsformen darzustellen.
-
Eine Bezugnahme in dieser gesamten Spezifikation auf eine „einzelne Ausführungsform“ oder „eine Ausführungsform“ (oder ähnliches) bedeutet, dass ein besonderes Merkmal, eine Struktur oder ein Kennzeichen, das in Verbindung mit der Ausführungsform beschrieben wird, wenigstens in einer Ausführungsform enthalten ist. Somit bezieht sich das Auftreten der Phrasen „in einer einzelnen Ausführungsform“ oder „in einer Ausführungsform“ oder dergleichen an unterschiedlichen Stellen in dieser Spezifikation nicht notwendigerweise auf die gleiche Ausführungsform.
-
Weiterhin können die beschriebenen Merkmale, Strukturen oder Kennzeichen in irgendeiner geeigneten Weise in einer oder mehreren Ausführungsformen kombiniert werden. In der nachfolgenden Beschreibung wird eine Vielzahl spezieller Details bereitgestellt, um ein gründliches Verständnis der Ausführungsformen zu geben. Ein Fachmann des relevanten Standes der Technik wird jedoch erkennen, dass die unterschiedlichen Ausführungsformen ohne einen oder mehrere der spezifischen Details, oder mit oder ohne Verfahren, Komponenten, Materialien, usw., ausgeführt werden können. In anderen Beispielen werden bekannte Strukturen, Materialien oder Verfahren nicht im Detail gezeigt oder beschrieben, um eine Verwirrung zu vermeiden.
-
Konventionellerweise kann eine digitale Assistentensoftware auf Geräten (z.B. Siri® für Apple®, Cortana® für Windows®, Alexa® für Amazon® usw.) ein Sprachkommando, das durch einen Nutzer bereitgestellt wird, identifizieren (z.B. durch Vergleichen mit einer zugreifbaren Kommandospeicherbank), dieses Kommando mit einer entsprechenden Aufgabe assoziieren, und nachfolgend Aktionen tätigen, um die Aufgabe zu erfüllen. Zum Beispiel kann ein Nutzer einem digitalen Assistenten befehlen, eine Einkaufsliste zu erzeugen. Nach Erkennen des Kommandos kann der digitale Assistent in einen „Konversationsmodus“ eintreten, in dem er darauf wartet, nachfolgende Spracheingaben zu empfangen (z.B. Spracheingaben, die sich auf Gegenstände, die in der Liste anzuordnen sind, beziehen), und dann, nach Empfang, diese Eingaben an einem zugreifbaren Speicherort speichern.
-
Digitale Assistenten können für Nutzer hilfreich sein, die eine handfreie Sprachsteuerung eines Gerätes wünschen. Gewöhnliche Situationen, bei denen digitale Assistenten verwendet werden können, umfassen, wenn ein Nutzer am Fahren ist, wenn ein Nutzer physisch mit einer anderen Aufgabe beschäftigt ist oder wenn ein Nutzer feststellt, dass ein Sprachkommando ein schnellerer und bequemerer Weg der Vervollständigung einer Aufgabe sein kann.
-
Konventionelle digitale Assistenten enthalten jedoch einige Aspekte, die den Empfang und das Verarbeiten einer Spracheingabe betreffen. Ein Aspekt ist zum Beispiel, dass ein „Aufweckwort“ für den digitalen Assistenten jedesmal, bevor ein Nutzer wünscht ein Sprachkommando bereitzustellen, bereitgestellt werden muss. Das Aufweckwort indiziert dem digitalen Assistenten, dass dieser dazu bereit sein muss, eine Spracheingabe zu empfangen, die zu verarbeiten ist. Wenn zum Beispiel das Aufweckwort „Assistent“ war, als eine Einkaufsliste erzeugt wurde, würde ein Nutzer dieses Wort jedes Mal wiederholen müssen, wenn er einen neuen Gegenstand zu der Liste hinzufügen möchte (z.B. „Assistent, füge Milch zu der Liste hinzu“, „Assistent, füge Brot zu der Liste hinzu“ usw.). Die erforderliche Wiederholung des Aufweckwortes kann ärgerlich und für den Nutzer lästig werden. Wenn zusätzlich, ein Nutzer vergisst, das Aufweckwort zu kommunizieren, bevor er ein Sprachkommando bereitstellt, dann kann der digitale Assistent das Kommando nicht als Eingabe, die zu verarbeiten ist, erkennen. Wenn eine Einkaufsliste erzeugt wird, kann der digitale Assistent zum Beispiel nicht erkennen, dass die Milch als Gegenstand zu der Einkaufsliste hinzuzufügen ist, falls ein Nutzer nur sagt: „Füge Milch hinzu“.
-
Dementsprechend stellt eine Ausführungsform ein Verfahren zum Initiieren eines kontexabhängigen Eingabemodus bereit, wobei ein digitaler Assistent in der Lage ist, eine Sprachkontexteingabe während der Dauer des kontextabhängigen Modus zu empfangen und zu verarbeiten. In einer Ausführungsform kann der digitale Assistent einen Hinweis empfangen (z.B. eine Aufweckaktion, gefolgt von einem Kontextkommando), um einen kontextabhängigen Modus, der sich auf einen besonderen Kontext bezieht, zu initiieren (z.B. Nachrichten bzw. Neuigkeiten, E-Mail, Sport usw.). Die Dauer des kontextabhängigen Modus kann unendlich anhalten oder bis eine Unterbrechung auftritt (z.B. ein Hinweis, den laufenden Modus zu beenden, ein Hinweis, in einen anderen Modus zu wechseln, usw.). Während des Modus können Sprachkommandos, die mit dem Kontext assoziiert sind, empfangen und durch den digitalen Assistenten verarbeitet werden. Ein derartiges Verfahren ermöglicht einem Nutzer eine Vielzahl von Kommandos an den digitalen Assistenten zu kommunizieren, ohne ein Aufweckwort oder eine Aufweckgeste vor jedem Kommando wiederholen zu müssen.
-
Die dargestellten beispielhaften Ausführungsformen werden am Besten durch Bezugnahme auf die Figuren verstanden. Die nachfolgende Beschreibung ist nur als ein Beispiel beabsichtigt und illustriert einfach bestimmte beispielhafte Ausführungsformen.
-
Während verschiedene andere Schaltkreise, Schaltungen oder Komponenten in Informationshandhabungsgeräten in Bezug auf eine Smartphone- und/oder Tablet-Schaltung 100 verwendet werden, umfasst ein in 1 gezeigtes Beispiel, ein System-on-Chip Design, das zum Beispiel in einem Tablet oder anderen mobilen Computer-Plattformen zu finden ist. Software und Prozessor(en) sind in einem einzigen Chip 110 kombiniert. Prozessoren umfassen interne arithmetische Einheiten, Register, Cache-Speicher, Busse, EIN/AUS-Ports, usw., wie es in der Technik gut bekannt sind. Interne Busse und dergleichen hängen von unterschiedlichen Händlern ab, jedoch können im Wesentlichen all diese peripheren Geräte (120) an einem einzigen Chip 110 angebracht sein. Die Schaltung 100 kombiniert den Prozessor, die Speichersteuerung und einen EIN/AUS-Steuerknoten zusammen in einem einzigen Chip 110. Auch verwenden Systeme 100 dieses Typs typischerweise nicht SATA oder PCI oder LPC. Gemeinsame Schnittstellen schließen zum Beispiel SDIO und I2C ein.
-
Es gibt Strommanagementchips 130, z.B. eine Batteriemanagementeinheit, BMU, welche den Strom zum Beispiel über eine wiederaufladbare Batterie 140 liefert, die durch eine Verbindung mit einer Stromquelle (nicht gezeigt) wiederaufgeladen werden kann. In wenigstens einem Design wird ein einziger Chip 110 verwendet, um eine BIOS-ähnliche Funktionalität und einen DRAM-Speicher bereitzustellen.
-
Das System 100 umfasst typischerweise ein oder mehrere eines WWAN-Transceivers 150 und eines WLAN-Transceivers 160 zum Verbinden mit verschiedenen Netzwerken, wie Telekommunikationsnetzwerken und drahtlosen Internetgeräten, z.B. Zugangspunkten. Zusätzlich sind für gewöhnlich Geräte 120 eingeschlossen, z.B. ein Bildsensor wie eine Kamera. Das System 100 umfasst häufig einen Berührungsbildschirm 170 für die Dateneingabe und für eine Anzeige/Wiedergabe. Das System 100 umfasst auch typischerweise verschiedene Speichergeräte, z.B. Flash-Speicher 180 und SDRAM 190.
-
2 zeigt ein Blockdiagramm eines anderen Beispiels von Informationshandhabungsgeräte-Schaltkreisen, Schaltungen oder Komponenten. Das Beispiel, das in 2 gezeigt wird, kann Computersystemen, wie denen der THINKPAD-Serien von Personalcomputern, die von Lenovo (US) Inc. of Morrisville, NC, verkauft werden, oder anderen Geräten entsprechen. Wie es durch die Beschreibung hierin ersichtlich ist können Ausführungsformen andere Merkmale oder nur einige Merkmale des Beispiels, das in 2 dargestellt wird, einschließen.
-
Das Beispiel der 2 umfasst einen sogenannten Chipsatz 210 (eine Gruppe integrierter Schaltungen oder Chips, die zusammenarbeiten, Chipsätze) mit einer Architektur, die abhängig von dem Hersteller variieren kann (zum Beispiel INTEL, AMD, ARM, usw.). INTEL ist eine registrierte Handelsmarke der Intel Corporation in den Vereinigten Staaten und anderen Ländern. AMD ist eine registrierte Handelsmarke der Advanced Micro Devices Inc. in den Vereinigten Staaten und anderen Ländern. ARM ist eine nicht registrierte Handelsmarke der ARM Holding plc in den Vereinigten Staaten und anderen Ländern. Die Architektur des Chipsatzes 210 umfasst einen Kern und eine Speichersteuergruppe 220 und einen EIN/AUS-Steuerknoten 250, der Informationen (zum Beispiel Daten, Signale, Anweisungen, usw.) über eine Direct Management Interface (DMI) 242 oder ein Verbindungssteuergerät 244 austauscht. In 2 ist die DMI 242 eine Chip-zu-Chip-Schnittstelle (auf die manchmal auch als eine Verbindung zwischen einer „northbridge“ und einer „southbridge“ Bezug genommen wird). Der Kern und die Speichersteuergruppe 220 umfasst einen oder mehrere Prozessoren 222 (zum Beispiel Einzel- oder Mehrkern) und einen Speichersteuerknoten 226, die Informationen über einen Front-Side-Bus (FSB) 224 austauschen; es ist anzumerken, dass die Komponenten der Gruppe 220 auf einem Chip integriert sein können, der die konventionelle „northbridge“-artige Struktur ersetzt. Ein oder mehrere Prozessoren 222 umfassen interne arithmetische Einheiten, Register, Cache-Speicher, Busse, EIN/AUS-Ports, usw., wie sie in der Technik gut bekannt sind.
-
In 2 bildet der Speichersteuerknoten 226 Schnittstellen mit dem Speicher 240 (zum Beispiel um eine Unterstützung für eine Art RAM-Speicher bereitzustellen, auf den als einen „Systemspeicher“ oder „Speicher“ Bezug genommen werden kann). Der Speichersteuerknoten 226 schließt weiterhin eine Low Voltage Differential Signaling (LVDS) Schnittstelle 232 für ein Anzeigegerät 292 ein (zum Beispiel einen CRT, einen Flachbildschirm, einen Touchscreen, usw.). Ein Block 238 umfasst einige Technologien, die über die LVDS-Schnittstelle 232 unterstützt werden können (zum Beispiel serielles digitales Video, HDMI/DVI, Anzeigeanschluss). Der Speichersteuerknoten 226 schließt auch eine PCI-Express-Schnittstelle (PCI-E) 234 ein, die diskrete Grafiken 236 unterstützen kann.
-
In 2 umfasst der EIN/AUS-Steuerknoten 250 eine SATA-Schnittstelle 251 (zum Beispiel für HDDs, SDDs, usw. 280), eine PCI-E-Schnittstelle 252 (zum Beispiel für drahtlose Verbindungen 282), eine USB-Schnittstelle 253 (zum Beispiel für Geräte 284 wie einen Digitalisierer, eine Tastatur, eine Maus, Kameras, Telefone, Mikrofone, einen Speicher, andere verbundene Geräte, usw.), eine Netzwerkschnittstelle 254 (zum Beispiel LAN), eine GPIO-Schnittstelle 255, eine LPC-Schnittstelle 270 (für ASICs 271, eine TPM 272, einen Super-Ein/Aus-Steuerknoten 273, einen Firmenware-Knoten 274, eine BIOS-Unterstützung 275 sowie unterschiedliche Arten von Speichern 276 wie ROM 277, Flash 278 und NVRAM 279), eine Strommanagementschnittstelle 261, eine Taktgeneratorschnittstelle 262, eine Audioschnittstelle 263 (zum Beispiel für Lautsprecher 294), eine TCO-Schnittstelle 264, eine Systemmanagementbus-Schnittstelle 265 und einen SPI-Flash 266, der eine BIOS 268 und einen Boot Code 290 beinhalten kann. Der EIN/AUS-Steuerknoten 250 kann eine Gigabit-Ethernet-Unterstützung aufweisen.
-
Sobald das System eingeschaltet ist, kann es konfiguriert sein, um einen Boot Code 290 für die BIOS-Schnittstelle 268 auszuführen, wie in dem SPI-Flash 266 gespeichert ist, und kann danach Daten unter der Steuerung von einem oder mehreren Betriebssystemen und Applikationssoftware (die zum Beispiel in dem Systemspeicher 240 gespeichert ist) verarbeiten. Ein Betriebssystem kann an irgendeiner von unterschiedlichen Stellen gespeichert sein und zum Beispiel gemäß den Instruktionen der BIOS 268 auf dieses zugegriffen werden. Wie hierin beschrieben, kann ein Gerät weniger oder mehr Merkmale, als die in dem System der 2 gezeigt werden, enthalten.
-
Eine Informationshandhabungsgeräteschaltung, wie sie beispielsweise in den 1 und 2 gezeigt wird, kann in Geräten wie Tablets, Smartphones, Smartlautsprechern Personalcomputergeräten allgemein und/oder elektronischen Geräten verwendet werden, welche Nutzern ermöglichen, mit einem digitalen Assistenten zu kommunizieren. Zum Beispiel kann die Schaltung, die in 1 dargestellt wird, in einer Tablet- oder Smartphone-Ausführungsform ausgeführt sein, wohingegen die Schaltung, die in 2 dargestellt wird, in einer Personalcomputer-Ausführungsform ausgeführt sein kann.
-
Nun bezugnehmend auf 3, kann eine Ausführungsform einen kontextabhängigen Eingabemodus initiieren, während dessen eine Ausführungsform eine kontextabhängige Eingabe empfängt, und Aufgaben, die mit der kontextabhängigen Eingabe assoziiert sind, ausführen. Bei 301 kann eine Ausführungsform einen Hinweis empfangen, einen kontextabhängigen Modus zu initiieren. Der Hinweis kann zum Beispiel eine von einem Nutzer kommunizierte Aufweckaktion sein, wie ein Aufweckwort oder eine Aufweckgeste (z.B. ein Winken mit der Hand), gefolgt von einem Kontextkommando. Das Kontextkommando kann den digitalen Assistenten triggern, um einen kontextabhängigen Modus zu initiieren, in welchem nachfolgende Nutzereingaben sich auf den Kontext oder ein Subjekt des Kontextkommandos beziehn können. Wenn eine Ausführungsform zum Beispiel eine Aufweckfunktion, gefolgt von dem Kontextkommando: „Lese EMails“, empfängt, kann eine Ausführungsform einen kontextabhängigen Modus bezogen auf den E-Mail-Browser initiieren.
-
Eine Ausführungsform kann einen besonderen Kontext von einem Kontextkommando durch Vergleichen des Kontextkommandos mit einer zugreifbaren Speicherbank von erkennbaren Kontexten identifizieren. In einer anderen Ausführungsform kann der Kontext durch eine Aktivität eines Nutzers, mit der er gegenwärtig beschäftigt ist, bestimmt werden. In einer Ausführungsform kann ein digitaler Assistent mit einem anderen Gerät (z.B. Fernseher, Radio usw.) verbunden sein oder mit einer anderen Applikation (z.B. Videoabspielapplikation, Musikabspielapplikation usw.) synchronisiert sein und kann dieser in der Lage sein, den Kontext der aktiven Applikation oder des Gerätes zu bestimmen. Wenn ein Nutzer zum Beispiel Fernsehen auf einem Smart-TV anschaut, kann der digitale Assistent identifizieren, dass ein Fernsehen schauender Modus aktiv war, und weiß eine Kontexteingabe, die sich auf das Fernsehen bezieht, zu akzeptieren (z.B. „Liste Sportkanäle auf!“).
-
Bei 302 kann eine Ausführungsform eine Kontexteingabe empfangen, die mit dem Kontext des kontextabhängigen Modus assoziiert ist. In einer Ausführungsform muss der Nutzer während der Dauer des kontextabhängigen Modus die Aufweckaktion vor dem Kommunizieren der Kontexteingabe nicht wiederholen. Zum Beispiel kann ein Nutzer für einen kontextabhängigen Modus, der sich auf ein E-Mail-Browsen bezieht, E-Mail-bezogene Kommandos, wie „Lies diese E-Mail für mich“, „Archiviere diese E-Mail“, „Lösche diese Mitteilung“ usw., bereitstellen. In einem anderen Beispiel kann ein Nutzer für einen kontextabhängigen Modus, der sich auf das Erzeugen einer Einkaufsliste bezieht, sprachlich Gegenstände auflisten, die zu der Liste hinzugefügt werden sollen, wie „Füge Milch hinzu“, „Füge Brot hinzu“, „Füge Käse hinzu“ usw. In noch einem anderen Beispiel kann ein Nutzer für einen kontextabhängigen Modus, der mit Musik assoziiert ist, sprachlich die Lieder oder Künstler, die er zu hören wünscht, auflisten.
-
In einer Ausführungsform kann eine Augenverfolgungssoftware verwendet werden, um zu bestimmen, ob ein Nutzer ein Übermitteln einer Eingabe an den digitalen Assistenten beabsichtigt. Wenn eine Ausführungsform zum Beispiel bestimmt (z.B. basierend auf einer Augenverfolgung), dass ein Nutzer auf den digitalen Assistenten oder auf ein besonderes Gerät blickt, mit dem ein digitaler Assistent während eines Übertragens einer Spracheingabe assoziiert wurde, kann der digitale Assistent bestimmen, dass die Sprachkommunikation als eine Kontexteingabe wahrgenommen werden sollte.
-
In einer Ausführungsform kann eine Kontexteingabe von mehreren Nutzern empfangen werden. Während eines Einkaufslisten-kontextabhängigen-Modus kann der digitale Assistent zum Beispiel ein Kommando von einem Nutzer empfangen, Milch zu der Liste hinzuzufügen, und kann ein anderes Kommando von einem anderen Nutzer empfangen, Brot zu der Liste hinzuzufügen. In einer Ausführungsform können mehrfache kontextabhängige Moden gleichzeitig aktiv sein, wobei jeder kontextabhängige Modus sich auf einen separaten Kontext bezieht. Zum Beispiel kann eine Ausführungsform während der Dauer eines kontextabhängigen Modus, der mit der Erzeugung einer Einkaufsliste assoziiert ist, auch eine Kontexteingabe für einen kontextabhänigigen Modus empfangen, der mit einem E-Mail-Browsen assoziiert ist. Jeder kontextabhängige Modus kann zum Beispiel durch eine separate Aufweckaktion, die mit dem Kontext des Modus assoziiert ist, initiiert werden. In einer Ausführungsform können mehrfache kontextabhängige Moden gleichzeitig aktiviert werden, wobei jeder kontextabhängige Modus eine Kontexteingabe von einem spezifischen Nutzer empfangen kann. Zum Beispiel können zwei Nutzer getrennte kontextabhängige Moden initiieren und eine Kontexteingabe zu derartigen Moden bereitstellen, wobei die Eingabe basierend auf der Nutzeridentität differenziert wird. Eine Ausführungsform kann zwischen Eingaben differenzieren, die zum Beispiel auf einer Spracherkennung der Nutzer basieren.
-
In einer Ausführungsform kann eine kontextabhängige Eingabe durch einen digitalen Assistenten empfangen werden, bis eine Unterbrechung in dem kontextabhänigigen Modus auftritt. In einer Ausführungsform kann die Unterbrechung ein Kommando sein, den kontextabhängigen Modus zu beenden. Zum Beispiel kann ein Nutzer während eines Einkaufslisten-kontextabhängigen-Modus das Sprachkommando „Ende der Einkaufsliste“ bereitstellen, welches dem digitalen Assistenten den Hinweis, den Modus zu beenden, bereitstellt. In einer anderen Ausführungsform kann die Unterbrechung ein Kommando sein, einen anderen kontextabhängigen Modus zu beginnen, wodurch der anfängliche kontextabhängige Modus temporär pausiert und die Eingabe, die mit dem anfänglichen Modus assoziiert ist, während der andere Modus aktiv ist, nicht erkennt. Ein Nutzer kann zum Beispiel während eines Einkaufslisten-kontextabhängigen-Modus einen E-Mail-Browsen-kontextabhängigen-Modus initiieren, währenddessen die Kontexteingabe, die mit der Einkaufsliste assoziiert ist (z.B. Füge Milch hinzu, Füge Brot hinzu, usw.), nicht berücksichtigt wird. In einer Ausführungsform kann eine Benachrichtigung an den Nutzer bereitgestellt werden, dass der kontextabhängige Modus beendet wurde.
-
In Reaktion auf das Identifizieren der empfangenen Kontexteingabe bei 303 kann eine Ausführungsform bei 304 eine Aktion ausführen, die mit der Eingabe assoziiert ist. In einer Ausführungsform kann ein digitaler Assistent auf Instruktionen zugreifen, welche die Art der Aktion, die in Reaktion auf eine besondere Eingabe ausgeführt werden sollten, vorgeben. In einem Einkaufslisten-kontextabhängigen-Modus kann in Reaktion auf das Empfangen der Eingabe „Füge Milch hinzu“ oder „Milch“ zum Beispiel eine Ausführungsform Milch zu der Liste der Gegenstände auf der Einkaufsliste hinzufügen. In einer Ausführungsform können Instruktionen lokal auf dem Gerät gespeichert werden oder können diese an einem zugreifbaren entfernten Speicherort gespeichert werden (z.B. der Cloud).
-
Bei 305 kann eine Ausführungsform in Reaktion darauf, dass die empfangene Kontexteingabe nicht identifiziert wird, die Kontexteingabe missachten. Eine Ausführungsform kann eine empfangene Kontexteingabe basierend auf einer Vielzahl von Gründen nicht identifizieren. Zum Beispiel war die empfange Eingabe nicht mit dem laufenden kontextabhängigen Modus assoziiert (z.B. kann eine Ausführungsform während eines Einkaufslisten-kontextabhängigen-Modus ein Kommando empfangen, das mit einem E-Mail-Browsen assoziiert ist). In einem anderen Beispiel kann ein Nutzer während der Dauer eines kontextabhängigen Modus nicht identifizierbare Sprachausgaben erzeugen, die nicht dazu beabsichtigt sind, durch den digitalen Assistenten ausgeführt zu werden (z.B. hat der Nutzer mit einer anderen Person gesprochen). Bei 306 kann eine Ausführungsform dem Nutzer eine Benachrichtigung bereitstellen, dass die empfangene Eingabe nicht identifiziert wurde. In einer Ausführungsform kann die Benachrichtigung eine hörbare Benachrichtigung sein, wobei ein Gerät einen Nutzer sprachlich informieren kann, dass seine Eingabe nicht erkannt wurde. In einer anderen Ausführungsform kann die Benachrichtigung eine sichtbare Benachrichtigung sein. Zum Beispiel kann eine textabhängige Mitteilung auf einem Bildschirm eines Gerätes erscheinen, die den Nutzer benachrichtigt, dass seine Eingabe nicht erkannt wurde.
-
Die verschiedenen Ausführungsformen, die hierin beschrieben werden, präsentieren somit eine technische Verbesserung für konventionelle Kommunikationen mit einem digitalen Assistenten. Unter Verwendung der Verfahren, die hierin beschrieben werden, kann ein Nutzer in der Lage sein, in einen kontextabhängigen „Konversationsmodus“ mit einem digitalen Assistenten zu treten, der es erleichtert, sich mit dem digitalen Assistenten zu unterhalten. Eine Ausführungsform initiiert einen kontextabhängigen Modus, in dem ein Nutzer eine Kontexteingabe an den digitalen Assistenten übertragen kann, ohne die Aufweckaktion vor jeder Übertragung zu wiederholen.
-
Wie es für einen Fachmann der Technik ersichtlich ist, können unterschiedliche Aspekte in einem System, einem Verfahren oder einem Geräteprogrammprodukt enthalten sein. Demgemäß können Aspekte die Form einer gesamten Hardwareausführungsform oder eine Ausführungsform, die Software einschließt, einnehmen, auf die hierin alle allgemein als „Schaltkreis“, „Modul“ oder „System“ Bezug genommen wird. Weiterhin können Aspekte die Form eines Geräteprogrammprodukts einnehmen, welche in einem oder mehreren gerätelesbaren Medien enthalten sind, die darin verkörperte gerätelesbare Programmcodes aufweisen.
-
Es ist anzumerken, dass verschiedene Funktionen, die hierin beschrieben werden, unter Verwenden von Instruktionen ausgeführt werden können, die auf einem gerätelesbaren Speichermedium wie einem Nichtsignal Speichergerät gespeichert sind, welche durch den Prozessor ausgeführt werden. Ein Speichergerät kann zum Beispiel ein elektronisches, magnetisches, optisches oder elektromagnetisches, infrarotes oder Halbleiter-System, -Vorrichtung, oder -Gerät oder irgendeine geeignete Kombination der Vorhergehenden sein. Größere spezifischere Beispiele für ein Speichermedium umfassen die Folgenden: eine tragbare Computerdiskette, eine Festplatte, einen Direktzugriffsspeicher (RAM), einen Nur-Lese-Speicher (ROM), einen löschbaren programmierbaren Nur-Lese-Speicher (EPROM, oder Flash-Speicher), eine optische Faser, eine tragbaren Compact Disk Nur-Lese-Speicher (CD-ROM), ein optisches Speichergerät, ein magnetisches Speichergerät oder irgendeine geeignete Kombination der Vorhergehenden. In dem Kontext dieses Dokuments ist ein Speichergerät kein Signal und umfasst „nichttransitorisch“ alle Medien außer Signalmedien.
-
Ein Programmcode, der auf deinem Speichermedium vorhanden ist, kann unter Verwenden eines geeigneten Mediums übertragen werden, welches einschließt aber nicht begrenzt ist auf drahtlos, drahtgebunden, optische Faserkabel, HF, usw., oder irgendeine geeignete Kombination der Vorhergehenden.
-
Ein Programmcode kann Operationen ausführen, die in irgendeiner Kombination einer oder mehreren Programmsprachen geschrieben sind. Der Programmcode kann vollständig auf einem einzigen Gerät, teilweise auf einem einzigen Gerät, als alleinstehendes Softwarepaket, teilweise auf einem einzigen Gerät und teilweise auf einem anderen Gerät, oder vollständig auf einem anderen Gerät durchgeführt werden. In einigen Fällen können die Geräte durch irgendeine Verbindung oder ein Netzwerk verbunden sein, einschließlich eines lokalen Netzwerkes (LAN) oder eines Weitverkehrsnetzes (WAN) oder kann die Verbindung durch andere Geräte (zum Beispiel durch das Internet unter Verwenden eines Internet Service Providers) durch drahtlose Verbindung, z.B. Nahfeldkommunikation oder durch eine feste Drahtverbindung, wie über eine USB-Verbindung, erfolgen.
-
Hierin werden beispielhafte Ausführungsformen mit Bezug auf die Figuren beschrieben, welche beispielsweise Verfahren, Geräte und Programmprodukte gemäß unterschiedlicher beispielhafter Ausführungsformen darstellen. Es ist verständlich, dass die Aktionen und die Funktionalität wenigstens zum Teil durch Programminstruktionen ausgeführt werden können. Diese Programminstruktionen können einem Prozessor eines Gerätes, eines Informationsverarbeitungsgerätes für spezielle Zwecke, oder anderer programmierbare Datenverarbeitungsgeräte bereitgestellt werden, um eine Maschine zu erzeugen, so dass die Instruktionen, welche über einen Prozessor des Gerätes ausgeführt werden, die spezifizierten Funktionen/Aktionen des eingesetzten Gerätes ausführen.
-
Es ist sinnvoll anzumerken, dass, während bestimmte Blöcke in den Figuren verwendet werden und eine bestimmte Anordnung der Blöcke dargestellt wird, dieses keine begrenzenden Beispiele sind. In bestimmten Kontexten können zwei oder mehr Blöcke kombiniert werden, kann ein Block in zwei oder mehr Blöcke aufgeteilt werden oder können bestimmte Blöcke neu geordnet oder geeignet neu organisiert werden, da die ausdrücklich dargestellten Beispiele nur für beschreibende Zwecke verwendet werden und nicht als begrenzend auszulegen sind.
-
Wie hierin verwendet, kann die Einzahl „ein“ und „eine“ ausgelegt werden, als wenn diese eine Mehrzahl wie „eines oder mehrere“ einschließt, außer es ist ausdrücklich in anderer Weise dargestellt.
-
Diese Offenbarung wurde zu Zwecken der Darstellung und Beschreibung dargestellt, jedoch ist es nicht beabsichtigt, dass dieses erschöpfend oder begrenzend sein soll. Viele Modifikationen und Variationen werden für den Fachmann in der Technik naheliegend sein. Die beispielhaften Ausführungsformen sind ausgewählt, um die Prinzipien und die praktischen Applikationen zu beschreiben, und um andere mit fachmännischem Wissen des Standes der Technik in die Lage zu versetzen, die Offenbarung der unterschiedlichen Ausführungsformen mit unterschiedlichen Modifikationen zu verstehen, wie sie für den besonders betrachteten Gebrauch geeignet sind.
-
Somit ist verständlich, dass diese Beschreibung, obgleich dargestellte beispielhafte Ausführungsformen hierin mit Referenz zu den begleitenden Zeichnungen beschrieben wurden, nicht-begrenzend ist und dass unterschiedliche andere Änderungen und Modifikationen daran durch einen Fachmann der Technik vorgenommen werden können, ohne von dem Schutzumfang und dem Geist der Offenbarung abzuweichen.