DE102016125760A1 - Vorhersagen von Suchanfragen durch eine Tastatur - Google Patents
Vorhersagen von Suchanfragen durch eine Tastatur Download PDFInfo
- Publication number
- DE102016125760A1 DE102016125760A1 DE102016125760.5A DE102016125760A DE102016125760A1 DE 102016125760 A1 DE102016125760 A1 DE 102016125760A1 DE 102016125760 A DE102016125760 A DE 102016125760A DE 102016125760 A1 DE102016125760 A1 DE 102016125760A1
- Authority
- DE
- Germany
- Prior art keywords
- keyboard
- search
- application
- computing device
- graphical
- 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
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L51/00—User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
- H04L51/04—Real-time or near real-time messaging, e.g. instant messaging [IM]
- H04L51/046—Interoperability with other network applications or services
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/242—Query formulation
- G06F16/2428—Query predicate definition using graphical user interfaces, including menus and forms
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/248—Presentation of query results
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/33—Querying
- G06F16/332—Query formulation
- G06F16/3322—Query formulation using system suggestions
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/33—Querying
- G06F16/332—Query formulation
- G06F16/3322—Query formulation using system suggestions
- G06F16/3323—Query formulation using system suggestions using document space presentation or visualization, e.g. category, hierarchy or range presentation and selection
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/33—Querying
- G06F16/3331—Query processing
- G06F16/334—Query execution
- G06F16/3344—Query execution using natural language analysis
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/903—Querying
- G06F16/9032—Query formulation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/903—Querying
- G06F16/9032—Query formulation
- G06F16/90324—Query formulation using system suggestions
- G06F16/90328—Query formulation using system suggestions using search space presentation or visualization, e.g. category or range presentation and selection
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/951—Indexing; Web crawling techniques
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/953—Querying, e.g. by the use of web search engines
- G06F16/9535—Search customisation based on user profiles and personalisation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/953—Querying, e.g. by the use of web search engines
- G06F16/9538—Presentation of query results
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/02—Input arrangements using manually operated switches, e.g. using keyboards or dials
- G06F3/023—Arrangements for converting discrete items of information into a coded form, e.g. arrangements for interpreting keyboard generated codes as alphanumeric codes, operand codes or instruction codes
- G06F3/0233—Character input methods
- G06F3/0237—Character input methods using prediction or retrieval techniques
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/048—Interaction techniques based on graphical user interfaces [GUI]
- G06F3/0484—Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
- G06F3/04842—Selection of displayed objects or displayed text elements
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/048—Interaction techniques based on graphical user interfaces [GUI]
- G06F3/0487—Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser
- G06F3/0488—Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser using a touch-screen or digitiser, e.g. input of commands through traced gestures
- G06F3/04886—Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser using a touch-screen or digitiser, e.g. input of commands through traced gestures by partitioning the display area of the touch-screen or the surface of the digitising tablet into independently controllable areas, e.g. virtual keyboards or menus
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/048—Interaction techniques based on graphical user interfaces [GUI]
- G06F3/0481—Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
- G06F3/0482—Interaction with lists of selectable items, e.g. menus
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Databases & Information Systems (AREA)
- General Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Computational Linguistics (AREA)
- Human Computer Interaction (AREA)
- Mathematical Physics (AREA)
- Artificial Intelligence (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Health & Medical Sciences (AREA)
- Audiology, Speech & Language Pathology (AREA)
- General Health & Medical Sciences (AREA)
- User Interface Of Digital Computer (AREA)
- Input From Keyboards Or The Like (AREA)
Abstract
Description
- HINTERGRUND
- Obwohl sie in der Lage sind, mehrere Anwendungen gleichzeitig auszuführen, können einige mobile Computergeräte jeweils nur die grafische Benutzerschnittstelle (GUI) einer einzigen Anwendung darstellen. Um mit mehreren Anwendungen gleichzeitig zu interagieren, muss ein Benutzer eines mobilen Computergerätes eventuell Eingaben machen, um zwischen den GUIs verschiedener Anwendungen hin- und herzuschalten, um eine bestimmte Aufgabe abzuschließen. Z. B. muss ein Benutzer eines mobilen Computergerätes eventuell aufhören, Text in eine Nachrichtenübermittlungsanwendung einzugeben, Eingaben machen, um das Gerät zu veranlassen, auf eine Suchanwendung umzuschalten, und dann noch zusätzliche Eingaben auf der GUI der Suchanwendung machen, um nach einer bestimmten Information zu suchen, die der Benutzer vielleicht benötigt, um das Verfassen einer Nachricht zu beenden oder anderweitig Text in die Nachrichtenübermittlungsanwendung einzugeben. Das Bereitstellen mehrerer Eingaben, wie es bei einigen Computergeräten erforderlich ist, um verschiedene Aufgaben auszuführen, kann langwierig, repetitiv und zeitraubend sein.
- KURZDARSTELLUNG
- In einem Beispiel schließt ein Verfahren das Ausgeben zur Anzeige, durch eine Tastaturanwendung, die auf einem Computergerät ausgeführt wird, einer grafischen Tastatur mit einer Vielzahl von Tasten, das Bestimmen, durch die Tastaturanwendung, auf der Grundlage eines Hinweises auf eine Auswahl einer oder mehrerer Tasten aus der Vielzahl von Tasten, von Text einer elektronischen Kommunikation, und das Identifizieren, durch die Tastaturanwendung, zumindest teilweise basierend auf dem Text, einer suchbaren Entität ein. Das Verfahren schließt des Weiteren das Erzeugen, durch die Tastaturanwendung auf der Grundlage der suchbaren Entität, einer Suchanfrage ein, und das Ausgeben, durch die Tastaturanwendung, zur Anzeige auf der grafischen Tastatur, eines grafischen Hinweises, um anzuzeigen, dass das Computergerät die Suchanfrage erzeugt hat.
- In einem anderen Beispiel schließt ein mobiles Computergerät eine anwesenheitsabhängige Anzeigenkomponente, mindestens einen Prozessor und einen Speicher ein, der die mit einer Tastaturanwendung assoziierten Anweisungen speichert. Die Anweisungen veranlassen, wenn sie ausgeführt werden, den mindestens einen Prozessor zum Ausgeben, zur Anzeige auf der anwesenheitsabhängigen Anzeigenkomponente, einer grafischen Tastatur mit einer Vielzahl von Tasten, zum Bestimmen, auf der Grundlage eines Hinweises auf eine Auswahl einer oder mehrerer Tasten aus der Vielzahl von Tasten, die auf der anwesenheitsabhängigen Anzeigenkomponente erkannt wird, von Text einer elektronischen Kommunikation, und zum Identifizieren, zumindest teilweise auf der Grundlage des Textes, eines Auslösesatzes. Die Anweisungen veranlassen, wenn sie ausgeführt werden, den mindestens einen Prozessor des Weiteren zum Erzeugen, auf der Grundlage des Auslösesatzes, einer Suchanfrage, und zum Ausgeben, zur Anzeige auf der anwesenheitsabhängigen Anzeigenkomponente und innerhalb der grafischen Tastatur, eines grafischen Hinweises, um anzuzeigen, dass das Computergerät die Suchanfrage erzeugt hat.
- In einem anderen Beispiel wird ein Verfahren beschrieben, dass das Aufrufen, durch eine erste Anwendung, die auf einem Computergerät ausgeführt wird, einer Tastaturanwendung für das Empfangen von Texteingaben, die so konfiguriert ist, dass sie eine grafische Tastatur mit einer Vielzahl von Tasten bereitstellt, das Bestimmen, durch die Tastaturanwendung, auf der Grundlage eines Hinweises auf eine Auswahl einer oder mehrerer Tasten aus der Vielzahl von Tasten, der Texteingabe; das Identifizieren, durch die Tastaturanwendung, zumindest teilweise basierend auf der Texteingabe, einer suchbaren Entität, und das Erzeugen, durch die Tastaturanwendung auf der Grundlage der suchbaren Entität, einer Suchanfrage einschließt. Das Verfahren schließt des Weiteren das Ausgeben, durch die Tastaturanwendung, zur Anzeige innerhalb der grafischen Tastatur, eines grafischen Hinweises ein, um anzuzeigen, dass die Tastaturanwendung die Suchanfrage erzeugt hat, und in Reaktion auf das Empfangen, durch die Tastaturanwendung, eines Hinweises auf eine Auswahl der Suchanfrage, das Einleiten, durch die Tastaturanwendung in einer Suchanwendung, einer Suche auf der Grundlage der Suchanfrage.
- Die Details von einem oder mehreren Beispielen sind in den zugehörigen Zeichnungen und der nachfolgenden Beschreibung beschrieben. Weitere Merkmale, Gegenstände und Vorteile der Offenbarung werden anhand der Beschreibung und der Zeichnungen, und anhand der Ansprüche, ersichtlich.
- KURZBESCHREIBUNG DER ZEICHNUNGEN
-
1 ist ein konzeptuelles Diagramm, das ein exemplarisches Computergerät veranschaulicht, das so konfiguriert ist, dass es eine grafische Tastatur mit integrierten Suchfunktionen darstellt, gemäß einem oder mehreren Aspekten der vorliegenden Offenbarung. -
2 ist ein Blockdiagramm, das ein exemplarisches Computergerät veranschaulicht, das so konfiguriert ist, dass es eine grafische Tastatur mit integrierten Suchfunktionen darstellt, gemäß einem oder mehreren Aspekten der vorliegenden Offenbarung. -
3 ist ein Blockdiagramm, das ein exemplarisches Computergerät veranschaulicht, das grafischen Inhalt zum Anzeigen auf einem entfernten Gerät in Übereinstimmung mit einer oder mehreren Techniken der vorliegenden Offenbarung ausgibt. - Die
4A –4E sind konzeptuelle Diagramme, die exemplarische grafische Benutzerschnittstellen eines exemplarischen Computergerätes veranschaulichen, das so konfiguriert ist, dass es eine grafische Tastatur mit integrierten Suchfunktionen darstellt, gemäß einem oder mehreren Aspekten der vorliegenden Offenbarung. -
5 ist ein Flussdiagramm, das exemplarische Tätigkeiten eines Computergerätes veranschaulicht, das so konfiguriert ist, dass es eine grafische Tastatur mit integrierten Suchfunktionen darstellt, gemäß einem oder mehreren Aspekten der vorliegenden Offenbarung. -
6 ist ein Flussdiagramm, das exemplarische Tätigkeiten eines Computergerätes veranschaulicht, das so konfiguriert ist, dass es eine grafische Tastatur mit integrierten Suchfunktionen darstellt, gemäß einem oder mehreren Aspekten der vorliegenden Offenbarung. - DETAILLIERTE BESCHREIBUNG
- Allgemein richtet sich diese Offenbarung auf Techniken, die es einem Computergerät ermöglichen, Suchanfragen automatisch vorherzusagen, und zwar auf der Grundlage von Text, der mit einer grafischen Tastatur eingegeben wird, und die vorhergesagten Anfragen innerhalb der grafischen Tastatur anzuzeigen. In verschiedenen Fällen können die Techniken es dem Computergerät auch ermöglichen, eine Suche auf der Grundlage der angezeigten Anfragen auszuführen, um von direkt innerhalb der grafischen Tastatur Suchergebnisse zu erhalten, die für den Text relevant sein können, der unter Nutzung der grafischen Tastatur eingegeben wurde. Z. B. kann ein Benutzer mit einer grafischen Tastatur interagieren, die durch eine Tastaturanwendung auf einem anwesenheitsabhängigen Bildschirm dargestellt wird (z. B. einem Touchscreen). Die Interaktion kann in Verbindung mit einer Kommunikationsanwendung oder dergleichen stattfinden, die sich von einer Suchanwendung unterscheidet, z. B. als Teil der grafischen Benutzerschnittstelle (GUI) einer Nachrichtenübermittlungs- oder Textnachrichten-Anwendung. Wenn das Computergerät der grafischen Tastatur zugeordnete Eingaben erkennt (z. B. wenn der Benutzer eine Nachricht schreibt), kann die grafische Tastaturanwendung Wörter aus der Eingabe bestimmen und suchbare Entitäten, Begriffe oder Auslösesätze identifizieren, die auf den Wörtern basieren. Die Tastaturanwendung kann automatisch eine vorgeschlagene Suchanfrage für das Beziehen zusätzlicher Informationen im Zusammenhang mit einer oder mehreren der suchbaren Entitäten, Begriffe oder Auslösesätzen erzeugen und anzeigen. Wenn der Benutzer interessiert daran ist, eine Suche anhand der angezeigten Anfrage durchzuführen, kann der Benutzer die vorgeschlagene Suchanfrage auswählen und die Tastaturanwendung veranlassen, die Suche einzuleiten (die optional in dem auf dem Computergerät gespeicherten Inhalt und/oder durch eine Suchmaschine in Inhalt durchgeführt werden kann, der entfernt vom Computergerät gespeichert ist). In einigen Beispielen kann das Computergerät die Suchergebnisse als Teil oder anstatt eines Teils der Tastatur (z. B. anstatt der grafischen Tasten) innerhalb oder neben der Tastaturanwendung darstellen.
- Durch Bereitstellen einer GUI, die eine grafische Tastatur mit integrierter Vorhersage von Suchanfragen einschließt, kann ein exemplarisches Computergerät eine Möglichkeit für einen Benutzer bereitstellen, Suchergebnisse schnell zu erhalten, die für die Eingabe, die der Benutzer bereits auf der grafischen Tastatur bereitgestellt hat, relevant sind, ohne zwischen mehreren unterschiedlichen Anwendungen und Anwendungs-GUIs hin- und herschalten, bereits auf der grafischen Tastatur eingegebenen Text neu eintippen oder sich selber eine relevante Suchanfrage ausdenken zu müssen. Auf diese Weise können Techniken dieser Offenbarung die Zeit und die Anzahl der Benutzereingaben, die für das Beziehen von Suchergebnissen erforderlich sind, verringern, was die Benutzererfahrung vereinfachen und den Stromverbrauch des Computergerätes verringern kann.
- In der gesamten Offenbarung werden Beispiele beschrieben, in denen eine Anwendung, ein Computergerät und/oder ein Computersystem nur dann Informationen (z. B. Text, der mit einer grafischen Tastatur eingegeben wird, Kontext, Standorte, Geschwindigkeiten, Suchanfragen usw.) analysiert, die mit einem Computergerät und einem Benutzer eines Computergerätes assoziiert sind, wenn der Benutzer des Computergerätes die Erlaubnis zur Analyse der Informationen erteilt. Z. B. wird dem Benutzer in den nachstehend erörterten Situationen, bevor eine Anwendung, ein Computergerät oder ein Computersystem die einem Benutzer zugeordneten Informationen sammeln oder nutzen kann, eventuell eine Gelegenheit gegeben, Eingaben bereitzustellen, um zu steuern, ob die Anwendung, das Computergerät und/oder das Computersystem Benutzerinformationen (z. B. Informationen über den Text, der auf einer grafischen Tastatur eingegeben wird usw.) sammeln und verwenden kann, oder um vorzugeben, ob und/oder wie die Anwendung, das Computergerät und/oder das System Inhalt empfangen kann, der für den Benutzer relevant sein kann. Außerdem können bestimmte Daten auf eine oder mehrere Arten behandelt werden, bevor sie von einer Anwendung, einem Computergerät und/oder einen Computersystem gespeichert oder verwendet werden, sodass persönlich identifizierbare Informationen entfernt werden. So kann beispielsweise die Identität eines Benutzers so behandelt werden, dass keine persönlichen Informationen über den Benutzer bestimmt werden können, oder ein geografischer Standort eines Benutzers kann verallgemeinert werden, wo die Positionsinformation empfangen wird (beispielsweise auf eine Stadt, eine Postleitzahl oder eine Landesebene), sodass ein bestimmter Standort eines Benutzers nicht bestimmt werden kann. Somit kann der Benutzer die Kontrolle darüber haben, wie Informationen über den Benutzer gesammelt und von dem Computergerät und dem Computersystem verwendet werden.
-
1 ist ein konzeptuelles Diagramm, das ein exemplarisches Computergerät110 veranschaulicht, das so konfiguriert ist, dass es eine grafische Tastatur mit integrierten Suchfunktionen darstellt, gemäß einem oder mehreren Aspekten der vorliegenden Offenbarung. Bei Computergerät110 kann es sich um ein Mobilgerät, wie etwa ein Smartphone, ein Tablet-Computer, ein Laptop-Computer, eine computergestützte Uhr, eine computergestützte Brille, computergestützte Handschuhe oder irgendeine andere Art von mobilem Computergerät handeln. Weitere Beispiele für Computergerät110 schließen Desktop-Computer, Fernseher, Personal Digital Assistants (PDA), tragbare Spielsysteme, Medienplayer, E-Buch-Leser, mobile Fernsehplattformen, Autonavigations- und -entertainment-Anlagen, Cockpitanzeigen von Fahrzeugen (z. B. von Autos, Flugzeugen oder anderen Fahrzeugen) oder irgendwelche anderen Arten tragbarer und nicht-tragbarer, mobiler oder nicht-mobiler Computergeräte ein, die eine grafische Tastatur zur Anzeige ausgeben können. - Computergerät
110 schließt eine anwesenheitsabhängige Anzeige (PSD)112 , Benutzerschnittstellen-(UI-)Modul120 und Tastaturmodul122 ein. Module120 und122 können beschriebene Tätigkeiten unter Nutzung von Software, Hardware und Firmware oder einer Kombination von Software, Hardware und Firmware ausführen, die im Computergerät110 angesiedelt ist und/oder darauf ausgeführt wird. Eine oder mehrere Prozessoren des Computergerätes110 können Anweisungen ausführen, die in einem Speicher oder einem anderem nicht-flüchtigen Speichermedium des Computergerätes110 gespeichert sind, um die Tätigkeiten der Module120 und122 auszuführen. Computergerät110 kann die Module120 und122 als virtuelle Maschinen, die auf darunterliegender Hardware ausgeführt werden, ausführen. Module120 und122 können als ein oder mehrere Dienste eines Betriebssystems oder einer Computerplattform ausgeführt werden. Module120 und122 können als ein oder mehrere ausführbare Programme auf einer Anwendungsebene einer Computerplattform ausgeführt werden. - PSD
112 des Computergerätes110 kann als entsprechendes Eingabe- und/oder Ausgabegerät für das Computergerät110 dienen. PSD112 kann unter Nutzung verschiedener Technologien implementiert werden. Zum Beispiel kann PSD112 als Eingabegerät unter Nutzung eines oder mehrerer anwesenheitsabhängigen Eingabebildschirme, wie etwa widerstandsgesteuerten Touchscreens, Surface-Acoustic-Wave-Touchscreens, kapazitiven Touchscreens, projektiv-kapazitiven Touchscreens, druckempfindlichen Bildschirmen, Acoustic-Pulse-Recognition-Touchscreens oder einer anderen anwesenheitsabhängigen Anzeigentechnologie, funktionieren. PSD112 kann auch als Ausgabegerät (z. B. eine Anzeige) unter Nutzung eines oder mehrerer Anzeigegeräte funktionieren, wie etwa Flüssigkristallanzeigen (LCD), Punktmatrixanzeigen, LED-Anzeigen, organischen LED-Anzeigen (OLED), E-Ink- oder ähnlichen Monochrom- oder Farbanzeigen, die in der Lage sind, einem Benutzer des Computergerätes110 sichtbare Informationen auszugeben. - PSD
112 kann Eingaben (z. B. Touch- und Nicht-Touch-Eingaben) von einem Benutzer des jeweiligen Computergerätes110 erkennen. PSD112 kann Hinweise auf Eingaben erkennen, indem es eine oder mehrere Gesten von einem Benutzer erkennt (z. B. berührt der Benutzer, zeigt und/oder wischt auf/neben einer oder mehrere Stellen von PSD112 mit einem Finger oder einem Eingabestift). PSD112 kann Informationen an einen Benutzer in Form einer Benutzerschnittstelle (z. B. Benutzerschnittstelle114 ) ausgeben, die mit einer von dem Computergerät110 bereitgestellten Funktionalität assoziiert sein kann. Solche Benutzerschnittstellen können mit Computerplattformen, Betriebssystemen, Anwendungen und/oder Diensten assoziiert sein, die auf Computergerät110 ausgeführt werden oder auf die darüber zugegriffen werden kann (z. B. elektronische Nachrichtenübermittlungsanwendungen, Chat-Anwendungen, Internet-Browseranwendungen, mobile oder Desktop-Betriebssysteme, Soziale-Medien-Anwendungen, elektronische Spiele und andere Arten von Anwendungen). Z. B. kann PSD112 Benutzerschnittstelle114 darstellen, die, wie in1 gezeigt, eine grafische Benutzerschnittstelle einer Chat-Anwendung ist, die auf Computergerät110 ausgeführt wird und verschiedene grafische Elemente einschließt, die an verschiedenen Positionen von PSD112 angezeigt werden. - Wie in
1 gezeigt, ist Benutzerschnittstelle114 eine Chat-Benutzerschnittstelle. Jedoch kann Benutzerschnittstelle114 jede grafische Benutzerschnittstelle sein, die eine grafische Tastatur mit integrierten Suchfunktionen einschließt. Benutzerschnittstelle114 schließt den Ausgabebereich116A , die grafische Tastatur116B und den Bearbeitungsbereich116C ein. Ein Benutzer des Computergerätes110 kann Eingaben auf der grafischen Tastatur116B bereitstellen, um Textzeichen im Bearbeitungsbereich116C zu produzieren, die den Inhalt der elektronischen Nachrichten bilden, die im Ausgabebereich116A angezeigt werden. Die Nachrichten, die im Ausgabebereich116A angezeigt werden, bilden eine Chat-Konversation zwischen einem Benutzer von Computergerät110 und einem Benutzer eines anderen Computergerätes. - UI-Modul
120 verwaltet Benutzerinteraktionen mit PSD112 und anderen Komponenten von Computergerät110 . Das heißt, dass UI-Modul120 als ein Vermittler zwischen verschiedenen Komponenten von Computergerät110 dienen kann, um Bestimmungen auf der Grundlage der durch PSD112 erkannten Benutzereingaben vorzunehmen, und Ausgaben auf PSD112 in Reaktion auf die Benutzereingaben zu erzeugen. UI-Modul120 kann Anweisungen von einer Anwendung, einem Dienst, einer Plattform oder von einem anderen Modul von Computergerät110 empfangen, um PSD112 zu veranlassen, eine Benutzerschnittstelle (z. B. Benutzerschnittstelle114 ) auszugeben. UI-Modul120 kann die Eingaben verwalten, die von Computergerät110 empfangen werden, während ein Benutzer die auf PSD112 dargestellte Benutzerschnittstelle ansieht und mit ihr interagiert, und die Benutzerschnittstelle in Reaktion auf das Empfangen von zusätzlichen Anweisungen von der Anwendung, von dem Dienst, von der Plattform oder von einem anderen Modul von Computergerät110 , das die Benutzereingabe verarbeitet, aktualisieren. - Tastaturmodul
122 stellt eine Anwendung, einen Dienst oder eine Komponente dar, die/der auf Computergerät110 ausgeführt wird oder auf die/den dadurch zugegriffen werden kann, und die Computergerät110 eine grafische Tastatur mit integrierten Suchfunktionen einschließlich einer Vorhersage und Ausführung von Suchanfragen bereitstellen. Tastaturmodul122 kann zwischen dem Betrieb im Texteingabemodus, in dem Tastaturmodul122 ähnlich wie eine traditionelle grafische Tastatur arbeitet, oder einem Suchmodus hin- und herschalten, in dem Tastaturmodul122 verschiedene integrierte Suchfunktionen oder -schnittstellen mit einer oder mehrerer Suchanwendungen oder -funktionen ausführt. - In einigen Beispielen kann es sich bei Tastaturmodul
122 um eine eigenständige Anwendung, einen Dienst oder ein Modul handeln, das von Computergerät110 ausgeführt wird, und in anderen Beispielen kann Tastaturmodul122 eine Unterkomponente sein, die als Dienst für andere Anwendungen oder Gerätefunktionen dient. Z. B. kann Tastaturmodul122 in eine Chat- oder Nachrichtenübermittlungsanwendung integriert sein, die auf Computergerät110 ausgeführt wird, während Tastaturmodul122 in anderen Beispielen eine eigenständige Anwendung oder Subroutine sein kann, die durch eine Anwendung oder Betriebsplattform von Computergerät110 immer dann aufgerufen werden kann, wenn eine Anwendung oder eine Betriebsplattform eine grafische Tastatureingabefunktionalität benötigt. In einigen Beispielen kann Computergerät110 Tastaturmodul122 von einem Anwendungsspeicher eines Dienstanbieters herunterladen und installieren (z. B. über das Internet). In anderen Beispielen kann Tastaturmodul122 während der Fertigung von Computergerät110 vorgeladen werden. - Wenn das Tastaturmodul
122 von Computergerät110 im Texteingabemodus arbeitet, kann es traditionelle Tätigkeiten einer grafischen Tastatur ausführen, die für die Texteingabe verwendet werden, wie etwa: Erzeugen eines grafischen Tastaturlayouts zur Anzeige auf PSD112 , Zuordnung von Eingaben auf PSD112 zu Auswahlen von grafischen Tasten, Bestimmen von Zeichen anhand der gewählten Tasten oder Vorhersage oder Autokorrektur von Wörtern und/oder Sätzen auf der Grundlage der anhand der gewählten Tasten bestimmten Zeichen. - Die grafische Tastatur
116B schließt grafische Elemente ein, die als grafische Tasten118A angezeigt werden. Tastaturmodul122 kann Informationen an UI-Modul120 ausgeben, die das Layout der grafischen Tastatur116B innerhalb von Benutzerschnittstelle114 spezifizieren. Z. B. können die Informationen Anweisungen einschließen, die Positionen, Größen, Farben und andere Eigenschaften der grafischen Tasten118A angeben. Auf der Grundlage der von Tastaturmodul122 empfangenen Informationen kann UI-Modul120 PSD112 veranlassen, die grafische Tastatur116B als Teil von Benutzerschnittstelle114 anzuzeigen. - Jede Taste der grafischen Tasten
118A kann einem oder mehreren entsprechenden Zeichen (z. B. einem Buchstaben, einer Zahl, einem Satzzeichen oder einem anderen Zeichen) zugeordnet werden, das innerhalb der Taste angezeigt wird. Ein Benutzer von Computergerät110 kann Eingaben an Positionen von PSD112 machen, an denen eine oder mehrere grafische Tasten118A angezeigt werden, um Inhalt (z. B. Zeichen, Suchergebnisse usw.) in Bearbeitungsbereich116C einzugeben (z. B. für das Verfassen von Nachrichten, die gesendet und in Ausgabebereich116A angezeigt werden, oder für die Eingabe einer Suchanfrage, die Computergerät110 von der grafischen Tastatur116B aus ausführt). Tastaturmodul122 kann Informationen von UI-Modul120 empfangen, die den von PSD112 ermittelten Eingaben zugeordnete Positionen angeben und die im Verhältnis zu den Positionen von jeder der grafischen Tasten stehen. Unter Nutzung eines räumlichen und/oder Sprachmodells kann Tastaturmodul122 die Eingaben in Auswahlen von Tasten und Zeichen, Wörter und/oder Sätze übersetzen. - Zum Beispiel kann PSD
112 Benutzereingaben erkennen, wenn ein Benutzer von Computergerät110 die Benutzereingaben an oder nahe einer Position von PSD112 bereitstellt, an der PSD112 die grafischen Tasten118A darstellt. Der Benutzer kann an den grafischen Tasten118A schreiben, um den Satz 'Wollen wir zusammen essen gehen?' im Bearbeitungsbereich116C einzugeben. UI-Modul120 kann von PSD112 einen Hinweis auf die von PSD112 erkannte Benutzereingabe empfangen und an Tastaturmodul122 Informationen über die Benutzereingabe ausgeben. Informationen über die Benutzereingabe können einen Hinweis auf eine oder mehrere Touch-Ereignisse (z. B. Positionen und andere Informationen über die Eingabe) einschließen, die von PSD112 erkannt wurden. - Auf der Grundlage der von UI-Modul
120 empfangenen Informationen kann Tastaturmodul122 auf PDS112 erkannte Eingaben Auswahlen von grafischen Tasten118A zuordnen, auf den ausgewählten Tasten118A basierende Zeichen bestimmen und Wörter und/oder Sätze vorhersagen oder autokorrigieren, die anhand der den ausgewählten Tasten118A zugeordneten Zeichen bestimmt werden. Z. B. kann Tastaturmodul122 ein räumliches Modell einschließen, das auf der Grundlage der Positionen der Tasten118A und der Informationen über die Eingabe feststellen kann, welches die eine oder mehreren Tasten118A sind, die am wahrscheinlichsten als Tasten ausgewählt werden. In Reaktion auf die Bestimmung der am wahrscheinlichsten auszuwählenden einen oder mehreren Tasten118A kann Tastaturmodul122 ein oder mehrere Zeichen. Wörter und/oder Sätze bestimmen. Z. B. kann jede der einen oder mehreren Tasten118A , die von einer Benutzereingabe auf PSD112 ausgewählt werden, ein einzelnes Zeichen oder eine Tastaturoperation darstellen. Tastaturmodul122 kann eine Folge von Zeichen bestimmen, die anhand der einen oder der mehreren ausgewählten Tasten118A ausgewählt werden. In einigen Beispielen kann Tastaturmodul122 ein Sprachmodell auf die Zeichenfolge anwenden, um einen oder mehrere der wahrscheinlichsten Kandidatenbuchstaben, -morpheme, -wörter und/oder -sätze zu bestimmen, die ein Benutzer auf der Grundlage der Auswahl der Tasten118A einzugeben versucht. Im Beispiel von1 kann Tastaturmodul122 bestimmen, dass die Zeichenfolge den Buchstaben des Satzes „Wollen wir zusammen essen gehen?” entspricht. - Tastaturmodul
122 kann die Zeichenfolge und/oder Kandidatenwörter und -sätze (z. B. „Wollen wir zusammen essen gehen?”) an UI-Modul120 senden, und UI-Modul120 kann PSD112 veranlassen, die Zeichen und/oder Kandidatenwörter, die auf der Grundlage der Auswahl einer oder mehrerer Tasten118A als Text in dem Bearbeitungsbereich116C bestimmt werden, darzustellen. In einigen Beispielen kann Tastaturmodul122 , wenn es als traditionelle Tastatur für das Ausführen von Texteingabe-Tätigkeiten dient, und in Reaktion auf das Empfangen einer Benutzereingabe auf den grafischen Tasten118A (z. B. wenn ein Benutzer auf der grafischen Tastatur116B schreibt, um Text im Bearbeitungsbereich116C einzugeben) UI-Modul120 veranlassen, die Kandidatenwörter und/oder die Sätze als eine oder mehrere auswählbare Rechtschreibekorrekturen und/oder auswählbare Wort- oder Satzvorschläge im Vorschlagsbereich118B anzuzeigen. - Zusätzlich zum Ausführen traditioneller grafischer Tastaturoperationen, die für die Texteingabe genutzt werden, stellt Tastaturmodul
122 von Computergerät110 auch eine integrierte Suchfähigkeit bereit. Das heißt, anstatt dass ein Benutzer von Computergerät110 von Benutzerschnittstelle114 , die die grafische Tastatur116B bereitstellt, fortnavigieren muss (z. B. zu einer anderen Anwendung oder Dienst, der auf Computergerät110 ausgeführt wird oder auf die/den von ihm aus zugegriffen werden kann), kann Tastaturmodul122 im Suchmodus tätig sein, in dem Tastaturmodul122 Suchoperationen ausführen kann, wobei Suchanfragen auf der Grundlage des Textes vorhergesagt und dargestellt werden, der auf der grafischen Tastatur116B eingegeben wird, und stellt die Suche in einer oder mehreren möglichen Positionen und Formaten dar, wie etwa als Ergebnisse innerhalb des gleichen Bereichs von PSD112 , in dem die grafische Tastatur116B angezeigt wird. - Wie vorstehend angesprochen, kann Tastaturmodul
122 als eigenständige auf Computergerät110 ausgeführte Anwendung, Dienst oder Modul oder als einzelne, integrierte Unterkomponente davon ausgeführt werden. Folglich kann, wenn Tastaturmodul122 einen Teil einer Chat- oder Nachrichtenübermittlungsanwendung bildet, die auf Computergerät110 ausgeführt wird, Tastaturmodul122 der Chat- oder Nachrichtenübermittlungsanwendung sowohl eine Texteingabe- als auch mit einer Suchfähigkeit bereitstellen. Ähnlich dazu kann Tastaturmodul122 , wenn Tastaturmodul122 eine eigenständige Anwendung oder Subroutine ist, die durch eine Anwendung oder eine Betriebsplattform von Computergerät110 immer dann aufgerufen wird, wenn eine Anwendung oder eine Betriebsplattform eine grafische Tastatureingabefunktionalität benötigt, der aufrufenden Anwendung oder Betriebsplattform sowohl eine Texteingabe- als auch eine Suchfähigkeit bereitstellen. - Tastaturmodul
122 kann des Weiteren im Suchmodus funktionieren. Wenn es im Suchmodus funktioniert, kann Tastaturmodul122 verschiedene suchbezogene Funktionen ausführen. Z. B. kann Tastaturmodul122 manuelle Suchen (z. B. boolesche, natürliche Sprache usw.) ausführen, vorhergesagte Suchanfragen, Emoji-Suchen, Übersetzungen und andere suchbezogene Eigenschaften erzeugen und anzeigen. - In einigen Beispielen kann das Tastaturmodul
122 , wenn es im Suchmodus funktioniert, die grafische Tastatur116B veranlassen, Suchelement118C einzuschließen. Suchelement118C stellt ein auswählbares Element (z. B. ein Symbol, eine Taste usw.) der grafischen Tastatur116B für das manuelle Aufrufen einer oder mehrerer der verschiedenen Suchfunktionen der grafischen Tastatur116B dar. Z. B. kann ein Benutzer durch Auswahl von Suchelement118C (z. B. durch Klopfen oder Gestikulieren an einer Position oder in einem Bereich von PSD112 , in dem Suchelement118C angezeigt wird) Computergerät110 veranlassen, eine oder mehrere der verschiedenen integrierten Suchfunktionen aufzurufen, ohne dass der Benutzer eigens zu einer anderen Anwendung, einem anderen Dienst oder zu einer anderen Funktion navigieren muss, die von Computergerät110 ausgeführt werden oder auf die von ihm aus zugegriffen werden kann. - In einigen Beispielen kann Suchelement
118C auch als ein Hinweis auf einen Status verwendet werden, der mit einer Suchfunktion assoziiert ist. Zum Beispiel kann Tastaturmodul122 , wenn es eine Suchanfrage voraussagt, die wahrscheinlich Suchergebnisse im Zusammenhang mit der Chat-Konversation eines Benutzers produzieren würde, das Suchelement118C veranlassen zu blinken, zu pulsieren, die Farbe zu ändern, sich zu bewegen oder eine andere Animation auszuführen, um anzuzeigen, dass die Suchanfrage identifiziert wurde. - In einigen Beispielen kann das Tastaturmodul
122 , wenn es im Suchmodus funktioniert, automatisch verschiedene Suchfunktionen ausführen, unabhängig davon, ob die grafische Tastatur116B Suchelement118C einschließt. Z. B. kann Tastaturmodul122 eine Suchanfrage vorhersagen, eine Übersetzung bestimmen oder anderen vorgeschlagenen Inhalt erzeugen, basierend auf Text, den Tastaturmodul122 von Benutzereingaben ableitet, und kann den vorgeschlagenen Inhalt innerhalb der grafischen Tastatur16B anzeigen. Z. B. kann Tastaturmodul122 den Vorschlagsbereich118B so konfigurieren, dass er vorgeschlagenen Inhalt (z. B. vorhergesagte Suchanfragen, vorhergesagte Emoticons oder so genannte „Emojis”, anderen vorgeschlagenen Inhalt oder jedwedes andere ikonografische Symbol) als auswählbare Elemente innerhalb von Suchelement118C anstelle von oder zusätzlich zu vorhergesagten Zeichen, Wörtern oder Sätzen oder anderen in erster Linie linguistischen Informationen darstellt, die Tastaturmodul122 von einem Sprachmodell, Lexikon oder Wörterbuch ableitet. Mit anderen Worten, anstatt nur Rechtschreibungs- oder Wortvorschläge aus einem Wörterbuch im Vorschlagsbereich118B bereitzustellen, kann Computergerät110 im Vorschlagsbereich118B vorgeschlagenen suchbezogenen Inhalt zusätzlich zu oder anstelle von vorgeschlagenem linguistischem Inhalt einschließen, zu dem Computergerät110 (oder ein anderes Gerät im Zusammenhang oder in Kommunikation mit Gerät110 ) bestimmt, dass er einem Benutzer zu einem aktuellen Zeitpunkt helfen kann (z. B. wenn mit der elektronischen Kommunikation in Zusammenhang stehende Eingaben bereitgestellt werden). - Tastaturmodul
122 kann, wenn es im Suchmodus funktioniert, eine automatische Vorhersage von Suchanfragen ausführen, die mit dem Text zusammenhängen können, der unter Nutzung der grafischen Tastatur116B zu einem aktuellen Zeitpunkt eingegeben wird. Mit anderen Worten kann Tastaturmodul122 Computergerät110 in die Lage versetzen, eine Möglichkeit für einen Benutzer bereitzustellen, Informationen in Form einer vorgeschlagenen Suche oder Suchergebnissen schnell zu beziehen, die für die Eingabe, die der Benutzer bereits auf der grafischen Tastatur116B bereitgestellt hat, relevant sind, ohne zwischen mehreren unterschiedlichen Anwendungen und Anwendungs-GUIs hin- und herschalten, bereits auf der grafischen Tastatur116B eingegebenen Text neu eintippen oder sich selber eine relevante Suchanfrage ausdenken zu müssen. Tastaturmodul122 kann eine Suchanfrage automatisch erzeugen und anzeigen (z. B. im Vorschlagsbereich118C ). Wenn der Benutzer daran interessiert ist, eine Suche auf der Grundlage der angezeigten Anfrage auszuführen, kann der Benutzer optional Eingaben an einer Position von PSD112 bereitstellen, an der die vorgeschlagene Anfrage angezeigt wird, um die Suchanfrage auszuwählen und Tastaturmodul122 zu veranlassen, die Suche einzuleiten. In einigen Beispielen kann Tastaturmodul122 UI-Modul120 und PSD112 veranlassen, die Suchergebnisse anstatt eines Teils der grafischen Tasten118A darzustellen. - Zum Beispiel, wie in
1 gezeigt, möchte ein Benutzer von Computergerät110 eventuell Plane für ein Abendessen mit einem Freund machen und kann elektronische Kommunikation (z. B. Nachrichten) mit dem Freund von innerhalb der Benutzerschnittstelle114 austauschen. Der Benutzer kann die Konversation beginnen, indem er eine Gesteneingabe an Positionen von PSD112 bereitstellt, an denen die Tasten118A angezeigt werden, und ein räumliches und/oder Sprachmodell von Tastaturmodul122 kann auf der Grundlage der Eingabe bestimmen, dass die Gesteneingabe einer Auswahl der Tasten118A für die Eingabe des Satzes ,Arbeitest du noch lange?' entspricht. Der Benutzer kann Eingaben an einer Position der Return-Taste der Tasten118A bereitstellen, und in Reaktion kann die Nachrichtenübermittlungsanwendung, die mit Benutzerschnittstelle114 assoziiert ist, eine elektronische Kommunikation an ein mit dem Freund assoziiertes Computergerät schicken, die den Text einschließt ,Arbeitest du noch lange?' Nach dem Empfangen einer Antwortnachricht von dem mit dem Freund assoziierten Computergerät, die den Text ,Nein, ich mache bald Schluss' einschließt, kann die Nachrichtenübermittlungsanwendung den Text der Antwort in Benutzerschnittstelle114 darstellen. - In einigen Beispielen kann Tastaturmodul
122 eine Suche nach im Computergerät110 gespeicherten Informationen nur im Gerät einleiten, ohne auf ein entferntes Computergerät wie etwa einen Server zuzugreifen. Z. B. kann Tastaturmodul122 selbst ausführen oder kann ein lokal gespeichertes Suchmodul aufrufen, das nach Informationen ausführt, die vom Computergerät110 gespeichert werden. - In einigen Beispielen kann Tastaturmodul
122 eine Suche durchführen. Und in einigen Beispielen kann Tastaturmodul122 auf eine eigene Geräteressource oder auf eine entfernte Ressource zurückgreifen, um die Suche durchzuführen. Z. B. kann Tastaturmodul122 eine Anfrage mit der Anweisung, eine Suche durchzuführen, an ein internes Suchmodul schicken, das auf Computergerät110 ausgeführt wird. Und in einigen Beispielen kann Tastaturmodul122 eine Anfrage mit der Anweisung, eine Suche durchzuführen, an ein externes Suchmodul schicken, das auf einem entfernten Computergerät, wie etwa einem Server, ausgeführt wird. In jedem Fall kann das interne oder externe Suchmodul Suchergebnisse an Tastaturmodul122 zurückschicken. - Der Benutzer von Computergerät
110 kann weitere Eingaben an den Positionen von PSD112 bereitstellen, an denen die grafische Tastatur116B angezeigt wird, um eine oder mehrere Tasten118A für das Verfassen einer zweiten Nachricht an den Freund auszuwählen, die lautet ,Wollen wir zusammen essen gehen?' Tastaturmodul122 kann einen Hinweis auf (z. B. ein oder mehrere Touch-Ereignisse) die Auswahl einer oder mehrerer Tasten118A von UI-Modul120 empfangen. - Auf der Grundlage des Hinweises auf die Auswahl einer oder mehrerer Tasten
118A kann Tastaturmodul122 Text einer elektronischen Kommunikation bestimmen. Z. B. kann ein räumliches und/oder Sprachmodell von Tastaturmodul122 die einzelnen der Eingabe zugeordnete Tastenauswahlen in einen String oder eine Reihenfolge von Textzeichen und/oder Wörtern übersetzen, die den Satz „Wollen wir zusammen essen gehen?” darstellen. - Tastaturmodul
122 kann, zumindest teilweise auf der Grundlage des Textes, eine „suchbare Entität” oder einen „Auslösesatz” identifizieren, anhand dessen Tastaturmodul122 eine Suchanfrage erzeugen kann. Der Begriff „suchbare Entität” bezieht sich im Allgemeinen auf jegliches beschreibende Wort oder beschreibenden Satz oder Namen, das/den ein Benutzer in einem Satz eintippen kann, der als Grundlage für eine Suche verwendet werden könnte. Einige Beispiele für Suchentitäten schließen die Namen von Profisportmannschaften, Schauspielern und andere Berühmtheiten, Politikern, Marken, Filmen, Restaurants, Sehenswürdigkeiten, Orten oder jedwede sonstige Ereignisse, Attraktionen oder Dinge ein, die möglicherweise gesucht werden könnten. Der Begriff „Auslösesatz” verweist im Allgemeinen auf häufige Sätze, die Personen verwenden, wenn sie über eine suchbare Entität sprechen, ohne dass sie die suchbare Entität tatsächlich benennen. Z. B. könnten Personen den Auslösesatz „lass uns essen gehen” oder einfach „Abendessen” verwenden, anstatt ein genaues Restaurant oder den Wunsch zu erwähnen, ein Restaurant zu finden. Oder Personen könnten den Auslösesatz „Wie sieht das Ergebnis des Fußballspiels aus” anstelle eines spezifischen Mannschaftnamens benutzen. - Tastaturmodul
122 kann auf verschiedene „Im-Gerät” Annotatoren oder Textanalysemaschinen zurückgreifen, die Text parsen und analysieren, der auf der grafischen Tastatur116B eingegeben wird, um zu erkennen, ob ein Benutzer etwas auf der grafischen Tastatur116B geschrieben hat, das suchbar ist. Die Annotatoren von Tastaturmodul122 können lokal auf einem oder mehreren Prozessoren von Computergerät110 ausgeführt werden, im Gegensatz zu anderen traditionellen Suchsystemen, die eventuell auf entfernte Annotatoren zurückgreifen, die auf einem entfernten Computersystem (z. B. einem Server) ausgeführt werden. Dadurch, dass es auf Im-Gerät-Annotatoren zurückgreift, kann Tastaturmodul122 Suchanfragevorhersagen scheinbar beinahe in Echtzeit ausführen, um das Unterbrechen oder Zurückbleiben bei einer Text-Konversation zu vermeiden, die ein Benutzer beim Schreiben auf der grafischen Tastatur116B möglicherweise gerade führt. - In einigen Beispielen kann Tastaturmodul
122 Suchanfragevorhersagen ausführen, indem es zusätzlich oder alternativ zur Nutzung von Im-Gerät-Annotatoren auf externe oder entfernte Annotatoren zurückgreift. Z. B. kann Tastaturmodul122 auf einen Cloud-Dienst zugreifen, um Suchanfragevorhersagen zu beziehen, indem es Text an die Cloud sendet, den es von der grafischen Tastatur116B und/oder anderen Informationen über Computergerät110 abgeleitet hat, und in Reaktion eine oder mehrere relevante Suchanfragen erhalten. - Die Annotatoren von Tastaturmodul
122 können Text parsen, der auf der grafischen Tastatur116B eingegeben wird, um suchbare Entitäten und Auslösesätze unter Nutzung sowohl globaler als auch lokaler Modelle zu ermitteln. Tastaturmodul122 kann in die Modelle jene Entitäten und Auslösesätze einschließen, die wahrscheinlich relevant sind oder am häufigsten in Chat- oder Textnachrichtenübermittlungs-Konversationen auftreten. Tastaturmodul122 kann Text in ein lokales und/oder globales Modell bereitstellen, den es aus der Benutzereingabe auf der grafischen Tastatur116B abgeleitet hat, und kann als Ausgabe von dem/denn Modell(en) eine oder mehrere suchbare Entitäten empfangen. - Die globalen Modelle können die Annotatoren von Tastaturmodul
122 befähigen, möglicherweise nützliche Suchentitäten zu identifizieren, die verschiedenen Geolokationen gemein sind (z. B. internationale Marken und Berühmtheiten). Die lokalen Modelle können die Annotatoren von Tastaturmodul122 befähigen, möglicherweise nützliche Suchentitäten zu identifizieren, die in den verschiedenen Geolokationen nicht so häufig sind, die aber für spezifische Geolokationen häufig sind (z. B. Namen lokaler Geschäfte, lokale Ereignisse und Attraktionen, lokale Politiker usw.). - Tastaturmodul
122 kann automatisch aktualisierte lokale Modelle in Reaktion auf Änderungen des Standorts des Computergerätes herunterladen. Als ein Beispiel kann ein Annotator von Tastaturmodul122 den Text als Eingabe in sowohl die lokalen Im-Gerät- und die globalen Modelle bereitstellen, der aus einer Auswahl der Tasten118A erkannt wird, und als Ausgabe von den globalen und lokalen Modellen einen Hinweis (z. B. Daten) auf eine suchbare Entität empfangen. - Alternativ oder zusätzlich zu den lokalen und globalen Modellen können die Annotatoren von Tastaturmodul
122 des Weiteren auf künstliche Intelligenz und Maschinenlerntechniken zurückgreifen, um mit einem gewissen Ausmaß an Zuverlässigkeit zu bestimmen, ob ein Benutzer über eine suchbare Entität oder einen Auslösesatz schreibt. Z. B. kann Tastaturmodul122 auf ein maschinell erlerntes Modell zurückgreifen, das künstliche neurale Netze, wiederkehrende neurale Netze, Lang-Kurzzeit-Gedächtnis- Modelle (LSTM), Hidden-Markov-Modelle oder alle anderen Arten von maschinell erlernten Modellen einschließt, die erlernte Regeln verwenden, um mit einem gewissen Ausmaß an Zuverlässigkeit zu bestimmen, ob der Text, der auf der grafischen Tastatur116B eingegeben wird, mit einer suchbaren Entität oder einem Auslösesatz zusammenhängt. Z. B. kann im Fall eines LSTM-Modells das LSTM-Modell anfangs in Bezug auf Chat-Konversationen von mehreren Benutzern und mehreren Geräten trainiert werden, um mit einem gewissen Ausmaß an Zuverlässigkeit zu ermitteln, ob ein Benutzer z. Z. über eine bestimmte suchbare Entität oder einen Auslösesatz schreibt. Nach Identifizierung einer potenziellen suchbaren Entität oder eines Auslösesatzes unter Nutzung eines lokalen und/oder globalen Modells kann ein Annotator von Tastaturmodul122 unter Nutzung eines LSTM-Modells eine der suchbaren Entität oder dem Auslösesatz zugewiesene Punktzahl bestimmen, die eine Wahrscheinlichkeit anzeigen, dass die suchbare Entität oder der Auslösesatz für das eine oder die mehreren Wörter relevant ist, die der Annotator aus der ursprünglichen Texteingabe geparst hat. Wenn die der suchbaren Entität oder dem Auslösesatz zugewiesene Punktzahl einen Schwellenwert erreicht, kann Tastaturmodul122 die suchbare Entität oder den Auslösesatz verwenden, um eine Anfrage zu erzeugen. - In einigen Beispielen können die lokalen und/oder globalen Modelle eine anfängliche Punktzahl bestimmen, die einer möglichen suchbaren Entität oder einem Auslösesatz zugeordnet ist, und Tastaturmodul
122 kann ein LSTM-Modell benutzen, um die anfängliche Punktzahl zu erhöhen oder zu verbessern, die von den lokalen und/oder globalen Modellen bestimmt wird. Z. B. kann die anfängliche Punktzahl, die von den lokalen und/oder globalen Modellen bestimmt wird, durch ein LSTM-Modell von Tastaturmodul122 , das anhand von Chat-Konversationen trainiert wurde, erhöht oder verringert werden, um mit einem gewissen Ausmaß an Zuverlässigkeit zu ermitteln, dass der Benutzer über eine bestimmte Entität spricht. Das LSTM-Modell kann auf Kontextinformationen von Computergerät110 sowie (in einem Chat-Kontext) den Inhalt der früheren und nachfolgenden Nachrichten zurückgreifen, um mit einem höheren Ausmaß an Zuverlässigkeit als nur das lokale oder globale Modell zu bestimmen, ob ein Benutzer über eine bestimmte suchbare Entität oder einen Auslösesatz redet. - Zusätzlich zum Identifizieren der suchbaren Entität können die lokalen und/oder globalen Modelle von Tastaturmodul
122 auch kuratierte Sätze für die Verwendung bei der Erzeugung von Suchanfragen vorschlagen. Zum Beispiel kann Tastaturmodul122 Text in ein lokales und/oder globales Modell bereitstellen (z. B. den Satz „Wollen wir zusammen essen gehen?”), den es aus der Benutzereingabe auf der grafischen Tastatur116B abgeleitet hat, und kann als Ausgabe von dem/den Modell(en) einen oder mehrere kuratierte Sätze empfangen. Tastaturmodul122 kann den Text in ein lokales Modell eingeben und in Reaktion darauf, dass das lokale Modell erkennt, dass es sich bei dem Satz um einen zuvor festgelegten Auslösesatz handelt, kann Tastaturmodul122 den kuratierten Satz „Restaurants in meiner Nähe” als Ausgabe von dem lokalen Modell empfangen. In einigen Beispielen können die Annotatoren von Tastaturmodul122 des Weiteren auf künstliche Intelligenz und Maschinenlerntechniken zurückgreifen, um mit einem gewissen Ausmaß an Zuverlässigkeit zu bestimmen, ob ein Benutzer über einen bestimmten kuratierten Satz schreibt. Z. B. können die Annotatoren unter Nutzung einer oder mehrerer Regeln darüber, was andere Leute in Chat-Konversationen für verschiedenen Kontext eintippen, Regeln für das Ableiten kuratierter Sätze erzeugen, die auf Texteingabe und einem bestimmten Kontext basieren. Unter Nutzung der Regeln können die Annotatoren mit einem gewissen Ausmaß an Zuverlässigkeit vorhersagen, ob ein Benutzer über „Restaurants in meiner Nähe”, „Essen in der Nähe”, „Filme, die im nahe gelegenen Kino laufen”, „Wegbeschreibungen zu einem Ort” oder über einen anderen kuratierten Satz redet, der mit der Texteingabe zusammenhängen kann. Wenn das Ausmaß an Zuverlässigkeit (z. B. eine Wahrscheinlichkeit) einen Schwellenwert erreicht, kann Tastaturmodul122 den kuratierten Satz verwenden, wenn er eine Anfrage produziert. - Tastaturmodul
122 kann auf der Grundlage der suchbaren Entität oder des Auslösesatzes eine Suchanfrage erzeugen. Z. B. kann Tastaturmodul122 die Ausgabe von den Annotatoren und den globalen und lokalen Modellen in ein Suchanfragenformat formatieren, das durch eine Suchmaschine erkannt wird, die von Tastaturmodul122 ausgeführt wird oder auf die von dem Modul aus zugegriffen werden kann. Das heißt, dass Tastaturmodul122 eine Suchanfrage in natürlicher Sprache oder eine boolesche Suchanfrage erzeugen kann, die auf den Suchentitäten und kuratierten Sätzen basieren, die durch die Modelle identifiziert werden. In Übereinstimmung mit dem Beispiel von1 kann Tastaturmodul122 „Restaurants” als suchbare Entitäten oder kuratierte Sätze identifizieren, die mit dem Text „Wollen wir zusammen essen gehen?” verbunden sind. - Tastaturmodul
122 kann, zur Anzeige in der grafischen Tastatur116C , einen grafischen Hinweis ausgeben, um anzuzeigen, dass das Computergerät die Suchanfrage erzeugt hat. Z. B. kann Tastaturbaustein122 Suchelement118C veranlassen, zu blinken oder das Format, die Form oder die Farbe zu ändern, sich zu bewegen oder irgendeine andere Animation durchzuführen, um anzuzeigen, dass die Suchanfrage identifiziert wurde. Zusätzlich oder alternativ kann Tastaturmodul122 den Text der erzeugten Suchanfrage als blauen Hypertext-Link ausgeben (z. B. unterstrichen oder nicht unterstrichen). Z. B., wie in1 gezeigt, veranlasst Tastaturmodul122 UI-Modul120 , die Suchanfrage „Restaurants” im Vorschlagsbereich118B darzustellen. Als weiteren Hinweis, dass Tastaturmodul122 die Suchanfrage bestimmt hat, kann Tastaturmodul122 UI-Modul120 veranlassen, ein Symbol darzustellen, das der Suchanfrage zugeordnet wird. Z. B. kann Tastaturmodul122 UI-Modul120 veranlassen, neben der textuellen Sprache ein Symbol darzustellen, das einer Kategorie der Suchanfrage zugeordnet ist (z. B. ein Gabel- und Messersymbol neben dem Wort Restaurants im Vorschlagsbereich118B ). Alternativ kann zum Beispiel, wie in1 gezeigt, PSD112 ein Vergrößerungssymbol neben dem Wort Restaurants im Vorschlagsbereich118B anzeigen – wobei das Vergrößerungssymbol nicht einer bestimmten Suchanfragenkategorie zugeordnet wird. - Nach der automatischen Darstellung der Suchanfrage in der grafischen Tastatur
116B kann ein Benutzer die Suchanfrage auswählen und Tastaturmodul122 veranlassen, von innerhalb Benutzerschnittstelle114 eine Suche auf der Grundlage der Anfrage auszuführen. Zum Beispiel kann ein Benutzer eine Klopf- oder Wischgeste an einer Position von PSD112 , an der Vorschlagsbereich118B angezeigt wird, bereitstellen, und in Reaktion auf das Empfangen, von UI Modul120 , eines Hinweises auf die Klopf- oder Wischgeste kann Tastaturmodul122 eine Suche durchführen, die auf der Anfrage basiert. Tastaturmodul122 kann UI-Modul120 veranlassen, Ergebnisse der Suche in Benutzerschnittstelle114 darzustellen, aus denen ein Benutzer eines oder mehrere der Ergebnisse auswählen und die den Ergebnissen zugeordneten Informationen in eine neue elektronische Nachricht eingeben kann. - Durch Bereitstellen einer GUI, die eine grafische Tastatur mit integrierter Vorhersage von Suchanfragen einschließt, kann ein exemplarisches Computergerät eine Möglichkeit für einen Benutzer bereitstellen, schnell Suchergebnisse zu beziehen, die für die Eingabe, die der Benutzer bereits auf der grafischen Tastatur bereitgestellt hat, relevant sind, ohne zwischen mehreren Anwendungs-GUIs hin- und herschalten, bereits auf der grafischen Tastatur eingegebenen Text neu eintippen oder sich selber eine relevante Suchanfrage ausdenken zu müssen. Mit anderen Worten, im Gegensatz zu anderen Computergeräten, die es erfordern, dass ein Benutzer eine Chat-Anwendungs-GUI verlässt und eine nachfolgende Texteingabe (z. B. durch Kopieren oder Neutippen des zuvor in der Chat-Anwendung eingegebenen Textes) auf einer anderen Suchanwendungs-GUI bereitstellt, um nach einem Thema zu suchen, das vorher in der Chat-Anwendung eingegeben wurde, sagt das exemplarische Computergerät automatisch eine Suchanfrage vorher und führt die Suchanfrage durch, ohne dass der Benutzer zusätzliche Eingaben über das hinaus bereitstellen muss, was er oder sie ursprünglich in der ursprünglichen Chat-Nachricht geschrieben hat. Die Suche beschränkt sich nicht auf den Text der ursprünglichen Nachricht, aber kann mit dem Thema der ursprünglichen Nachricht zusammenhängen. Auf diese Weise können Techniken dieser Offenbarung die Zeit und die Anzahl der Benutzereingaben, die für das Beziehen von Suchergebnissen im Zusammenhang mit Chat-Konversationen erforderlich sind, verringern, was die Benutzererfahrung vereinfachen und den Stromverbrauch des Computergerätes verringern kann.
-
2 ist ein Blockdiagramm, das Computergerät210 als ein exemplarisches Computergerät veranschaulicht, das so konfiguriert ist, dass es eine grafische Tastatur mit integrierten Suchfunktionen darstellt, gemäß einem oder mehreren Aspekten der vorliegenden Offenbarung. Computergerät210 von2 wird nachstehend als ein Beispiel von Computergerät110 von1 beschrieben.2 veranschaulicht ein bestimmtes Beispiel von Computergerät210 , und viele andere Beispiele von Computergerät210 können in anderen Instanzen verwendet werden und eine Untergruppe der Komponenten beinhalten, die im exemplarischen Computergerät210 enthalten sind, oder sie können zusätzliche Komponenten beinhalten, die in2 nicht gezeigt werden. - Wie in dem Beispiel von
2 gezeigt, schließt Computergerät210 PSD212 , einen oder mehrere Prozessoren240 , eine oder mehrere Kommunikationseinheiten242 , eine oder mehrere Eingabekomponenten244 , eine oder mehrere Ausgabekomponenten246 und eine oder mehrere Speicherkomponenten248 ein. Die anwesenheitsabhängige Anzeige212 schließt Anzeigenkomponente202 und die anwesenheitsabhängige Eingabekomponente204 ein. Die Speicherkomponenten248 von Computergerät210 schließen UI-Modul220 , Tastaturmodul222 und ein oder mehrere Applikationsmodule224 ein. Tastaturmodul122 kann ein räumliches Modellmodul („SM”)226 , ein Sprachmodellmodul („LM”)228 und ein Suchmodul230 einschließen. Speichergeräte248 schließen auch die lokalen Modelle232A und die globalen Modelle232B (zusammen „Modelle232 ”) sowie maschinell erlernte Modelle233 ein (z. B. LSTM oder ein anderes maschinell erlerntes Modell). Kommunikationskanäle250 können jede der Komponenten212 ,240 ,242 ,244 ,246 und248 zwecks Kommunikation zwischen den Komponenten (physisch, kommunikativ und/oder operativ) miteinander verbinden. In einigen Beispielen können die Kommunikationskanäle250 einen Systembus, eine Netzwerkverbindung, eine prozessübergreifende Kommunikationsdatenstruktur oder jedes andere Verfahren zur Kommunikation von Daten beinhalten. - Eine oder mehrere Kommunikationseinheiten
242 von Computergerät210 können über ein oder mehrere verdrahtete und/oder drahtlose Netzwerke mit externen Geräten kommunizieren, indem sie Netzwerksignale auf dem einen oder den mehreren Netzwerken senden und/oder empfangen. Beispiele der Kommunikationseinheit242 können eine Netzwerkschnittstellenkarte (z. B. eine Ethernetkarte), einen optischen Sender-Empfänger, einen Funkfrequenz-Sender-Empfänger, einen GPS-Empfänger oder jede andere Art von Gerät beinhalten, das Informationen senden und/oder empfangen kann. Andere Beispiele von Kommunikationseinheiten242 können Kurzwellenradios, Mobilfunkdatenradios, drahtlose Netzwerkradios sowie Universal Serial Bus(USB)-Schnittstellen beinhalten. - Eine oder mehrere Eingabekomponenten
244 von Computergerät210 können Eingaben empfangen. Beispiele von Eingaben sind taktile, auditive und Videoeingaben. Eingabekomponenten242 des Computergeräts210 können in einem Beispiel eine anwesenheitsabhängige Anzeige (z. B. einen berührungsempfindlichen Bildschirm, PSD), eine Maus, Tastatur, ein Sprachreaktionssystem, eine Videokamera, ein Mikrofon oder jede andere Art von Gerät zum Erkennen von Eingaben von Mensch oder Maschine beinhalten. In einigen Beispielen können die Eingabekomponenten242 eine oder mehrere Sensorkomponenten mit einem oder mehreren Positionssensoren einschließen (GPS-Komponenten, Wi-Fi-Komponenten, zellulare Komponenten), einen oder mehrere Temperaturfühler, einen oder mehrere Bewegungsfühler (z. B. Beschleunigungsmesser, Gyroskope), einen oder mehrere Drucksensoren (z. B. Barometer), einen oder mehrere Umgebungslichtsensoren und einen oder mehrere andere Sensoren (z. B. Mikrofon, Kamera, Infrarotnäherungssensor, Hygrometer und dergleichen). Andere Sensoren können einen Pulssensor, Magnetometer, Glukosesensor, Hygrometersensor, olfaktorischen Sensor, Kompasssensor, Schrittzählsensor einschließen, um einige andere nicht-begrenzende Beispiele zu nennen. - Eine oder mehrere Ausgabekomponenten
246 von Computergerät110 können Ausgaben erzeugen. Beispiele von Ausgaben sind taktile, Audio- und Videoausgaben. Ausgabekomponenten246 von Computergerät210 können in einem Beispiel eine anwesenheitsabhängige Anzeige (PSD), eine Soundkarte, eine Videografikadapterkarte, einen Lautsprecher, einen Kathodenstrahlröhren(CRT)-Monitor, eine Flüssigkristallanzeige (LCD) oder jede andere Art von Gerät zum Erzeugen von Ausgaben an Mensch oder Maschine beinhalten. - PSD
212 von Computergerät210 kann PSD112 von Computergerät110 ähnlich sein und schließt Anzeigenkomponente202 und die anwesenheitsabhängige Eingabekomponente204 ein. Anzeigenkomponente202 kann ein Bildschirm sein, auf dem Informationen durch PSD212 angezeigt werden, und die anwesenheitsabhänge Eingabekomponente204 kann ein Objekt auf und/oder in der Nähe der Anzeigenkomponente202 ermitteln. Als einen exemplarischen Bereich kann eine anwesenheitsabhängige Anzeige204 ein Objekt, wie z. B. einen Finger oder einen Stift, ermitteln, der sich innerhalb von zwei Zoll oder weniger von Bildschirmkomponente202 befindet. Die anwesenheitsabhängige Eingabekomponente204 kann eine Position (z. B. eine [x, y]-Koordinate) der Anzeigenkomponente202 bestimmen, an der das Objekt ermittelt wurde. In einem anderen exemplarischen Bereich kann eine anwesenheitsabhängige Eingabekomponente204 ein Objekt sechs Zoll oder weniger von der Bildschirmkomponente202 entfernt ermitteln, wobei andere Bereiche ebenfalls möglich sind. Die anwesenheitsabhängige Eingabekomponente204 kann die Position der Bildschirmkomponente202 , die durch den Finger des Benutzers ausgewählt wird, unter Nutzung von kapazitiven, induktiven und/oder optischen Erkennungstechniken bestimmen. In einigen Beispielen stellt die anwesenheitsabhängige Eingabekomponente204 auch eine Ausgabe für einen Benutzer unter Nutzung von taktilen, Audio- oder Video-Stimuli bereit, wie in Bezug auf Anzeigenkomponenten202 beschrieben. In dem Beispiel von2 kann PSD212 eine Benutzerschnittstelle darstellen (wie etwa die grafische Benutzerschnittstelle114 von1 ). - Obwohl PSD
212 als eine interne Komponente von Computergerät210 veranschaulicht wird, kann sie auch eine externe Komponente darstellen, die einen Datenpfad mit Computergerät210 zum Übertragen und/oder Empfangen von Eingaben und Ausgaben teilt. In einem Beispiel repräsentiert PSD212 beispielsweise eine integrierte Komponente von Computergerät210 , die innerhalb der externen Verpackung von Computergerät210 angeordnet und physisch damit verbunden ist (z. B. einen Bildschirm eines Mobiltelefons). In einem weiteren Beispiel repräsentiert PSD212 eine externe Komponente von Computergerät210 , die außerhalb der Verpackung des tragbaren Computergeräts210 angeordnet und physisch davon getrennt ist (z. B. einen Monitor, einen Projektor usw., der einen verdrahteten und/oder drahtlosen Datenpfad mit Computergerät210 teilt). - PSD
212 von Computergerät210 kann die zweidimensionalen und/oder dreidimensionalen Gesten als Eingabe von einem Benutzer von Computergerät210 ermitteln. Zum Beispiel kann ein Sensor von PSD212 die Bewegung eines Benutzers (z. B. die Bewegung einer Hand, eines Arms, eines Stiftes, eines Stylus usw.) innerhalb eines Schwellenabstands des Sensors von PSD212 ermitteln. PSD212 kann eine zwei- oder dreidimensionale Vektordarstellung der Bewegung ermitteln und die Vektordarstellung auf eine Gesteneingabe beziehen (z. B. das Winken einer Hand, ein Kneifen, ein Klatschen, ein Strich eines Stifts usw.), die mehrere Dimensionen hat. Das heißt, dass PSD212 eine Multidimensions-Geste ermitteln kann, ohne dass der Benutzer diese Geste an oder in der Nähe eines Bildschirms oder einer Oberfläche machen muss, an der PSD212 die Informationen zur Anzeige ausgibt. Stattdessen kann PSD212 eine mehrdimensionale Geste ermitteln, die an oder nahe einem Sensor durchgeführt wird, der sich möglicherweise oder auch nicht nahe an dem Bildschirm oder der Oberfläche befindet, an der PSD212 Informationen zur Anzeige ausgibt. - Ein oder mehrere Prozessoren
240 können Funktionalität implementieren und/oder Anweisungen ausführen, die Computergerät210 zugeordnet werden. Beispiele der Prozessoren240 schließen Anwendungsprozessoren, Anzeigencontroller, Hilfsprozessoren, einen oder mehrere Sensor-Hubs ein, und alle sonstige Hardware, die so konfiguriert ist, dass sie als Prozessor, Verarbeitungseinheit oder Verarbeitungsgerät funktionieren. Die Module220 ,222 ,224 ,226 ,228 und230 können durch die Prozessoren240 betrieben werden, um verschiedene Handlungen, Tätigkeiten oder Funktionen von Computergerät210 auszuführen. Z. B. können die Prozessoren240 von Computergerät210 Anweisungen abrufen und ausführen, die auf den Speicherkomponenten248 gespeichert sind, welche die Prozessoren240 veranlassen, die Betriebsmodule220 ,222 ,224 ,226 ,228 und230 auszuführen. Die Anweisungen können, wenn sie durch die Prozessoren240 ausgeführt werden, das Computergerät210 dazu veranlassen, Informationen in den Speicherkomponenten248 zu speichern. - Eine oder mehrere Speicherkomponenten
248 in Computergerät210 können Informationen zum Verarbeiten während des Betriebs von Computergerät210 speichern (z. B. kann Computergerät210 Daten speichern, auf die die Module220 ,222 ,224 ,226 ,228 und230 und die Modelle232 und233 während der Ausführung auf Computergerät210 zugreifen). In einigen Beispielen ist Speicherkomponente248 ein temporärer Speicher, was bedeutet, dass der Hauptzweck von Speicherkomponente248 nicht die Langzeitspeicherung ist. Speicherkomponenten248 auf Computergerät210 können zur Kurzzeitspeicherung von Informationen als flüchtiger Speicher konfiguriert sein, und deshalb gespeicherte Inhalte nicht behalten, wenn sie ausgeschaltet werden. Beispiele von flüchtigen Speichern beinhalten Arbeitsspeicher (RAM), dynamische Arbeitsspeicher (DRAM), statische Arbeitsspeicher (SRAM) und andere Formen von flüchtigen Speichern, die auf dem Gebiet bekannt sind. - Speicherkomponenten
248 beinhalten in einigen Beispielen auch ein oder mehrere computerlesbare Speichermedien. Speicherkomponenten248 schließen in einigen Beispielen ein oder mehrere nicht-flüchtige computerlesbare Speichermedien ein. Speicherkomponenten248 können so konfiguriert sein, dass sie größere Mengen von Informationen speichern als flüchtige Speicher dies normalerweise tun. Die Speicherkomponenten248 können weiterhin zur Langzeitspeicherung von Informationen als nicht flüchtiger Speicherplatz und zum Halten von Informationen nach Stromeinschalt-/Ausschaltzyklen konfiguriert sein. Beispiele für nicht flüchtige Speichern beinhalten magnetische Festplatten, optische Festplatten, Disketten, Flashspeicher oder Formen von elektrisch programmierbaren Speichern (EPROM) oder von elektrisch überschreibbaren und programmierbaren (EEPROM) Speichern. Speicherkomponenten248 können Programmanweisungen und/oder Informationen (z. B. Daten) in Verbindung mit den Modellen232 und233 und den Modulen220 ,222 ,224 ,226 ,228 und230 speichern. Speicherkomponenten248 können einen Speicher einschließen, der so konfiguriert ist, dass er Daten oder andere Informationen speichert, die den Modellen232 und233 und den Modulen220 ,222 ,224 ,226 ,228 und230 zugeordnet werden. - UI-Modul
220 kann die gesamte Funktionalität von UI-Modul120 des Computergerätes110 von1 einschließen und kann ähnliche Tätigkeiten für die Verwaltung einer Benutzerschnittstelle (z. B. Benutzerschnittstelle114 ) ausführen wie UI-Modul120 , die Computergerät210 auf der anwesenheitsabhängigen Anzeige212 für die Handhabung von Benutzereingaben bereitstellt. Z. B. kann UI-Modul220 von Computergerät210 von Tastaturmodul222 ein Tastaturlayout anfordern (z. B. eine QWERTY-Tastatur in englischer Sprache usw.). UI-Modul220 kann eine Anfrage nach einem Tastaturlayout über die Kommunikationskanäle250 an Tastaturmodul222 übermitteln. Tastaturmodul222 kann die Anfrage empfangen und an UI-Modul220 mit den Daten antworten, die mit dem Tastaturmodul assoziiert sind. UI-Modul220 kann die Tastaturlayoutdaten über die Kommunikationskanäle250 empfangen und die Daten verwenden, um eine Benutzerschnittstelle zu erzeugen. UI-Modul220 kann über die Kommunikationskanäle250 einen Anzeigenbefehl und Daten übermitteln, um PSD212 zu veranlassen, die Benutzerschnittstelle auf PSD212 darzustellen. - In einigen Beispielen kann UI-Modul
220 einen Hinweis auf eine oder mehrere Benutzereingaben empfangen, die auf PSD212 ermittelt werden, und kann Informationen über die Benutzereingaben an Tastaturmodul222 ausgeben. Z. B. kann PSD212 eine Benutzereingabe ermitteln und Daten über die Benutzereingabe an UI-Modul220 senden. UI-Modul220 kann auf der Grundlage der ermittelten Eingabe ein oder mehrere Touch-Ereignisse erzeugen. Ein Touch-Ereignis kann Informationen einschließen, die die Benutzereingabe charakterisieren, wie eine Positionskomponente (z. B. [x, y]-Koordinaten) der Benutzereingabe, eine Zeitkomponente (z. B. wann die Benutzereingabe empfangen wurde), ein Stärkenkomponente (z. B. wieviel Druck durch die Benutzereingabe ausgeübt wurde) oder andere Daten (z. B. Geschwindigkeit, Beschleunigung, Richtung, Dichte usw.) über die Benutzereingabe. - Auf der Grundlage der Positionsinformationen der von den Benutzereingaben erzeugten Touch-Ereignisse kann UI-Modul
220 bestimmen, dass die ermittelte Benutzereingabe der grafischen Tastatur zuzuordnen ist. UI-Modul220 kann einen Hinweis auf das ein oder die mehreren Touch-Ereignisse an Tastaturmodul222 zur weiteren Auslegung schicken. Tastaturmodul22 kann basierend auf den Touch-Ereignissen, die von UI-Modul220 empfangen werden, bestimmen, dass die ermittelte Benutzereingabe eine anfängliche Auswahl einer oder mehrerer Tasten der grafischen Tastatur darstellt. - Die Anwendungsmodule
224 stellen alle verschiedenen einzelnen Anwendungen und Dienste dar, die auf Computergerät210 ausgeführt werden und auf die von ihm aus zugegriffen werden kann, die eventuell auf eine grafische Tastatur mit integrierten Suchfunktionen zurückgreifen. Ein Benutzer von Computergerät210 kann mit einer grafischen Benutzerschnittstelle interagieren, die mit einem oder mehreren Anwendungsmodulen224 assoziiert ist, um Computergerät210 zu veranlassen, eine Funktion auszuführen. Zahlreiche Beispiele für die Anwendungsmodule224 können bestehen und eine Fitnessanwendung, eine Kalenderanwendung, einen persönlichen Assistenten oder eine Vorhersagemaschine, eine Suchanwendung, eine Karten- oder Navigationsanwendung, eine Transportservice-Anwendung (z. B. Bus- oder Zug-Trackinganwendung), eine Soziale-Medien-Anwendung, eine Spielanwendung, eine E-Mail-Anwendung, ein Chat- oder Nachrichtenübermittlungsanwendung, eine Internet-Browseranwendung oder jegliche sonstigen Anwendungen einschließen, die auf Computergerät210 ausgeführt werden können. - Tastaturmodul
222 kann alle Funktionalitäten von Tastaturmodul122 von Computergerät110 von1 einschließen und kann ähnliche Tätigkeiten wie Tastaturmodul122 für die Bereitstellung einer grafischen Tastatur mit integrierten Suchfunktionen ausführen. Tastaturmodul222 kann verschiedene Untermodule, wie SM-Modul226 , LM-Modul228 und Suchmodul230 einschließen, die die Funktionalität von Tastaturmodul222 ausführen können. - SM-Modul
226 kann ein oder mehrere Touch-Ereignisse als Eingabe empfangen, und ein Zeichen oder eine Reihenfolge von Zeichen, die wahrscheinlich das eine oder die mehreren Touch-Ereignisse darstellen, zusammen mit einem gewissen Ausmaß an Zuverlässigkeit oder der Punktzahl des räumlichen Modells ausgeben, die darauf hinweisen, wie wahrscheinlich oder mit welcher Genauigkeit das eine oder die mehreren Zeichen die Touch-Ereignisse definieren. Das heißt, dass SM-Modul226 aus Touch-Ereignissen auf eine Auswahl einer oder mehrerer Tasten einer Tastatur schließen und auf der Grundlage der Auswahl der einen oder der mehrerer Tasten ein Zeichen oder eine Reihenfolge von Zeichen ausgeben kann. - Wenn Tastaturmodul
222 im Texteingabemodus funktioniert, kann LM-Modul228 ein Zeichen oder eine Reihenfolge von Zeichen als Eingabe empfangen, und ein oder mehrere Kandidatenzeichen, -wörter oder -sätze ausgeben, die LM-Modul228 aus einem Lexikon als möglichen Ersatz für eine Reihenfolge von Zeichen identifiziert, die LM-Modul228 als Eingabe für einen gegebenen Sprachkontext empfangt (z. B. ein Satz in einer schriftlichen Sprache). Tastaturmodul222 kann UI-Modul220 veranlassen, eines oder mehrere der Kandidatenwörter in den Vorschlagsbereichen118C von Benutzerschnittstelle114 darzustellen. - Das Lexikon von Computergerät
210 kann eine Wortliste in einem Wortschatz einer schriftlichen Sprache (z. B. ein Wörterbuch) einschließen. Zum Beispiel kann das Lexikon eine Datenbank mit Wörtern (z. B. Wörter in einem Standardwörterbuch und/oder zu einem Wörterbuch durch einen Benutzer oder durch Computergerät210 hinzugefügte Wörter) einschließen. LM-Modul228 kann ein Nachschlagen im Lexikon einer Zeichenfolge ausführen, um einen oder mehrere Buchstaben, Wörter und/oder Sätze zu identifizieren, die Teile oder alle Zeichen der Zeichenfolge einschließen. Z. B. kann LM-Modul228 eine Sprachmodellwahrscheinlichkeit oder einen Ähnlichkeitskoeffizienten (z. B. einen Jaccard-Ähnlichkeitskoeffizienten oder anderen Ähnlichkeitskoeffizienten) einem oder mehreren Kandidatenwörtern zuweisen, die sich in einem Lexikon von Computergerät210 befinden, die mindestens einige der gleichen Zeichen wie das eingegebene Zeichen oder die Folge von Zeichen einschließen. Die Sprachmodellwahrscheinlichkeit, die jedem von dem einen oder den mehreren Kandidatenwörtern zugewiesen wird, zeigt ein gewisses Ausmaß an Zuverlässigkeit oder einen Grad an Wahrscheinlichkeit an, dass das Kandidatenwort typischerweise nach, vor und/oder innerhalb einer Folge von Wörtern zu finden ist (z. B. einem Satz), der aus der durch die anwesenheitsabhängige Eingabekomponente204 ermittelten Texteingabe vor und/oder nach dem Empfangen der gegenwärtigen Folge von Zeichen ermittelt wird, die durch LM-Modul228 analysiert werden. In Reaktion auf die Bestimmung des einen oder mehrerer Kandidatenwörter kann LM-Modul228 das eine oder die mehreren Kandidatenwörter aus den Lexikondatenspeichern260A ausgeben, die die höchsten Ähnlichkeitskoeffizienten haben. - Suchmodul
230 des Tastaturmoduls222 kann integrierte Suchfunktionen für Tastaturmodul222 ausführen. Das heißt, dass Tastaturmodul222 , wenn es aufgerufen wird (z. B. manuell in Reaktion darauf, dass ein Benutzer von Computergerät210 das auswählbare Element218C von Benutzerschnittstelle114 auswählt, oder automatisch in Reaktion auf das Identifizieren einer suchbaren Entität oder eines Auslösesatzes aus der Texteingabe), im Suchmodus funktionieren kann, in dem Tastaturmodul222 es dem Computergerät210 ermöglicht, Suchfunktionen aus der grafischen Tastatur118A heraus auszuführen, wie etwa Vorhersagen und Anzeigen von Suchanfragen, die ein Benutzer von Computergerät210 für eine Chat-Konversation relevant finden kann. - Modelle
232 stellen mehrfache „Im-Gerät”-Modelle (z. B. lokal gespeicherte und ausgeführte) für die Nutzung durch Annotatoren oder Textanalysemaschinen von Suchmodul230 dar, um den Text zu parsen und zu analysieren, der auf der grafischen Tastatur116B eingegeben wird, um zu ermitteln, ob ein Benutzer etwas auf der grafischen Tastatur116B geschrieben hat, das suchbar ist. Modelle232 können als Eingabe Text empfangen, der von Benutzereingaben auf der grafischen Tastatur116B abgeleitet wird, und in Reaktion eine oder mehrere suchbare Entitäten oder Auslösesätze ausgeben, die mit Teilen der Texteingabe zusammenhängen können. In einigen Beispielen können die Modelle232 eine Punktzahl ausgeben, die einer suchbaren Entität oder einem Auslösesatz als ein Hinweis auf eine Wahrscheinlichkeit zugeordnet wird, dass die suchbare Entität oder der Auslösesatz mit der Texteingabe zusammenhängen. - Durch lokales Speichern und Ausführen der Modelle
232 , „im Gerät” (im Vergleich zu „außerhalb des Gerätes” wie andere traditionelle Suchsysteme, die auf externe Annotatoren zurückgreifen, die auf externen Computersystemen ausgeführt werden), kann Computergerät210 Suchanfragevorhersagen in Echtzeit oder beinahe Echtzeit ausführen, um es zu vermeiden, eine Textkonversation zu unterbrechen oder in einer Textkonversation zurückzubleiben, die ein Benutzer beim Schreiben auf der grafischen Tastatur116B vielleicht gerade führt. Das heißt, dass die Im-Gerät-Annotatoren, alleine oder in Kombination mit externen Annotatoren genutzt, es Computergerät210 ermöglichen können, eine Suchanfrage schneller zu bestimmen, da Computergerät210 keine Informationen mit einem entfernten Computergerät oder einem Cloud-Dienst austauschen muss, das/der die Vorhersagen handhabt. - Suchmodul
230 kann automatisch neue lokale Modelle232A in Reaktion auf Änderungen des Standorts des Computergerätes210 herunterladen. Z. B. kann Suchmodell230 Informationen von einer oder mehreren der Kommunikationseinheiten242 und/oder Eingabekomponenten232 (z. B. einem GPS-Empfänger) über den gegenwärtigen Standort von Computergerät210 empfangen. In Reaktion auf die Bestimmung, dass der aktuelle Standort nicht dem Standort entspricht, der dem lokalem Modell232A zugeordnet ist, kann Suchmodell230 bei einem entfernten Computersystem ein lokales Modell für den aktuellen Standort anfordern. Nach dem Empfangen des lokalen Modells für den aktuellen Standort von dem entfernten Computersystem kann Suchmodell230 das vorhergehende lokale Modell232A durch eine Kopie des lokalen Modells für den aktuellen Standort ersetzen. Das heißt, dass Suchmodul230 in einigen Beispielen in Reaktion auf die Bestimmung einer Änderung des aktuellen Standorts von Computergerät210 von einem ersten Standort zu einem zweiten Standort von einem entfernten Computersystem ein lokales Modell suchbarer Entitäten für den zweiten Standort beziehen und das frühere lokale Modell232A durch das lokale Modell für den zweiten Standort ersetzen kann. - Suchmodul
230 kann den Text parsen, der auf der grafischen Tastatur116B eingegeben wird, um suchbare Entitäten und Auslösesätze unter Nutzung sowohl des globalen Modells232B als auch des lokalen Modells232A zu ermitteln. Z. B. kann LM-Modul228 auf der Grundlage zumindest eines Teils des Textes, den das Tastaturmodul222 von einer Auswahl grafischer Tasten118 ableitet, ein oder mehrere Wörter aus einem Lexikon von LM-Modul228 bestimmen. Suchmodul230 kann das eine oder die mehreren Wörter in das lokale Modell232A eingehen, um eine oder mehrere lokale Suchentitäten zu bestimmen, von denen das lokale Modell232A bestimmt, dass sie für das eine oder die mehreren Wörter relevant sind. Suchmodul230 kann von dem lokalen Modell232A auch eine jeweilige Punktzahl beziehen, die jedem der einen oder mehreren lokalen Suchentitäten zugewiesen wird, die eine Wahrscheinlichkeit anzeigt, dass die Suchentität für das eine oder die mehreren Wörter relevant ist. Bei dem Identifizieren einer Suchentität für die Verwendung bei der Erzeugung einer Anfrage kann Suchmodul230 die jeweiligen den lokalen Suchentitäten zugeordneten Punktzahlen mit einem Schwellenwert vergleichen. In Reaktion auf die Bestimmung, dass die einer lokalen Suchentität zugeordnete Punktzahl den Schwellenwert erreicht, kann Suchmodul230 die lokale suchbare Entität als für das Erzeugen einer vorhergesagten Anfrage geeignet identifizieren. - Suchmodell
230 kann das eine oder die mehreren Wörter in das globale Modell232B eingeben, um eine oder mehrere globale Suchentitäten zu bestimmen, von denen das globale Modell232B bestimmt, dass sie für das eine oder die mehreren Wörter relevant sind. Suchmodul230 kann von dem globalen Modell232A auch eine entsprechende Punktzahl beziehen, die jedem der einen oder der mehreren globalen Suchentitäten zugewiesen ist, die eine Wahrscheinlichkeit anzeigt, dass die Suchentität für das eine oder die mehreren Wörter relevant ist. Bei dem Identifizieren einer Suchentität für die Verwendung bei der Erzeugung einer Anfrage kann Suchmodul230 die entsprechenden den globalen Suchentitäten zugeordneten Punktzahlen mit einem Schwellenwert vergleichen. In Reaktion auf die Bestimmung, dass die einer globalen Suchentität zugeordnete Punktzahl den Schwellenwert erreicht, kann Suchmodul230 die globale suchbare Entität als für das Erzeugen einer vorhergesagten Anfrage geeignet identifizieren. - Suchmodul
230 kann unter den identifizierten globalen und lokalen Suchentitäten eine oder mehrere Suchentitäten aus den lokalen und globalen Modellen232 mit der höchsten Punktzahl auswählen. Aus den Entitäten mit der höchsten Punktzahl kann Suchmodul230 eine Anfrage erzeugen. - Zusätzlich zum Identifizieren suchbarer Entitäten können die von Suchmodul
230 verwendeten lokalen und/oder globalen Modelle232 auch kuratierte Sätze für die Verwendung bei der Erzeugung von Suchanfragen vorschlagen. Suchmodell230 kann zumindest teilweise auf der Grundlage der suchbaren Entität oder dem in der suchbaren Entität enthaltenen Auslösesatz einen der suchbaren Entität zugeordneten kuratierten Satz bestimmen und aus dem kuratierten Satz die Suchanfrage erzeugen. Z. B. kann Tastaturmodul222 Text (z. B. den Satz „Um wieviel Uhr ist der Anpfiff”) in die lokalen und/oder globalen Modelle232 bereitstellen, der aus der Benutzereingabe auf der grafischen Tastatur116B bestimmt wird, und in Reaktion darauf, dass das lokale Modell232A den Text als Text erkennt, der Text eines zuvor festgelegten Auslösers enthält, als Ausgabe von Modell232 einen oder mehrere kuratierte Sätze empfangen, wie z. B. „Spielplan der lokalen Sportmannschaft”. - Maschinell erlernte Modelle
233 stellen „Im-Gerät” (z. B. lokal gespeicherte und ausgeführte) LSTM-Modelle zur Nutzung durch Annotatoren oder Textanalysemaschinen von Suchmodul230 dar, um die unter Nutzung der lokalen und/oder globalen Modelle232 vorgenommenen Bestimmungen weiter dahingehend zu verfeinern, ob ein Benutzer etwas auf der grafischen Tastatur116B geschrieben hat, das suchbar ist. Z. B. kann Suchmodul230 das eine oder die mehreren Wörter, die aus Benutzerinteraktionen mit der grafischen Tastatur116B abgeleitet werden, in die maschinell erlernten Modelle233 eingeben, um verfeinerte oder aktualisierte entsprechende Punktzahlen zu bestimmen, die jedem der einen oder der mehreren globalen Suchentitäten oder lokalen Suchentitäten zugewiesen werden, die durch die Modelle232 identifiziert werden. Auf diese Art können maschinell erlernte Modelle233 die Zuverlässigkeit von Computergerät220 in Bezug darauf verbessern, ob ein Benutzer Eingaben im Zusammenhang mit einer suchbaren Entität bereitstellt. - In einigen Beispielen können die Annotatoren von Suchmodell
230 (z. B. durch Zurückgreifen auf Maschinenlernmodelle233 ) des Weiteren auf einen aktuellen Kontext von Computergerät210 zurückgreifen, um eine suchbare Entität und/oder einen kuratierten Satz zur Verwendung beim Erzeugen einer vorhergesagten Anfrage zu bestimmen. Wie hier verwendet, spezifiziert ein aktueller Kontext die Eigenschaften der physischen und/oder virtuellen Umgebung eines Computergerätes, wie etwa Computergerät210 , und eines Benutzer des Computergerätes zu einer bestimmten Zeit. Zusätzlich wird der Begriff „Kontextinformationen” verwendet, um alle mögliche Informationen zu beschreiben, die durch ein Computergerät verwendet werden können, um die virtuellen und/oder physischen Umgebungseigenschaften zu definieren, die das Computergerät und der Benutzer des Computergerätes zu einer bestimmten Zeit erfahren können. - Beispiele für Kontextinformationen sind zahlreich und schließen unter anderem ein: Sensorinformationen, die von Sensoren (z. B. Positionsgeber, Beschleunigungsmesser, Gyroskope, Barometer, Umgebungslichtsensoren, Näherungssensoren, Mikrofone und andere Sensoren) von Computergerät
210 bezogen werden, Kommunikationsinformationen (z. B. textbasierte Kommunikationen, hörbare Kommunikationen, Videokommunikationen usw.), die von Kommunikationsmodulen von Computergerät210 gesendet und empfangen werden, und Anwendungsnutzungsinformationen, die Anwendungen zugeordnet sind, die auf Computergerät210 ausgeführt werden (z. B. Anwendungen zugeordnete Anwendungsdaten, Internetsuchverläufe, Textkommunikationen, Stimm- und Videokommunikationen, Kalenderinformationen, Soziale-Medien-Postings und verwandte Informationen usw.). Weitere Beispiele für Kontextinformationen schließen Signale und Informationen ein, die von übertragenden Geräten eingeholt werden, die zu Computergerät210 extern sind. - Maschinell erlerntes Modell
233 kann auf Kontextinformationen zurückgreifen, die einer elektronischen Konversation zugeordnete Informationen einschließen, die elektronische Kommunikation einschließt, die ein Benutzer verfassen kann, während der Benutzer Eingaben auf der grafischen Tastatur116B bereitstellt, sowie eine oder mehrere andere elektronische Kommunikationen, die von Computergerät220 gesendet oder empfangen wurden. Z. B. kann Tastaturmodul222 auf der Grundlage von Kontextinformationen (z. B. Text oder andere Informationen, die früheren Nachrichten zugeordnet werden, die von Computergerät220 gesendet wurden, und Text oder andere Informationen, die früheren Nachrichten zugeordnet werden, die von Computergerät220 empfangen wurden) und aus dem maschinell erlernten Modell233 eine Punktzahl ändern, die einer suchbaren Entität durch das globale Modell232B oder das lokale Modell232A zugewiesen wird. Nach dem Ändern oder dem Verfeinern der Punktzahl, die der suchbaren Entität zugewiesen wird und in Reaktion auf die Bestimmung, dass die der suchbaren Entität zugewiesene Punktzahl einen Schwellenwert erreicht, kann Tastaturmodul222 die suchbare Entität identifizieren. - Suchmodul
230 kann auf künstliche Intelligenz und Maschinenlerntechniken zurückgreifen, die von den maschinell erlernten Modellen233 ausgeführt werden, um mit einem gewissen Ausmaß an Zuverlässigkeit zu bestimmen, ob ein Benutzer über einen bestimmten kuratierten Satz für einen bestimmten Kontext schreibt. Z. B. können die Annotatoren von Suchmodul230 unter Nutzung einer oder mehrerer Regeln der maschinell erlernten Modelle233 darüber, was andere Personen in Chat-Konversationen in verschiedenen Kontexten eintippen, Regeln für das Ableiten kuratierter Sätze erzeugen, die auf Texteingabe und einem bestimmten Kontext basieren. Unter Nutzung der Regeln können die Annotatoren mit einem gewissen Ausmaß an Zuverlässigkeit vorhersagen, ob ein Benutzer über „Restaurants in meiner Nähe”, „Essen in der Nähe”, „Filme, die im nahe gelegenen Kino laufen”, „Wegbeschreibungen zu einem Ort” oder über einen anderen kuratierten Satz redet, der mit der Texteingabe zusammenhängen kann. Wenn das Ausmaß an Zuverlässigkeit (z. B. eine Wahrscheinlichkeit) einen Schwellenwert erreicht, kann Tastaturmodul122 den kuratierten Satz verwenden, wenn es eine Anfrage produziert. - Unter Nutzung der maschinell erlernten Modelle
233 kann Suchmodul230 auf den gegenwärtigen Kontext von Computergerät210 zurückgreifen, um bei der Bestimmung suchbarer Entitäten Unklarheiten zu beseitigen. Wenn z. B. der Text einer Chat-Konversation den Satz „Um wieviel Uhr ist der Anpfiff” einschließt, kann Suchmodul230 von dem globalen Modell232B die Namen einiger professioneller Fußballmannschaften beziehen, die planmäßig an diesem Tag spielen. Suchmodell230 kann auf der Grundlage des aktuellen Standorts von Computergerät210 und unter Nutzung der maschinell erlernten Modelle233 ableiten, dass der Benutzer sich wahrscheinlich auf die professionelle Mannschaft bezieht, die einem Standort zuzuordnen ist, der dem aktuellen Standort von Computergerät210 am nächsten ist, als die professionelle Mannschaft, auf die der Benutzer sich bezieht. - Zusätzlich zu dem Zurückgreifen auf den Text einer aktuellen Nachricht, die auf Computergerät
210 eingegeben wird, können maschinell erlernte Modelle233 es Suchmodul230 ermöglichen, auf frühere Wörter, Sätze usw. zuzugreifen, die früheren Nachrichten zugeordnet sind, die von Computergerät210 gesendet und/oder empfangen wurden, um eine Suchanfrage vorzuschlagen. Das heißt, dass Suchmodul230 unter Nutzung maschinell erlernter Modelle233 auf den Text einer gesamten Konversation mit zahlreichen Nachrichten zurückgreifen kann, die Computergerät210 gesendet und empfangen hat, um eine Suchanfrage zu bestimmen, die wahrscheinlich für eine aktuelle Konversation relevant ist. -
3 ist ein Blockdiagramm, das ein exemplarisches Computergerät veranschaulicht, das grafischen Inhalt zum Anzeigen auf einem entfernten Gerät in Übereinstimmung mit einer oder mehreren Techniken der vorliegenden Offenbarung ausgibt. Grafischer Inhalt kann im Allgemeinen beliebige visuelle Informationen beinhalten, die zum Anzeigen ausgegeben werden können, wie etwa Text, Bilder, eine Gruppe von bewegten Bildern, um einige Beispiele zu nennen. Das in3 gezeigte Beispiel schließt ein Computergerät310 , eine PSD312 , Kommunikationseinheit342 , Mobilgerät386 und die visuelle Anzeigenkomponente390 ein. In einigen Beispielen kann PSD312 eine anwesenheitsabhängige Anzeige sein, wie in1 –2 beschrieben. Obwohl in1 und2 exemplarisch als eigenständiges Computergerät110 dargestellt, kann ein Computergerät, wie etwa Computergerät310 , im Allgemeinen jede Komponente oder System sein, die/das einen Prozessor oder eine andere geeignete Computerumgebung zum Ausführen von Softwareanweisungen beinhaltet, und muss z. B. keine anwesenheitsabhängige Anzeige beinhalten. - Wie im Beispiel von
3 dargestellt, kann Computergerät310 ein Prozessor sein, der Funktionalität beinhaltet, wie in Bezug auf Prozessor240 in2 beschrieben. In solchen Beispielen kann das Computergerät310 operativ mit der anwesenheitsabhängigen Anzeige312 durch einen Kommunikationskanal362A verbunden sein, der ein Systembus oder andere geeignete Verbindung sein kann. Computergerät310 kann auch operativ mit der Kommunikationseinheit342 , die nachfolgend weiter beschrieben wird, durch einen Kommunikationskanal362B verbunden sein, der auch ein Systembus oder andere geeignete Verbindung sein kann. Obwohl in3 separat als ein Beispiel dargestellt, kann das Computergerät310 operativ mit der anwesenheitsabhängigen Anzeige312 und Kommunikationseinheit342 durch eine beliebige Anzahl an einem oder mehreren Kommunikationskanälen verbunden sein. - In anderen Beispielen, wie zuvor durch Computergerät
110 in1 –2 veranschaulicht, kann ein Computergerät sich auf ein tragbares oder mobiles Gerät wie Mobiltelefone (einschließlich Smartphones), Laptop-Computer usw. beziehen. In einigen Beispielen kann ein Computergerät ein Desktop-Computer, ein Tablet-Computer, eine Smart-TV-Plattform, eine Kamera, ein Personal Digital Assistant (PDA), ein Server oder Mainframes sein. - PSD
312 kann Anzeigenkomponente302 und die anwesenheitsabhängige Eingabekomponente304 einschließen. Anzeigenkomponente302 kann z. B. Daten vom Computergerät310 empfangen und den grafischen Inhalt anzeigen. In einigen Beispielen kann die anwesenheitsabhängige Anzeige304 eine oder mehrere Benutzereingaben (z. B. ununterbrochene Gesten, Multi-Touch-Gesten, Single-Touch-Gesten usw.) auf PDS312 unter Nutzung kapazitiver, induktiver und/oder optischer Erkennungstechniken bestimmen und Hinweise auf solche Benutzereingaben unter Nutzung von Kommunikationskanal362A an Computergerät310 senden. In einigen Beispielen kann die anwesenheitsabhängige Eingabekomponente304 physikalisch so oben auf der Anzeigenkomponente302 positioniert sein, dass, wenn ein Benutzer eine Eingabeeinheit über einem grafischen Element positioniert, das durch die Anzeigenkomponente302 angezeigt wird, die Position, an der sich die anwesenheitsabhängige Eingabekomponente304 befindet, der Position der Anzeigenkomponente302 entspricht, an der das grafische Element angezeigt wird. - Wie in
3 dargestellt, kann das Computergerät310 auch Kommunikationseinheit342 beinhalten und/oder operativ damit verbunden sein. Die Kommunikationseinheit342 kann die Funktionalität von Kommunikationseinheit242 beinhalten, wie in2 beschrieben. Beispiele von Kommunikationseinheit342 können eine Netzwerkschnittstellenkarte, eine Ethernetkarte, einen optischen Sender-Empfänger, einen Hochfrequenz-Sender-Empfänger oder jede andere Art von Komponente beinhalten, die Informationen senden und empfangen kann. Andere Beispiele solcher Kommunikationseinheiten können Bluetooth, 3G und WiFi-Funkgeräte, Universal-Serial-Bus-(USB)Schnittstellen usw. enthalten. Computergerät310 kann auch ein oder mehrere andere Geräte beinhalten und/oder operativ damit verbunden sein (z. B. Eingabegeräte, Ausgabekomponenten, Speichergeräte), die in3 zu Zwecken der Kürze und Veranschaulichung nicht dargestellt sind. -
3 veranschaulicht ebenfalls Mobilgerät386 und die visuelle Anzeigenkomponente390 . Mobilgerät386 und die visuelle Anzeigenkomponente390 können jeweils Computer- und Konnektivitätsfähigkeiten einschließen. Beispiele für Mobilgerät386 können E-Leser-Geräte, umwandelbare Notebook-Geräte, hybride Slate-Geräte usw. einschließen. Beispiele für die visuelle Anzeigenkomponente390 können andere Geräte wie Fernseher, Computermonitore usw. einschließen. In einigen Beispielen kann die visuelle Anzeigenkomponente390 eine Fahrzeug-Cockpitanzeige oder Navigationsanzeige sein (z. B. in einem Automobil, Flugzeug oder in einem anderen Fahrzeug). In einigen Beispielen kann die visuelle Anzeigenkomponente390 eine Heimautomationsanzeige oder eine andere Art Anzeige sein, die getrennt von Computergerät310 ist. - Wie in
3 dargestellt, kann das Mobilgerät386 eine anwesenheitsabhängige Anzeige388 beinhalten. Die visuelle Anzeigenkomponente390 kann eine anwesenheitsabhängige Anzeige392 beinhalten. Die anwesenheitsabhängigen Anzeigen388 ,392 können einen Teilsatz von Funktionalität oder die gesamte Funktionalität der anwesenheitsabhängigen Anzeige112 ,212 und/oder312 beinhalten, wie in dieser Offenbarung beschrieben. In einigen Beispielen können die anwesenheitsabhängigen Anzeigen388 ,392 zusätzliche Funktionalität beinhalten. In jedem Fall kann die anwesenheitsabhängige Anzeige392 z. B. Daten vom Computergerät310 empfangen und den grafischen Inhalt anzeigen. In einigen Beispielen kann die anwesenheitsabhängige Anzeige392 eine oder mehrere Benutzereingaben (z. B. ununterbrochene Gesten, Multi-Touch-Gesten, Single-Touch-Gesten usw.) am Projektorbildschirm unter Nutzung kapazitiver, induktiver und/oder optischer Erkennungstechniken ermitteln und Angaben solcher Benutzereingaben unter Nutzung einer oder mehrerer Kommunikationseinheiten an Computergerät310 senden. - Wie oben beschrieben, kann Computergerät
310 in einigen Beispielen grafischen Inhalt zum Anzeigen auf der anwesenheitsabhängigen Anzeige (PSD)312 ausgeben, die mit dem Computergerät310 durch einen Systembus oder einen anderen geeigneten Kommunikationskanal verbunden ist. Computergerät310 kann auch grafischen Inhalt zur Anzeige auf einem oder mehreren entfernten Geräten, wie z. B. Mobilgerät386 und visuelle Anzeigenkomponente390 , ausgeben. Computergerät310 kann beispielsweise eine oder mehrere Anweisungen zum Erzeugen und/oder Modifizieren von grafischem Inhalt in Übereinstimmung mit Techniken der vorliegenden Offenbarung ausführen. Computergerät310 kann die Daten, die den grafischen Inhalt beinhalten, an eine Kommunikationseinheit von Computergerät310 , wie etwa Kommunikationseinheit342 , ausgeben. Kommunikationseinheit342 kann die Daten an ein oder mehrere entfernte Geräte, wie z. B. Mobilgerät386 und/oder die visuelle Anzeigenkomponente390 , ausgeben. Auf diese Weise kann Computergerät310 den grafischen Inhalt zur Anzeige auf einem oder mehreren der entfernten Geräte ausgeben. In einigen Beispielen können eine oder mehrere der entfernten Komponenten den grafischen Inhalt an eine anwesenheitsabhängige Anzeige ausgeben, die in den jeweiligen entfernten Komponenten beinhaltet und/oder operativ damit verbunden ist. - In einigen Beispielen kann Computergerät
310 möglicherweise keinen grafischen Inhalt an die anwesenheitsabhängige Anzeige (PSD)312 ausgeben, die operativ mit Computergerät310 verbunden ist. In anderen Beispielen kann Computergerät310 grafischen Inhalt zur Anzeige sowohl auf der anwesenheitsabhängigen Anzeige312 , die mit Computergerät310 durch Kommunikationskanal362A operativ verbunden ist, als auch auf einem oder mehreren entfernten Geräten ausgeben. In diesen Beispielen kann der grafische Inhalt im Wesentlichen gleichzeitig auf jeder jeweiligen Komponente angezeigt werden. In einigen Beispielen kann grafischer Inhalt, der durch Computergerät310 erzeugt und zur Anzeige an die anwesenheitsabhängige Anzeige312 ausgegeben wurde, anders als die Anzeige von grafischem Inhalt sein, der zur Anzeige an eine oder mehrere entfernte Geräte ausgegeben wurde. - Das Computergerät
310 kann Daten unter Nutzung von geeigneten Kommunikationstechniken senden und empfangen. Das Computergerät310 kann beispielsweise unter Nutzung von Netzwerkverbindung373A operativ mit dem externen Netzwerk374 verbunden sein. Jedes der in3 veranschaulichten entfernten Geräte kann durch eine der jeweiligen Netzwerkverbindungen373B , oder373C operativ mit dem externen Netzwerk374 verbunden sein. Das externe Netzwerk374 kann Netzwerk-Hubs, Netzwerkschalter, Netzwerk-Router usw. beinhalten, die operativ miteinander verbunden sind, wodurch sie den Austausch von Informationen zwischen Computergerät310 und den in3 veranschaulichten entfernten Geräten ermöglichen. In einigen Beispielen können die Netzwerkverbindungen373A –373C Ethernet, ATM oder andere Netzwerkverbindungen sein. Solche Verbindungen können drahtlose und/oder verdrahtete Verbindungen sein. - In einigen Beispielen kann Computergerät
310 unter Nutzung der direkten Gerätekommunikation378 operativ mit einer oder mehreren der in3 beinhalteten entfernten Geräte verbunden sein. Die direkte Gerätekommunikation378 kann Kommunikationen beinhalten, durch die Computergerät310 Daten unter Nutzung von verdrahteter oder drahtloser Kommunikation direkt mit einem entfernten Gerät sendet und empfängt. Das heißt, dass in einigen Bespielen von direkter Gerätekommunikation378 Daten, die direkt durch Computergerät310 gesendet werden, möglicherweise nicht durch ein oder mehrere zusätzliche Geräte weitergeleitet werden, bevor sie in dem entfernten Gerät empfangen werden, und umgekehrt. Beispiele für die direkte Gerätekommunikation378 können Bluetooth, Nahbereichskommunikation, Universal Serial Bus, WiFi, Infrarot usw. einschließen. Ein oder mehrere der entfernten Geräte, die in3 veranschaulicht werden, können operativ mit Computergerät310 durch die Kommunikationsverbindungen376A –376C verbunden sein. In einigen Beispielen können die Kommunikationsverbindungen376A –376C Verbindungen unter Nutzung von Bluetooth, Nahbereichskommunikation, Universal Serial Bus, Infrarot usw. sein. Solche Verbindungen können drahtlose und/oder verdrahtete Verbindungen sein. - In Übereinstimmung mit Techniken der Offenbarung kann Computergerät
310 unter Nutzung des externen Netzwerks374 operativ mit der visuellen Anzeigenkomponente390 verbunden sein. Computergerät310 kann eine grafische Tastatur zur Anzeige auf PSD392 ausgeben. Computergerät310 kann zum Beispiel Daten an Kommunikationseinheit342 senden, die eine Darstellung der grafischen Tastatur beinhalten. Kommunikationseinheit342 kann die Daten, die die Darstellung der grafischen Tastatur beinhalten, unter Nutzung des externen Netzwerks374 an die visuelle Anzeigenkomponente390 senden. Die visuelle Anzeigenkomponente390 kann in Reaktion auf das Empfangen der Daten unter Nutzung des externen Netzes374 PSD392 veranlassen, die grafische Tastatur auszugeben. In Reaktion auf das Empfangen einer Benutzereingabe auf PSD392 , um eine oder mehrere Tasten der Tastatur auszuwählen, kann das visuelle Anzeigegerät130 unter Nutzung des externen Netzes374 einen Hinweis auf die Benutzereingabe an Computergerät310 senden. Kommunikationseinheit342 kann den Hinweis auf die Benutzereingabe empfangen und den Hinweis an Computergerät310 senden. - Computergerät
310 kann auf der Grundlage der Benutzereingabe eine Auswahl einer oder mehrerer Tasten bestimmen. Computergerät310 kann auf der Grundlage der Auswahl einer oder mehrerer Tasten ein oder mehrere Wörter bestimmen. Computergerät310 kann zumindest teilweise auf der Grundlage des einen oder der mehreren Wörter eine suchbare Entität identifizieren und kann auf der Grundlage der suchbaren Entität eine Suchanfrage erzeugen. Computergerät310 kann, zur Anzeige in der grafischen Tastatur, einen grafischen Hinweis ausgeben um anzuzeigen, dass das Computergerät die Suchanfrage erzeugt hat. Die Kommunikationseinheit342 kann die Darstellung der aktualisierten grafischen Benutzerschnittstelle empfangen und kann die Darstellung an die visuelle Anzeigenkomponente390 senden, sodass die visuelle Anzeigenkomponente390 PSD392 veranlassen kann, die aktualisierte grafische Tastatur auszugeben, einschließlich des grafischen Hinweises um anzuzeigen, dass das Computergerät die Suchanfrage erzeugt hat. - Die
4A –4E sind konzeptuelle Diagramme, die exemplarische grafische Benutzerschnittstellen eines exemplarischen Computergerätes veranschaulichen, das so konfiguriert ist, dass es eine grafische Tastatur mit integrierten Suchfunktionen darstellt, gemäß einem oder mehreren Aspekten der vorliegenden Offenbarung. Die4A –4E veranschaulichen jeweils exemplarische grafische Benutzerschnittstellen414A –414E (zusammen Benutzerschnittstellen414 ). Jedoch können viele andere Beispiele grafischer Benutzerschnittstellen in anderen Fällen verwendet werden. Jede der grafischen Benutzerschnittstellen414 kann einer grafischen Benutzerschnittstelle entsprechen, die jeweils durch Computergeräte110 oder210 von1 und2 angezeigt wird.4A –4E werden nachstehend innerhalb des Kontexts von Computergerät110 beschrieben. - Die grafischen Benutzerschnittstellen
414 schließen den Ausgabebereich416A , den Bearbeitungsbereich416C und die grafische Tastatur416B ein. Die grafische Tastatur416B schließt den Vorschlagsbereich418B , eine Vielzahl von Tasten418A und das Suchelement418C ein. - Wie in
4A gezeigt, kann Computergerät110 eine elektronische Kommunikation (z. B. eine Textnachricht) von einem Gerät empfangen, das einem Freund zugeordnet wird. Computergerät110 kann den Inhalt der elektronischen Kommunikation zur Anzeige im Ausgabebereich416A ausgeben. Der Inhalt der Nachricht kann den Satz einschließen „Möchtest Du heute Abend einen Film sehen oder etwas zusammen machen?” - Der Benutzer von Computergerät
110 kann mit der grafischen Tastatur416B interagieren, um eine Antwort auf die Nachricht von dem Freund zu verfassen. Wie in4B durch halb-transparente Kreise gezeigt, die verschiedene einzelne grafische Tasten418A überlagern (die von Computergerät110 angezeigt werden können oder nicht), kann der Benutzer auf eine oder mehrere Tasten418A klopfen oder gestikulieren, um die Antwort zu schreiben. Tastaturmodul122 von Computergerät110 kann einen Hinweis auf das Klopfen oder die Gesten an den Tasten418A empfangen und auf der Grundlage der Benutzereingabe Text bestimmen, den Computergerät110 formatiert und im Bearbeitungsbereich416C anzeigt. Z. B. kann Computergerät110 , während der Benutzer „sicher” schreibt, den Bearbeitungsbereich416C veranlassen, „sicher” anzuzeigen. Zusätzlich kann Tastaturmodul122 von Computergerät110 , während der Benutzer auf den grafischen Tasten418A schreibt, ein oder mehrere Kandidatenwörter vorhersagen, die auf der Benutzereingabe basieren, und eines oder mehrere der Kandidatenwörter im Vorschlagsbereich418B anzeigen. - Wie in
4C dargestellt, kann Tastaturmodul122 von Computergerät110 zusätzliche Hinweise auf Klopfen oder Gesten an den Tasten418A empfangen und damit fortfahren, auf der Grundlage der Benutzereingabe Text zu bestimmen, den Computergerät110 formatiert und im Bearbeitungsbereich416C anzeigt. Z. B. kann Tastaturmodul122 von Computergerät110 , während der Benutzer „läuft” schreibt, nachdem er „sicher, was” geschrieben hat, den Bearbeitungsbereich416C veranlassen, „läuft” anzuzeigen. Zusätzlich kann Tastaturmodul122 von Computergerät110 , während der Benutzer auf den grafischen Tasten418A schreibt, ein oder mehrere Kandidatenwörter vorhersagen, die auf der Benutzereingabe basieren, und eines oder mehrere der Kandidatenwörter im Vorschlagsbereich418B anzeigen. Z. B., wie in4C gezeigt, kann Computergerät110 „läuft”, „laufen” und „wird gezeigt” als vorgeschlagene Wörter, die aus einem Lexikon ausgewählt werden, im Vorschlagsbereich418B darstellen. In Reaktion auf das Ermitteln einer Auswahl eines vorgeschlagenen Wortes im Vorschlagsbereich418B und des Weiteren nach der Ermittlung einer Auswahl der Taste „Senden” der grafischen Tasten418A , kann Computergerät110 eine elektronische Nachricht verfassen, die den Text „sicher, was läuft denn?” einschließt, und ihn an das Computergerät senden, das dem Freund zugeordnet ist. Wie in4D gezeigt, kann Computergerät110 den Inhalt der elektronischen Nachricht zur Anzeige im Ausgabebereich416A ausgeben. - Nachdem der Benutzer das Schreiben des der elektronischen Kommunikation zugeordneten Textes beendet, kann Tastaturmodul
122 von Computergerät110 automatisch ableiten, dass der Benutzer das Schreiben beendet hat und in Reaktion eine oder mehrere Suchanfragen vorhersagen, die einen Benutzer von Computergerät110 für das Verfassen zusätzlichen Textes interessieren können, der der elektronischen Konversation zugeordnet ist, die der Benutzer mit dem Freund führt. Z. B. kann Tastaturmodul122 von Computergerät110 die Suchanfrage in Reaktion auf die Bestimmung eines Endes des Textes bestimmen, der einer elektronischen Kommunikation zugeordnet ist, indem es zumindest bestimmt, dass eine letzte Taste einer Auswahl mit einer oder mehreren Tasten418A einer Interpunktionstaste entspricht, die einem Interpunktionszeichen zugeordnet wird. Mit anderen Worten kann Tastaturmodul122 eine dem Text zugeordnete Suchanfrage in Reaktion auf die Bestimmung vorhersagen, dass ein Schlusszeichen im Text ein Interpunktionszeichen ist (z. B., ,?', ,.', ,!' oder ein anderes Interpunktionszeichen). In anderen Beispielen kann Tastaturmodul122 von Computergerät110 die Suchanfrage in Reaktion auf die Bestimmung eines Endes des Textes bestimmen, der einer elektronischen Kommunikation zugeordnet ist, indem es zumindest bestimmt, dass eine letzte Taste einer Auswahl einer oder mehreren Tasten einer Sendetaste der grafischen Tastatur zum Senden einer elektronischen Kommunikation entspricht418A . Mit anderen Worten kann Tastaturmodul122 eine Text zugeordnete Suchanfrage in Reaktion auf die Bestimmung vorhersagen, dass eine von dem Benutzer ausgewählte Endtaste die „Sendetaste” oder „Return-Taste” ist, die, wenn sie ausgewählt wird, auslöst, dass die Chat-Anwendung von Computergerät110 eine Nachricht sendet. - In Reaktion auf die Bestimmung eines Endes des Textes oder eines sonstigen Ableitens, dass der Benutzer das Verfassen zumindest eines Teils des Inhalts einer elektronischen Kommunikation beendet hat, kann Tastaturmodul
122 in den Suchmodus schalten und eine Suchanfrage vorhersagen, die für den Text relevant sein kann. In dem Beispiel von4D kann Tastaturmodul122 den Text „Sicher, was läuft?” analysieren und bestimmen, dass der Satz „was läuft?” ein Auslösesatz für einen Bezug zu Filmen ist und zwar spezifisch zu Filmen, die im Kino gezeigt werden. Tastaturmodul122 kann automatisch einen kuratierten Satz „Filme, die in meiner Nähe gezeigt werden” Text immer dann zuordnen, wenn Tastaturmodul122 den Auslösesatz „Was läuft?” identifiziert. Außerdem, um noch sicherer zu sein, dass der Benutzer sich auf „Filme” und nicht auf „Theaterstücke” oder andere Produktionen bezieht, kann Tastaturmodul122 den Inhalt des Textes im aktuellen Kontext von Computergerät110 analysieren. Mit anderen Worten schließt der aktuelle Kontext von Computergerät110 eine zuvor empfangene Nachricht ein, die den Text „Film” beinhaltet. Tastaturmodul122 kann eine Punktzahl erhöhen, die dem kuratierten Satz „Filme, die in meiner Nähe laufen” zugeordnet ist, in Reaktion auf die Bestimmung, dass frühere Nachrichten Bezug auf „Filme” hatten, und eine Anfrage erzeugen, um eine Suche nach „Filmen, die in meiner Nähe laufen” durchzuführen, um verschiedene Filme zu identifizieren, die in der Nähe eines aktuellen Standorts von Computergerät110 laufen. - In einigen Beispielen kann Computergerät
110 ein visuelles Format einer Suchtaste aus der Mehrzahl der Tasten abwandeln, um anzuzeigen, dass das Computergerät die Suchanfrage erzeugt hat. Z. B. hat Suchelement418C , wie in4D gezeigt, sich von einer Anzeige in einem ersten visuellen Format, in dem Suchelement4180 eine erste Farbenpalette hat, in ein zweites visuelles Format umgewandelt, in dem Suchelement418C mit einer zweiten Farbpalette angezeigt wird. In anderen Beispielen kann Computergerät110 Suchelement418C dazu veranlassen, zu blinken, sich zu bewegen, die Größe zu verändern oder auf eine andere Weise abgewandelt zu werden, um den Benutzer darauf hinzuweisen, dass Computergerät110 selber eine Suchanfrage auf der Grundlage einer Texteingabe auf der grafischen Tastatur416B erzeugt hat. - In einigen Beispielen kann Computergerät
110 anzeigen, dass das Computergerät die Suchanfrage erzeugt hat, indem es Text der erzeugten Anfrage ausgibt. Z. B. kann Computergerät110 , wie in4D gezeigt, den Text einer automatisch erzeugten Suchanfrage als Vorschlag im Vorschlagsbereich418B der grafischen Tastatur416B ausgeben. Wie in4D gezeigt, wird die Suchanfrage, wenn sie im Vorschlagsbereich418B angezeigt wird, in und unter linguistischen Kandidatenwörtern oder -sätzen angezeigt (z. B. nicht-suchbezogene Vorschläge). - In einigen Beispielen kann Computergerät
110 Text einer Suchanfrage in einem getrennten Suchbereich der grafischen Tastatur anzeigen. Der Suchbereich kann sich von dem Vorschlagsgebiet418B der grafischen Tastatur416B unterscheiden, in dem vorgeschlagene Wörter für die Texteingabe angezeigt werden. Z. B. kann sich der Suchbereich zwischen den grafischen Tasten418A und dem Vorschlagsgebiet418C befinden, oder der Suchbereich kann sich zwischen dem Bearbeitungsbereich416C oder dem Ausgabebereich416A und dem Vorschlagsbereich418B befinden. In einigen Beispielen kann Computergerät110 den Vorschlagsbereich418B sogar durch den Suchbereich ersetzen. - Nach Anzeige einer vorgeschlagenen Anfrage kann Computergerät
110 einen Hinweis auf eine Auswahl des grafischen Hinweises empfangen und in Reaktion auf das Empfangen des Hinweises auf die Auswahl des grafischen Hinweises kann Computergerät110 auf der Grundlage der Suchanfrage eine Suche nach Informationen durchführen. Z. B. kann Tastaturmodul122 , wie in4D gezeigt, einen Hinweis auf eine Benutzereingabe empfangen, der an einer Position ermittelt wird, an der die Suchanfrage „Filme, die in meiner Nähe laufen” im Vorschlagsbereich418B angezeigt wird. In Reaktion auf das Empfangen des Hinweises auf die Benutzereingabe kann Tastaturmodul122 eine Suche durchführen, die auf der ausgewählten Anfrage basiert. - Nach der Durchführung der Suche nach Informationen kann Computergerät
110 einen grafischen Hinweis auf ein oder mehrere bei der Suche erhaltene Suchergebnisse zur Anzeige ausgeben, indem es zumindest einen Teil der Vielzahl der Tasten418A der grafischen Tastatur416B ersetzt. Z. B. kann Tastaturmodul122 , wie in4E gezeigt, Suchergebnisse auf der Grundlage der ausgewählten Anfrage erhalten und die Suchergebnisse in einzelne Suchkarten418D formatieren, die Tastaturmodul122 Computergerät110 veranlasst, als Überlagerungen auf den grafischen Tasten418A anzuzeigen. In dem Beispiel von4D werden die Suchkarten418D in einem Karussellformat so dargestellt, dass ein Benutzer nach links oder rechts wischen kann, um sich zu einem folgenden Suchergebnis zu bewegen, oder er kann ein Suchergebnis vom Karussell in einen Bearbeitungsbereich416C oder in Ausgabebereich416A ziehen. In einigen Beispielen kann ein Benutzer des Weiteren einen Suchkasten zusätzlich zu den Suchkarten418D darstellen, damit ein Benutzer nachfolgende Suchen durchführen kann. Auf diese Art stellt Tastaturmodul122 auf bequeme Weise eine automatisch erzeugte Suchanfrage auf der grafischen Tastatur416B dar, die, nachdem sie ausgewählt wurde, Computergerät110 veranlasst, Suchergebnisse direkt in der grafischen Tastatur416B darzustellen. -
5 ist ein Flussdiagramm, das exemplarische Tätigkeiten eines Computergerätes veranschaulicht, das so konfiguriert ist, dass es eine grafische Tastatur mit integrierten Suchfunktionen darstellt, gemäß einem oder mehreren Aspekten der vorliegenden Offenbarung. Die Tätigkeiten von5 können durch einen oder mehrere Prozessoren eines Computergeräts, wie etwa der Computergeräte110 von1 oder des Computergeräts210 von2 , ausgeführt werden. Nur zu Veranschaulichungszwecken wird5 nachstehend im Kontext von Computergerät110 von1 beschrieben. - Wenn es in Betrieb ist, kann Computergerät
110 eine grafische Tastatur zur Anzeige (500 ) ausgeben. Z. B. kann eine Chat-Anwendung, die auf Computergerät110 ausgeführt wird, Tastaturmodul122 aufrufen (z. B. eine eigenständige Anwendung oder eine Funktion von Computergerät110 , die von der Chat-Anwendung getrennt ist), um die grafische Tastatur116B auf der PSD112 darzustellen. - Computergerät
110 kann auf der Grundlage eines Hinweises auf eine Auswahl von Tasten von der grafischen Tastatur Text einer elektronischen Kommunikation bestimmen (502 ). Z. B. kann Tastaturmodul122 Informationen über Touch-Eingaben empfangen, die an einer Position von PSD112 ermittelt werden, an der die grafischen Tasten118A der grafischen Tastatur116B angezeigt werden. Tastaturmodul122 kann Text (z. B. „Was soll das mit dem Haar des Präsidenten”) basierend auf den Informationen bestimmen. - Computergerät
110 kann eine suchbare Entität zumindest teilweise auf der Grundlage des Textes bestimmen (504 ). Z. B. kann ein globales Modell von Tastaturmodul122 aus dem Teil der Texteingabe „des Präsidenten” schließen, dass ein Benutzer sich über den Präsidenten der Vereinigten Staaten unterhält (z. B. „Barack Obama”). - Computergerät
110 kann auf der Grundlage der suchbaren Entität eine Suchanfrage erzeugen (506 ). Z. B. kann Tastaturmodul122 eine Suchanfrage für das Beziehen von Nachrichten über den Präsidenten der Vereinigten Staaten als Schlüsselwortsuche nach „Nachrichten über Barack Obama” erzeugen. - Computergerät
110 kann, zur Anzeige in der grafischen Tastatur, einen grafischen Hinweis ausgeben, um anzuzeigen, dass Computergerät110 die Suchanfrage erzeugt hat (508 ). Z. B. kann Tastaturmodul122 Computergerät110 veranlassen, Text der erzeugten Anfrage in der grafischen Tastatur116B darzustellen (z. B. als Vorschlag im Vorschlagsbereich118B ). -
6 ist ein Flussdiagramm, das exemplarische Tätigkeiten eines Computergerätes veranschaulicht, das so konfiguriert ist, dass es eine grafische Tastatur mit integrierten Suchfunktionen darstellt, gemäß einem oder mehreren Aspekten der vorliegenden Offenbarung. Die Tätigkeiten von6 können durch einen oder mehrere Prozessoren eines Computergeräts, wie z. B. der Computergeräte110 von1 oder des Computergeräts210 von2 ausgeführt werden. Nur zu Veranschaulichungszwecken wird6 nachstehend im Kontext von Computergerät210 von2 beschrieben. - Wenn sie in Betrieb ist, kann eine erste Anwendung, die auf Computergerät
210 ausgeführt wird, für das Empfangen von Texteingaben eine Tastaturanwendung aufrufen, die so konfiguriert ist, dass sie eine grafische Tastatur bereitstellt, die eine Vielzahl von Tasten umfasst (600 ). Z. B. kann Anwendungsmodul224 eine Chat-Anwendung sein, die eine Instant-Messaging- oder Chat-Anwendungs-Benutzerschnittstelle auf PSD212 für das Austauschen von elektronischen Nachrichten in elektronischen Konversationen zwischen einem Benutzer von Computergerät210 und Benutzern anderer Computergeräte bereitstellt. Als Teil der Chat-Anwendungs-Benutzerschnittstelle kann Anwendungsmodul224 Tastaturmodul222 auffordern, die grafische Tastatur116B bereitzustellen. Anwendungsmodul224 kann einen Befehl an Tastaturmodul222 senden, der Tastaturmodul222 aufruft (z. B. als Anwendung oder Dienst, die/der auf Computergerät210 ausgeführt wird, die/der sich von Anwendungsmodul224 unterscheidet). - Sobald sie aufgerufen wurde, kann die Tastaturanwendung auf der Grundlage eines Hinweises auf eine Auswahl einer oder mehrerer Tasten aus der Vielzahl der Tasten die Texteingabe bestimmen (
602 ). Z. B. kann Tastaturmodul222 , sobald es aufgerufen wurde, einen Hinweis auf eine Benutzereingabe an einer Position empfangen, an der eine oder mehrere Tasten118A auf PSD212 angezeigt werden, und kann von der Benutzereingabe Text ableiten. - Die Tastaturanwendung kann zumindest teilweise auf der Grundlage der Texteingabe eine suchbare Entität identifizieren (
604 ). Z. B. kann Tastaturmodul222 auf lokale und/oder globale Modelle232 und Maschinenlernmodell233 zurückgreifen, um eine oder mehrere suchbare Entitäten aus der Texteingabe sowie suchbare Entitäten aus früheren Texteingaben zu identifizieren, die durch Tastaturmodul222 ermittelt wurden. - Die Tastaturanwendung kann auf der Grundlage der suchbaren Entität eine Suchanfrage erzeugen (
606 ). Z. B. kann Tastaturmodul222 eine oder mehrere der aus der Texteingabe identifizierten suchbaren Entitäten in einem Suchanfragenformat formatieren und bündeln, das von einer Suchmaschine, die auf dem Computergerät210 oder entfernt von diesem ausgeführt wird, um Informationen über die Suchentitäten zu beziehen. - Die Tastaturanwendung kann zur Anzeige in der grafischen Tastatur einen grafischen Hinweis ausgeben, um anzuzeigen, dass die Tastaturanwendung die Suchanfrage erzeugt hat (
608 ). Z. B. kann Tastaturmodul222 nach dem Erzeugen der Suchanfrage PSD212 dazu veranlassen, die Anfrage (z. B. als Text) darzustellen, entweder durch Ersetzen von oder zusätzlich zu anderen Wortvorschlägen im Vorschlagsbereich118B . - Die Tastaturanwendung kann einen Hinweis auf eine Auswahl der Suchanfrage empfangen (
610 ). Z. B. kann Tastaturmodul222 Informationen von UI-Modul220 empfangen, die anzeigen, dass ein Benutzer von Computergerät220 (z. B. durch Gestikulieren) an oder in der Nähe einer Position von PSD212 , an der die Suchanfrage angezeigt wurde, ausgewählt hat, und kann von den Informationen ableiten, dass der Benutzer die Anfrage ausgewählt hat. - In Reaktion auf das Empfangen des Hinweises auf die Auswahl kann die Tastaturanwendung in einer Suchanwendung eine Suche einleiten, die auf der Suchanfrage basiert (
612 ). Zum Beispiel kann Tastaturmodul222 auf eine getrennte Suchanwendung zurückgreifen, um eine lokale Informationssuche nach im Computergerät220 gespeicherten Informationen oder eine Remote-Informationssuche (z. B. durch Hinzuziehen einer Suchanwendung, die auf einem entfernten Computergerät wie einem Server ausgeführt wird) nach Informationen, die entfernt vom Computergerät220 gespeichert sind, auf der Grundlage der Suchanfrage auszuführen. - Die Suchanwendung kann die Suche auf der Grundlage der Suchanfrage ausführen (
614 ). Z. B. kann die Suchanwendung, die durch Tastaturmodul222 hinzugezogen wird, die Suche auf der Grundlage der Suchanfrage als eine Im-Gerät-Suche nach Suchergebnissen ausführen, die mit Informationen assoziiert sind, die lokal auf Computergerät210 gespeichert sind. Die Suchanwendung, die durch Tastaturmodul222 hinzugezogen wird, kann die Suche auf der Grundlage der Suchanfrage als eine Remote-Suche nach Suchergebnissen ausführen, die mit Informationen assoziiert sind, die entfernt vom Computergerät210 gespeichert sind. Auf jeden Fall kann die Chat-Anwendung über die Tastaturanwendung und von der Suchanwendung ein oder mehrere Suchergebnisse empfangen, die durch die Ausführung der Suche bezogen werden. - Die Chat-Anwendung kann zur Anzeige anstatt zumindest eines Teils der grafischen Tastatur einen grafischen Hinweis auf ein oder mehrere Suchergebnisse ausgeben, die von der Tastaturanwendung bezogen werden, nachdem die Tastaturanwendung die Suche einleitet (
616 ). Z. B. kann Anwendungsmodul224 die bei der Suche bezogenen Suchergebnisse in einem Karussell mit Suchkarten bündeln, die Anwendungsmodul224 Tastaturmodul122 veranlassen kann, vor oder anstelle von einigen oder allen grafischen Tasten118A auf PSD212 zu überlagern oder darzustellen. - Die Chat-Anwendung kann einen Hinweis auf eine Auswahl eines Suchergebnisses empfangen (
618 ). Z. B. kann Anwendungsmodul224 Informationen vom UI-Modul220 empfangen, die anzeigen, dass ein Benutzer von Computergerät210 an oder nahe an einer Position gewischt oder ansonsten gestikuliert hat, an der eines der Suchergebnisse in der grafischen Tastatur116B auf PSD212 angezeigt wurde. - In Reaktion auf das Empfangen des Hinweises auf die Auswahl mindestens eines des einen oder der mehreren Suchergebnisse kann die Chat-Anwendung das Suchergebnis als eine Nachricht der elektronischen Konversation ausgeben (
620 ). Z. B. kann in Reaktion auf das Ermitteln der Benutzereingabe zur Auswahl eines Suchergebnisses Anwendungsmodul224 die dem Suchergebnis zugeordneten Informationen formatieren und die formatierten Informationen als Teil einer oder als gesamte Nachricht ausgeben, die Anwendungsmodul224 an ein anderes Computergerät als Teil einer elektronischen Konversation zwischen einem Benutzer von Computergerät210 und einem Benutzer des anderen Computergerätes ausgibt. - Die folgenden nummerierten Klauseln können einen oder mehrere Aspekte der Offenbarung veranschaulichen:
Klausel 1. Verfahren, umfassend: Ausgeben, durch eine Tastaturanwendung, die auf einem Computergerät ausgeführt wird, zur Anzeige einer grafischen Tastatur, die eine Vielzahl von Tasten umfasst; Bestimmen, durch die Tastaturanwendung, basierend auf einem Hinweis auf eine Auswahl einer oder mehrerer Tasten aus der Vielzahl der Tasten, von Text einer elektronischen Kommunikation; Identifizieren, durch die Tastaturanwendung, zumindest teilweise auf der Grundlage des Textes, einer suchbaren Entität; Erzeugen, durch die Tastaturanwendung, auf der Grundlage der suchbaren Entität, einer Suchanfrage; und Ausgeben, durch die Tastaturanwendung, zur Anzeige in der grafischen Tastatur, eines grafischen Hinweises, um anzuzeigen, dass die Tastaturanwendung die Suchanfrage erzeugt hat. - Klausel 2. Verfahren nach Klausel 1, wobei die Suchanfrage in Reaktion auf das Bestimmen eines Endes des Textes bestimmt wird, das Verfahren des Weiteren umfassend: Bestimmen, durch die Tastaturanwendung, des Endes des Textes in Reaktion auf das Bestimmen, dass eine letzte Taste der Auswahl einer oder mehrerer Tasten einer Interpunktionstaste entspricht, die einem Interpunktionszeichen zugeordnet ist.
- Klausel 3. Verfahren nach jedweder der Klauseln 1–2, wobei die Suchanfrage in Reaktion auf das Bestimmen eines Endes des Textes bestimmt wird, das Verfahren des Weiteren umfassend: Bestimmen, durch die Tastaturanwendung, des Endes des Textes in Reaktion auf das Bestimmen, dass eine letzte Tastatur der Auswahl einer oder mehrerer Tasten einer Sendetaste der grafischen Tastatur entspricht, um die elektronische Kommunikation zu senden.
- Klausel 4. Verfahren nach jedweder der Klauseln 1–3, wobei das Ausgeben des grafischen Hinweises das Abändern eines visuellen Formats einer Suchtaste aus der Vielzahl der Tasten umfasst, um anzuzeigen, dass das Computergerät die Suchanfrage erzeugt hat.
- Klausel 5. Verfahren nach jedweder der Klauseln 1–4, wobei der grafische Hinweis Text der Suchanfrage enthält und das Ausgeben des grafischen Hinweises das Ausgeben des Textes der Suchanfrage als Vorschlag in einem Vorschlagsbereich der grafischen Tastatur umfasst.
- Klausel 6. Verfahren nach jedweder der Klauseln 1–5, wobei der grafische Hinweis Text der Suchanfrage enthält und das Ausgeben des grafischen Hinweises das Ausgeben, zur Anzeige im Suchbereich der grafischen Tastatur, des Textes der Suchanfrage als eine vorgeschlagene Anfrage zur Suche umfasst, wobei der Suchbereich sich von dem Vorschlagsbereich der grafischen Tastatur unterscheidet, in dem vorgeschlagene Wörter für Texteingaben angezeigt werden.
- Klausel 7. Verfahren nach Klausel 6, wobei das Ausgeben des grafischen Hinweises das Ersetzen, durch das Computergerät, des Vorschlagsbereichs durch den Suchbereich umfasst.
- Klausel 8. Verfahren nach jedweder der Klauseln 1–7, wobei das Identifizieren der suchbaren Entität umfasst: Bestimmen, durch die Tastaturanwendung, auf der Grundlage zumindest eines Teils des Textes, eines oder mehrerer Wörter; Bestimmen, durch die Tastaturanwendung, auf der Grundlage des einen oder der mehreren Wörter und aus einem lokalen Modell suchbarer Entitäten, einer der suchbaren Entität zugewiesenen Punktzahl, die eine Wahrscheinlichkeit anzeigt, dass die suchbare Entität für das eine oder die mehreren Wörter relevant ist, wobei das lokale Modell dem aktuellen Standort des Computergerätes zugeordnet ist; in Reaktion auf das Bestimmen, dass die Punktzahl, die der suchbaren Entität zugewiesen ist, einen Schwellenwert erreicht, Identifizieren, durch die Tastaturanwendung, der suchbaren Entität.
- Klausel 9. Verfahren nach Klausel 8, wobei das lokale Modell ein erstes lokales Modell ist, das Verfahren des Weiteren umfassend: In Reaktion auf das Bestimmen einer Veränderung bei dem aktuellen Standort des Computergerätes von einem ersten Standort zu einem zweiten Standort: das Beziehen, durch die Tastaturanwendung, von einem entfernten Computersystem, eines zweiten Modells suchbarer Entitäten, wobei das zweite Modell dem zweiten Standort zugeordnet ist; und Ersetzen, durch die Tastaturanwendung, des ersten lokalen Modells durch das zweite Modell.
- Klausel 10. Verfahren nach jedweder der Klauseln 1–9, wobei das Identifizieren der suchbaren Entität umfasst: Bestimmen, durch die Tastaturanwendung, auf der Grundlage zumindest eines Teils des Textes, eines oder mehrerer Wörter; Bestimmen, durch die Tastaturanwendung, auf der Grundlage des einen oder der mehreren Wörter und aus einem globalen Modell suchbarer Entitäten, einer der suchbaren Entität zugewiesenen Punktzahl, die eine Wahrscheinlichkeit anzeigt, dass die suchbare Entität für das eine oder die mehreren Wörter relevant ist, wobei das globale Modell einer geografischen Region zugeordnet wird, die jeweilige Standorte enthält, die zwei oder mehr Modellen suchbarer Entitäten zugeordnet sind; und in Reaktion auf das Bestimmen, dass die Punktzahl, die der suchbaren Entität zugewiesen wird, einen Schwellenwert erreicht, Identifizieren, durch das Computergerät, der suchbaren Entität.
- Klausel 11. Verfahren nach jedweder der Klauseln 1–10, wobei das Identifizieren der suchbaren Entität umfasst: Bestimmen, durch die Tastaturanwendung, auf der Grundlage zumindest eines Teils des Textes, eines oder mehrerer Wörter; Bestimmen, durch die Tastaturanwendung, auf der Grundlage des einen oder der mehreren Wörter und aus mindestens einem von einem globalen Modell suchbarer Entitäten oder einem lokalen Modell suchbarer Entitäten, einer der suchbaren Entität zugewiesenen Punktzahl, die eine Wahrscheinlichkeit anzeigt, dass die suchbare Entität für das eine oder die mehreren Wörter relevant ist, wobei das globale Modell einer geografischen Region zugeordnet wird, die jeweilige Standorte enthält, die zwei verschiedenen lokalen Modellen mit suchbaren Entitäten einschließlich des lokalen Modells suchbarer Entitäten zugeordnet sind; Abändern, durch die Tastaturanwendung, auf der Grundlage der Kontextinformationen und aus einem maschinell erlernten Modell, der der suchbaren Entität zugewiesenen Punktzahl; und nach dem Abändern der der suchbaren Entität zugewiesenen Punktzahl und in Reaktion auf das Bestimmen, dass die der suchbaren Entität zugewiesene Punktzahl einen Schwellenwert erreicht, Identifizieren, durch die Tastaturanwendung, der suchbaren Entität.
- Klausel 12. Verfahren nach Klausel 11, wobei die Kontextinformationen Informationen einschließen, die einer elektronischen Konversation zugeordnet sind, die die elektronische Kommunikation und eine oder mehr andere elektronische Kommunikationen einschließt, die von dem Computergerät gesendet oder empfangen wurden.
- Klausel 13. Verfahren nach jedweder der Klauseln 1–12, wobei das Erzeugen der Suchanfrage umfasst: Bestimmen, durch die Tastaturanwendung, zumindest teilweise auf der Grundlage der suchbaren Entität, eines kuratierten Satzes, der der suchbaren Entität zugeordnet ist; und Erzeugen, durch die Tastaturanwendung, aus dem kuratierten Satz, der Suchanfrage, wobei die suchbare Entität einen Auslösesatz umfasst und wobei der der suchbaren Entität zugeordnete kuratierte Satz des Weiteren zumindest teilweise auf der Grundlage eines aktuellen Kontextes des Computergerätes bestimmt wird.
- Klausel 14. Mobilgerät, umfassend: eine anwesenheitsabhängige Anzeigenkomponente; mindestens einen Prozessor; und einen Speicher, der die Anweisungen speichert, die einer Tastaturanwendung zugeordnet sind, die, wenn sie ausgeführt werden, den mindestens einen Prozessor zu Folgendem veranlassen: Ausgeben, zur Anzeige auf der anwesenheitsabhängigen Anzeigenkomponente, einer grafischen Tastatur, eine Vielzahl von Tasten umfassend; Bestimmen, auf der Grundlage eines Hinweises auf eine Auswahl einer oder mehrerer Tasten aus der Vielzahl der Tasten, die auf der anwesenheitsabhängigen Anzeigenkomponente ermittelt werden, von Text einer elektronischen Kommunikation; Identifizieren, zumindest teilweise auf der Grundlage des Textes, eines Auslösesatzes; Erzeugen, auf der Grundlage des Auslösesatzes, einer Suchanfrage; und Ausgeben, zur Anzeige auf der anwesenheitsabhängigen Anzeigenkomponente und in der grafischen Tastatur, eines grafische Hinweises, um anzuzeigen, dass das Computergerät die Suchanfrage erzeugt hat.
- Klausel 15. Verfahren, umfassend: Aufrufen, durch eine erste Anwendung, die auf einem Computergerät ausgeführt wird, einer Tastaturanwendung für das Empfangen von Texteingaben, die so konfiguriert ist, dass sie eine grafische Tastatur mit einer Vielzahl von Tasten bereitstellt; Bestimmen, durch die Tastaturanwendung, auf der Grundlage eines Hinweises auf eine Auswahl einer oder mehrerer Tasten aus der Vielzahl von Tasten, der Texteingabe; Identifizieren, durch die Tastaturanwendung, zumindest teilweise auf der Grundlage der Texteingabe, einer suchbaren Entität; Erzeugen, durch die Tastaturanwendung auf der Grundlage der suchbaren Entität, einer Suchanfrage;
Ausgeben, durch die Tastaturanwendung, zur Anzeige in der grafischen Tastatur, eines grafischen Hinweises, um anzuzeigen, dass die Tastaturanwendung die Suchanfrage erzeugt hat; und in Reaktion auf das Empfangen, durch die Tastaturanwendung, eines Hinweises auf eine Auswahl der Suchanfrage, Einleiten, durch die Tastaturanwendung in einer Suchanwendung, einer Suche auf der Grundlage der Suchanfrage. - Klausel 16. Verfahren nach Klausel 15, wobei die Suchanwendung auf dem Computergerät ausgeführt wird, das Verfahren des Weiteren umfassend: Ausführen, durch die Suchanwendung, der Suche auf der Grundlage der Suchanfrage als eine Im-Gerät-Suche nach Suchergebnissen, die Informationen zugeordnet sind, die lokal im Computergerät gespeichert sind.
- Klausel 17. Verfahren nach jedweder der Klauseln 15–16, wobei die Suchanwendung auf einem entfernten Computergerät ausgeführt wird, das Verfahren des Weiteren umfassend: Ausführen, durch die Suchanwendung, der Suche auf der Grundlage der Suchanfrage als eine Remote-Suche nach Suchergebnissen, die Informationen zugeordnet sind, die entfernt vom Computergerät gespeichert sind.
- Klausel 18. Verfahren nach jedweder der Klauseln 15–17, wobei die erste Anwendung eine Chat-Anwendung ist, und die Texteingabe einer elektronischen Konversation in der Chat-Anwendung zugeordnet ist.
- Klausel 19. Verfahren nach Klausel 18, des Weiteren umfassend: Ausgeben, durch die erste Anwendung, zur Anzeige anstatt zumindest eines Teils der Vielzahl von Tasten, eines grafischen Hinweises auf ein oder mehrere Suchergebnisse, die von der Tastaturanwendung bezogen werden, nachdem die Tastaturanwendung die Suche einleitet.
- Klausel 20. Verfahren nach Klausel 19, des Weiteren umfassend: In Reaktion auf das Empfangen, durch die erste Anwendung, eines Hinweises auf eine Auswahl mindestens eines des einen oder der mehreren Suchergebnisse, Ausgeben, durch die Chat-Anwendung des mindestens einen des einen oder der mehreren Suchergebnisse als eine Nachricht der elektronischen Konversation.
- Klausel 21. System, Mittel zum Ausführen jeglicher der Verfahren nach den Klauseln 1–13 umfassend.
- Klausel 22. Computergerät, Mittel zum Ausführen jeglicher der Verfahren nach den Klauseln 1–13 umfassend.
- Klausel 22. Computerlesbares Speichermedium, Anweisungen umfassend, die bei Ausführung durch mindestens einen Prozessor eines Computergeräts den mindestens einen Prozessor zum Ausführen jeglicher der Verfahren nach den Klauseln 1–13 veranlassen.
- In einem oder mehreren Beispielen können die beschriebenen Funktionen in Hardware, Software, Firmware oder in jedweder Kombination davon implementiert werden. Wenn sie in Software implementiert werden, können die Funktionen als eine oder mehrere Anweisungen oder Code auf einem computerlesbaren Medium gespeichert oder darüber übertragen und durch eine hardware-basierte Verarbeitungseinheit ausgeführt werden. Computerlesbare Medien können computerlesbare Speichermedien einschließen, die einem greifbaren Medium, wie Datenspeichermedien oder Kommunikationsmedien einschließlich aller Medien entsprechen, die die Übertragung eines Computerprogramms von einem an einen anderen Ort, z. B. gemäß eines Kommunikationsprotokolls, ermöglichen. Auf diese Weise können die computerlesbaren Medien im Allgemeinen (1) greifbaren computerlesbaren Speichermedien, die nicht-flüchtig sind, oder (2) einem Kommunikationsmedium wie einem Signal oder einer Trägerschwingung entsprechen. Datenspeichermedien können alle verfügbaren Medien sein, auf die durch einen oder mehrere Computer oder einen oder mehrere Prozessoren zugegriffen werden kann, um Anweisungen, Code- und/oder Datenstrukturen für die Implementierung der Techniken abzurufen, die in dieser Offenbarung beschrieben werden. Ein Computerprogrammprodukt kann ein computerlesbares Medium einschließen.
- Als Beispiel und nicht als Beschränkung können solche computerlesbaren Speichermedien RAM, ROM, EEPROM, CD-ROM oder andere optische Plattenspeicher, magnetische Plattenspeicher oder andere magnetische Speichergeräte, Flash-Speicher oder jegliches andere Speichermedium umfassen, das verwendet werden kann, um gewünschten Programmcode in Form von Anweisungen oder Datenstrukturen zu speichern und auf das durch einen Computer zugegriffen werden kann. Auch ist jegliche Verbindung im eigentlichen Sinn ein computerlesbares Medium. Wenn z. B. Anweisungen von einer Webseite, einem Server oder einer anderen entfernten Quelle mit einem Koaxialkabel, Glasfaserkabel, einem verdrillten Doppelkabel, einem digitalen Teilnehmeranschluss (DSL) oder drahtlosen Technologien wie Infrarot, Funk und Mikrowelle übertragen werden, dann sind das Koaxialkabel, Glasfaserkabel, das verdrillte Doppelkabel, DSL oder drahtlose Technologien wie Infrarot, Funk und Mikrowelle in der Definition von Medium eingeschlossen. Es sollte jedoch verstanden werden, dass computerlesbare Speichermedien und Datenspeichermedien keine Anschlüsse, Trägerschwingungen, Signale oder andere flüchtige Medien einschließen, sondern vielmehr auf die nicht-vorübergehenden, greifbaren Speichermedien verweisen. Disks und Disketten, wie verwendet, schließen CDs, Laserplatten, optische Platten, DVDs, Disketten und Blu-Ray-Disks ein, bei denen die Platten normalerweise Daten magnetisch reproduzieren, wobei andere Platten Daten optisch mit Laser reproduzieren. Kombinationen der Vorstehenden sollten ebenfalls in den Umfang der computerlesbaren Medien aufgenommen werden.
- Anweisungen können durch einen oder mehrere Prozessoren ausgeführt werden, wie etwa digitale Signalprozessoren (DSPs), Universalmikroprozessoren, anwendungsorientierte integrierte Schaltungen (ASICs), feldprogrammierbare Gate-Arrays (FPGAs) oder andere gleichwertige integrierte oder diskrete Logikschaltungen. Dementsprechend kann der Begriff „Prozessor”, wie verwendet, sich auf jegliche der vorstehenden Struktur oder jegliche andere Struktur, die für Implementierung der hier beschriebenen Techniken geeignet ist, beziehen. Außerdem kann in einigen Aspekten die hier beschriebene Funktionalität in dedizierten Hardware- und/oder Software-Modulen bereitgestellt werden. Auch könnten die Techniken vollständig in einem oder mehreren Schaltkreisen oder Logikelementen implementiert werden.
- Die Techniken dieser Offenbarung können in einem breiten Spektrum an Geräten oder Apparaten, einschließlich einem Mobiltelefon, einer integrierten Schaltung (IS) oder einem Satz von IS (z. B. einem Chipsatz) implementiert werden. Verschiedene Komponenten, Module oder Einheiten werden in dieser Offenbarung beschrieben, um Funktionsaspekte der Geräte hervorzuheben, die konfiguriert sind, um die offenbarten Techniken auszuführen, aber nicht notwendigerweise eine Realisierung durch unterschiedliche Hardware-Einheiten erfordern. Vielmehr, wie vorstehend beschrieben, können verschiedene Einheiten in einer Hardware-Einheit kombiniert werden oder von einer Sammlung interoperativer Hardware-Einheiten bereitgestellt werden, einschließlich einem oder mehreren Prozessoren, wie vorstehend beschrieben, in Verbindung mit geeigneter Software und/oder Firmware.
- Es wurden unterschiedliche Beispiele beschrieben. Diese und andere Beispiele liegen innerhalb des Umfangs der folgenden Ansprüche.
Claims (20)
- Verfahren, umfassend: Ausgeben, durch eine Tastaturanwendung, die auf einem Computergerät ausgeführt wird, einer grafischen Tastatur, die eine Vielzahl von Tasten umfasst, zur Anzeige; Bestimmen, durch die Tastaturanwendung, auf der Grundlage eines Hinweises auf eine Auswahl einer oder mehrerer Tasten aus der Vielzahl der Tasten, von Text einer elektronischen Kommunikation; Identifizieren, durch die Tastaturanwendung, zumindest teilweise auf der Grundlage des Textes, einer suchbaren Entität; Erzeugen, durch die Tastaturanwendung, auf der Grundlage der suchbaren Entität, einer Suchanfrage; und Ausgeben, durch die Tastaturanwendung, zur Anzeige auf der grafischen Tastatur, eines grafischen Hinweises, um anzuzeigen, dass die Tastaturanwendung die Suchanfrage erzeugt hat.
- Verfahren nach Anspruch 1, wobei die Suchanfrage in Reaktion auf das Bestimmen eines Endes des Textes bestimmt wird, das Verfahren des Weiteren umfassend: Bestimmen, durch die Tastaturanwendung, des Endes des Textes in Reaktion auf das Bestimmen, dass eine letzte Taste der Auswahl einer oder mehrerer Tasten einer Interpunktionstaste entspricht, die einem Interpunktionszeichen zugeordnet ist.
- Verfahren nach jedwedem der Ansprüche 1–2, wobei die Suchanfrage in Reaktion auf das Bestimmen eines Endes des Textes bestimmt wird, das Verfahren des Weiteren umfassend: Bestimmen, durch die Tastaturanwendung, des Endes des Textes in Reaktion auf das Bestimmen, dass eine letzte Taste der Auswahl einer oder mehrerer Tasten einer Sendetaste der grafischen Tastatur entspricht, um die elektronische Kommunikation zu senden.
- Verfahren nach jedwedem der Ansprüche 1–3, wobei das Ausgeben des grafischen Hinweises das Abändern eines visuellen Formats einer Suchtaste aus der Vielzahl der Tasten umfasst, um anzuzeigen, dass das Computergerät die Suchanfrage erzeugt hat.
- Verfahren nach jedwedem der Ansprüche 1–4, wobei der grafische Hinweis Text der Suchanfrage enthält, und das Ausgeben des grafischen Hinweises das Ausgeben des Textes der Suchanfrage als Vorschlag in einem Vorschlagsbereich der grafischen Tastatur umfasst.
- Verfahren nach jedwedem der Ansprüche 1–5, wobei der grafische Hinweis Text der Suchanfrage enthält und das Ausgeben des grafischen Hinweises das Ausgeben, zur Anzeige in einem Suchbereich der grafischen Tastatur, des Textes der Suchanfrage als eine vorgeschlagene Anfrage zur Suche umfasst, wobei der Suchbereich sich von einem Vorschlagsbereich der grafischen Tastatur unterscheidet, in dem vorgeschlagene Wörter für Texteingaben angezeigt werden.
- Verfahren nach Anspruch 6, wobei das Ausgeben des grafischen Hinweises das Ersetzen, durch das Computergerät, des Vorschlagsbereich durch den Suchbereich umfasst.
- Verfahren nach jedwedem der Ansprüche 1–7, wobei das Identifizieren der suchbaren Entität umfasst: Bestimmen, durch die Tastaturanwendung, auf der Grundlage zumindest eines Teils des Textes, eines oder mehrerer Wörter; Bestimmen, durch die Tastaturanwendung, auf der Grundlage des einen oder der mehreren Wörter und aus einem lokalen Modell suchbarer Entitäten, einer der suchbaren Entität zugewiesenen Punktzahl, die eine Wahrscheinlichkeit anzeigt, dass die suchbare Entität für das eine oder die mehreren Wörter relevant ist, wobei das lokale Modell einem aktuellen Standort des Computergerätes zugeordnet ist; in Reaktion auf das Bestimmen, dass die der suchbaren Entität zugewiesene Punktzahl einen Schwellenwert erreicht, Identifizieren, durch die Tastaturanwendung, der suchbaren Entität.
- Verfahren nach Anspruch 8, wobei das lokale Modell ein erstes lokales Modell ist, das Verfahren des Weiteren umfassend: in Reaktion auf das Bestimmen einer Veränderung bei dem aktuellen Standort des Computergerätes von einem ersten Standort zu einem zweiten Standort: Beziehen, durch die Tastaturanwendung, von einem entfernten Computersystem, eines zweiten Modells suchbarer Entitäten, wobei das zweite Modell dem zweiten Standort zugeordnet ist; und Ersetzen, durch die Tastaturanwendung, des ersten lokalen Modells durch das zweite Modell.
- Verfahren nach jedwedem der Ansprüche 1–9, wobei das Identifizieren der suchbaren Entität umfasst: Bestimmen, durch die Tastaturanwendung, auf der Grundlage zumindest eines Teils des Textes, eines oder mehrerer Wörter; Bestimmen, durch die Tastaturanwendung, auf der Grundlage des einen oder der mehreren Wörter und aus einem globalen Modell suchbarer Entitäten, einer der suchbaren Entität zugewiesenen Punktzahl, die eine Wahrscheinlichkeit anzeigt, dass die suchbare Entität für das eine oder die mehreren Wörter relevant ist, wobei das globale Modell einer geografischen Region zugeordnet ist, die jeweilige Standorte enthält, die zwei oder mehr Modellen suchbarer Entitäten zugeordnet sind; und in Reaktion auf das Bestimmen, dass die der suchbaren Entität zugewiesene Punktzahl einen Schwellenwert erreicht, Identifizieren, durch das Computergerät, der suchbaren Entität.
- Verfahren nach jedwedem der Ansprüche 1–10, wobei das Identifizieren der suchbaren Entität umfasst: Bestimmen, durch die Tastaturanwendung, auf der Grundlage zumindest eines Teils des Textes, eines oder mehrerer Wörter; Bestimmen, durch die Tastaturanwendung, auf der Grundlage des einen oder der mehreren Wörter und aus mindestens einem von einem globalen Modell suchbarer Entitäten oder einem lokalen Modell suchbarer Entitäten, einer der suchbaren Entität zugewiesenen Punktzahl, die eine Wahrscheinlichkeit anzeigt, dass die suchbare Entität für das eine oder die mehreren Wörter relevant ist, wobei das globale Modell einer geografischen Region zugeordnet ist, die jeweilige Standorte enthält, die zwei verschiedenen lokalen Modellen suchbarer Entitäten zugeordnet sind, einschließlich des lokalen Modells suchbarer Entitäten; Abändern, durch die Tastaturanwendung, auf der Grundlage von Kontextinformationen und aus einem maschinell erlernten Modell, der der suchbaren Entität zugewiesenen Punktzahl; und nach dem Abändern der der suchbaren Entität zugewiesenen Punktzahl und in Reaktion auf das Bestimmen, dass die der suchbaren Entität zugewiesene Punktzahl einen Schwellenwert erreicht, Identifizieren, durch die Tastaturanwendung, der suchbaren Entität.
- Verfahren nach Anspruch 11, wobei die Kontextinformationen Informationen einschließen, die einer elektronischen Konversation zugeordnet sind, die die elektronische Kommunikation und eine oder mehrere andere elektronische Kommunikationen einschließt, die von dem Computergerät gesendet oder empfangen wurden.
- Verfahren nach jedwedem der Ansprüche 1–12, wobei das Erzeugen der Suchanfrage umfasst: Bestimmen, durch die Tastaturanwendung, zumindest teilweise auf der Grundlage der suchbaren Entität, eines kuratierten Satzes, der der suchbaren Entität zugeordnet ist; und Erzeugen, durch die Tastaturanwendung, aus dem kuratierten Satz, der Suchanfrage, wobei die suchbare Entität einen Auslösesatz umfasst und wobei der der suchbaren Entität zugeordnete kuratierte Satz des Weiteren zumindest teilweise auf der Grundlage eines aktuellen Kontextes des Computergerätes bestimmt wird.
- Mobilgerät, umfassend: eine anwesenheitsabhängige Anzeigenkomponente; mindestens einen Prozessor; und einen Speicher, der Anweisungen speichert, die einer Tastaturanwendung zugeordnet sind, die, wenn sie ausgeführt werden, den mindestens einen Prozessor zu Folgendem veranlassen: eine grafische Tastatur mit einer Vielzahl von Tasten zur Anzeige auf der anwesenheitsabhängigen Anzeigenkomponente auszugeben; auf der Grundlage eines Hinweises auf eine Auswahl aus der Vielzahl der Tasten, die auf der anwesenheitsabhängigen Anzeigenkomponente ermittelt wird, Text einer elektronischen Kommunikation zu bestimmen; zumindest teilweise auf der Grundlage des Textes einen Auslösesatz zu identifizieren; auf der Grundlage des Auslösesatzes eine Suchanfrage zu erzeugen; und zur Anzeige auf der anwesenheitsabhängigen Anzeigenkomponente und in der grafischen Tastatur, einen grafischen Hinweis auszugeben, um anzuzeigen, dass das Computergerät die Suchanfrage erzeugt hat.
- Verfahren, umfassend: Aufrufen, durch eine erste Anwendung, die auf einem Computergerät ausgeführt wird, einer Tastaturanwendung für das Empfangen von Texteingaben, die so konfiguriert ist, dass sie eine grafische Tastatur bereitstellt, die eine Vielzahl von Tasten umfasst; Bestimmen, durch die Tastaturanwendung, auf der Grundlage eines Hinweises auf eine Auswahl einer oder mehrerer Tasten aus der Vielzahl der Tasten, der Texteingabe; Identifizieren, durch die Tastaturanwendung, zumindest teilweise auf der Grundlage der Texteingabe, einer suchbaren Entität; Erzeugen, durch die Tastaturanwendung, auf der Grundlage der suchbaren Entität. einer Suchanfrage; Ausgeben, durch die Tastaturanwendung, zur Anzeige in der grafischen Tastatur, eines grafischen Hinweises, um anzuzeigen, dass die Tastaturanwendung die Suchanfrage erzeugt hat; und in Reaktion auf das Empfangen, durch die Tastaturanwendung, eines Hinweises auf eine Auswahl der Suchanfrage, Einleiten, durch die Tastaturanwendung, in einer Suchanwendung, einer Suche auf der Grundlage der Suchanfrage.
- Verfahren nach Anspruch 15, wobei die Suchanwendung auf dem Computergerät ausgeführt wird, das Verfahren des Weiteren umfassend: Ausführen, durch die Suchanwendung, der Suche auf der Grundlage der Suchanfrage als eine Im-Gerät-Suche nach Suchergebnissen, die Informationen zugeordnet sind, die lokal im Computergerät gespeichert sind.
- Verfahren nach jedwedem der Ansprüche 15–16, wobei die Suchanwendung auf einem entfernten Computergerät ausgeführt wird, das Verfahren des Weiteren umfassend: Ausführen, durch die Suchanwendung, der Suche auf der Grundlage der Suchanfrage als eine Remote-Suche nach Suchergebnissen, die Informationen zugeordnet sind, die entfernt vom Computergerät gespeichert sind.
- Verfahren nach jedwedem der Ansprüche 15–17, wobei die erste Anwendung eine Chat-Anwendung ist, und die Texteingabe einer elektronischen Konversation in der Chat-Anwendung zugeordnet ist.
- Verfahren nach Anspruch 18, des Weiteren umfassend: Ausgeben, durch die erste Anwendung, zur Anzeige anstatt zumindest eines Teils der Vielzahl von Tasten, eines grafischen Hinweises auf ein oder mehrere Suchergebnisse, die von der Tastaturanwendung bezogen werden, nachdem die Tastaturanwendung die Suche einleitet.
- Verfahren nach Anspruch 19, des Weiteren umfassend: in Reaktion auf das Empfangen, durch die erste Anwendung, eines Hinweises auf eine Auswahl mindestens eines des einen oder der mehreren Suchergebnisse, Ausgeben, durch die Chat-Anwendung, des mindestens einen, des einen oder der mehreren Suchergebnisse als eine Nachricht der elektronischen Konversation.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US15/133,291 | 2016-04-20 | ||
US15/133,291 US10305828B2 (en) | 2016-04-20 | 2016-04-20 | Search query predictions by a keyboard |
Publications (1)
Publication Number | Publication Date |
---|---|
DE102016125760A1 true DE102016125760A1 (de) | 2017-10-26 |
Family
ID=57882144
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE202016008310.5U Active DE202016008310U1 (de) | 2016-04-20 | 2016-12-28 | Vorhersagen von Suchanfragen durch eine Tastatur |
DE102016125760.5A Pending DE102016125760A1 (de) | 2016-04-20 | 2016-12-28 | Vorhersagen von Suchanfragen durch eine Tastatur |
Family Applications Before (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE202016008310.5U Active DE202016008310U1 (de) | 2016-04-20 | 2016-12-28 | Vorhersagen von Suchanfragen durch eine Tastatur |
Country Status (5)
Country | Link |
---|---|
US (2) | US10305828B2 (de) |
CN (1) | CN107305585B (de) |
DE (2) | DE202016008310U1 (de) |
GB (1) | GB2549568A (de) |
WO (1) | WO2017184218A1 (de) |
Families Citing this family (45)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10976922B2 (en) * | 2013-02-17 | 2021-04-13 | Benjamin Firooz Ghassabian | Data entry systems |
US9043196B1 (en) | 2014-07-07 | 2015-05-26 | Machine Zone, Inc. | Systems and methods for identifying and suggesting emoticons |
US10489768B2 (en) * | 2015-12-30 | 2019-11-26 | Visa International Service Association | Keyboard application with third party engagement selectable items |
WO2020219476A1 (en) * | 2019-04-21 | 2020-10-29 | Hyperkey Inc. | Advanced keyboard based search |
US11494547B2 (en) * | 2016-04-13 | 2022-11-08 | Microsoft Technology Licensing, Llc | Inputting images to electronic devices |
US10305828B2 (en) | 2016-04-20 | 2019-05-28 | Google Llc | Search query predictions by a keyboard |
US10140017B2 (en) | 2016-04-20 | 2018-11-27 | Google Llc | Graphical keyboard application with integrated search |
US10078673B2 (en) | 2016-04-20 | 2018-09-18 | Google Llc | Determining graphical elements associated with text |
US9965530B2 (en) | 2016-04-20 | 2018-05-08 | Google Llc | Graphical keyboard with integrated search features |
US10222957B2 (en) | 2016-04-20 | 2019-03-05 | Google Llc | Keyboard with a suggested search query region |
US10831283B2 (en) * | 2016-06-02 | 2020-11-10 | Samsung Electronics Co., Ltd. | Method and electronic device for predicting a response from context with a language model |
US10409488B2 (en) * | 2016-06-13 | 2019-09-10 | Microsoft Technology Licensing, Llc | Intelligent virtual keyboards |
US20170357521A1 (en) * | 2016-06-13 | 2017-12-14 | Microsoft Technology Licensing, Llc | Virtual keyboard with intent-based, dynamically generated task icons |
US10664157B2 (en) | 2016-08-03 | 2020-05-26 | Google Llc | Image search query predictions by a keyboard |
CA2939395A1 (en) * | 2016-08-15 | 2016-10-17 | Richard S. Brown | Method and device for invoking a search from a text message |
US11115463B2 (en) * | 2016-08-17 | 2021-09-07 | Microsoft Technology Licensing, Llc | Remote and local predictions |
US10409487B2 (en) * | 2016-08-23 | 2019-09-10 | Microsoft Technology Licensing, Llc | Application processing based on gesture input |
CN109716370B (zh) * | 2016-09-20 | 2023-09-01 | 谷歌有限责任公司 | 用于在消息应用中传送响应的系统和方法 |
WO2018101671A1 (en) * | 2016-11-29 | 2018-06-07 | Samsung Electronics Co., Ltd. | Apparatus and method for providing sentence based on user input |
US20180210872A1 (en) * | 2017-01-23 | 2018-07-26 | Microsoft Technology Licensing, Llc | Input System Having a Communication Model |
US20180267615A1 (en) * | 2017-03-20 | 2018-09-20 | Daqri, Llc | Gesture-based graphical keyboard for computing devices |
US10572107B1 (en) * | 2017-06-23 | 2020-02-25 | Amazon Technologies, Inc. | Voice communication targeting user interface |
US10788900B1 (en) * | 2017-06-29 | 2020-09-29 | Snap Inc. | Pictorial symbol prediction |
US10339922B2 (en) * | 2017-08-23 | 2019-07-02 | Sap Se | Thematic segmentation of long content using deep learning and contextual cues |
WO2019060351A1 (en) * | 2017-09-21 | 2019-03-28 | Mz Ip Holdings, Llc | SYSTEM AND METHOD FOR USING LOW MEMORY CONSUMPTION DATA STRUCTURES FOR FRIMOUSSES SUGGESTIONS |
CN107918497A (zh) * | 2017-11-14 | 2018-04-17 | 厦门攸信信息技术有限公司 | 一种控制器的预测方法及系统 |
US11010436B1 (en) | 2018-04-20 | 2021-05-18 | Facebook, Inc. | Engaging users by personalized composing-content recommendation |
US11886473B2 (en) | 2018-04-20 | 2024-01-30 | Meta Platforms, Inc. | Intent identification for agent matching by assistant systems |
US11715042B1 (en) | 2018-04-20 | 2023-08-01 | Meta Platforms Technologies, Llc | Interpretability of deep reinforcement learning models in assistant systems |
US11676220B2 (en) | 2018-04-20 | 2023-06-13 | Meta Platforms, Inc. | Processing multimodal user input for assistant systems |
US11307880B2 (en) | 2018-04-20 | 2022-04-19 | Meta Platforms, Inc. | Assisting users with personalized and contextual communication content |
US11210728B2 (en) | 2018-05-25 | 2021-12-28 | Walmart Apollo, Llc | Systems and methods for searching retail products and locations using a universal search bar |
JP7263712B2 (ja) * | 2018-08-23 | 2023-04-25 | 富士通株式会社 | 制御方法,情報処理装置および制御プログラム |
CN112445892B (zh) * | 2019-09-02 | 2023-09-29 | 百度在线网络技术(北京)有限公司 | 确定品牌提及率的方法、装置、电子设备及存储介质 |
US11593569B2 (en) * | 2019-10-11 | 2023-02-28 | Lenovo (Singapore) Pte. Ltd. | Enhanced input for text analytics |
US11567788B1 (en) | 2019-10-18 | 2023-01-31 | Meta Platforms, Inc. | Generating proactive reminders for assistant systems |
US11861674B1 (en) | 2019-10-18 | 2024-01-02 | Meta Platforms Technologies, Llc | Method, one or more computer-readable non-transitory storage media, and a system for generating comprehensive information for products of interest by assistant systems |
CN111241398B (zh) * | 2020-01-10 | 2023-07-25 | 百度在线网络技术(北京)有限公司 | 数据预取方法、装置、电子设备及计算机可读存储介质 |
US11853381B2 (en) * | 2020-11-13 | 2023-12-26 | Google Llc | Hybrid fetching using a on-device cache |
US11563706B2 (en) | 2020-12-29 | 2023-01-24 | Meta Platforms, Inc. | Generating context-aware rendering of media contents for assistant systems |
US11809480B1 (en) | 2020-12-31 | 2023-11-07 | Meta Platforms, Inc. | Generating dynamic knowledge graph of media contents for assistant systems |
WO2022169992A1 (en) | 2021-02-04 | 2022-08-11 | Keys Inc | Intelligent keyboard |
US11861315B2 (en) | 2021-04-21 | 2024-01-02 | Meta Platforms, Inc. | Continuous learning for natural-language understanding models for assistant systems |
US11921692B1 (en) * | 2022-09-16 | 2024-03-05 | Capital One Services, Llc | Computer-based systems configured for automatically updating a database based on an initiation of a dynamic machine-learning verification and methods of use thereof |
US11983329B1 (en) | 2022-12-05 | 2024-05-14 | Meta Platforms, Inc. | Detecting head gestures using inertial measurement unit signals |
Family Cites Families (80)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6104397A (en) | 1997-06-30 | 2000-08-15 | Sun Microsystems, Inc. | Method and system for generating improved progress indicators |
US7599847B2 (en) | 2000-06-09 | 2009-10-06 | Airport America | Automated internet based interactive travel planning and management system |
US20090006543A1 (en) | 2001-08-20 | 2009-01-01 | Masterobjects | System and method for asynchronous retrieval of information based on incremental user input |
US8028250B2 (en) | 2004-08-31 | 2011-09-27 | Microsoft Corporation | User interface having a carousel view for representing structured data |
US7788248B2 (en) * | 2005-03-08 | 2010-08-31 | Apple Inc. | Immediate search feedback |
US7590699B2 (en) | 2005-06-23 | 2009-09-15 | Microsoft Corporation | Instant messaging with built-in search |
US7747639B2 (en) * | 2005-08-24 | 2010-06-29 | Yahoo! Inc. | Alternative search query prediction |
US7676517B2 (en) | 2005-10-14 | 2010-03-09 | Microsoft Corporation | Search results injected into client applications |
US7925716B2 (en) | 2005-12-05 | 2011-04-12 | Yahoo! Inc. | Facilitating retrieval of information within a messaging environment |
US20070300177A1 (en) | 2006-06-23 | 2007-12-27 | Microsoft Corporation | User interface for specifying multi-valued properties |
US8280921B2 (en) | 2006-07-18 | 2012-10-02 | Chacha Search, Inc. | Anonymous search system using human searchers |
US8564544B2 (en) | 2006-09-06 | 2013-10-22 | Apple Inc. | Touch screen device, method, and graphical user interface for customizing display of content category icons |
US8005822B2 (en) * | 2007-01-17 | 2011-08-23 | Google Inc. | Location in search queries |
US20080201434A1 (en) | 2007-02-16 | 2008-08-21 | Microsoft Corporation | Context-Sensitive Searches and Functionality for Instant Messaging Applications |
US20080244446A1 (en) | 2007-03-29 | 2008-10-02 | Lefevre John | Disambiguation of icons and other media in text-based applications |
US8745018B1 (en) | 2008-07-10 | 2014-06-03 | Google Inc. | Search application and web browser interaction |
CN101876878A (zh) * | 2009-04-29 | 2010-11-03 | 深圳富泰宏精密工业有限公司 | 单词预测输入系统及方法 |
US9367216B2 (en) | 2009-05-21 | 2016-06-14 | Sony Interactive Entertainment Inc. | Hand-held device with two-finger touch triggered selection and transformation of active elements |
EP2312427B1 (de) * | 2009-10-13 | 2013-09-18 | BlackBerry Limited | Benutzerschnittstelle für eine Berührungsbildschirmanzeige |
US20110112824A1 (en) | 2009-11-06 | 2011-05-12 | Craig Peter Sayers | Determining at least one category path for identifying input text |
US20110191321A1 (en) | 2010-02-01 | 2011-08-04 | Microsoft Corporation | Contextual display advertisements for a webpage |
US9129012B2 (en) | 2010-02-03 | 2015-09-08 | Google Inc. | Information search system with real-time feedback |
US8650210B1 (en) | 2010-02-09 | 2014-02-11 | Google Inc. | Identifying non-search actions based on a search query |
US8782556B2 (en) * | 2010-02-12 | 2014-07-15 | Microsoft Corporation | User-centric soft keyboard predictive technologies |
US8621379B2 (en) | 2010-03-12 | 2013-12-31 | Apple Inc. | Device, method, and graphical user interface for creating and using duplicate virtual keys |
US9483175B2 (en) | 2010-07-26 | 2016-11-01 | Apple Inc. | Device, method, and graphical user interface for navigating through a hierarchy |
US8918734B2 (en) | 2010-07-28 | 2014-12-23 | Nuance Communications, Inc. | Reduced keyboard with prediction solutions when input is a partial sliding trajectory |
AU2011291544B2 (en) | 2010-08-19 | 2015-03-26 | Google Llc | Predictive query completion and predictive search results |
EP2625646B1 (de) | 2010-10-06 | 2022-06-22 | Citrix Systems Inc. | Vermittlung eines ressourcenzugangs auf basis des physischen standorts einer mobilen vorrichtung |
US8515984B2 (en) | 2010-11-16 | 2013-08-20 | Microsoft Corporation | Extensible search term suggestion engine |
US10346479B2 (en) | 2010-11-16 | 2019-07-09 | Microsoft Technology Licensing, Llc | Facilitating interaction with system level search user interface |
WO2012068544A2 (en) | 2010-11-20 | 2012-05-24 | Kushler Clifford A | Performing actions on a computing device using a contextual keyboard |
US9111238B2 (en) | 2010-12-17 | 2015-08-18 | Microsoft Technology Licensing, Llc | Data feed having customizable analytic and visual behavior |
US9104992B2 (en) | 2010-12-17 | 2015-08-11 | Microsoft Technology Licensing, Llc | Business application publication |
US10642934B2 (en) | 2011-03-31 | 2020-05-05 | Microsoft Technology Licensing, Llc | Augmented conversational understanding architecture |
US20120256840A1 (en) | 2011-04-10 | 2012-10-11 | Mahmoud Razzaghi | Virtual keyboard |
US9176944B1 (en) * | 2011-08-23 | 2015-11-03 | Google Inc. | Selectively processing user input |
CN102955658B (zh) | 2011-08-25 | 2017-03-22 | 腾讯科技(深圳)有限公司 | 交互界面中的页面切换方法及装置 |
US20140229847A1 (en) | 2011-10-13 | 2014-08-14 | Lg Electronics Inc. | Input interface controlling apparatus and method thereof |
US9652448B2 (en) | 2011-11-10 | 2017-05-16 | Blackberry Limited | Methods and systems for removing or replacing on-keyboard prediction candidates |
US8914451B2 (en) | 2012-02-17 | 2014-12-16 | Blackberry Limited | Electronic device configured with messaging composition interface |
US9310888B2 (en) | 2012-03-16 | 2016-04-12 | Microsoft Technology Licensing, Llc | Multimodal layout and rendering |
US9685160B2 (en) | 2012-04-16 | 2017-06-20 | Htc Corporation | Method for offering suggestion during conversation, electronic device using the same, and non-transitory storage medium |
US20130285916A1 (en) | 2012-04-30 | 2013-10-31 | Research In Motion Limited | Touchscreen keyboard providing word predictions at locations in association with candidate letters |
US9460237B2 (en) | 2012-05-08 | 2016-10-04 | 24/7 Customer, Inc. | Predictive 411 |
US8484573B1 (en) | 2012-05-23 | 2013-07-09 | Google Inc. | Predictive virtual keyboard |
US9582146B2 (en) * | 2012-05-29 | 2017-02-28 | Nokia Technologies Oy | Causing display of search results |
US9116552B2 (en) | 2012-06-27 | 2015-08-25 | Blackberry Limited | Touchscreen keyboard providing selection of word predictions in partitions of the touchscreen keyboard |
US20140115070A1 (en) | 2012-10-22 | 2014-04-24 | Nokia Corporation | Apparatus and associated methods |
US9305114B2 (en) | 2012-12-17 | 2016-04-05 | Microsoft Technology Licensing, Llc | Building long search queries |
US10228819B2 (en) | 2013-02-04 | 2019-03-12 | 602531 British Cilumbia Ltd. | Method, system, and apparatus for executing an action related to user selection |
WO2014139120A1 (en) | 2013-03-14 | 2014-09-18 | Microsoft Corporation | Search intent preview, disambiguation, and refinement |
US20140282203A1 (en) | 2013-03-15 | 2014-09-18 | Research In Motion Limited | System and method for predictive text input |
US9529856B2 (en) | 2013-06-03 | 2016-12-27 | Google Inc. | Query suggestion templates |
US9613132B2 (en) | 2013-06-28 | 2017-04-04 | Yandex Europe Ag | Method of and system for displaying a plurality of user-selectable refinements to a search query |
US20150100537A1 (en) | 2013-10-03 | 2015-04-09 | Microsoft Corporation | Emoji for Text Predictions |
US9461945B2 (en) * | 2013-10-18 | 2016-10-04 | Jeffrey P. Phillips | Automated messaging response |
KR102157264B1 (ko) | 2013-10-30 | 2020-09-17 | 삼성전자주식회사 | 디스플레이 장치 및 그 ui 제공 방법 |
KR20150081181A (ko) | 2014-01-03 | 2015-07-13 | 삼성전자주식회사 | 디스플레이 장치 및 이의 추천 문자 제공 방법 |
KR102225031B1 (ko) | 2014-01-14 | 2021-03-09 | 엘지전자 주식회사 | 단말기 및 그 동작 방법 |
US10050926B2 (en) | 2014-02-05 | 2018-08-14 | Facebook, Inc. | Ideograms based on sentiment analysis |
US20150242086A1 (en) | 2014-02-21 | 2015-08-27 | Markport Limited | Drag and drop event system and method |
US9471570B2 (en) | 2014-04-30 | 2016-10-18 | Excalibur Ip, Llc | Method and system for user selection of query suggestions |
KR20150126213A (ko) | 2014-05-02 | 2015-11-11 | 삼성전자주식회사 | 정보 검색 시스템 및 방법 |
KR102177607B1 (ko) | 2014-05-16 | 2020-11-11 | 엘지전자 주식회사 | 이동 단말기 및 이의 제어방법 |
US9671956B2 (en) | 2014-06-18 | 2017-06-06 | Lenovo Enterprise Solutions (Singapore) Pte. Ltd. | Presenting search term suggestions on graphical user interfaces |
US9043196B1 (en) | 2014-07-07 | 2015-05-26 | Machine Zone, Inc. | Systems and methods for identifying and suggesting emoticons |
US9930167B2 (en) | 2014-07-07 | 2018-03-27 | Verizon Patent And Licensing Inc. | Messaging application with in-application search functionality |
US20160034977A1 (en) | 2014-08-01 | 2016-02-04 | Yahoo! Inc. | System and method for embedded search within messaging applications |
US10824654B2 (en) | 2014-09-18 | 2020-11-03 | Snap Inc. | Geolocation-based pictographs |
US10275152B2 (en) | 2014-10-28 | 2019-04-30 | Idelan, Inc. | Advanced methods and systems for text input error correction |
US20160224524A1 (en) * | 2015-02-03 | 2016-08-04 | Nuance Communications, Inc. | User generated short phrases for auto-filling, automatically collected during normal text use |
CN104765791A (zh) * | 2015-03-24 | 2015-07-08 | 北京搜狗科技发展有限公司 | 一种信息输入方法和装置 |
US10547571B2 (en) | 2015-05-06 | 2020-01-28 | Kakao Corp. | Message service providing method for message service linked to search service and message server and user terminal to perform the method |
US10496275B2 (en) | 2015-10-12 | 2019-12-03 | Microsoft Technology Licensing, Llc | Multi-window keyboard |
US10140017B2 (en) | 2016-04-20 | 2018-11-27 | Google Llc | Graphical keyboard application with integrated search |
US9965530B2 (en) | 2016-04-20 | 2018-05-08 | Google Llc | Graphical keyboard with integrated search features |
US10305828B2 (en) | 2016-04-20 | 2019-05-28 | Google Llc | Search query predictions by a keyboard |
US10222957B2 (en) | 2016-04-20 | 2019-03-05 | Google Llc | Keyboard with a suggested search query region |
US10078673B2 (en) | 2016-04-20 | 2018-09-18 | Google Llc | Determining graphical elements associated with text |
-
2016
- 2016-04-20 US US15/133,291 patent/US10305828B2/en active Active
- 2016-10-10 US US15/289,661 patent/US9720955B1/en active Active
- 2016-12-23 GB GB1622164.0A patent/GB2549568A/en not_active Withdrawn
- 2016-12-28 DE DE202016008310.5U patent/DE202016008310U1/de active Active
- 2016-12-28 DE DE102016125760.5A patent/DE102016125760A1/de active Pending
- 2016-12-29 WO PCT/US2016/069159 patent/WO2017184218A1/en active Application Filing
- 2016-12-30 CN CN201611273011.2A patent/CN107305585B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN107305585B (zh) | 2021-05-14 |
US10305828B2 (en) | 2019-05-28 |
WO2017184218A1 (en) | 2017-10-26 |
US20170310616A1 (en) | 2017-10-26 |
GB201622164D0 (en) | 2017-02-08 |
US9720955B1 (en) | 2017-08-01 |
GB2549568A (en) | 2017-10-25 |
DE202016008310U1 (de) | 2017-07-19 |
CN107305585A (zh) | 2017-10-31 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE102016125760A1 (de) | Vorhersagen von Suchanfragen durch eine Tastatur | |
DE202017105673U1 (de) | Ikonografische Symbolvorhersagen für eine Konversation | |
EP3479213B1 (de) | Bildsuchanfrageprognosen über eine tastatur | |
DE202017104090U1 (de) | Grafische Tastaturanwendung mit integrierter Suche | |
EP3400539B1 (de) | Bestimmung von mit text assoziierten grafischen elementen | |
CN108027873B (zh) | 基于捕捉到的笔画信息来与助理组件交互 | |
CN108700993B (zh) | 具有建议的搜索查询区域的键盘 | |
DE202017106558U1 (de) | Anwendungserweiterung zum Erzeugen automatischer Suchabfragen | |
US9946773B2 (en) | Graphical keyboard with integrated search features | |
KR20180102148A (ko) | 그래픽 키보드 내에서의 도형 심볼 검색 | |
KR102204888B1 (ko) | 키보드에 의한 자동 번역 | |
DE112016002384T5 (de) | Hilfsschicht mit automatisierter Extraktion | |
US20190035115A1 (en) | Assigning textures to graphical keyboards based on thematic textures of applications | |
Soares | Designing Culturally Sensitive Icons for User Interfaces: An approach for the Interaction Design of smartphones in developing countries |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
R012 | Request for examination validly filed | ||
R138 | Derivation of utility model |
Ref document number: 202016008310 Country of ref document: DE |
|
R081 | Change of applicant/patentee |
Owner name: GOOGLE LLC (N.D.GES.D. STAATES DELAWARE), MOUN, US Free format text: FORMER OWNER: GOOGLE INC., MOUNTAIN VIEW, CALIF., US |
|
R082 | Change of representative |
Representative=s name: KILBURN & STRODE LLP, GB Representative=s name: KILBURN & STRODE LLP, NL Representative=s name: BETTEN & RESCH PATENT- UND RECHTSANWAELTE PART, DE |
|
R079 | Amendment of ipc main class |
Free format text: PREVIOUS MAIN CLASS: G06F0017270000 Ipc: G06F0040200000 |
|
R082 | Change of representative |
Representative=s name: KILBURN & STRODE LLP, GB Representative=s name: KILBURN & STRODE LLP, NL |
|
R082 | Change of representative |
Representative=s name: KILBURN & STRODE LLP, GB Representative=s name: KILBURN & STRODE LLP, NL |
|
R082 | Change of representative |
Representative=s name: KILBURN & STRODE LLP, NL |