DE212011100017U1 - Prädiktive Anfragevervollständigung und prädiktive Suchergebnisse - Google Patents

Prädiktive Anfragevervollständigung und prädiktive Suchergebnisse Download PDF

Info

Publication number
DE212011100017U1
DE212011100017U1 DE212011100017U DE212011100017U DE212011100017U1 DE 212011100017 U1 DE212011100017 U1 DE 212011100017U1 DE 212011100017 U DE212011100017 U DE 212011100017U DE 212011100017 U DE212011100017 U DE 212011100017U DE 212011100017 U1 DE212011100017 U1 DE 212011100017U1
Authority
DE
Germany
Prior art keywords
request
proposal
search results
search
response
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.)
Expired - Lifetime
Application number
DE212011100017U
Other languages
English (en)
Inventor
wird später genannt werden Erfinder
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Black David Us
EFFRAT, JONATHAN J., MOUNTAIN VIEW, US
Gomes Benedict A Mountain View Us
Hansson Othar Sunnyvale Us
Mahkovec Ziga San Francisco Us
MCMAHAN, BENJAMIN J., SAN JOSE, US
Strohman Trevor Sunnyvale Us
Tungare Manas Mountain View Us
Wichary Marcin K San Francisco Us
WILEY, JON M., MOUNTAIN VIEW, US
Wright Johanna R Mountain View Us
Original Assignee
Individual
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Individual filed Critical Individual
Publication of DE212011100017U1 publication Critical patent/DE212011100017U1/de
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/33Querying
    • G06F16/332Query formulation
    • G06F16/3322Query formulation using system suggestions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/33Querying
    • G06F16/338Presentation of query results
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/903Querying
    • G06F16/9032Query formulation
    • G06F16/90324Query formulation using system suggestions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/953Querying, e.g. by the use of web search engines
    • G06F16/9535Search customisation based on user profiles and personalisation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • G06Q30/02Marketing; Price estimation or determination; Fundraising
    • G06Q30/0241Advertisements
    • G06Q30/0273Determination of fees for advertising
    • G06Q30/0275Auctions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/33Querying
    • G06F16/3331Query processing
    • G06F16/3332Query translation
    • G06F16/3338Query expansion

Abstract

System, das Folgendes umfasst: eine Datenverarbeitungsvorrichtung; und ein Computerspeichermedium, das mit einem Computerprogramm kodiert ist, wobei das Programm Datenverarbeitungsvorrichtungsanweisungen umfasst, die, wenn sie durch die Datenverarbeitungsvorrichtung ausgeführt werden, bewirken, dass die Datenverarbeitungsvorrichtung Operationen ausführt, die Folgendes umfassen: Empfangen einer Anforderung einer Suchressource von einer Client-Einrichtung; Bereitstellen der Suchressource, die Schnittstellenanweisungen umfasst, die bewirken, dass die Client-Einrichtung eine Suchschnittstelle erzeugt, die ein Anfrageeingabefeld umfasst, für die Client-Einrichtung als Reaktion auf die Anforderung der Suchressource; Empfangen von Anfragevorschlagsanforderungen von einer Client-Einrichtung, wobei jede Anfragevorschlagsanforderung als Reaktion auf eine Anfrageeingabe in dem Anfrageeingabefeld erzeugt wurde; als Reaktion auf jede Anfragevorschlagsanforderung: Bereitstellen von Anfragevorschlägen als Reaktion auf die Anforderung; Bestimmen, ob ein Vorhersagekriterium erfüllt ist, wobei das Vorhersagekriterium von einer Benutzerauswahl eines als Reaktion auf eine oder mehrere Anfragevorschlagsanforderungen bereitgestellten Anfragevorschlags unabhängig ist und von dem Empfang einer vollständigen Anfrage von der Client-Einrichtung unabhängig ist;...

Description

  • Die vorliegende Anmeldung beansprucht Priorität unter 35 USC §119(e) in Bezug auf die US-Patentanmeldung Nr. 61/375,222, registriert am 19. August 2010, deren gesamter Inhalt hiermit durch Verweis einbezogen wird.
  • STAND DER TECHNIK
  • Die vorliegende Beschreibung beschreibt Technologien in Bezug auf Suchanfragen-Vorschläge und Suchergebnisse.
  • Das Internet stellt Zugang zu vielfältigen Ressourcen bereit, wie zum Beispiel Videodateien, Bilddateien, Audiodateien oder Webseiten, die Inhalt für bestimmte Themen, Buchartikel oder Nachrichtenartikel enthalten. Ein Suchsystem kann als Reaktion auf den Empfang einer Suchanfrage eine oder mehrere Ressourcen auswählen. Eine Suchanfrage sind Daten, die ein Benutzer zu einer Suchmaschine übermittelt, um die Informationsbedürfnisse des Benutzers zu erfüllen. Die Suchanfragen liegen gewöhnlich in Form von Text, z. B. eines oder mehrerer Anfrageausdrücke, vor. Das Suchsystem wählt und bewertet Ressourcen auf der Basis ihrer Relevanz für die Suchanfrage und ihrer Wichtigkeit relativ zu anderen Ressourcen, um Suchergebnisse bereitzustellen, die zu den ausgewählten Ressourcen linken. Die Suchergebnisse werden typischerweise gemäß den Bewertungen in eine Reihenfolge gesetzt und gemäß dieser Reihenfolge präsentiert.
  • Suchsysteme können Benutzern Suchvorschläge geben, um Benutzern dabei zu helfen, ihre Informationsbedürfnisse zu erfüllen. Im vorliegenden Gebrauch bedeutet der Ausdruck „Anfragevorschlag” vorgeschlagene Daten für eine Anfrage, die verwendet werden können, um eine Suche zu verfeinern oder um eine Suchstrategie zu verfeinern. Bestimmte Suchsysteme geben Anfragevorschläge in Form einer Liste von Anfragevorschlägen, während der Benutzer eine Anfrage tippt. Der Benutzer kann einen der Anfragevorschläge aus der Liste auswählen, ohne den gesamten Anfragevorschlag tippen zu müssen. Eine Client-Einrichtung sendet typischerweise bei jeder Tastenbetätigung Vorschlagsanforderungen zu einer Suchmaschine und die Suchmaschine stellt die Anfragevorschläge mit Wortanfängen bereit, die mit den eingegebenen Zeichen übereinstimmen. Nachdem sie empfangen wurden, zeigt die Client-Einrichtung diese Vorschläge zur Benutzerauswahl an.
  • Solche Anfragevorschlagssysteme arbeiten relativ gut und bereichern das Benutzererlebnis. Diese Systeme erfordern jedoch weiterhin mehrere Eingaben von Benutzern. Zum Beispiel muss ein Benutzer mittels einer Tastatureingabe, Mausklicken oder einer bestimmten anderen Eingabe einen der Vorschläge auswählen. Außerdem muss der Benutzer möglicherweise eine zusätzliche Eingabe tätigen, um zu bewirken, dass die ausgewählte Anfrage zu dem Suchsystem gesendet wird, wie etwa eine Betätigung einer Eingabetaste.
  • Nachdem die Anfrage durch das Suchsystem verarbeitet wurde, gibt das Suchsystem als Antwort auf die Anfrage Suchergebnisse zurück. Wenn die Suchergebnisse jedoch das Informationsbedürfnis des Benutzers nicht erfüllen, muss der Benutzer mit der Eingabe einer neuen Anfrage beginnen.
  • Bestimmte Suchsysteme stellen außerdem vorhergesagte Suchergebnisse mit Anfragevorschlägen bereit. Viele Anfragevorschläge werden jedoch nicht von einem Benutzer ausgewählt. Folglich kann der Benutzer viele Suchergebnisse empfangen, die das Informationsbedürfnis des Benutzers nicht erfüllen. Zusätzlich sind die Bandbreitenanforderungen zum Senden von Suchergebnissen höher als die Anforderungen zum Senden von Vorschlägen. Folglich benutzt das Suchsystem zu viel Bandbreite.
  • KURZFASSUNG
  • Die vorliegende Beschreibung beschreibt Technologien in Bezug auf das Bereitstellen von Suchanfragevorschlägen und Suchergebnissen in Bezug auf die Suchanfragevorschläge.
  • Im Allgemeinen kann ein Aspekt des in der vorliegenden Beschreibung beschriebenen Gegenstands in einem Computerspeichermedium verkörpert sein, das mit einem Computerprogramm codiert ist, wobei das Programm Datenverarbeitungsvorrichtungsanweisungen umfasst, die, wenn sie durch eine Datenverarbeitungsvorrichtung ausgeführt werden, bewirken, dass die Datenverarbeitungsvorrichtung Operationen ausführt, die Folgendens umfassen: Empfangen einer Anforderung einer Suchressource von einer Client-Einrichtung; Bereitstellen der Suchressource, die Schnittstellenanweisungen umfasst, die bewirken, dass die Client-Einrichtung eine Suchschnittstelle erzeugt, die ein Anfrageeingabefeld umfasst, für die Client-Einrichtung als Reaktion auf die Anforderung der Suchressource; Empfangen von Anfragevorschlagsanforderungen von einer Client-Einrichtung, wobei jede Anfragevorschlagsanforderung als Reaktion auf eine Anfrageeingabe in dem Anfrageeingabefeld erzeugt wurde; als Reaktion auf jede Anfragevorschlagsanforderung: Bereitstellen von Anfragevorschlägen als Reaktion auf die Anforderung, Bestimmen, ob ein Vorhersagekriterium erfüllt ist, wobei das Vorhersagekriterium von einer Benutzerauswahl eines als Reaktion auf eine oder mehrere Anfragevorschlagsanforderungen bereitgestellten Anfragevorschlags unabhängig und von dem Empfang einer vollständigen Anfrage von der Client-Einrichtung unabhängig ist; als Reaktion auf das Bestimmen, dass das Vorhersagekriterium erfüllt ist: Bereitstellen von Suchergebnissen für die Client-Einrichtung, wobei die Suchergebnisse Reaktion auf einen der als Reaktion auf die Anfragevorschlagsanforderung oder eine oder mehrere vorherige Anfragevorschlagsanforderungen bereitgestellten Anfragevorschläge sind; und als Reaktion auf das Bestimmen, dass das Vorhersagekriterium nicht erfüllt ist: Nichtbereitstellen der Suchergebnisse für die Client-Einrichtung. Andere Ausführungsformen dieses Aspekts umfassen entsprechende Systeme, Vorrichtungen und Computerprogrammprodukte.
  • Bestimmte Ausführungsformen des in der vorliegenden Beschreibung beschriebenen Gegenstands können implementiert werden, um einen oder mehrere der folgenden Vorteile zu realisieren. In Abwesenheit einer Benutzerauswahl eines Suchanfragevorschlags oder des Sendens einer Suchanforderung für eine vollständige Anfrage werden Suchergebnisse nur dann gezeigt, wenn ein Vorhersagekriterium erfüllt ist. Dieses selektive Anzeigen von Suchergebnissen realisiert ein Benutzererlebnis, das den Benutzer nicht mit verschiedenen Suchergebnissen überflutet, die bei jeder Tastenbetätigung angezeigt werden. Das selektive Anzeigen von Suchergebnissen verringert die Wahrscheinlichkeit von „Suchergebnis-Blindheit”, die auftreten kann, wenn Suchergebnisse ohne jegliches Vorhersagekriterium angezeigt werden, und verringert außerdem die Wahrscheinlichkeit eines unbeabsichtigten „Themendriftens”, das ansonsten bei Anwesenheit verschiedener Suchergebnisse, die bei jeder Tastenbetätigung angezeigt werden, auftreten kann.
  • Die Suchergebnisse können durch Verwendung von „Einblend”- und „Ausblend”-Techniken oder anderen Übergangstechniken angezeigt werden, was zu glatten Übergängen in der Benutzeroberfläche führt, die weniger ablenkend sind als abrupte Änderungen, die andernfalls auftreten können.
  • Die Suchanfragevorschläge können aus einer organischen Reihenfolge in Stamm-Gruppen umgeordnet werden, die gut mit Tippeingaben übereinstimmen, wodurch eine visuelle Angabe von Suchanfragen bereitgestellt wird, die eng mit den Suchergebnissen in Beziehung stehen, die gezeigt werden, falls ein Vorhersagekriterium erfüllt ist.
  • Jeder der obigen Vorteile ist optional und kann separat oder als Kombination erzielt werden.
  • Die Einzelheiten einer oder mehrerer Ausführungsformen des in der vorliegenden Beschreibung beschriebenen Gegenstands werden in den beigefügten Zeichnungen und in der nachfolgenden Beschreibung dargelegt. Andere Merkmale, Aspekte und Vorteile des Gegenstands werden aus der Beschreibung, den Zeichnungen und den Ansprüchen ersichtlich.
  • KURZE BESCHREIBUNG DER ZEICHNUNGEN
  • 1 ist ein Blockdiagramm einer beispielhaften Umgebung, in der eine Suchmaschine Suchdienste bereitstellt.
  • 2 ist ein Zeitdiagramm eines beispielhaften Prozesses zum Bestimmen, ob ein Timer abläuft und Suchergebnisse einem Client bereitgestellt werden sollten.
  • 3 ist ein Zeitdiagramm eines beispielhaften Prozesses, bei dem eine Bestätigung eines Anfragevorschlags dazu führt, dass ein Vorhersagekriterium erfüllt wird.
  • 4 ist ein Zeitdiagramm eines Prozesses zum Überwachen mehrerer Timer.
  • 5A5I zeigen eine Websuchseite, die Anfragevorschläge und Suchergebnisse als Reaktion auf einen der Anfragevorschläge anzeigt.
  • 6 ist ein Flussdiagramm eines Prozesses zum Bereitstellen von Suchergebnissen als Reaktion auf einen Anfragevorschlag für eine Client-Einrichtung.
  • 7 ist ein Flussdiagramm eines Prozesses zum Bestimmen, ob ein Vorhersagekriterium erfüllt ist.
  • 8 ist ein Flussdiagramm eines Prozesses zum Angeben eines Anfragevorschlags, für den Suchergebnisse Reaktion sind.
  • 9 ist ein Flussdiagramm eines Prozesses zum Anzeigen von zweiten Suchergebnissen als Reaktion auf einen zweiten Anfragevorschlag.
  • 10 zeigt eine Websuchseite, die Anfragevorschläge für einen Anfrage-Stamm, Suchergebnisse als Reaktion auf einen der Anfragevorschläge und Werbung als Reaktion auf den Anfrage-Stamm anzeigt.
  • 11 ist ein Graph zur Darstellung eines Betrags auf der Basis einer Beziehung zwischen einem Stamm-Gebot und einer Anzeigedauer.
  • 12 ist ein Flussdiagramm eines Prozesses zum Auswählen von Werbung als Reaktion auf einen Anfrage-Stamm.
  • 13 ist ein Blockdiagramm der Auswahl von Ressourcen für eine Anfrageeingabe als Reaktion darauf, dass ein Vorhersagekriterium erfüllt wird, und auf der Basis von Ressourcenmetriken.
  • Gleiche Bezugszahlen und -kennzeichnungen in den verschiedenen Zeichnungen bezeichnen gleiche Elemente.
  • AUSFÜHRLICHE BESCHREIBUNG
  • §1.0 Übersicht
  • Die vorliegende Beschreibung beschreibt Technologien in Bezug auf die Bereitstellung von Anfragevorschlägen als Reaktion auf eine Anfragevorschlagsanforderung und das Bereitstellen von Suchergebnissen für mindestens einen der Vorschläge, wenn ein Vorhersagekriterium erfüllt ist. Wenn das Vorhersagekriterium erfüllt ist, werden einer mit der Anfragevorschlagsanforderung assoziierten Client-Einrichtung Suchergebnisse bereitgestellt und in einer Suchschnittstelle präsentiert. Die Suchergebnisse werden der Client-Einrichtung bereitgestellt, ohne eine Suchergebnisanforderung zu empfangen (z. B. ohne dass ein Benutzer einen der Anfragevorschläge auswählt oder bewirkt, dass die Client-Einrichtung eine Suchanforderung zu der Suchmaschine sendet).
  • Das Vorhersagekriterium kann eine Wahrscheinlichkeit, eine Zeitüberschreitung oder ein bestimmtes anderes Signal von wahrscheinlichem Benutzerinteresse sein. Zum Beispiel kann bestimmt werden, dass die Wahrscheinlichkeit, dass ein Benutzer einen der Anfragevorschläge auswählen wird, über einem Schwellenwert liegt. Mit dem Anfragevorschlag mit der Wahrscheinlichkeit über dem Schwellenwert assoziierte Suchergebnisse können der Client-Einrichtung bereitgestellt werden. Als Alternative kann bestimmt werden, dass eine Zeitüberschreitung aufgetreten ist, und Suchergebnisse, die mit einem am höchsten eingestuften Anfragevorschlag (z. B. einem häufigsten Anfragevorschlag oder einem Anfragevorschlag mit höchster Wahrscheinlichkeit, ausgewählt zu werden) assoziiert sind, können der Client-Einrichtung bereitgestellt werden. Als Alternative kann die Detektion einer Sprachengrenze (z. B. einer Silbe, eines Worts oder eines Bi-Gramms) bewirken, dass ein Vorhersagekriterium erfüllt wird.
  • Verschiedene Benutzeroberflächentechniken werden verwendet, um ein Benutzererlebnis zu erzeugen, bei dem die Suchergebnisse auf glatte und unaufdringliche Weise erscheinen und verschwinden.
  • §1.1 Beispielhafte Umgebung
  • 1 ist ein Blockdiagramm einer beispielhaften Umgebung 100, in der eine Suchmaschine 110 Suchdienste bereitstellt. Ein Computernetzwerk 102, wie etwa ein lokales Netzwerk (LAN), großflächiges Netzwerk (WAN), das Internet oder eine Kombination davon verbindet Publizierer-Websites 104, Client-Einrichtungen 106 und die Suchmaschine 110. Die Online-Umgebung 100 kann viele tausend Publizierer-Websites 104 und Client-Einrichtungen 106 umfassen.
  • Eine Website 104 ist eine oder mehrere Webseiten-Ressourcen 105, die mit einem Domänennamen assoziiert sind, und jede Website wird von einem oder mehreren Servern gehastet. Eine beispielhafte Website ist eine Sammlung von Webseiten, die in HTML (Hypertext Markup Language) formatiert sind, die Text, Grafikbilder, Multimediainhalt und Programmierelemente wie Scripts enthalten können. Jede Website 104 wird von einem Publizierer unterhalten, z. B. einer Entität, die die Website verwaltet und/oder besitzt.
  • Eine Ressource sind beliebige Daten, die von dem Publizierer 104 über das Netzwerk 102 bereitgestellt werden können und die mit einer Ressourcenadresse assoziiert sind. Ressourcen umfassen HTML-Seiten, Textverarbeitungsdokumente und PDF-Dokumente (Portable Document Format), Bilder, Video und Feed-Quellen, um nur einige wenige zu nennen. Die Ressourcen können Inhalt umfassen, wie etwa Wörter, Phrasen, Bilder und so weiter, und können eingebettete Informationen (wie etwa Metainformationen und Hyperlinks) und/oder eingebettete Anweisungen (wie etwa Javascript-Scripts) umfassen.
  • Eine Client-Einrichtung 106 ist eine elektronische Einrichtung, die sich unter der Kontrolle eines Benutzers befindet und die Ressourcen über das Netzwerk 102 anfordern und empfangen kann. Beispielhafte Client-Einrichtungen 106 wären Personal Computers, Mobilkommunikationseinrichtungen und andere Einrichtungen, die Daten über das Netzwerk 102 senden und empfangen können. Eine Client-Einrichtung 106 umfasst typischerweise eine Benutzeranwendung, wie etwa einen Web-Browser, um das Senden und Empfangen von Daten über das Netzwerk 102 zu erleichtern. Der Web-Browser kann es einem Benutzer ermöglichen, Text, Bilder, Videos, Musik und andere Informationen, die sich typischerweise auf einer Webseite an einer Website im World Wide Web oder einem lokalen Netzwerk befinden, anzuzeigen und damit zu interagieren.
  • Um das Durchsuchen dieser Ressourcen 105 zu erleichtern, identifiziert die Suchmaschine 110 die Ressourcen durch Crawling auf den Publizierer-Websites 104 und Indexieren der durch die Publizierer-Websites 104 bereitgestellten Ressourcen. Die indexierten und optional cache-gespeicherten Kopien der Ressourcen werden in einem indexierten Cache 112 gespeichert.
  • Die Client-Einrichtungen 106 übermitteln Suchanfragen 109 zu der Suchmaschine 110. Die Suchanfragen 109 werden in Form einer Suchanforderung übermittelt, die die Suchanforderung und optional eine einzigartige Kennung umfasst, die die Client-Einrichtung 106, die die Anforderung übermittelt, identifiziert. Die einzigartige Kennung kann Daten aus einem in der Client-Einrichtung gespeicherten Cookie oder eine Benutzerkontenkennung sein, wenn der Benutzer ein Konto bei der Suchmaschine 110 unterhält, oder eine bestimmte andere Kennung, die die Client-Einrichtung 106 oder den die Client-Einrichtung benutzenden Benutzer identifiziert.
  • Als Reaktion auf die Suchanforderung verwendet die Suchmaschine 110 den indexierten Cache 112, um Ressourcen zu identifizieren, die für die Anfragen relevant sind. Die Suchmaschine 110 identifiziert die Ressourcen in Form von Suchergebnissen 111 und gibt die Suchergebnisse in einer Suchergebnisse-Seitenressource an die Client-Einrichtung 106 zurück. Ein Suchergebnis sind durch die Suchmaschine 110 erzeugte Daten, die eine Ressource identifizieren, die eine bestimmte Suchanfrage erfüllt, und umfassen einen Ressourcen-Lokalisierer für die Ressource. Ein beispielhaftes Suchergebnis kann einen Webseitentitel, ein aus der Webseite extrahiertes Text-Snippet und den URL der Webseite umfassen.
  • Die Suchergebnisse werden auf der Basis von Wertungen in Bezug auf die durch die Suchergebnisse identifizierten Ressourcen, wie etwa Wertungen des Informationsabrufs („IR” – Information Retrieval), und optional einer separaten Einstufung jeder Ressource relativ zu anderen Ressourcen (z. B. einer Autoritätswertung) eingestuft. Bei bestimmten Implementierungen werden die IR-Wertungen aus Skalarprodukten von einer Anfrage und einer Ressource entsprechenden Merkmalvektoren berechnet, und die Einstufung der Suchergebnisse basiert auf Relevanz-Wertungen, die eine Kombination der IR-Wertungen und Autoritätswertungen sind. Die Suchergebnisse werden gemäß diesen Wertungen in eine Reihenfolge gesetzt und der Client-Einrichtung gemäß der Reihenfolge bereitgestellt.
  • Die Client-Einrichtungen 106 empfangen die Suchergebnisse-Seiten und geben die Seiten zur Präsentation für Benutzer wieder. Als Reaktion auf die Auswahl eines Suchergebnisses durch den Benutzer an einer Client-Einrichtung 106 fordert die Client-Einrichtung 106 die Ressource an, die durch den in dem ausgewählten Suchergebnis enthaltenen Ressourcenlokalisierer identifiziert wird. Der Publizierer der Website 104, die die Ressource hustet, empfängt die Anforderung der Ressource von der Client-Einrichtung 106 und stellt die Ressource der anfordernden Client-Einrichtung 106 bereit.
  • Bei bestimmten Implementierungen werden die von den Client-Einrichtungen 106 übermittelten Anfragen 109 in Anfrage-Logs 114 gespeichert. Klickdaten für die Anfragen und die durch die Suchergebnisse referenzierten Webseiten werden in den Klick-Logs 116 gespeichert. Die Anfrage-Logs 114 und die Klick-Logs 116 definieren Suchchronikdaten 117, die Daten von vorherigen Suchanforderungen, die mit einzigartigen Kennungen assoziiert sind, und in Bezug auf diese umfassen. Die Klick-Logs definieren Aktionen, die als Reaktion auf durch die Suchmaschine 110 bereitgestellte Suchergebnisse unternommen werden. Die Anfrage-Logs 114 und die Klick-Logs 116 können verwendet werden, um durch die Client-Einrichtungen zu Webseiten, die in Suchergebnissen identifiziert wurden, übermittelte Anfragen und die von Benutzern unternommenen Aktionen (d. h. dass Daten mit den Kennungen aus den Suchanforderungen assoziiert sind, so dass auf eine Suchchronik für jede Kennung zugegriffen werden kann) abzubilden. Die Klick-Logs 116 und Anfrage-Logs 114 können somit von der Suchmaschine verwendet werden, um die Sequenz der durch die Client-Einrichtungen übermittelten Anfragen und die als Reaktion auf die Anfragen unternommenen Aktionen und wie oft die Anfragen übermittelt werden, zu bestimmen.
  • Ein Werbe-Verwaltungssystem 130 ermöglicht die Bereitstellung von Werbung mit den Ressourcen 105. Insbesondere erlaubt das Werbe-Verwaltungssystem 130 Werbekunden, Targeting-Regeln zu definieren, die Attribute des bestimmten Benutzers berücksichtigen, um abgezielte Werbung für die Benutzer bereitzustellen. Zu beispielhaften Targeting-Regeln gehört Schlüsselwort-Targeting, wobei Werbekunden Gebote für Schlüsselwörter geben, die entweder in Suchanfragen oder in Webseiteninhalt anwesend sind. Werbung, die mit Schlüsselwörtern assoziiert ist, die Gebote aufweisen, die dazu führen, dass ein Werbe-Slot als Reaktion auf eine Auktion zuerkannt wird, wird zur Anzeige in den Werbe-Slots ausgewählt.
  • Diese abgezielte Werbung kann für viele verschiedene Ressourcen, wie etwa die Ressourcen 105 der Publizierer 104, auf einer Suchergebnisse-Seitenressource bereitgestellt werden und, wie nachfolgend ausführlicher beschrieben werden wird, mit einer Ressource, die die Suchmaschinen-Schnittstelle 120 umfasst. Zum Beispiel umfasst eine Ressource 105 von dem Syndikationspublizierer 104 Anweisungen, die bewirken, dass die Client-Einrichtung Werbung von dem Werbe-Verwaltungssystem 130 anfordert. Die Anforderung umfasst eine Publiziererkennung und optional Schlüsselwortkennungen in Bezug auf den Inhalt der Ressource. Das Werbe-Verwaltungssystem 130 stellt seinerseits dem bestimmten Benutzer abgezielte Werbung bereit. Wenn ein Benutzer eine Werbung auswählt, erzeugt die Client-Einrichtung 106 eine Anforderung einer Landeseite der Werbung, die typischerweise eine Webseite des Werbekunden ist.
  • Mit Bezug auf eine Suchergebnisse-Seite gibt die Client-Einrichtung die Suchergebnisse-Seite wieder und sendet eine Anforderung zu dem Werbe-Verwaltungssystem 130 zusammen mit einem oder mehreren Schlüsselwörtern in Bezug auf die Anfrage, die der Benutzer der Suchmaschine 110 bereitstellt. Wie nachfolgend ausführlicher beschrieben werden wird, kann bei bestimmten Implementierungen Werbung jedoch auf Schlüsselwörtern in Bezug auf Anfragevorschläge basieren, und die Werbung kann mit den Suchergebnissen bereitgestellt werden, die als Reaktion auf das Erfüllen eines Vorhersagekriteriums bereitgestellt werden. Bei anderen Varianten, die auch nachfolgend ausführlicher beschrieben werden, kann Werbung auch auf der Basis einer derzeitingen Anfrageeingabe bereitgestellt werden, die keine vollständige Anfrageeingabe bildet, z. B. kann Werbung auf der Basis der Eingabe eines einzigen Zeichens oder einer derzeitigen Eingabe, die einen Stamm für viele verschiedene Wörter bildet, bereitgestellt werden. Auf eine Weise ähnlich wie beim Schlüsselwort-Targeting übermittelt ein Werbekunde Stamm-Gebote für Wortstämme. Wenn eine Anfrageeingabe ein Anfragestamm ist, der mit einem Wortstamm übereinstimmt, wird Werbung, die mit Anfrage-Stämmen assoziiert ist, die Stamm-Gebote aufweisen, die dazu führen, dass ein Werbe-Slot als Reaktion auf eine Auktion zuerkannt wird, zur Anzeige in Werbe-Slots ausgewählt.
  • Das Werbe-Verwaltungssystem 130 umfasst ein Datenspeichersystem, das Kampagnendaten 132 und Leistungsdaten 134 speichert. Die Kampagnendaten 132 speichern Werbung, Targeting-Informationen und Budgetinformationen für Werbekunden. Die Leistungsdaten 134 speichern Daten, die die Leistung der Werbung angeben, die erbracht wird. Solche Leistungsdaten können zum Beispiel Klick-Through-Rates für Werbung, die Anzahl der Impressions für Werbung und die Anzahl der Umsetzungen für Werbung umfassen. Es können auch andere Leistungsdaten gespeichert werden. Bei bestimmten Implementierungen können die Leistungsdaten 134 auf der Basis von Anfragen, die von Benutzern tatsächlich eingegeben werden (z. B. Anfragen, die ein Benutzer tippt und dann einen „Suchen”-Befehl auswählt), und von Anfragen, die vorgeschlagen werden, aufgeteilt werden. Da die Leistung von Werbung auf der Basis des Anfragetyps (z. B. tatsächlich eingegebene Anfragen und vorgeschlagene Anfragen) variieren kann, kann die Werbung, die für eine Anfrage ausgewählt wird, die aus bestimmten Wörtern besteht, abhängig davon variieren, ob die Anfrage tatsächlich eingegeben oder vorgeschlagen wird.
  • Die Kampagnendaten 132 und die Leistungsdaten 134 werden als Eingabeparameter für eine Werbe-Auktion verwendet. Insbesondere hält das Werbe-Verwaltungssystem 130 als Reaktion auf jede Anforderung von Werbung eine Auktion ab, um Werbung auszuwählen, die als Reaktion auf die Anforderung bereitgestellt wird. Die Werbung wird gemäß einer Wertung eingestuft, die in bestimmten Implementierungen proportional zu einem Wert ist, der auf einem Werbe-Gebot und einem oder mehreren in den Leistungsdaten 134 spezifizierten Parametern basiert.
  • §1.2 Anfragevorschläge
  • Zusätzlich zu dem Bereitstellen von Suchergebnissen als Reaktion auf Anfragen stellt die Suchmaschine 110 durch Verwendung eines Anfragevorschlagssystems 118 einer Client-Einrichtung Anfragevorschläge 113 bereit. Die Anfragevorschläge 113 können durch die Suchmaschine 110 als Reaktion auf eine Anfragevorschlagsanforderung von der Client-Einrichtung bereitgestellt werden. Das Anfragevorschlagssystem 118 greift auf die Suchchronikdaten 117 zu und bestimmt eine Liste von Anfragevorschlägen auf der Basis von Suchanfragen, die die Anfragezeichen als Stamm aufweisen (oder als Alternative oder zusätzlich Anfragen, die durch Thema oder gemeinsames Auftreten verwandt sind). Bei bestimmten Implementierungen basieren die Suchvorschläge auf Suchchronikdaten 117, die mit der einzigartigen Kennung der Client-Einrichtung assoziiert sind, die die Anfragevorschlagsanforderung übermittelt hat. Zum Beispiel kann es sich bei den Anfragevorschlägen um Vorschläge auf der Basis von gemeinsamem Häufigkeits-Auftreten und Anfrage-Stemming von in den Anfrage-Logs 114 gespeicherten Anfragen handeln, die dann gemäß den mit der einzigartigen Kennung assoziierten bestimmten Suchchronikdaten 117 gefiltert werden.
  • Als Beispiel nehme man an, dass eine Client-Einrichtung eine Suchressource von der Suchmaschine 110 anfordert. Die Suchmaschine 110 stellt der Client-Einrichtung die angeforderte Suchressource und Schnittstellenanweisungen bereit. Die Suchressource und Schnittstellenanweisungen bewirken, dass die Client-Einrichtung eine Suchschnittstelle 120 erzeugt, die ein Anfrageeingabefeld 122 umfasst. Zum Beispiel kann die Client-Einrichtung einen Web-Browser starten und eine Web-, eine Bild- oder eine Videosuchseite von der Suchmaschine 110 anfordern. Bei bestimmten Implementierungen kann die Client-Einrichtung eine Suchseite anfordern, die eine Kombination von Text, Bildern und/oder Videos durchsucht. Die Suchmaschine 110 kann HTML und Scripts bereitstellen, die bewirken, dass die Client-Einrichtung die Suchschnittstelle 120 mit dem Anfrageeingabefeld 122 erzeugt.
  • Das Anfrageeingabefeld 122 kann Anfragezeichen von einem Benutzer, z. B. Tastenbetätigungseingaben, empfangen und stellt jede Eingabe der Suchmaschine 110 in Form einer Anfragevorschlagsanforderung bereit. Als Reaktion auf die Anfragevorschlagsanforderung identifiziert das Anfragevorschlagssystem 118 Anfragevorschläge und stuft diese gemäß einer Reihenfolge von höchster Einstufung zu einer niedrigsten Einstufung ein und stellt der Client-Einrichtung die Anfragevorschläge 113 bereit. Zum Beispiel kann das Anfragevorschlagssystem 118 auf die Suchchronikdaten 117 zugreifen und Anfragevorschläge auf der Basis von Suchanfragen bestimmen, die die Anfragezeichen „ba” als Anfragestamm aufweisen, z. B. „bank”, „banksy”, „Bankrate”, „ball” usw.
  • Es können verschiedene Einstufungsalgorithmen verwendet werden. Bei bestimmten Implementierungen werden die Anfragevorschläge auf der Basis der Wahrscheinlichkeit eingestuft, dass der Anfragevorschlag von einem Benutzer ausgewählt wird. Bei bestimmten Implementierungen ist der Anfragevorschlag mit der höchsten Einstufung das kürzeste Wort mit der höchsten Wahrscheinlichkeit, vom Benutzer ausgewählt zu werden. Bei bestimmten Implementierungen werden die Anfragevorschläge so eingestuft oder neu eingestuft, dass natürliche Erweiterungen gezeigt und miteinander gruppiert werden.
  • Die Client-Einrichtung empfängt die Anfragevorschläge 113 und gibt die ersten Anfragevorschläge gemäß einer Reihenfolge wieder. Die ersten Anfragevorschläge können in einer Anfragevorschlagsbox 124a gemäß einer Reihenfolge von einer höchsten Einstufung zu einer niedrigsten Einstufung präsentiert werden. Zum Beispiel kann die Client-Einrichtung die ersten Anfragevorschläge in der Anfragevorschlagsbox 124a in der Suchschnittstelle 120 präsentieren. Die Anfragevorschläge können in der Anfragevorschlagsbox 124a so präsentiert werden, dass der erste Anfragevorschlag (z. B. „bank”) die höchste Wahrscheinlichkeit aufweist, von einem Benutzer ausgewählt zu werden, und der zweite Anfragevorschlag (z. B. „banksy”) die zweithöchste Wahrscheinlichkeit aufweist und so weiter.
  • §2.0 Suchergebnisse zur Vorhersage von Anfragevervollständigungen
  • Als Reaktion auf die Anfragevorschlagsanforderung und das Bereitstellen der Anfragevorschläge bestimmt die Suchmaschine 110, ob ein Vorhersagekriterium erfüllt ist. Das Vorhersagekriterium ist von einer Benutzerauswahl auf der Client-Einrichtung eines in den ersten Anfragevorschlägen bereitgestellten Anfragevorschlags unabhängig und ist von Benutzerauswahl auf der Client-Einrichtung zur Erzeugung einer Suchanforderung, z. B. Auswahl einer Suchschaltfläche oder Betätigen der Eingabetaste durch den Benutzer, unabhängig. Wenn ein Vorhersagekriterium erfüllt ist, werden als Reaktion auf einen der Anfragevorschläge Suchergebnisse zu der Client-Einrichtung gesendet und angezeigt.
  • Bei einem auf Zeit basierenden Vorhersagekriterium kann die Suchmaschine 110 bestimmen, dass das Vorhersagekriterium erfüllt ist, wenn ein als Reaktion auf die Anfragevorschlagsanforderung initialisierter Timer nach einem vordefinierten Zeitraum abläuft und während des vordefinierten Zeitraums keine zusätzlichen Anfragevorschlagsanforderungen empfangen werden. Zum Beispiel kann die Suchmaschine 110 die erste Anfragevorschlagsanforderung empfangen und einen Timer initialisieren und starten, der nach einer Sekunde abläuft. Die Suchmaschine 110 kann den Timer überwachen und bestimmen, dass das Vorhersagekriterium erfüllt ist, wenn der Timer nach 2 Sekunden abläuft, und bevor ein anderer Anfragevorschlag empfangen wird. Wenn der Timer abläuft, bevor ein anderer Anfragevorschlag gesendet wird, werden Suchergebnisse als Reaktion auf einen der Anfragevorschläge zu der Client-Einrichtung gesendet und angezeigt. Wenn die relevanten Suchergebnisse bereits auf der Client-Einrichtung vorliegen (z. B. cache-gespeichert sind), können dann als Alternative in dem Cache gespeicherte Suchergebnisse angezeigt werden.
  • Bei bestimmten Implementierungen geben Wahrscheinlichkeitsdaten für jeden Anfragevorschlag eine jeweilige Wahrscheinlichkeit an, vom Benutzer ausgewählt zu werden. Bei bestimmten Implementierungen kann somit das Vorhersagekriterium auf dieser Wahrscheinlichkeit basieren oder kann mit einem auf Zeit basierenden Vorhersagekriterium kombiniert werden. Die Suchmaschine 110 kann den Anfragevorschlag mit der höchsten jeweiligen Wahrscheinlichkeit relativ zu den Wahrscheinlichkeiten der anderen der Client-Einrichtung bereitgestellten Anfragevorschläge identifizieren und dann bestimmen, dass das Vorhersagekriterium erfüllt ist, wenn die höchste jeweilige Wahrscheinlichkeit des Anfragevorschlags eine Schwellenwahrscheinlichkeit übersteigt, die größer als null ist. Zum Beispiel kann die Suchmaschine 110 bestimmen, dass der Anfragevorschlag „bank” eine höhere Wahrscheinlichkeit aufweist, ausgewählt zu werden, als die Anfragevorschläge „banksy”, „Bankrate” und „ball”. Die Suchmaschine 110 vergleicht die Wahrscheinlichkeit des Anfragevorschlags „bank”, z. B. fünf Prozent, mit einer Schwellenwahrscheinlichkeit, z. B. drei Prozent, und bestimmt, dass die mit dem Anfragevorschlag „bank” assoziierten Suchergebnisse zu der Client-Einrichtung gesendet und angezeigt werden sollen, oder als Alternative aus dem Cache angezeigt werden, wenn sie bereits auf der Client-Einrichtung vorliegen.
  • Bei bestimmten Implementierungen können die Anfragevorschläge auch so in eine Reihenfolge gesetzt werden, dass natürliche Erweiterungen gezeigt und miteinander gruppiert werden. Bei diesen Implementierungen kann der kürzeste Anfragevorschlag in einer Gruppe zuerst präsentiert werden, obwohl der kürzeste Anfragevorschlag möglicherweise nicht die höchste Wahrscheinlichkeit aufweist, von einem Benutzer ausgewählt zu werden. Zum Beispiel kann „Bankrate” eine Wahrscheinlichkeit von fünf Prozent und „bank” eine Wahrscheinlichkeit von vier Prozent aufweisen, vom Benutzer ausgewählt zu werden. Die Suchmaschine 110 kann die Wahrscheinlichkeit des Anfragevorschlags „bank” mit der Schwellenwahrscheinlichkeit vergleichen und bestimmen, dass die mit dem Anfragevorschlag „bank” assoziierten Suchergebnisse zu der Client-Einrichtung zu senden sind.
  • Das Vorhersagekriterium kann auch auf einem Sprachenmodell basieren. Zum Beispiel kann ein Vorhersagekriterium erfüllt sein, wenn die Suchmaschine 110 eine Sprachengrenze in der mit der ersten Anfragevorschlagsanforderung assoziierten Anfrageeingabe detektiert. Die Sprachengrenze kann eine Silbe, ein Wort oder ein Bi-Gramm sein, um nur einige wenige Beispiele zu nennen.
  • Das Bereitstellen und Anzeigen von Suchergebnissen als Reaktion auf erfüllte Vorhersagekriterien ist in 1 in den vier zeitsequenzierten Repräsentationen 120-1120-4 der Suchressource 120 dargestellt. In der Repräsentation 120-1 hat der Benutzer die teilweise Anfrage „ba” eingegeben und ein Suchkriterium wurde erfüllt. Dementsprechend werden die Suchergebnisse SR11, SR12, SR13 ... bereitgestellt und angezeigt, wie in der Repräsentation 120-2 angegeben.
  • Im vorliegenden Gebrauch ist eine „teilweise Anfrage” eine Anfrageeingabe, die vervollständigt werden kann, um vollständige Anfragen aus einem oder mehreren Wörtern zu bilden. Eine teilweise Anfrage kann somit eine oder mehrere Tastatureingaben sein, die einen Präfix oder Stamm eines Worts definieren, oder kann auch ein gesamtes Wort oder Wörter sein. Zum Beispiel ist der Buchstabe „a” eine teilweise Anfrage, und zwar ist der Buchstabe „a” der Stamm für die Wörter „aardvark”, „Appalachia” usw. Die teilweise Anfrage selbst kann auch ein Wort sein, wie etwa der Buchstabe „a” ein Wort ist. Ähnlich ist das Wort „New” auch eine teilweise Anfrage, da sie mit „York”, „London” usw. kombiniert werden kann, um andere Anfragen zu bilden, und die teilweise Anfrage „New York” kann mit „Mets” oder „Yankess” kombiniert werden, um andere Anfragen zu bilden.
  • Wenn eine teilweise Anfrage ein Wortstamm eines oder mehrerer in einer Sequenz angeordneter Zeichen ist, woran ein oder mehrere Zeichen am Ende der Sequenz angefügt werden können, um ein Wort zu bilden, wird die teilweise Anfrage auch als ein Anfragestamm bezeichnet. Typischerweise stellt ein Anfragestamm kein vollständiges Wort dar oder stellt nur ein Wort aus einigen wenigen Zeichen dar, z. B. „a” oder „an”. Auf Anfragestämme kann separat von Schlüsselwörtern abgezielt werden, wie nachfolgend ausführlicher besprochen werden wird.
  • Wenn Suchergebnisse als Reaktion auf die Erfüllung eines Vorhersagekriteriums anzuzeigen sind, erzeugt die Client-Einrichtung, die die Anweisungen ausführt, eine Angabe in der Suchschnittstelle, die den Anfragevorschlag angibt, für den die Ergebnisse Reaktion sind. Bei bestimmten Implementierungen kann die Angabe eine automatische Vervollständigung einer Anfrageeingabe in dem Anfrageeingabefeld 122 sein, die den Anfragevorschlag angibt, für den die Suchergebnisse Reaktion sind. Die automatische Vervollständigung umfasst differenzierten Text 126a, der an die Anfrageeingabe in dem Anfrageeingabefeld 122 angehängt wird. Zum Beispiel kann der differenzierte Text in dem Anfrageeingabefeld 122 mit einem Graustufen-Hintergrund präsentiert werden. Bei bestimmten Implementierungen weist der differenzierte Text 126a einen Farbhintergrund auf. Bei bestimmten Implementierungen kann der Schriftsatz des differenzierten Texts 126a einen anderen Schriftsatz als die Anfrageeingabe aufweisen, z. B. fett, kursiv, Schriftsatzart usw. Der Cursor im Texteingabefeld bleibt jedoch bei der letzten tatsächlichen Eingabe, d. h. nach dem Buchstaben „a” in dem Stamm „ba”, so dass der Benutzer das Tippen, um zu dem Stamm „ba” hinzuzufügen, wiederaufnehmen oder fortsetzen kann.
  • Es können auch andere Angaben verwendet werden. Zum Beispiel kann der Anfragevorschlag „bank” in der Anfragevorschlagsbox 124a z. B. mit einer Box- oder einer Hintergrundfarbe hervorgehoben werden.
  • Die Client-Einrichtung kann die ersten Suchergebnisse im Wesentlichen synchron mit der Angabe in der Suchschnittstelle 120, die den ersten Anfragevorschlag angibt, für den die ersten Suchergebnisse Reaktion sind, anzeigen. Zum Beispiel kann die Client-Einrichtung die Suchergebnisse „SR11”, „SR12”, „SR13” usw. in der Suchschnittstelle 120 gleichzeitig mit der Anzeige des differenzierten Texts 126a in der Suchschnittstelle 120 anzeigen. In einem anderen Beispiel werden die Suchergebnisse präsentiert, nachdem differenzierter Text gezeigt wird, z. B. nach einer kurzen Verzögerung (z. B. eine Sekunde oder weniger).
  • Wie oben beschrieben, können die Schnittstellenanweisungen bewirken, dass die Client-Einrichtung als Reaktion auf jede Zeicheneingabe in dem Anfrageeingabefeld 122 einen Anfragevorschlag erzeugt.
  • Zum Beispiel tippt der Benutzer weiter und gibt den Buchstaben „r” ein, wie in der Repräsentation 120-3 gezeigt. Das Anfrageeingabefeld 122 kann das Zeichen „r” empfangen, um eine Anfrageeingabe „Bar” zu bilden. Die Scripts können die Anfrageeingabe „Bar” empfangen und bewirken, dass die Client-Einrichtung „Bar” als eine nachfolgende Anfragevorschlagsanforderung der Suchmaschine 110 bereitstellt (oder als Alternative nur den Buchstaben „r”, wenn die Suchmaschine 110 einen derzeitigen Zustand der Eingabe der Client-Einrichtung speichert). Da die teilweise Anfrageeingabe „Bar” nicht mit der vorhergesagten Anfragevervollständigung „bank” übereinstimmt, entfernt die Client-Einrichtung die Suchergebnisse SR11, SR12, SR13 usw. aus der Ansicht.
  • Die Suchmaschine 110 empfängt die Anfragevorschlagsanforderung und stellt zweite Anfragevorschläge als Reaktion auf die Anforderung von der Client-Einrichtung bereit. Zum Beispiel kann das Anfragevorschlagssystem 118 die zweiten Anfragevorschläge auf der Basis der Suchchronikdaten 117 und der Anfrageeingabe „bar” bestimmen, und die Client-Einrichtung gibt die zweiten Anfragevorschläge gemäß der Reihenfolge der Anfragevorschläge wieder. Zum Beispiel präsentiert die Client-Einrichtung die Anfragevorschläge in einer Anfragevorschlagsbox 124b in der Reihenfolge „Bart”, „Barbie”, „Barney”.
  • Die Suchmaschine 110 bestimmt dann, ob ein Vorhersagekriterium für die zweiten Anfragevorschläge erfüllt ist. Vorausgesetzt, dass das Vorhersagekriterium erfüllt ist, stellt die Suchmaschine 110 der Client-Einrichtung als Reaktion auf einen zweiten Anfragevorschlag aus den zweiten Anfragevorschlägen eine weitere Menge von Suchergebnissen bereit. Zum Beispiel kann die Suchmaschine 110 bestimmen, dass ein mit den zweiten Anfragevorschlägen assoziierter Timer nach einem vordefinierten Zeitraum abgelaufen ist und bevor eine weitere Anfragevorschlagsanforderung von der Client-Einrichtung empfangen wurde.
  • Die Client-Einrichtung empfängt die Suchergebnisse und erzeugt eine Angabe in der Suchschnittstelle 120, die den zweiten Anfragevorschlag angibt. Zum Beispiel kann die Client-Einrichtung differenzierten Text 126b präsentieren, der an die Anfrageeingabe in dem Anfrageeingabefeld 122 angehängt wird, und zeigt die zweiten Suchergebnisse „SR21”, „SR22”, „SR23” usw. im Wesentlichen synchron mit dem Erzeugen der Angabe in der Schnittstelle, die den zweiten Anfragevorschlag angibt, an.
  • §2.1 Beispielhafte Zeitdiagramme
  • 2 ist ein Zeitdiagramm 200 eines beispielhaften Prozesses zum Bestimmen, ob ein Timer abläuft und einem Client Suchergebnisse bereitgestellt werden sollten. Das Zeitdiagramm 200 zeigt einen Prozess, der mit einem Client 202 und einem Suchdienst 204 assoziiert ist, während die Zeit nach unten entlang einer vertikalen Achse t vergeht. Der Timer kann als Reaktion auf den Empfang einer Anforderung von Anfragevorschlägen eingeleitet werden oder kann als Reaktion auf den die Vorschläge bereitstellenden Suchdienst 204 eingeleitet werden. In den folgenden Beispielen wird der Timer eingeleitet, wenn die Anfragevorschläge bereitgestellt werden. Es können auch Zeiträume relativ zu anderen Ereignissen verwendet werden, um ein Vorhersagekriterium zu definieren, z. B. ein Zeitraum, nachdem Suchvorschläge präsentiert wurden, aber keine Benutzerinteraktion erhalten haben, oder ein Zeitraum zwischen aufeinanderfolgenden Anfragevorschlagsanforderungen, um einige wenige Beispiele zu nennen.
  • Zu einem Zeitpunkt t0 stellt der Client 202 dem Suchdienst 204 als Reaktion auf den Empfang eines Anfrageeingabezeichens „b” eine erste Anfragevorschlagsanforderung Rb bereit. Zum Beispiel empfängt der Client 202 das Anfrageeingabezeichen „b” aus einem Anfrageeingabefeld in einer Suchschnittstelle.
  • Der Suchdienst 204 identifiziert erste Anfragevorschläge QSb als Reaktion auf die erste Anfragevorschlagsanforderung Rb, und stellt zu einem Zeitpunkt t1 die Vorschläge dem Client 202 bereit. Zusätzlich bestimmt der Suchdienst 204, dass der Anfragevorschlag „Bank” der am höchsten eingestufte Anfragevorschlag in den ersten Anfragevorschlägen QSb ist, und identifiziert Suchergebnisse SRbank für die Anfrage „Bank”.
  • Der Suchdienst 204 initialisiert und startet einen mit den Suchergebnissen SRbank assoziierten Timer T1. Der Timer T1 wird gesetzt, nach einem vordefinierten Zeitraum, z. B. einer Zeit T3, abzulaufen, und der Suchdienst 204 überwacht den Timer T1 auf eine Ablauf-Zeitüberschreitung. Der Suchdienst 204 stellt dem Client 202 erste Anfragevorschläge QSb bereit und der Client 202 gibt die ersten Anfragevorschläge QSb in der Suchschnittstelle wieder. Wenn der Timer T1 abläuft und die Suchergebnisse SRbank immer noch Reaktion auf die letzte Anfragevorschlagsanforderung sind, stellt der Suchdienst 204 dem Client 202 die Suchergebnisse SRbank bereit.
  • Zum Zeitpunkt t2 stellt der Client 202 dem Suchdienst 204 eine zweite Anfragevorschlagsanforderung Rbr bereit. Zum Beispiel empfängt das Anfrageeingabefeld ein zweites Zeichen „r” als Eingabe von einem Benutzer, und die kombinierte Anfrageeingabe „br” wird für die zweite Anfragevorschlagsanforderung Rbr verwendet.
  • Zum Zeitpunkt t3 läuft der Timer T1 ab und der Suchdienst 204 bestimmt, dass die Suchergebnisse SRbank nicht Reaktion auf die zweite Anfragevorschlagsanforderung Rbr sind. Zum Beispiel ist das zweite Zeichen in „bank” nicht „r”, so dass der Benutzer nicht „bank” in das Anfrageeingabefeld eintippte. Als Alternative wird der Timer T1 zum Zeitpunkt t2 gesperrt, wenn der Suchdienst 204 bestimmt, dass die Suchergebnisse SRbank nicht Reaktion auf die zweite Anfragevorschlagsanforderung Rbr sind. In jedem Fall führt dies dazu, dass der Suchdienst 204 die Suchergebnisse SRbank nicht bereitstellt.
  • Zum Zeitpunkt t4 stellt der Suchdienst 204 zweite Anfragevorschläge QSbr als Reaktion auf die zweite Anfragevorschlagsanforderung Rbr bereit. Der Suchdienst 204 bestimmt, dass der Anfragevorschlag „brink” der am höchsten eingestufte Anfragevorschlag in den zweiten Anfragevorschlägen QSbr ist, und identifiziert Suchergebnisse SRbrink. Der Suchdienst 204 initialisiert und startet einen Timer T2, der mit den Suchergebnissen SRbrink assoziiert ist, wobei der Timer zum Zeitpunkt t5 abläuft. Der Client 202 gibt die zweiten Anfragevorschläge QSbr in der Suchschnittstelle wieder, nachdem sie empfangen werden.
  • Zum Zeitpunkt t5 bestimmt der Suchdienst 204, dass der Timer T2 abgelaufen ist und keine Anfragevorschlagsanforderungen seit dem Zeitpunkt t4 empfangen wurden, als T2 initialisiert wurde, und keine weiteren Eingaben von der Client-Einrichtung (z. B. ein expliziter Befehl, eine Suche nach einer bestimmten Anfrage durchzuführen) empfangen wurden. Der Suchdienst 204 stellt dem Client 202 die zweiten Suchergebnisse SRbrink bereit und der Client 202 gibt die zweiten Suchergebnisse SRbrink in der Suchschnittstelle zusammen mit einer Angabe des mit den Suchergebnissen SRbrink assoziierten Anfragevorschlags „brink” wieder.
  • 3 ist ein Zeitdiagramm eines beispielhaften Prozesses, bei dem eine Bestätigung eines Anfragevorschlags dazu führt, dass ein Vorhersagekriterium erfüllt wird. Das Zeitdiagramm 300 zeigt einen Prozess, der mit einem Client 302 und einem Suchdienst 304 assoziiert ist, während die Zeit nach unten entlang einer vertikalen Achse t vergeht.
  • Die Prozesse und Schritte mit Bezug auf die Zeitpunkte t0 und t1 sind den mit Bezug auf 2 oben beschriebenen ähnlich. Zum Zeitpunkt t3 vor dem Zeitpunkt t4, der die Ablauf-Zeitüberschreitung für den Timer T1 ist, empfängt der Suchdienst 304 jedoch zweite Anfragevorschläge QSba. Die zweiten Anfragevorschläge QSba umfassen den Anfragevorschlag „Bank” mit der höchsten Wahrscheinlichkeit, von einem Benutzer ausgewählt zu werden. Hierbei kann die zweite Suchvorschlagsanforderung, d. h. „ba”, als eine Bestätigung interpretiert werden, dass die Suchergebnisse SRbank für den Benutzer von Interesse sind. Dementsprechend interpretiert der Suchdienst 304 dies als Erfüllung eines Vorhersagekriteriums (d. h. Empfangen einer Bestätigung einer Anfrage für anstehende Suchergebnisse für diese Anfrage). Dementsprechend werden die Suchergebnisse SRbank mit den Anfragevorschlägen QSba gesendet, bevor der Timer T1 abläuft.
  • Es kann mehr als ein Vorhersagekriterium verwendet werden. Zum Beispiel ist 1 ein Zeitdiagramm 400 eines Prozesses zum Überwachen mehrerer Timer. Das Zeitdiagramm 400 zeigt einen Prozess, der mit einem Client 402 und einem Suchdienst 404 assoziiert ist, während die Zeit nach unten entlang einer vertikalen Achse t vergeht. In 4 kann der Suchdienst 404 zwei oder mehr Mengen von anstehenden Suchergebnissen gleichzeitig verarbeiten und entscheiden, welche Menge zu der Client-Einrichtung 402 gesendet werden soll.
  • Zum Zeitpunkt t0 empfängt der Client 402 das Zeichen „b”, das in ein Anfrageeingabefeld eingetragen und von einem Benutzer eingegeben wird. Der Client 402 stellt dem Suchdienst 404 eine erste Anfragevorschlagsanforderung Rb bereit.
  • Zum Zeitpunkt t1 sendet der Suchdienst 404 erste Anfragevorschläge QSb, die den am höchsten eingestuften Anfragevorschlag „Bank” umfassen, als Reaktion auf die erste Anfragevorschlagsanforderung Rb. Der Suchdienst 404 identifiziert erste Suchergebnisse SRbank als Reaktion auf den Anfragevorschlag „Bank”. Der Suchdienst 404 initialisiert und startet einen Timer T1, der mit den ersten Suchergebnissen SRbank assoziiert ist. Der Timer T1 wird mit einer ersten Dauer initialisiert, die zum Zeitpunkt t5 abläuft. Der Suchdienst 404 stellt dem Client 402 die ersten Anfragevorschläge QSb bereit und der Client 402 gibt die ersten Anfragevorschläge QSb in einer Suchschnittstelle wieder, die das Anfrageeingabefeld umfasst.
  • Zum Zeitpunkt t2 stellt der Client 402 dem Suchdienst 404 als Reaktion auf die Eingabe von „a” in dem Anfrageeingabefeld durch den Benutzer eine zweite Anfragevorschlagsanforderung Rba bereit. Die zweite Anfragevorschlagsanforderung Rba wird weniger als einen Schwellenzeitraum nach der ersten Anfragevorschlagsanforderung Rb empfangen. Zum Beispiel empfängt das Anfrageeingabefeld Anfrageeingabezeichen von einem Benutzer, der schnell tippen kann.
  • Zum Zeitpunkt t3 sendet der Suchdienst 404 zweite Anfragevorschläge QSba, die wieder „Bank” als den am höchsten eingestuften Anfragevorschlag aufweisen, als Reaktion auf die zweite Anfragevorschlagsanforderung Rba. Die Anfragevorschläge für die Eingabe „ba” weisen jedoch auch einen sehr hoch eingestuften Anfragevorschlag „bart” auf. Dementsprechend startet der Suchdienst 404 einen zweiten Timer T2 für Suchergebnisse SRbart. Wenn keine zusätzlichen Vorschlagsanforderungen empfangen werden, werden dann beim Ablauf des Timers T1 die Suchergebnisse SRbank bereitgestellt. Wenn der Benutzer jedoch den Buchstaben „r” eingibt, werden die Suchergebnisse für SRbank dann ausgeräumt, der Timer T2 läuft aber weiter, wenn keine zusätzlichen Anforderungen empfangen werden, und wenn der Timer T2 abläuft, werden die Suchergebnisse SRbart bereitgestellt.
  • Der Prozess des Einreihens von mehreren Mengen von Suchergebnissen in Warteschlangen kann für nachfolgende Eingaben erweitert werden. Wenn zum Beispiel der Client 402 die (nicht gezeigte) dritte Anfragevorschlagsanforderung Rbar sendet, kann der Suchdienst 404 den nächsten Anfragevorschlag mit der höchsten Einstufung in den dritten Anfragevorschlägen QSbar identifizieren, zum Beispiel „barn” und dritte Suchergebnisse SRbarn, die mit dem Anfragevorschlag „barn” assoziiert sind. Der Suchdienst 404 kann einen mit den dritten Suchergebnissen SRbarn assoziierten (nicht gezeigten) Timer T3 initialisieren und starten. Die Suchergebnisse SRbart und SRbarn und optional ihre jeweiligen Timer werden dann auf ähnliche Weise gehandhabt, wie die Suchergebnisse SRbank und SRbart und die Timer T1 und T2 gehandhabt wurden.
  • Bei anderen Implementierungen präsentiert der Client 402, wenn der Zeitraum zwischen Anfragevorschlagsanforderungen kurz bleibt (z. B. in einem Abstand von weniger als einem Schwellenzeitraum Tz) keine Suchergebnisse in der Suchschnittstelle, gleichgültig, ob die Anfragevorschlagsanforderung eine Menge von Suchergebnissen SR bestätigt oder nicht. Der Grund dafür besteht darin, dass schnelles Tippen als ein Signal interpretiert wird, dass der Benutzer eine spezifische Absicht hat, eine bestimmte Anfrage einzugeben, und somit keine Suchergebnisse in Form von Vorschlägen benötigt.
  • Man nehme zum Beispiel an, dass der Benutzer eine bestimmte Phrase weiß, die er zu eingeben beabsichtigt, z. B. „Banking-Gesetzvorschlag im Repräsentantenhaus aufgehalten”. Der Benutzer kann diese Phrase schnell tippen und dann einen „Suchen”-Befehl in der Schnittstelle 120 auswählen. Während dieser Zeit ignoriert der Benutzer wahrscheinlich jegliche Suchergebnisse, die bereitgestellt werden, und somit muss der Suchdienst 404 keine Suchergebnisse bereitstellen. Wenn zum Beispiel zum Zeitpunkt tx nach t2 der Suchdienst 404 eine dritte Anfragevorschlagsanforderung Rban empfängt und die dritte Anfragevorschlagsanforderung Rban weniger als einen Schwellenzeitraum von der zweiten Anfragevorschlagsanforderung Rba auseinanderliegt, kann der Suchdienst 404 den Timer T1 auf die Zeit ty verlängern, so dass zum Zeitpunkt t4 keine Suchergebnisse zu dem Client 402 gesendet werden. Solange der Benutzer weiter schnell tippt, können der Timer T1 oder beliebige andere Timer für beliebige andere Suchergebnisse SR, die anstehen können, weiter verlängert werden.
  • Bei bestimmten Implementierungen können die mit aufeinanderfolgenden Anfragevorschlagsanforderungen assoziierten Zeiträume an einen Benutzer angepasst werden. Zum Beispiel kann der Suchdienst 404 bestimmen, dass ein erster Client, der von einem ersten Benutzer benutzt wird, Anfragevorschlagsanforderungen schneller als der standardmäßige vorbestimmte Zeitraum bereitstellt, z. B. der Benutzer im Vergleich zu vielen anderen Benutzern schnell tippt. Der standardmäßige Zeitraum kann zum Beispiel eine halbe Sekunde betragen und der Suchdienst kann bestimmen, dass der erste Client alle Drittelsekunden Anfragevorschlagsanforderungen bereitstellt. Der Suchdienst kann den angepassten Zeitraum (z. B. ein Drittel einer Sekunde) verwenden, um zu bestimmen, wann dem ersten Client Suchergebnisse bereitzustellen sind. In einem Beispiel kann der Suchdienst 404 auf der Basis einer Client-Kennung einen zweiten Client identifizieren. Der Suchdienst 404 kann mit dem zweiten Client assoziierte Client-Suchchronikinformationen verwenden, um einen angepassten Zeitraum zu bestimmen. Diese Schwellenzeit kann auf einen minimalen Betrag reduziert werden, z. B. einen Betrag, der größer als der Schwellenzeitraum Tz ist.
  • Die obigen beispielhaften Zeiträume sind veranschaulichend und nicht erschöpfend, und es können auch andere Zeiträume verwendet werden. Wenn zum Beispiel der Suchdienst 404 bestimmt, dass aufeinanderfolgende Anfragevorschlagsanforderungen in einem Abstand von weniger als einem Schwellenzeitraum empfangen werden, prüft der Suchdienst 404 erst, ob ein Vorhersagekriterium erfüllt ist, nachdem ein Zeitraum größer als der Schwellenzeitraum nach dem Empfang der letzten Anfragevorschlagsanforderung vergangen ist. Umgekehrt kann eine Pause zwischen Anfragevorschlagsanforderungen (z. B. größer als der Schwellenzeitraum) angeben, dass einer der Anfragevorschläge den Benutzer interessiert und der Suchdienst 404 sollte Suchergebnisse für den am höchsten eingestuften Anfragevorschlag oder den Anfragevorschlag mit der höchsten Wahrscheinlichkeit, vom Benutzer ausgewählt zu werden, senden.
  • Bei alternativen Implementierungen stellt der Suchdienst 404 der Client-Einrichtung die Suchergebnisse SR automatisch mit den Anfragevorschlägen bereit, und die Timer werden lokal auf der Client-Einrichtung verarbeitet. Dementsprechend muss der Suchdienst 404 den Zustand der Client-Einrichtung nicht überwachen, da die Client-Einrichtung 402 ihren eigenen Zustand mit lokalen Timern überwacht. Die Suchergebnisse, die bereitgestellt werden, werden nicht unmittelbar wiedergegeben und umfassen Metadaten, die den Anfragevorschlag angeben, auf den sie reagieren. Zu einem späteren Zeitpunkt (z. B. beim Ablauf eines Timers auf der Client-Einrichtung) durchsucht der Client 402 den lokalen Cache nach relevanten Suchergebnissen.
  • Bei bestimmten Implementierungen stellt der Suchdienst 404 der Client-Einrichtung 402 keine Suchergebnisse bereit, wenn die Suchergebnisse zuvor zu der Client-Einrichtung 402 gesendet wurden. Zum Beispiel kann der Suchdienst 404 Daten speichern (die z. B. nach dem Ende der Sitzung ablaufen), die die Suchergebnisse, die der Client-Einrichtung 402 bereitgestellt wurden, und die Länge des mit den Ergebnissen assoziierten Cache-Timers angeben. Wenn der Suchdienst 404 bestimmt, dass ein Vorhersagekriterium für Suchergebnisse erfüllt ist, die bereits zu der Client-Einrichtung 402 (z. B. während derselben Sitzung) gesendet wurden, stellt der Suchdienst 404 dem Client die Suchergebnisse nicht bereit. Beispiele für solche Daten, die die Suchergebnisse angeben, die gesendet wurden, wären ein Anfragevorschlag, für den Suchergebnisse gesendet wurden, oder die Suchergebnisse für den Anfragevorschlag oder andere Daten, die die Anfragevorschläge und Suchergebnisse, die zuvor zu der Client-Einrichtung gesendet wurden, identifizieren.
  • Bei bestimmten Implementierungen können die Anfragevorschläge und/oder die Suchergebnisse auch eingestellt werden, aus dem lokalen Cache nach einem vorbestimmten Zeitraum abzulaufen. Die Ablaufzeit kann auf der Zeitsensibilität von Anfragevorschlägen basieren. Im Allgemeinen sind aktuelle Anfragen (z. B. Nachrichten, Popkultur) zeitsensibler als nichtaktuelle Anfragen (z. B. Geschichte, Medizin usw.). Zum Beispiel können Anfragevorschläge in Bezug auf Nachrichten eingestellt werden, nach einer Stunde abzulaufen, und Anfragevorschläge in Bezug auf römische Geschichte können eingestellt werden, nach einem Tag (oder länger) abzulaufen.
  • Wie oben beschrieben, können auch andere Vorhersagekriterien verwendet werden, z. B. die Wahrscheinlichkeit, dass ein Anfragevorschlag ausgewählt wird, eine Schwelle übersteigt oder die derzeitige Anfrageeingabe ein Sprachengrenzenkriterium, wie etwa ein Wort, eine Silbe oder ein n-Gramm, erfüllt. Der Suchdienst 404 (oder der Client 402) können ein beliebiges der obigen Vorhersagekriterien entweder alleine oder in Kombination miteinander implementieren.
  • §2.2 Beispielhafte Suchergebnis-Erbringungsverzögerungskriterien
  • Bei bestimmten Implementierungen kann der Suchdienst 404 bestimmen, dass der Suchdienst 404 z. B. auf der Basis begrenzter Ressourcen nicht in der Lage ist, Suchergebnisse für alle empfangenen Anfragevorschlagsanforderungen oder alle erfüllten Vorhersagekriterien bereitzustellen. Der Suchdienst 404 kann Erbringungsverzögerungskriterien aufrufen, um zu bestimmen, wann Suchergebnisse bereitzustellen sind. zum Beispiel kann der Suchdienst 404 Anfragevorschlagsanforderungen auf der Basis von Timern, des Zeitraums zwischen aufeinanderfolgenden Anfragevorschlagsanforderungen und/oder Wahrscheinlichkeiten, dass ein Benutzer eine Anfragevorschlagsanforderung auswählen wird, priorisieren. Ähnlich kann der Suchdienst 404 bestimmen, dass zusätzliche Bandbreite vorliegt oder Ressourcen, die verfügbar sind, und der Suchdienst 404 kann die Erbringungsverzögerungskriterien entfernen oder verringern. Bei bestimmten Implementierungen kann der Suchdienst 404 verschiedene Verzögerungskriterien für verschiedene Clients auf der Basis der Anzahl von Anfragevorschlagsanforderungen, die von jeweiligen Clients empfangen werden, der Anzahl von für jeweilige Clients erfüllte Vorhersagekriterien, auf der Basis des Zeitintervalls zwischen aufeinanderfolgenden Anfragevorschlagsanforderungen für einen jeweiligen Client und/oder auf der Basis des Zeitintervalls zwischen der Bestimmung des Erfüllens aufeinanderfolgender Vorhersagekriterien für einen jeweiligen Client aufrufen.
  • Bei bestimmten Implementierungen kann der Suchdienst 404 die Dauer von mit Suchergebnissen assoziierten Timern justieren. Wenn zum Beispiel der Suchdienst 404 bestimmt, dass er auf der Basis der derzeitigen Vorhersagekriterien nicht in der Lage ist, bestimmten Clients Suchergebnisse bereitzustellen, kann der Suchdienst 404 einen globalen Zeitraum für alle Timer, die bestimmen, wann Suchergebnisse einem Client erbracht werden, vergrößern.
  • Bei bestimmten Implementierungen kann der Suchdienst 404 einem Client Suchergebnisse alle n Male bereitstellen, wenn ein Vorhersagekriterium erfüllt ist oder eine Anfragevorschlagsanforderung empfangen wird. Zum Beispiel kann der Suchdienst 404 bestimmen, dass es keine verfügbare Ressourcen zum Bereitstellen von Suchergebnissen für den Client für jede Anfragevorschlagsanforderung gibt, es aber genug Ressourcen gibt, um Suchergebnisse für jede zweite Anfragevorschlagsanforderung von allen Clients zu dem Client zu senden.
  • Bei bestimmten Implementierungen kann der Suchdienst 404 die Wahrscheinlichkeitsschwelle vergrößern, die mit der Wahrscheinlichkeit assoziiert ist, dass ein Benutzer einen Anfragevorschlag auswählt, so dass der Suchdienst 404 auf der Basis des Erfüllens der Wahrscheinlichkeitsschwelle Suchergebnisse für weniger Anfragevorschläge bereitstellt. Zum Beispiel kann der Suchdienst 404 bestimmen, dass er Suchergebnisse nicht für alle anstehenden Suchvorschläge, bei denen das Vorhersagekriterium erfüllt ist, erbringen kann und kann somit die Wahrscheinlichkeitsschwelle auf einen Wert, der die Wahrscheinlichkeit, dass das Vorhersagekriterium erfüllt wird, verringert, bis zu einem Niveau vergrößern, für das wieder alle Anforderungen versorgt werden können, für die das Vorhersagekriterium erfüllt ist.
  • Bei bestimmten Implementierungen basiert die Dauer eines mit den Suchergebnissen assoziierten Timers auf der Wahrscheinlichkeit, die mit einem Anfragevorschlag assoziiert ist, auf den die Suchergebnisse reagieren. Zum Beispiel können Suchergebnisse als Reaktion auf einen Anfragevorschlag mit einer hohen Wahrscheinlichkeit, von einem Benutzer ausgewählt zu werden, mit einem Timer assoziiert werden, der eine kurze Dauer aufweist, z. B. null Sekunden, 100 Millisekunden oder eine bestimmte andere kurze Dauer, und Suchergebnisse als Reaktion auf einen Anfragevorschlag mit einer niedrigen Wahrscheinlichkeit, durch einen Benutzer ausgewählt zu werden, können mit einem Timer assoziiert werden, der eine längere Dauer aufweist, z. B. eine halbe Sekunde.
  • Bei bestimmten Implementierungen ist die Dauer gemäß einer Funktion, wie etwa einer logarithmischen Funktion, umgekehrt proportional zu der Wahrscheinlichkeit.
  • Bei bestimmten Implementierungen drosselt der Suchdienst 404 die Bereitstellung von Suchergebnissen für den Client 402 auf der Basis der Bandbreiten- oder Datenverbindungsfähigkeiten der Verbindung mit dem Client 402. Je höher die Bandbreite oder je besser die Datenverbindungsfähigkeit (z. B. Verzögerungszeit) ist, desto aggressiver ist der Suchdienst im Allgemeinen bei der Bereitstellung von Suchergebnissen. Zum Beispiel kann der Suchdienst 404 bestimmen, dass ein Client eine Verbindung hoher Bandbreite aufweist, und stellt dem Client somit Suchergebnisse als Reaktion auf jede empfangene Anfragevorschlagsanforderung bereit. Als Alternative bestimmt der Suchdienst 404, dass ein Client eine Verbindung niedriger Bandbreite aufweist, und stellt dem Client Suchergebnisse bereit, nachdem ein Timer mit einer langen Dauer abläuft.
  • §3.0 Benutzeroberflächenbeispiele
  • 5A5I zeigen eine Web-Suchseite 500, die Anfragevorschläge und als Reaktion auf einen der Anfragevorschläge Suchergebnisse anzeigt. Die Web-Suchseite 500 kann durch die Suchmaschine oder den Suchdienst der Client-Einrichtung oder dem Client wie oben beschrieben als Reaktion auf eine Anforderung einer Suchressource (z. B. einer Suchseite) bereitgestellt werden.
  • Die Web-Suchseite 500 umfasst eine Suchschnittstelle 502. Die Suchschnittstelle 502 umfasst ein Anfrageeingabefeld 504 und kann Suchergebnisse als Reaktion auf einen mit einer Suchanfrage in dem Anfrageeingabefeld 504 assoziierten Anfragevorschlag anzeigen. Die Web-Suchseite 500 kann Web-, Bild-, Video-, Produkt- oder Dokumentsuchergebnisse anzeigen, um einige wenige Beispiele zu nennen.
  • 5A zeigt eine Anfragevorschlagsbox 506a mit Anfragevorschlägen QSIt. Die Anfragevorschläge „Italien”, „Italien Karte”, „italienisch” und „italienische Geschichte” sind Anfragevorschläge als Reaktion auf die Anfrageeingabe „It” in dem Anfrageeingabefeld. Zum Beispiel hat ein Benutzer den Text „It” in das Anfrageeingabefeld eingetragen, ist sich aber nicht sicher über die spezifische Buchstabierung des Worts „Italien” oder das Thema, über das er sucht (z. B. „Italien” oder „italienisch”). Die Suchmaschine kann in der Anfragevorschlagsbox 506a Anfragevorschläge QSIt bereitstellen, um dem Benutzer dabei zu helfen, eine Suchanfrage zu wählen.
  • Die Anfragevorschläge QSIt können gemäß einer Reihenfolge eingestuft werden. Zum Beispiel können die Anfragevorschläge auf der Basis der Wahrscheinlichkeit eingestuft werden, dass der Benutzer den jeweiligen Anfragevorschlag auswählt. Die Einstufung der Anfragevorschläge gemäß Wahrscheinlichkeit ist durch die numerischen Werte 508a neben den Anfragevorschlägen angegeben. Diese Werte sind nur veranschaulichend und werden in der tatsächlichen Benutzeroberfläche nicht gezeigt. Bei der beispielhaften Einstufung besitzt „Italien” die höchste Wahrscheinlichkeit und eine Einstufung von eins, „italienisch” besitzt die zweite Wahrscheinlichkeit und eine höchste Einstufung von zwei, „Italien Karte” besitzt die dritte Wahrscheinlichkeit und eine höchste Einstufung von drei und „italienische Geschichte” besitzt die niedrigste Wahrscheinlichkeit und eine Einstufung von vier.
  • Die Suchmaschine kann die Anfragevorschläge QSIt so neu einstufen, dass natürliche Anfrageerweiterungen in einer Gruppe zusammen präsentiert werden. Zum Beispiel besitzt gemäß der Neueinstufung „Italien” die höchste Einstufung, „Italien Karte” (mit demselben ersten Ausdruck) besitzt die zweite Einstufung, „italienisch” besitzt die dritte Einstufung und „italienische Geschichte” besitzt die vierte Einstufung.
  • 5B zeigt den Ablauf von 5A als Reaktion auf das Erfüllen eines Vorhersagekriteriums. In 5B werden die Suchergebnisse in dem Client empfangen und der differenzierte Text „alien” 510a wird in dem Anfrageeingabefeld 504 präsentiert. Die Eingabeanfrage kombiniert mit dem differenzierten Text „alien” 510a bildet einen der Anfragevorschläge („Italien”), die in der Anfragevorschlagsbox 506a präsentiert werden, z. B. den Anfragevorschlag mit der höchsten Einstufung.
  • Die Suchergebnisse 514a–c werden in der Suchschnittstelle 502 präsentiert. Die Suchergebnisse 514a–c sind Reaktion auf den Anfragevorschlag „Italien” 512a. Zum Beispiel empfängt die Suchmaschine eine Anfragevorschlagsanforderung RIt von der die Web-Suchseite 500 anzeigenden Client-Einrichtung (z. B. einem Laptop, der die Web-Suchseite 500 anzeigt). Die Suchmaschine identifiziert Anfragevorschläge QSIt und stellt diese der Client-Einrichtung bereit und die Client-Einrichtung präsentiert die Anfragevorschläge QSIt in der Anfragevorschlagsbox 506a gemäß einer Einstufung. Die Suchmaschine bestimmt, dass ein Vorhersagekriterium erfüllt ist, und sendet die mit dem Anfragevorschlag „Italien” 512a assoziierten Suchergebnisse SRItalien zu dem die Web-Suchseite 500 präsentierenden Web-Browser. Die Web-Suchseite 500 präsentiert den differenzierten Text „alien” 510a und die Suchergebnisse 514a–c in der Suchschnittstelle 502.
  • Bei bestimmten Implementierungen kann der Client eine echte Untermenge der Suchergebnisse wiedergeben. Zum Beispiel stellt der Suchdienst dem Client die Suchergebnisse SRItalien bereit und der Client gibt nur das Suchergebnis 514a wieder, ohne die Suchergebnisse 514b–c wiederzugeben. Nach einem vorbestimmten Zeitraum der Inaktivität nach der Wiedergabe 514a, z. B. einer Sekunde, wodurch angegeben werden kann, dass der Benutzer an dem Suchergebnis 514a interessiert ist, können die verbleibenden Suchergebnisse wiedergegeben werden.
  • 5C zeigt den Ablauf von 5B, wenn der Benutzer das Zeichen „h” in das Anfrageeingabefeld 504 einträgt, so dass die präsentierte Anfrageeingabe „Ith” ist. Hier ist die teilweise Anfrage „Ith” kein Stamm (oder anderweitiger Teil) der Anfragevorschläge QIt. Dementsprechend sind die Suchergebnisse 514a–c nicht Reaktion auf die Anfragevorschläge QSIth. Wenn die Client-Einrichtung die Anfragevorschläge QSIth in der Anfragevorschlagsbox 506b präsentiert, blendet die Client-Einrichtung somit auch die Suchergebnisse 514a–c aus, wie durch die gestrichelten Umrisse der Suchergebnisse 514a–c angegeben. Der Blendeffekt kann durch ein Script oder andere Programmieranweisungen implementiert werden.
  • Es können auch andere Weisen des Entfernens von Suchergebnissen verwendet werden. Zum Beispiel werden die Suchergebnisse 514a–c unmittelbar aus der Suchschnittstelle 502 entfernt; sie können grau gezeigt werden (z. B. die Suchergebnisse werden in grau oder eine andere Farbe verwandelt und werden teilweise transparent); oder sie können aus der Ansicht schwinden.
  • Bei anderen Implementierungen bleiben die Suchergebnisse in der Suchschnittstelle 502 in grau gezeigter Form, wenn die Suchergebnisse 514a–c nicht mehr Reaktion auf die Anfrageeingabe sind, aber die Suchschnittstelle erlaubt keine Benutzerinteraktion (z. B. Auswahl) der Suchergebnisse 514a–c in grau gezeigter Form mehr. Bei einer alternativen Implementierung kann der Benutzer mit den Suchergebnissen interagieren (z. B. Maus-Over, Auswählen usw.), und es können verschiedene Aktionen als Ergebnis auftreten. Zum Beispiel bewirkt eine Maus über einem grau gezeigten Suchergebnis, dass es in ursprünglicher Form erscheint, und der Benutzer kann das Suchergebnis auswählen, um die zugrundeliegende Ressource, auf die es sich bezieht, anzufordern. Als Alternative können alle Suchergebnisse zu ihrer ursprünglichen auswählbaren Form zurückkehren, und die Benutzeranfrage in der Anfrageeingabe kann sich wieder in den Anfragevorschlag verwandeln, für den die Suchergebnisse relevant sind. Wenn zum Beispiel in 5C der Benutzer die Maus über das Suchergebnis 514a führt, würden die Suchergebnisse 514a–c zu ihrer Normalform zurückkehren und die Anfrageeingabe würde sich wieder in „Italien” verwandeln.
  • Nunmehr wieder mit Bezug auf das Beispiel von 5C umfassen die Anfragevorschläge QSIth die Vorschläge „Ithaca College”, „Ithaca” und „Ithaca NY” und werden wie gezeigt neu eingestuft. Zum Beispiel kann die Suchmaschine die Anfragevorschläge QSIth gemäß der Länge des Anfragevorschlags einstufen oder so, dass natürliche Erweiterungen gezeigt und miteinander gruppiert werden.
  • 5D zeigt den Ablauf von 5C, wenn ein Vorhersagekriterium für den Anfragevorschlag „Ithaca” 512b erfüllt ist und Suchergebnisse auf der Suchschnittstelle 502 präsentiert werden. Zum Beispiel empfängt die Client-Einrichtung die Suchergebnisse SRIthaca, die Reaktion auf den Anfragevorschlag „Ithaca” 512b sind. Die Client-Einrichtung kann den differenzierten Text „aca” 510b in dem Anfrageeingabefeld 504 präsentieren. Der differenzierte Text „aca” 510b sind Zeichen aus dem Anfragevorschlag „Ithaca” 512b, die nicht bereits in dem Anfrageeingabefeld 504 vorhanden sind.
  • In den obigen Beispielen werden Suchergebnisse als Reaktion auf Anfragevorschlagsanforderungen entfernt oder hinzugefügt. Es gibt jedoch zusätzliche Weisen, wie Suchergebnisse bei Abwesenheit jeglicher zusätzlicher Benutzereingabe gezeigt werden können. Eine beispielhafte Weise ist Verwendung einer Präsentations-Zeitüberschreitung, die auftritt, wenn ein Benutzer für einen spezifizierten Zeitraum, z. B. 30 Sekunden, keine Aktion unternimmt, nachdem Suchergebnisse gezeigt werden.
  • 5E zeigt den Ablauf von 5D nach einer Präsentations-Zeitüberschreitung. Eine Präsentations-Zeitüberschreitung kann auftreten, wenn für einen vorbestimmten Zeitraum Suchergebnisse in der Suchschnittstelle 502 präsentiert werden und keine Benutzerinteraktion in der Suchschnittstelle 502 detektiert wird. Zum Beispiel wurden die Suchergebnisse 516a–b in der Suchschnittstelle 502 präsentiert und es wurde keine Benutzerinteraktion mit den Suchergebnissen 516a–b während des vorbestimmten Zeitraums detektiert. Als Reaktion auf die Präsentations-Zeitüberschreitung kann die Suchschnittstelle 502 automatisch einen anderen Anfragevorschlag auswählen oder die Anfragevorschläge neu einstufen und die Suchmaschine über die Auswahl benachrichtigen. Zum Beispiel kann der Anfragevorschlag „Ithaca NY” 512c mit dem Anfragevorschlag „Ithaca” ausgewechselt werden, so dass „Ithaca NY” 512c der am höchsten eingestufte Anfragevorschlag in der Anfragevorschlagsbox 506c ist. Als Reaktion auf die Benachrichtigung stellt die Suchmaschine Suchergebnisse (z. B. Suchergebnisse 518a–c) für den neu ausgewählten Anfragevorschlag (z. B. „Ithaca NY”) bereit. Als Variante dieser Implementierung fordert die Suchschnittstelle 502 anstelle des Auswählens eines neuen Anfragevorschlags eine neue Menge von Suchergebnissen (z. B. eine nächste Seite von Suchergebnissen, wie etwa Ergebnisse 11–20, wenn Ergebnisse 1–10 angezeigt werden) als Reaktion auf die Präsentations-Zeitüberschreitung an.
  • 5E zeigt auch ein anderes Beispiel dafür, wie Suchergebnisse aus der Suchschnittstelle heraus transitioniert werden können. Hierbei werden die Suchergebnisse 516a–c ausgeblendet und bewegen sich zum Rand der Suchschnittstelle 502, während sich die Suchergebnisse 518a–c einblenden und in der Suchschnittstelle 502 erscheinen. Bei anderen Implementierungen rollen die Suchergebnisse 518a–c auf die Suchschnittstelle 502, während die Suchergebnisse 516a–c aus der Suchschnittstelle 502 herausrollen.
  • Bei bestimmten Implementierungen erfolgt keine Präsentations-Zeitüberschreitung, wenn die Web-Suchseite 500 minimiert ist oder nicht mehr im Fokus steht (d. h. nicht mehr der aktive Ansichtsport ist). Zum Beispiel kann ein Benutzer eine Email empfangen und zu einem Email-Client wechseln. Da sich die Web-Suchseite 500 nicht mehr im Fokus befindet, wird der Timer für die Präsentations-Zeitüberschreitung suspendiert. Wenn die Suchseite 500 wieder der aktive Ansichtsport wird, nimmt der Timer seinen Countdown wieder auf.
  • §3.1 Zusätzliche Benutzeroberflächenmerkmale und Suchdienstmerkmale
  • Die oben beschriebenen Benutzeroberflächenmerkmale und Suchdienstmerkmale stellen keine erschöpfende Menge von Beispielen dar. Es können auch andere Benutzeroberflächenmerkmale und Suchdienstmerkmale implementiert werden. In den folgenden Abschnitten werden zusätzliche Beispiele für Benutzeroberflächenmerkmale und Suchdienstmerkmale beschrieben.
  • §3.1.1 Merkmale des Zusatz-Anfrageeingabefeldes („Suchbox”)
  • Bei bestimmten Implementierungen erlaubt die Auswahl der Tab-Taste einem Benutzer, zu einem Zeitpunkt ein einzelnes Wort zu dem Anfrageeingabefeld 504 hinzuzufügen oder dieses zu vervollständigen. Wenn zum Beispiel der Benutzer die Tab-Taste ein erstes Mal in 5D betätigt hat, würde der Teil des differenzierten Texts „aca” zu der Anfrageeingabe „Ith” hinzugefügt, wodurch die Anfrageeingabe in „Ithaka” und der aktualisierte differenzierte Text in „_NY” verwandelt würde. Das Betätigen der Tab-Taste für ein zweites Mal würde die Anfrageeingabe in „Ithaca NY” verwandeln und es würde keinen differenzierten Text mehr geben. Als Alternative kann der Benutzer aus den Anfragevorschlägen 512b auswählen.
  • Bei bestimmten Implementierungen wird, wenn der Client ein unerwartetes „Leerzeichen”-Zeichen detektiert (z. B. zwei aufeinanderfolgende Leerzeichen nach einem vollständigen Wort oder Leerzeichen, wodurch eine unerwartete Wortunterbrechung in einem Wort erzeugt wird), die derzeitige Eingabe als eine Anfrage bereitgestellt. Zum Beispiel kann die Eingabe „goog” zu den Vorschlägen „google maps” oder „google translate” führen. Wenn die nächste Anfrageeingabe jedoch ein Leerzeichen ist, wodurch eine Eingabe „goog ” erzeugt wird, wird die Eingabe „goog” als Anfrage von Suchergebnissen verwendet.
  • Bei bestimmten Implementierungen kehrt die Client-Einrichtung zum dem Anfrageeingabefeld zurück, wenn ein Benutzer das Tippen wieder aufnimmt. Die Suchergebnisse, die bereitgestellt werden, können zum Beispiel aus der Webseite herausrollen. Wenn der Benutzer der Client-Einrichtungen eine Maus verwendet, um nach unten zu rollen und Suchergebnisse zu begutachten und dann das Tippen der Anfrageeingabe wieder aufnimmt, rollt die Client-Einrichtung zu dem Anfrageeingabefeld herauf, um das Modifizieren der derzeitigen Anfrageeingabe wieder aufzunehmen.
  • Bei bestimmten Implementierungen umfasst das Anfrageeingabefeld einen Befehl (z. B. eine „x”-Schaltfläche) auf einer Seite. Die Auswahl des Befehls löscht die Anfrageeingabe und kann zusätzlich eine Benachrichtigung zu dem Suchdienst senden, alle anstehenden Suchen und Timer in Bezug auf die Anfragevorschläge zu killen.
  • Bei bestimmten Implementierungen kann das Statusfeld an das Anfrageeingabefeld angrenzend (z. B. darüber) angezeigt werden. Das Statusfeld kann den vorhergesagten Anfragevorschlag angeben, für den die derzeitigen Suchergebnisse gezeigt werden. Während der Benutzer weiter tippt und sich die Suchergebnisse ändern, kann sich auch der Statusindikator ändern, wenn ein anderer Anfragevorschlag für die Suchergebnisse verwendet wird.
  • Bei bestimmten Implementierungen gibt das Auswählen eines Eingabebefehls die vorhergesagte Vervollständigungs-Anfrage als die Suchanfrage ein. Bei diesen Implementierungen wählt der Benutzer, um die derzeitige Anfrageeingabe einzugeben, eine alternative Taste, wie etwa ein Backspace, Escape oder gibt ein zusätzliches „oder unerwartetes” Leerzeichen ein.
  • Bei bestimmten Implementierungen werden Suchergebnisse nicht automatisch angezeigt. Stattdessen werden ein oder mehrere Indikatoren verwendet, um anzuzeigen, wann Suchergebnisse bereit sind, angezeigt zu werden. Zum Beispiel kann für jeden Suchanfragevorschlag ein kleiner runder Kreis angezeigt werden, und der Kreis ist rot, wenn es keine für die Vorschläge anzuzeigenden Suchergebnisse gibt, und der Kreis wechselt zu grün, wenn Suchergebnisse für Anzeige verfügbar sind. Zum Beispiel können die Kreise 508b in 5E, die Einstufung repräsentieren und tatsächlich nicht angezeigt werden, stattdessen rot und grün farbcodiert sein und tatsächlich angezeigt werden. Der Benutzer kann eine Pfeiltaste oder Tab-Taste oder ein Maus-Over verwenden, um den Fokus auf bestimmte Vorschläge zu richten, und wenn sich der Fokus auf einer bestimmten Auswahl mit einem grünen Indikator befindet, werden die Suchergebnisse angezeigt. Ähnlich wird hinter dem Text des Anfrageeingabefeldes ein Fortschritt-Balken angezeigt, der sich voranbewegt, während der Benutzer tippt und die Cursorposition in dem Anfrageeingabetext einholt, wenn die Suchergebnisse empfangen werden. Es können andere Indikatoren verwendet werden, wie etwa sequentielle Balken (ähnlich wie ein Signalstärkenindikator) oder Hervorhebung des Anfrageeingabefeldes (z. B. wechselt der Rand zu einer blauen Farbe).
  • Bei bestimmten Implementierungen bewirkt die Auswahl einer Pfeil-Rechts-Taste, dass ein höchst eingestufter Anfragevorschlag in das Anfrageeingabefeld eingegeben wird. Der Benutzer kann dann das Tippen wieder aufnehmen, indem er zu dem Vorschlag hinzufügt. Zum Beispiel kann ein Benutzer wünschen, die Anfrage „Mississippi blues festival” einzugeben. Statt Mississippi zu tippen, kann der Benutzer „Miss->blues festival” tippen.
  • Bei bestimmten Implementierungen kann eine teilweise Anfrageeingabe oder ein Anfragestamm als Anfrage der Suchmaschine 110 bereitgestellt werden. Bei einer ersten Variante dieser Implementierungen kann die teilweise Anfrageeingabe der Suchmaschine 110 zusätzlich zu dem ausgewählten Anfragevorschlag als zusätzliche Anfrageeingabe bereitgestellt werden. Zum Beispiel kann die Suchmaschine 110 für die teilweise Anfrageeingabe „ama” den Anfragevorschlag „Amazonas-Regenwald” zum Identifizieren von Suchergebnissen auswählen. Die Suchmaschine kann jedoch auch eine Suche an der teilweisen Anfrageeingabe „ama” durchführen, und somit umfassen die Suchergebnisse, die als Reaktion auf das Erfülltsein eines Vorhersagekriteriums gezeigt werden, Suchergebnisse als Reaktion auf den Anfragevorschlag „Amazonas-Regenwald” und Suchergebnisse als Reaktion auf die Anfrageeingabe „ama”. Die jeweiligen Suchergebnisse für den Anfragevorschlag und die Anfrageeingabe können wie oben mit Bezug auf 5F beschrieben unterschieden werden, z. B. farbcodiert usw.
  • Bei der zweiten Variante dieser Implementierungen verarbeitet die Suchmaschine 110 die teilweise Anfrageeingabe nur dann, wenn ein Konfidenzmaß oder Qualitätsmaß, das mit den Anfragevorschlägen assoziiert ist, unter jeweiligen Schwellen liegen. Zum Beispiel kann die Suchmaschine 110 für die teilweise Anfrageeingabe „klf” bestimmen, dass keine der Anfragevorschläge ein Konfidenzmaß oder Gleichheitsmaß erfüllen. Dementsprechend führt die Suchmaschine eine Suche nur an der Anfrage „klf” durch. Ein beispielhaftes Konfidenzmaß ist eine Häufigkeit des Auftretens des Anfragevorschlags, eine Wahrscheinlichkeit, dass der Anfragevorschlag vom Benutzer ausgewählt wird, oder ein bestimmtes anderes Maß, das angibt, dass der Anfragevorschlag eine wahrscheinliche Vervollständigung der Anfrageeingabe ist. Ein beispielhaftes Qualitätsmaß für einen Anfragevorschlag ist ein Wert, der die Qualität der zugrundeliegenden Ressourcen angibt, die durch Suchergebnisse als Reaktion auf den Anfragevorschlag referenziert werden. Wenn zum Beispiel ein Anfragevorschlag nur Ressourcen identifiziert, die wenig wichtig sind, z. B. Ressourcen, die in einem Autoritätsgraphen niedrig eingestuft werden, kann der Anfragevorschlag ein sehr niedriges Qualitätsmaß aufweisen. Wenn umgekehrt der Anfragevorschlag Ressourcen identifiziert, die sehr wichtig sind, z. B. Ressourcen, die in dem Autoritätsgraphen sehr hoch eingestuft werden, kann der Anfragevorschlag ein sehr hohes Qualitätsmaß aufweisen.
  • §3.1.2 Zusatz-Vorschlagsmerkmale
  • Bei bestimmten Implementierungen können Vorschlage, die auf der Basis der Chronik des Benutzers personalisiert werden, zusammen mit den Suchergebnissen, die bereitgestellt werden, geschützt (z. B. verschlüsselt) werden. Ein solcher Schutz kann verwendet werden, um Replay-Attacken und andere Exploits zu verhindern, die die Privatsphäre des Benutzers kompromittieren können. Zum Beispiel können Daten für Cookie-Austauschvorgänge, personalisierte Vorschläge und Suchergebnisse über eine SSL (Secure Socket Layer) bereitgestellt werden.
  • Bei bestimmten Implementierungen kann eine virtuelle Tastatur auf dem Bildschirm angezeigt werden (z. B. im Fall einer Mobilgerät-Benutzeroberfläche), und die virtuelle Tastatur farbcodiert bestimmte Tasten, die wahrscheinlich Vervollständigungen durch Buchstaben entsprechen.
  • Bei bestimmten Indikationen werden Indikatoren verwendet, um die Wahrscheinlichkeit der Vervollständigung für jeden Anfragevorschlag anzugeben, z. B. ein rechts des Vorschlags gezeigter Balken. Somit kann der Benutzer ein für jeden Vorschlag gezeigtes Konfidenzniveau visualisieren.
  • Bei bestimmten Implementierungen kann der Benutzer eine Pfeiltaste oder Tab-Taste oder ein Maus-Over verwenden, um den Fokus zu bestimmten Vorschlägen zu wechseln. Wenn der Fokus zu einem bestimmten Vorschlag wechselt, werden Suchergebnisse für diesen Vorschlag gezeigt. Wenn der Benutzer keinen Vorschlag auswählt, kann der Benutzer das Tippen wieder aufnehmen, um den Fokus wieder auf die derzeitige Anfrageeingabe zurückzuführen.
  • Bei bestimmten Implementierungen werden Anfragevorschläge kontinuierlich aus einem letzten Wort oder Ausdruck einer Anfrage gebildet. Das letzte Wort oder der letzte Ausdruck einer Anfrage wird als Grundlage für einen neuen Anfragevorschlag verwendet, und somit kann die Anzahl der Ausdrücke in den Anfragevorschlägen unbeschränkt bleiben.
  • Bei bestimmten Implementierungen kann ein Anfragevorschlag einen Befehl umfassen, der, wenn er ausgewählt wird, die Anzeige eines ersten (z. B. am höchsten eingestuften) Suchergebnisses für die Anfrage bewirkt. Zum Beispiel bewirkt in 5F eine Maus über (oder anderweitige Auswahl) einem der Kreise neben einem der Suchergebnisse 522b, dass eines der entsprechenden Suchergebnisse 524a, 524b oder 524c erscheint. Als Alternative bewirkt das Auswählen des Kreises, dass die Client-Einrichtung die durch das entsprechende Suchergebnis referenzierte zugrundeliegende Ressource anfordert. Zum Beispiel bewirkt das Auswählen des Kreises neben dem Suchergebnis „Ithaca NY”, dass die Client-Einrichtung die durch das Suchergebnis 524a referenzierte Ressource anfordert.
  • §3.1.3 Zusätzliche Präsentationsmerkmale
  • Bei bestimmten Implementierungen stellt die Suchmaschine der Client-Einrichtung keine Anfragevorschläge bereit, wenn ein Zeichen aus der Anfrageeingabe (z. B. mit der Backspace- oder Löschtaste) gelöscht wird, und es werden zusätzliche Anfragevorschläge erst dann wieder angezeigt, wenn wieder ein Zeichen in das Anfrageeingabefeld 504 hinzugefügt wird.
  • Bei bestimmten Implementierungen stellt die Suchmaschine der Client-Einrichtung keine Anfragevorschläge bereit, wenn ein Zeichen (z. B. durch Verwendung einer Ausschneideoption) aus der Anfrageeingabe gelöscht wird, und Anfragevorschläge werden erst dann wieder angezeigt, wenn die Suchmaschine bestimmt, dass für eine vorbestimmte Zeitdauer kein Zeichen aus dem Anfrageeingabefeld 504 gelöscht wurde. Wenn zum Beispiel die Suchschnittstelle 502 bestimmt, dass Änderungen an der Anfrageeingabe die Entfernung von Zeichen sind, sendet die Client-Einrichtung keine Anfragevorschlagsanforderung zu der Suchmaschine, bis drei Sekunden nach dem Löschen des letzten Zeichens vergangen sind. Wie bei dem Präsentationstimer verwendet die Client-Einrichtung einen Edit-Timer, um zu bestimmen, wann nach Zeichenlöschung oder Backspace eine weitere Anfragevorschlagsanforderung zu senden ist.
  • Bei bestimmten Implementierungen können, wenn die Suchschnittstelle 502 nach einer vorbestimmten Zeitdauer keine Interaktion mit den Suchergebnissen detektiert, Suchergebnisse für zwei oder mehr der Anfragevorschläge in der Suchschnittstelle präsentiert werden. Zum Beispiel ist das Suchergebnis 518a Reaktion auf „Ithaca”, das Suchergebnis 518b Reaktion auf „Ithaca NY” und die Suchergebnisse 518c sind Reaktion auf „Ithaca College”. An der Seite der Suchergebnisse kann eine Angabe des mit den jeweiligen Suchergebnissen assoziierten Anfragevorschlags präsentiert werden. Zum Beispiel kann die Suchschnittstelle 502 eine Box links jedes Suchergebnisses umfassen, wobei die Box den Text des mit dem Suchergebnis assoziierten Anfragevorschlags enthält.
  • Bei bestimmten Implementierungen können mehrere Anfragevorschläge eine hohe Priorität oder dieselbe Priorität aufweisen. Wenn dies auftritt, wird mindestens ein Suchergebnis als Reaktion auf jeden der mehreren Anfragevorschläge, die die hohe Priorität aufweisen oder Wahrscheinlichkeit aufweisen, wiedergegeben. 5G zeigt zwei Anfragevorschläge 512d–e und Suchergebnisse 520a–c als Reaktion auf die zwei Anfragevorschläge 512d–e. Zum Beispiel weisen von den zwei Anfragevorschlägen 512d–e beide eine hohe Wahrscheinlichkeit auf, von einem Benutzer ausgewählt zu werden. Bei diesen Implementierungen wird der Hintergrund der Anfragevorschläge (oder des Texts der Anfragevorschläge) in einer Anfragevorschlagsbox 506d farbcodiert und der Hintergrund der Suchergebnisse 520a–c (oder des Texts der Suchergebnisse) wird farbcodiert, um auf den Anfragevorschlag zu passen, auf den die Ergebnisse reagieren. Zum Beispiel sind die Suchergebnisse 520a–b Reaktion auf den Anfragevorschlag „Ithaca College” 512e, und das Suchergebnis 520c ist Reaktion auf den Anfragevorschlag „Ithaca” 512d.
  • Dementsprechend können die Suchergebnisse, die bereitgestellt werden, auf der obersten vorhergesagten Anfrage oder auf mehrere der oberen vorhergesagten Anfragen, z. B. wie in 5G gruppiert, basieren, oder bei anderen Implementierungen auf den oberen Ergebnissen (z. B. den oberen 1 oder 2 Ergebnissen) für jede vorhergesagte Anfrage, wenn der getippte Wortanfang des Benutzers gegeben ist.
  • Bei bestimmten Implementierungen bewirkt das Betätigen einer bestimmten Taste, wie etwa einer Bild-Ab-Taste, oder das Platzieren der Maus in dem Rollbalken zum Abwärtsrollen, dass die Client-Einrichtung Suchergebnisse, die für einen Anfragevorschlag gezeigt werden, durchblättert, während sie die derzeitige Cursorposition weiterhin in der Anfrageeingabe hält. Der Benutzer kann somit das Tippen zu jedem Zeitpunkt wieder aufnehmen, um die Anfrage weiter zu entwickeln.
  • Bei bestimmten Implementierungen verschwinden Suchergebnisse, die für Vorschläge gezeigt werden, nicht, wenn der Benutzer weiter tippt. Stattdessen können neue Suchergebnisse in die Suchseite z. B. von oben „hereinrollen”, und die alten Suchergebnisse können z. B. nach unten aus der Suchseite „herausrollen”. Suchergebnisse, die sich in der Verarbeitung des Abwärtsrollens befinden und die keine Suchergebnisse sind, die für einen derzeitigen Vorschlag oder eine Anfrageeingabe gefunden würden, werden mit einer Angabe markiert, die angibt, dass die Suchergebnisse „abgestanden” sind d. h. für den derzeitigen Anfragevorschlag nicht relevant sind. Ein Beispiel für diese Schnittstelle ist in 5H gezeigt. Suchergebnisse 526 bewegen sich in einer Abwärtsrichtung, wie durch den Pfeil 527 angegeben. Die Suchergebnisse 526a und 526b sind für den Anfragevorschlag „Ithaca NY” relevant, während die Suchergebnisse 526c und 526d für den Anfragevorschlag „Italien” relevant sind. Das Transparentwerden einer Angabe wie etwa der Suchergebnisse 526c und 526d oder ein bestimmter anderer Indikator, wird dementsprechend erzeugt, um den Benutzer zu benachrichtigen, dass die Suchergebnisse abgestanden sind.
  • Bei bestimmten Implementierungen variiert die Anzahl der Suchergebnisse, die für einen Anfragevorschlag gezeigt werden, abhängig davon, ob der Anfragevorschlag eine Navigationsanfrage oder eine Informationsanfrage ist. Eine Navigationsanfrage ist eine Anfrage, die gewöhnlich nur ein zufriedenstellendes Ergebnis hat, was durch eine sehr hohe Relevanzwertung, durch Verkehrsmuster oder eine Kombination von Relevanz und Verkehrsmustern angegeben wird. Eine Informationsanfrage ist eine Anfrage, die viele Suchergebnisse aufweist, für die mehrere oder mehr der beliebtesten zugrundeliegenden Ressourcen eine relativ gleichmäßig verteilte Auswahlrate aufweisen. Für eine Informationsanfrage werden die Suchergebnisse wie oben gezeigt. Für eine Navigationsanfrage wird nur das die entsprechende Ressource referenzierende oberste Ergebnis gezeigt.
  • Bei bestimmten Implementierungen können Anfragevorschläge, die Suchergebnisse verursachen, die Bilder oder anderen Inhalt umfassen, der Benutzer ablenken kann, bei der Einstufung von Anfragevorschlägen benachteiligt werden.
  • Suchergebnisse, die reichen Inhalt bereitstellen, ziehen die Aufmerksamkeit des Benutzers tendenziell an sich, auch wenn der Inhalt nicht die derzeitigen Interessen des Benutzers betrifft, was zu einem künstlichen Themendriften führt. Bei bestimmten Implementierungen können somit die Anfragen, die das Erzeugen dieser Suchergebnisse bewirken, niedriger als Anfragevorschläge eingestuft werden, die das Erscheinen von weniger ablenkenden Suchergebnissen (z. B. Suchergebnissen hauptsächlich mit Textinhalt) bewirken. Bei alternativen Implementierungen werden die Anfragen nicht neu eingestuft, aber der reiche Inhalt wird unterdrückt, z. B. werden Bilder und Videoclips in den Suchergebnissen nicht gezeigt. Bei Varianten dieser Implementierungen ist die Neueinstufung oder Unterdrückung von dem durchsuchten Corpus abhängig. Wenn der Benutzer zum Beispiel Web-Dokumente sucht, kann Neueinstufung oder Unterdrückung freigegeben werden; wenn der Benutzer Bilder durchsucht, wird dagegen Neueinstufung oder Unterdrückung nicht freigegeben.
  • Bei bestimmten Implementierungen werden Anfragevorschläge, die zu der Identifikation von Inhalt führen, der als sensibler Inhalt klassifiziert wird, z. B. pornografischer Inhalt wie durch einen oder mehrere vorexistierende Pornoklassifizierer identifiziert, nicht zum Erzeugen von Suchergebnissen verwendet. Zum Beispiel können Ressourcen, die durch einen Anfragevorschlag identifiziert werden, von Pornoklassifizierern geprüft werden, und wenn eine Schwellenanzahl der Ressourcen als Porno umfassend klassifiziert wird (z. B. 10% oder beliebige der Ressourcen, die in der ersten Seite der Suchergebnisse referenziert würden usw.), werden die Suchergebnisse nicht für den Anfragevorschlag bereitgestellt. Bei alternativen Implementierungen werden die Suchergebnisse erzeugt, werden aber nicht automatisch gezeigt. Stattdessen wird eine Schaltfläche gezeigt, die angibt, dass der Inhalt, der gezeigt wird, potentiell sensibel ist, und der Benutzer muss bestätigen, dass die Suchergebnisse gezeigt werden können.
  • §3.1.4 Zusätzliche Ressourcenverwaltungsmerkmale
  • Bei bestimmten Implementierungen kann, wenn der Client detektiert, dass keine Zeichen mehr aus dem Anfrageeingabefeld 504 gelöscht werden, der Client einen lokalen Cache nach Anfragevorschlägen und/oder Suchergebnissen für die derzeitige Anfrageeingabe in dem Anfrageeingabefeld 504 prüfen. Zum Beispiel kann der Client dem Suchdienst eine Anfragevorschlagsanforderung RIT bereitstellen und Anfragevorschläge QSIt und Suchergebnisse SRItalien empfangen. Der Client kann die Anfragevorschläge QSIt in der Anfragevorschlagsbox 506a wiedergeben und die Anfragevorschläge QSIt und die Suchergebnisse SRItalien in einem lokalen Cache speichern. Der Client detektiert dann die Eingabe des Zeichens „h” in dem Anfrageeingabefeld 504 und stellt dem Suchdienst eine Anfragevorschlagsanforderung RIth bereit, empfängt die Anfragevorschläge QSIth und gibt die Anfragevorschläge in der Anfragevorschlagsbox 506b wieder. Danach betätigt der Benutzer eine Backspace-Taste, um das Zeichen „h” zu entfernen. Der Edit-Timer löst aus und läuft dann nach einer Periode der Inaktivität ab. Der Client bestimmt dann, dass die derzeitige Anfrageeingabe „It” ist und prüft den lokalen Cache nach Anfragevorschlägen und Suchergebnissen, die mit der Anfrageeingabe „It” assoziiert sind. Unter Auffindung der Anfragevorschläge QSIt und der Suchergebnisse SRItalien präsentiert die Client-Einrichtung dann die Anfragevorschläge QSIt und die Suchergebnisse SRItalien (z. B. die Suchergebnisse 514a–c) in der Suchschnittstelle 502. Wenn sich die Suchergebnisse für den Anfragevorschlag Italien nicht in dem lokalen Cache befinden, kann der Client die Suchergebnisse von dem Suchdienst anfordern oder der Suchdienst kann die Suchergebnisse als Reaktion auf die Erfüllung eines Vorhersagekriteriums bereitstellen.
  • Bei bestimmten Implementierungen werden Anforderungen von Anfragevorschlägen nicht bei jeder Tastenbetätigung gesendet, sondern werden stattdessen gemäß einem Zeitraum gesendet, z. B. alle 150 Millisekunden, oder einem bestimmten anderen Zeitraum. Dadurch wird die Last an dem Suchdienst verringert, während nur minimale Änderungen am Benutzererlebnis verursacht werden.
  • Bei bestimmten Implementierungen überwacht der Suchdienst die Client-Einrichtungsverbindung und stellt keine Suchergebnisse für einen Anfragevorschlag bereit, wenn die Client-Einrichtungsverbindung eine hohe Latenz erfährt oder stark bandbreitenbeschränkt ist. Stattdessen stellt der Suchdienst Suchergebnisse auf herkömmliche Weise bereit, d. h. wenn der Benutzer eine Anforderung für eine spezifische Anfrage ausgibt.
  • Bei bestimmten Implementierungen ist die Client-Einrichtung dafür ausgelegt, die Suchergebnisse progressiv wiederzugeben, während sie empfangen werden. Bei Varianten dieser Implementierung kann ein Suchergebnis, das zuvor bereitgestellt und angezeigt wurde, angezeigt bleiben, wenn neue Suchergebnisse für einen neuen Anfragevorschlag empfangen werden, vorausgesetzt, dass das Suchergebnis, das zuvor bereitgestellt und angezeigt wurde, für den neuen Anfragevorschlag relevant ist.
  • §3.1.5 Modusintegration
  • Sei bestimmten Implementierungen können der Vorschlagsdienst und das Wiedergeben von Suchergebnissen in andere Web-Browser-Modi integriert werden. Zum Beispiel zeigt 5I eine Web-Browser-Seite 530, in der der Benutzer das Zeichen „e” in den Adressbalken eingegeben hat. Als Reaktion werden Vorschläge 532 gezeigt. Zwei der Vorschläge 532b und 532c sind URLs für Webseiten, wie durch das Web-Symbol neben den URLs angegeben. Zwei andere Vorschläge 532a und 532d sind Suchanfragevorschläge, wie durch das Such-Symbol neben den Suchanfragevorschlägen angegeben. Durch Verwendung einer Eingabeeinrichtung wie etwa einer Pfeiltaste kann der Benutzer einen der Vorschläge 532 hervorheben, und es wird entsprechender Inhalt 536 in einem Vorschau-Sichtbereich 538 gezeigt. Der entsprechende Inhalt ist zum Beispiel Suchergebnisinhalt oder eine Webseiten-Vorschau.
  • Wenn zum Beispiel der Benutzer den Vorschlag 532b hervorhebt, wie durch die gestrichelte Box 534a angegeben, wird eine Vorschau der Webseite auf example1.com in dem Vorschau-Sichtbereich 538 gezeigt. Eine andere Eingabe, wie etwa eine Eingabetasten-Eingabe, bewirkt, dass die Client-Einrichtung zu der vorgeschauten Webseite navigiert.
  • Wenn der Benutzer dagegen den Vorschlag 532d hervorhebt, wie durch die gestrichelte Box 534b angegeben, werden Suchergebnisse in dem Vorschau-Sichtbereich 538 gezeigt. Der Benutzer kann wie oben beschrieben mit den Suchergebnissen interagieren. Wenn der Benutzer ein bestimmtes Suchergebnis auswählt, navigiert die Client-Einrichtung zu der durch das zugrundeliegende Suchergebnis referenzierten Seite. Sollte der Benutzer z. B. durch Auswählen des Zurück-Browser-Befehls 540 zurücknavigieren, navigiert die Client-Einrichtung zu einer Suchschnittstellenseite des Suchdienstes, wie etwa der in 5A gezeigten Seite 500.
  • §3.1.6 Logging, Präferenz- und Chronik-Merkmale
  • Bei bestimmten Implementierungen kann ein Benutzer Präferenzen für das Bereitstellen von Suchergebnissen spezifizieren. Die Präferenz kann lokal auf dem Client (z. B. in einem Cookie) gespeichert und dem Suchdienst bereitgestellt werden oder kann in einem Benutzerkonto bei dem Suchdienst gespeichert werden. Die Präferenzen umfassen eine Einstellung dafür, wann Suchergebnisse bereitzustellen sind (z. B. ein Schieber oder eine Likert-Skala zum Justieren des Vorhersagekriteriums, wobei ein niedriger Wert bzw. eine niedrige Einstellung dazu führt, dass keine Suchergebnisse präsentiert werden oder erst nach langen Zeiten (z. B. 10 Sekunden) präsentiert werden, und ein hoher Wert bzw. eine hohe Einstellung dazu führt, dass Suchergebnisse bei jeder Tastenbetätigung bereitgestellt werden). Zum Beispiel kann der Benutzer wählen, Ergebnisse mit jeder Menge von Anfragevorschlägen wiederzugeben oder kann wählen, dass das System sehr vorsichtig ist und Ergebnisse erst nach mehreren Tastenbetätigungen, nach einer Pause von n Sekunden usw. wiedergibt.
  • Bei bestimmten Implementierungen kann der Suchdienst Informationen über einen Benutzer verwenden, um zu bestimmen, wann einer Client-Einrichtung Suchergebnisse bereitzustellen sind. Zum Beispiel kann der Suchdienst bestimmen, dass der Zeitraum zwischen aufeinanderfolgenden Anfragevorschlagsanforderungen, die durch einen mit dem Benutzer assoziierten Client bereitgestellt werden, typischerweise kleiner als ein Schwellenzeitraum ist. Der Suchdienst kann bestimmen, dass der derzeitige Zeitraum zwischen aufeinanderfolgenden Anfragevorschlagsanforderungen von dem Client in einem Zeitraum empfangen werden, der größer als normal ist, und dem Client auf der Basis dieses Unterschieds Suchergebnisse bereitstellen.
  • Bei bestimmten Implementierungen kann der Suchdienst die Suchergebnisse, die für Anfragevorschläge gezeigt wurden, und die Anfragevorschläge, für die sie gezeigt wurden, als Chronikdaten speichern. Diese Vorschläge und Ergebnisse können von Suchanfragen, für die ein Benutzer explizit eine Suche angefordert hat, unterschieden werden. Anfragevorschläge, für die nur etwas positive Benutzerinteraktion beobachtet wurde – z. B. eine lange Pause, eine Auswahl eines Suchergebnisses – werden in die Chronik des Benutzers übergeben, während andere Anfragevorschläge, die nicht zu etwas positiver Benutzerinteraktion geführt haben, nicht in die Chronik des Benutzers übergeben werden. Durch Untersuchung seiner Chronik kann der Benutzer somit Anfragen, die er tatsächlich eingab, begutachten und kann auch Anfragevorschläge begutachten, für die er eine positive Benutzerinteraktion zeigte. Wie bei anderen Benutzerchronikdaten werden Suchchronik und Auswahlen des Benutzers durch ein oder mehrere Privatsphärenmerkmale geschützt, um die Privatsphäre des Benutzers zu schützen.
  • §4.0 Beispielhafte Anfrage-Server-Prozessflüsse
  • 6 ist ein Flussdiagramm eines Prozesses 600 zum Bereitstellen von Suchergebnissen für eine Client-Einrichtung als Reaktion auf einen Anfragevorschlag. Der Prozess 600 kann von der Suchmaschine verwendet werden, um der Client-Einrichtung Suchergebnisse bereitzustellen.
  • Die Suchmaschine empfängt von der Client-Einrichtung eine Anforderung einer Suchressource (602). Zum Beispiel empfängt die Suchmaschine eine Anforderung einer Web-Suchseite von der Client-Einrichtung.
  • Die Suchmaschine stellt der Client-Einrichtung als Reaktion auf die Anforderung die Suchressource (604) bereit. Die Suchressource umfasst Schnittstellenanweisungen, die bewirken, dass die Client-Einrichtung eine Suchschnittstelle erzeugt, die ein Anfrageeingabefeld umfasst. Zum Beispiel stellt die Suchmaschine die Web-Suchseite, die HTML und Scripts umfasst, der Client-Einrichtung bereit. Die Client-Einrichtung kann das HTML und Scripts verwenden, um eine Suchschnittstelle wiederzugeben, die ein Anfrageeingabefeld umfasst.
  • Die Suchmaschine empfängt Anfragevorschlagsanforderungen von der Client-Einrichtung (606). Jede Anfragevorschlagsanforderung wird als Reaktion auf eine Anfrageeingabe in dem Anfrageeingabefeld erzeugt. Zum Beispiel kann die Client-Einrichtung eine Anfragevorschlagsanforderung aus durch einen Benutzer in das Anfrageeingabefeld eingegebenen Anfrageeingaben erzeugen. Die Client-Einrichtung kann die Anfragevorschlagsanforderung der Suchmaschine bereitstellen. Die Client-Einrichtung kann bestimmen, dass ein Wort oder Teil eines Worts in das Anfrageeingabefeld eingegeben wird, und für jedes Zeichen in dem Wort oder in dem Teilwort eine Anfragevorschlagsanforderung erzeugen. Als Alternative kann die Client-Einrichtung für alle n Zeichen oder jedes in das Anfrageeingabefeld eingegebene Wort eine Anfragevorschlagsanforderung erzeugen.
  • Als Reaktion auf jede Anfragevorschlagsanforderung stellt die Suchmaschine als Reaktion auf die Anforderung Anfragevorschläge bereit (608). Zum Beispiel identifiziert die Suchmaschine Anfragevorschläge als Reaktion auf die Anfragevorschlagsanforderung und stellt die Anfragevorschläge der Client-Einrichtung bereit. Die Suchmaschine kann den am höchsten eingestuften Anfragevorschlag oder den Anfragevorschlag mit der höchsten Wahrscheinlichkeit, von einem Benutzer ausgewählt zu werden, identifizieren. Die Suchmaschine kann mit dem identifizierten Anfragevorschlag assoziierte Suchergebnisse identifizieren und einen mit den Suchergebnissen assoziierten Timer starten.
  • Die Suchmaschine bestimmt, ob ein Vorhersagekriterium erfüllt ist (610). Das Vorhersagekriterium ist von einer Benutzerauswahl eines als Reaktion auf eine oder mehrere Anfragevorschlagsanforderungen bereitgestellten Anfragevorschlags unabhängig. Zum Beispiel ist das Vorhersagekriterium eine Wahrscheinlichkeitsschwelle, ein Timerablauf oder eine Kombination der Wahrscheinlichkeitsschwelle und des Timerablaufs. Wenn die Suchmaschine bestimmt, dass die mit dem identifizierten Anfragevorschlag assoziierte Wahrscheinlichkeit über einer Schwellenwahrscheinlichkeit liegt, ist das Vorhersagekriterium erfüllt. Wenn die Suchmaschine bestimmt, dass ein mit einem der Suchergebnisse assoziierter Timer abgelaufen ist (z. B. eines der mit einer der Anfragevorschlagsanforderungen assoziierten Suchergebnisse), ist das Vorhersagekriterium erfüllt. Der Timer kann mit den Suchergebnissen für die neueste Anfragevorschlagsanforderung oder Suchergebnissen aus einer vor der neuesten Anfragevorschlagsanforderung empfangenen Anfragevorschlagsanforderung assoziiert sein.
  • Wenn das Vorhersagekriterium erfüllt ist, stellt die Suchmaschine der Client-Einrichtung Suchergebnisse bereit (612). Die Suchergebnisse sind Reaktion auf einen der als Reaktion auf die Anfragevorschlagsanforderung oder eine oder mehrere vorherige Anfragevorschlagsanforderungen bereitgestellten Anfragevorschläge. Zum Beispiel stellt die Suchmaschine dem Client die mit dem identifizierten Anfragevorschlag assoziierten Suchergebnisse bereit, wenn das Wahrscheinlichkeitskriterium erfüllt ist. Die Suchmaschine kann die mit einem Timer assoziierten Suchergebnisse bereitstellen, wenn der Timer abgelaufen ist. Wenn die Suchmaschine eine weitere Anfragevorschlagsanforderungen von der Client-Einrichtung empfangt, wird der Prozess 600 für die nächste Anfragevorschlagsanforderung fortgesetzt (608).
  • Wenn das Vorhersagekriterium nicht erfüllt ist, stellt die Suchmaschine der Client-Einrichtung keine Suchergebnisse bereit (612). Wenn zum Beispiel die Suchmaschine bestimmt, dass das Vorhersagekriterium nicht erfüllt ist, stellt die Suchmaschine der Client-Einrichtung keine Suchergebnisse bereit. Wenn die Suchmaschine eine wettere Anfragevorschlagsanforderung empfängt, wird der Prozess 600 für die nächste Anfragevorschlagsanforderung fortgesetzt (608). Während die Suchmaschine keine weitere Anfragevorschlagsanforderung empfängt, wird der Prozess 600 fortgesetzt, um zu prüfen, ob ein Vorhersagekriterium erfüllt ist (610). Bei bestimmten Implementierungen stoppt der Prozess 600, wenn die Suchmaschine bestimmt, dass ein Vorhersagekriterium nicht erfüllt werden kann, bis eine weitere Anfragevorschlagsanforderung von der Client-Einrichtung empfangen wird.
  • Die oben beschriebene Reihenfolge von Schritten in dem Prozess 600 ist lediglich veranschaulichend und die Verarbeitung von Anfragevorschlagsanforderungen kann in anderen Reihenfolgen geschehen. Während der oben beschriebene Prozess 600 das Bereitstellen von Anfragevorschlägen als Reaktion auf die Anfragevorschlagsanforderung beschreibt und dann bestimmt wird, ob ein Vorhersagekriterium erfüllt ist, kann der Prozess 600 zum Beispiel so modifiziert werden, dass der Prozess 600 bestimmt, ob ein Vorhersagekriterium erfüllt ist, und dann dem Client Anfragevorschläge entweder mit den oder ohne die Suchergebnisse bereitstellt.
  • Bei bestimmten Implementierungen kann der Prozess 600 zusätzliche Schritte umfassen oder bestimmte der Schritte des Prozesses 600 können in mehrere Schritte aufgeteilt werden, wie oben mit Bezug auf 25E beschrieben. Zum Beispiel kann der Prozess 600 einen mit Suchergebnissen assoziierten Timer justieren, wenn die Suchmaschine dieselben Suchergebnisse als Reaktion auf zwei aufeinanderfolgende Anfragevorschlagsanforderungen identifiziert. Der Prozess 600 kann eine Verkürzung oder Verlängerung der Dauer des Timers umfassen. In einem Beispiel kann der Prozess 600 umfassen, einen mit einem Anfragevorschlag, der Reaktion auf zwei aufeinanderfolgende Anfragevorschlagsanforderungen ist, assoziierten Wahrscheinlichkeitsprozentsatz zu vergrößern. In einem Beispiel kann der Prozess 600 umfassen, die Vorhersagekriterien auf der Basis der der Suchmaschine verfügbaren Ressourcen zu justieren.
  • Obwohl er als in einem Server implementiert beschrieben wird, können Teile des Prozesses 600 in der Client-Einrichtung ausgeführt werden. Zum Beispiel kann die Client-Einrichtung bestimmen, ob Vorhersagekriterien erfüllt sind, und entsprechende Suchergebnisse von der Suchmaschine anfordern, wenn die Vorhersagekriterien erfüllt sind. Die Suchmaschine stellt die Suchergebnisse ihrerseits bereit und die Client-Einrichtung gibt die Suchergebnisse wie oben beschrieben wieder. Als Alternative können die Suchergebnisse mit jeder Menge von Anfragevorschlägen bereitgestellt werden, und wenn ein Vorhersagekriterium erfüllt ist, gibt die Client-Einrichtung die Suchergebnisse, die in dem Browser-Cache gespeichert sind, wieder.
  • 7 ist ein Flussdiagramm eines Prozesses 700 zum Bestimmen, ob ein Vorhersagekriterium erfüllt ist. Der Prozess 700 kann von der Suchmaschine 110 verwendet werden, um der Client-Einrichtung 106 Suchergebnisse bereitzustellen, oder von dem Suchdienst 404, um dem Client 402 Suchergebnisse bereitzustellen. Der Prozess 700 kann als Teil des Prozesses 600 oder als ein separater Prozess ausgeführt werden. Zum Beispiel kann ein den Prozess 600 ausführender Suchdienst den Prozess 700 anstelle der Schritte 612616 ausführen.
  • Die Suchmaschine identifiziert einen Anfragevorschlag mit der höchsten jeweiligen Wahrscheinlichkeit relativ zu den Wahrscheinlichkeiten der anderen bereitgestellten Anfragevorschläge (702). Zum Beispiel weist jeder Anfragevorschlag eine jeweilige Wahrscheinlichkeit auf, von einem Benutzer ausgewählt zu werden. Bei bestimmten Implementierungen empfängt die Suchmaschine eine Anfragevorschlagsanforderung von einer Client-Einrichtung und identifiziert als Reaktion auf die Anforderung Anfragevorschläge. Die Suchmaschine kann dann den Anfragevorschlag mit der höchsten jeweiligen Wahrscheinlichkeit identifizieren und als Reaktion auf den identifizierten Anfragevorschlag Suchergebnisse identifizieren.
  • Die Suchmaschine bestimmt, ob die höchste jeweilige Wahrscheinlichkeit eine Schwellenwahrscheinlichkeit übersteigt (704). Die Schwellenwahrscheinlichkeit ist größer als null. Zum Beispiel weist die Suchmaschine eine vorbestimmte Schwellenwahrscheinlichkeit auf. Die Suchmaschine vergleicht die höchste jeweilige Wahrscheinlichkeit mit der Schwellenwahrscheinlichkeit, um zu bestimmen, ob die höchste jeweilige Wahrscheinlichkeit die Schwellenwahrscheinlichkeit übersteigt. Bei bestimmten Implementierungen weist die Suchmaschine mehr als eine Schwellenwahrscheinlichkeit auf, und die Suchmaschine bestimmt die derzeitigen Erbringungsverzögerungskriterien, die mit dem Client assoziiert sind, dem die Anfragevorschläge bereitgestellt werden, wie oben beschrieben.
  • Wenn die Wahrscheinlichkeit die Schwelle übersteigt, stellt die Suchmaschine einer Client-Einrichtung Suchergebnisse als Reaktion auf den identifizierten Anfragevorschlag bereit (706). Die bereitgestellten Suchergebnisse sind Reaktion auf den Anfragevorschlag mit der höchsten jeweiligen Wahrscheinlichkeit. Wenn zum Beispiel die höchste jeweilige Wahrscheinlichkeit die Schwellenwahrscheinlichkeit übersteigt, stellt die Suchmaschine die mit dem identifizierten Anfragevorschlag assoziierten Suchergebnisse dem Client bereit. Bei bestimmten Implementierungen stellt die Suchmaschine die Anfragevorschläge, einschließlich des identifizierten Anfragevorschlags und der anderen Anfragevorschläge, der Client-Einrichtung mit den Suchergebnissen bereit.
  • Wenn die Wahrscheinlichkeit dagegen die Schwelle nicht übersteigt, stellt die Suchmaschine einer Client-Einrichtung keine Suchergebnisse bereit (708).
  • Bei bestimmten Implementierungen empfängt die Suchmaschine eine weitere Anfragevorschlagsanforderung und der Prozess 700 identifiziert dann weiter einen Anfragevorschlag mit der höchsten Wahrscheinlichkeit für die Anfragevorschläge als Reaktion auf die empfangene Anfragevorschlagsanforderung (702.
  • §5.0 Beispielhafte Client-Anfrageprozessflüsse
  • 8 ist ein Flussdiagramm eines Prozesses 800 zum Angeben eines Anfragevorschlags, für den Suchergebnisse Reaktion sind. Der Prozess 800 kann von dem Client verwendet werden, um Anfragevorschläge von der Suchmaschine zu empfangen.
  • Der Client erzeugt eine Suchschnittstelle, die ein Anfrageeingabefeld umfasst (802). Zum Beispiel empfängt der Client HTML und Scripts von dem Suchdienst und erzeugt eine Web-Suchseite. Die Web-Suchseite umfasst ein Anfrageeingabefeld zum Empfangen von Zeicheneingaben von einem Benutzer.
  • Der Client stellt in das Anfrageeingabefeld eingegebene Anfragezeichen einem Suchdienst als eine erste Anfragevorschlagsanforderung bereit (804). Zum Beispiel empfängt der Client Anfragezeichen in dem Anfrageeingabefeld von einem Benutzer. Der Client sendet die erste Anfragevorschlagsanforderung als Reaktion auf Empfang der Anfragezeichen zu dem Suchdienst. Der Client kann für jedes Zeichen, alle n Zeichen oder jedes in das Anfrageeingabefeld eingegebene Wort eine Anfragevorschlagsanforderung senden.
  • Der Client empfängt als Reaktion auf die erste Anfragevorschlagsanforderung erste Anfragevorschläge (806). Zum Beispiel empfängt der Client die ersten Anfragevorschläge von dem Suchdienst als Reaktion auf die erste Anfragevorschlagsanforderung.
  • Der Client gibt die ersten Anfragevorschläge gemäß einer Reihenfolge wieder (808). Zum Beispiel können die ersten Anfragevorschläge eine Einstufungsreihenfolge umfassen. Der Client kann die ersten Anfragevorschläge in der Suchschnittstelle gemäß der Einstufungsreihenfolge präsentieren. Der Client kann die ersten Anfragevorschläge unter dem Anfrageeingabefeld wiedergeben. Bei bestimmten Implementierungen kann der Client die ersten Anfragevorschläge links oder rechts des Anfrageeingabefeldes wiedergeben.
  • Der Client erzeugt in der Suchschnittstelle eine Angabe, die den ersten Anfragevorschlag angibt, für den erste Suchergebnisse Reaktion sind (810). Die Erzeugung der Angabe wird als Reaktion darauf durchgeführt, dass der Client die ersten Suchergebnisse als Reaktion auf einen der ersten Anfragevorschläge empfängt. Die ersten Suchergebnisse werden unabhängig von Benutzerauswahl eines der Anfragevorschläge und unabhängig von dem Senden einer vollständigen Anfrage zu dem Suchdienst empfangen. Zum Beispiel werden die ersten Suchergebnisse unabhängig davon empfangen, dass der Benutzer einen der ersten Anfragevorschläge auswählt, eine Such- oder eine Sende-Schaltfläche auswählt oder die Eingabetaste betätigt. Die Angabe kann Präsentation von differenziertem Text in dem Anfrageeingabefeld nach der Anfragezeicheneingabe sein. Der differenzierte Text und die Anfragezeicheneingabe können das Wort oder die Wörter bilden, wofür die ersten Suchergebnisse Reaktion sind. Bei anderen Implementierungen kann die Angabe den ersten Anfragevorschlag in einer Anfragevorschlagsbox hervorheben.
  • Bei bestimmten Implementierungen kann der Prozess 800 zusätzliche Schritte umfassen oder bestimmte der Schritte des Prozesses 800 können in mehrere Schritte aufgeteilt werden, wie oben mit Bezug auf 25E beschrieben.
  • 9 ist ein Flussdiagramm eines Prozesses 900 zum Anzeigen von zweiten Suchergebnissen als Reaktion auf einen zweiten Anfragevorschlag. Der Prozess 900 kann von dem Client verwendet werden, um Anfragevorschläge von dem Suchdienst zu empfangen. Bei bestimmten Implementierungen kann der Client den Prozess 900 nach dem Ausführen des Prozesses 800 ausführen.
  • Der Client zeigt erste Suchergebnisse im Wesentlichen synchron mit einer Angabe in einer Schnittstelle an, die einen ersten Anfragevorschlag angibt, wofür die ersten Suchergebnisse Reaktion sind (902). Zum Beispiel präsentiert der Client die ersten Suchergebnisse in einer Suchschnittstelle gleichzeitig mit dem Präsentieren des differenzierten Texts in dem Anfrageeingabefeld. In einem Beispiel präsentiert der Client die Angabe des ersten Anfragevorschlags und präsentiert die ersten Suchergebnisse nach einer Verzögerung von einer Sekunde oder weniger.
  • Der Client empfängt zweite Suchergebnisse als Reaktion auf einen zweiten Anfragevorschlag (904). Die zweiten Anfragesuchergebnisse werden dem ersten Anfragevorschlag, wofür die ersten Suchergebnisse angezeigt werden, zeitlich nachfolgend empfangen. Zum Beispiel kann der Client eine zweite Anfragevorschlagsanforderung bereitgestellt haben, die Anfragevorschläge empfangen haben, und das Vorhersagekriterium für den zweiten Anfragevorschlag ist erfüllt.
  • Der Client erzeugt in der Schnittstelle eine Angabe, die den zweiten Anfragevorschlag angibt (906). Zum Beispiel kann der Client differenzierten Text in einem Anfrageeingabefeld präsentieren oder den zweiten Anfragevorschlag in einer Anfragevorschlagsbox hervorheben.
  • Der Client entfernt die ersten Suchergebnisse (908). Zum Beispiel blendet der Client die ersten Suchergebnisse aus, wobei die ersten Suchergebnisse aus der Suchschnittstelle entfernt werden.
  • Der Client zeigt die zweiten Suchergebnisse im Wesentlichen synchron mit dem Erzeugen der Angabe in der Schnittstelle, die den zweiten Anfragevorschlag angibt, an (910). Zum Beispiel zeigt der Client die zweiten Suchergebnisse eine Sekunde nach der Präsentation des differenzierten Texts oder dem Hervorheben des zweiten Anfragevorschlags an. Bei bestimmten Implementierungen blenden sich die zweiten Suchergebnisse auf der Suchschnittstelle ein, während sich die ersten Suchergebnisse aus der Suchschnittstelle ausblenden.
  • Die oben beschriebene Reihenfolge der Schritte in dem Prozess 900 ist lediglich veranschaulichend und die Verarbeitung von Anfragevorschlagsanforderungen kann in anderen Reihenfolgen geschehen. Während der oben beschriebene Prozess 900 die ersten Suchergebnisse entfernt, und dann die zweiten Suchergebnisse anzeigt, kann der Prozess 900 zum Beispiel so modifiziert werden, dass die ersten Suchergebnisse gleichzeitig mit dem Anzeigen der zweiten Suchergebnisse entfernt werden.
  • Bei bestimmten Implementierungen kann der Prozess 900 zusätzliche Schritte umfassen oder bestimmte der Schritte des Prozesses 900 können in mehrere Schritte aufgeteilt werden, wie oben mit Bezug auf 25E beschrieben.
  • §6.0 Bieten für Werbung und Verwaltung
  • Bei bestimmten Implementierungen werden, wenn ein Anfragevorschlag ausgewählt wird, auch Schlüsselwörter in Bezug auf die Anfragevorschläge ausgewählt, und auf die Schlüsselwörter abgezielte Werbung wird als Reaktion auf die Erfüllung eines Vorhersagekriteriums mit den Suchergebnissen bereitgestellt. Bei diesen Implementierungen stellt jedoch, wenn die Anfrageeingabe ein Anfragestamm ist, der Anfragestamm höchstens ein mehrdeutiges Signal der Interessen des Benutzers dar. Zum Beispiel ist der Anfragestamm „p” der erste Buchstabe von vielen verschiedenen Wörtern und Anfragen, die viele verschiedene Themen und Interessen abdecken.
  • Bei bestimmten Implementierungen speichert somit das Werbe-Verwaltungssystem 130 Kampagnendaten 132, die angeben, ob ein Werbekunde wünscht, Werbung mit Suchergebnissen abzuzielen, die als Reaktion auf die Erfüllung eines Vorhersagekriteriums bereitgestellt werden. Das Werbe-Verwaltungssystem 130 erlaubt es Werbekunden, in diesen Situationen aus dem Targeting „auszusteigen”.
  • Sollte sich der Werbekunde entscheiden, in das Targeting von Werbung mit Suchergebnissen, die als Reaktion auf die Erfüllung eines Vorhersagekriteriums bereitgestellt werden, einzusteigen, kann der Werbekunde mehrere Targeting-Optionen auswählen. Die erste Targeting-Option zielt auf Werbung auf der Basis von Schlüsselwörtern ab, die mit Anfragevorschlägen assoziiert sind, die ausgewählt werden, um als Reaktion auf die Erfüllung eines Vorhersagekriteriums Suchergebnisse bereitzustellen. Die erste Targeting-Option wählt Werbung auf ähnliche Weise aus, wie Werbung für Anfragen ausgewählt wird, die explizit vom Benutzer eingegeben werden (z. B. wenn der Benutzer eine Anfrage eingibt oder einen Suchbefehl auswählt, um die Anfrage zu der Suchmaschine 110 zu übermitteln). Jedes Mal, wenn eine Werbung bereitgestellt wird, kann eine Impression für die Werbung gezählt werden. Als Alternative können wie in dem nachfolgenden Abschnitt 7 beschrieben Impressions nur bei Anwesenheit des Signals gezählt werden, dass ein Benutzer mit dem Tippen aufgehört hat und die Suchergebnisse und/oder Werbung anschaut.
  • Die zweite Targeting-Option zielt Werbung auf der Basis von Anfragestämmen ab. Diese Targeting-Option ist besonders für Werbekunden nützlich, die versuchen, durch Verwendung von Anzeigewerbung ein oder mehrere Werbeziele zu erreichen. Eine Anzeigewerbung ist eine Werbung, die nicht unbedingt dafür bestimmt ist, Verkehr zu einer bestimmten Landeseite zu lenken, sondern stattdessen für ein bestimmtes anderes Werbeziel, wie etwa Aufbau von Markenbewusstsein, bestimmt ist. Anfragestamm-Targeting kann jedoch auch für andere Werbeziele verwendet werden, einschließlich des Lenkens von Verkehr zu einer bestimmten Landeseite.
  • 10 zeigt eine Web-Suchseite 1000, die Anfragevorschläge 1006 für einen Anfragestamm (z. B. den Buchstaben „g”), Suchergebnisse 1010 als Reaktion auf einen der Anfragevorschläge (z. B. den Anfragevorschlag 1004) und Werbung 1022 und 1024 als Reaktion auf den Anfragestamm anzeigt. Die Suchergebnisse 1010 sind Reaktion auf den Anfragevorschlag 1004 (d. h. die Anfrage „Gondel”) und werden wie oben beschrieben ausgewählt und gezeigt.
  • Die Werbung ist Reaktion auf den Anfragestamm „g”. Insbesondere haben die Werbekunden Sendegebote für Wortstämme abgegeben. Jeder Wortstamm ist ein oder mehrere Zeichen, die in einer Sequenz in eine Reihenfolge gesetzt werden und an die ein oder mehrere Zeichen am Ende der Sequenz angefügt werden können, um ein Wort zu bilden. Zum Beispiel ist der Buchstabe „g” ein Wortstamm für Gondel, Gmail, Games und Gondwana und andere Wörter. Obwohl in 10 ein Anfragestamm von nur einem Buchstaben gezeigt ist, können Anfragestämme auch zwei oder mehr Buchstaben umfassen, z. B. a, aa, ab usw.
  • Die Werbekunden können die Anfragestämme durch Verwendung der Benutzerschnittstelle begutachten und für Anfragestämme, für die sie bieten möchten, Stamm-Gebote abgeben. Jedes Stamm-Gebot ist ein Gebot für einen entsprechenden Wortstamm und entsprechend einem Preis, den ein Werbekunde für die Anzeige einer auf den entsprechenden Wortstamm abgezielten Werbung bezahlt. Beispielhafte Preisbildungsverfahren werden mit Bezug auf 11 nachfolgend beschrieben.
  • Typischerweise ist das Targeting eines entsprechenden Wortstamms für eine Werbung von Schlüsselwort-Targeting unabhängig. Anders ausgedrückt, wird ein Gebot für eine Werbung abgegeben, wenn ein Anfragestamm empfangen wird, und der Anfragestamm muss nicht einem Schlüsselwort entsprechen, an dem der Werbekunde geboten hat.
  • Das Werbe-Verwaltungssystem 130 identifiziert als Reaktion auf den Empfang des Anfragestamms Wortstämme, die mit dem Anfragestamm übereinstimmen, und stellt entsprechende Stamm-Gebote der übereinstimmenden Wortstämme als Gebote einer Werbeauktion für Werbe-Slots zum Anzeigen von Werbung bereit. Zum Beispiel sind in 10 m Werbe-Slots in dem Bereich 1014 verfügbar und ein Werbe-Slot in dem Bereich 1012 verfügbar. Es können für beide Bereiche separate Auktionen abgehalten werden, oder als Alternative kann eine einzige Auktion für die Slots in beiden Bereichen abgehalten werden.
  • Nachdem die Versteigerung abgeschlossen ist, empfängt das Werbe-Verwaltungssystem 130 erwählte Werbung, von der bestimmt ist, dass sie einen Werbe-Slot in der Auktion ersteigert hat, und stellt die ausgewählte Werbung zur Anzeige in den Werbe-Slots auf der Client-Einrichtung bereit.
  • Das Werbe-Verwaltungssystem 130 kann Prozesse implementieren, um die Anzahl der Auktionsoperationen zu verringern. Zum Beispiel muss es nicht praktikabel sein, für jedes Zeichen, das für einen Anfragestamm eingegeben wird und das zu einer Anforderung von Anfragevorschlägen führt, eine Auktion abzuhalten. Zum Beispiel kann der Benutzer beim Eingeben einer vollständigen Anfrage sehr schnell tippen und somit wäre es nicht effizient, Werbeauktionen für jede Anfrageeingabe abzuhalten.
  • Bei bestimmten Implementierungen empfängt somit das Werbe-Verwaltungssystem 130 den Anfragestamm nur als Reaktion darauf, dass die Suchmaschine 110 (oder das Werbe-Verwaltungssystem 130) bestimmt, dass ein Vorhersagekriterium erfüllt ist. Dementsprechend wird bei diesen Implementierungen eine Werbeauktion nur abgehalten, wenn Suchergebnisse als Reaktion auf die Erfüllung eines Vorhersagekriteriums bereitgestellt werden. Bei anderen Implementierungen stellt das Werbe-Verwaltungssystem 130 die gewählte Werbung nur als Reaktion darauf bereit, dass die Suchmaschine (oder das Werbe-Verwaltungssystem 130) bestimmt, dass ein Vorhersagekriterium erfüllt ist.
  • Obwohl die in 10 gezeigte Werbung als Reaktion auf eine Auktion auf der Basis von Stamm-Geboten bereitgestellt beschrieben wird, kann Werbung auch als Reaktion auf eine Auktion auf der Basis von mit einem ausgewählten Anfragevorschlag assoziierten Schlüsselwörtern bereitgestellt werden. Zum Beispiel kann ein Teil der Werbung 1024 auf der Basis von Stamm-Geboten für den Anfragestamm „g” ausgewählt worden sein, und ein Teil der Werbung kann auf der Basis von Schlüsselwort-Geboten, die mit Schlüsselwörtern für den Anfragevorschlag „Gondel” assoziiert sind, ausgewählt worden sein.
  • Bei bestimmten Implementierungen können Werbekunden manuell Anfragestämme auswählen und Gebote für jeden Anfragestamm eingeben. Zum Beispiel kann das Werbe-Verwaltungssystem 130 eine Benutzerschnittstelle bereitstellen, die die häufigsten Anfragestämme zeigt, die auftreten, sowie Häufigkeitsmaße, die die relative Häufigkeit des Auftretens jedes Anfragestamms angeben. Ein Werbekunde kann verschiedene Anfragestämme auswählen und Gebote für jeden einzelnen geben.
  • Bei anderen Implementierungen können die Anfragestämme und optional Stamm-Gebote für die Anfragestämme automatisch aus den Schlüsselwörtern bestimmt werden, an denen ein Werbekunde derzeit bietet. Zum Beispiel kann das Werbe-Verwaltungssystem Schlüsselwörter empfangen, an denen ein Werbekunde geboten hat. Für jedes Schlüsselwort wählt das Werbe-Verwaltungssystem 130 ein oder mehrere Zeichen aus, die einen Stamm der Schlüsselwörter bilden und die nicht alle Zeichen der Schlüsselwörter umfassen. Man nehme zum Beispiel an, dass ein Werbekunde an dem Schlüsselwort „aardvark” geboten hat. Das Werbe-Verwaltungssystem 130 kann die Anfragestämme „a”, „aa” und „aar” auswählen.
  • Es gibt vielfältige Weisen, wie das Werbe-Verwaltungssystem 130 bestimmen kann, welche Anfragestämme aus dem bestimmten Schlüsselwort auszuwählen sind. Bei bestimmten Implementierungen wählt das Werbe-Verwaltungssystem bis zu einer maximalen n-Gramm-Länge von Anfragestämmen. Wenn zum Beispiel das Werbekunden-Verwaltungssystem 130 dafür ausgelegt ist, bis zu Quad-Gramme für Anfragestämme auszuwählen, werden für das Schlüsselwort aardvark die Anfragestämme a, aa, aar und aard ausgewählt.
  • Bei bestimmten Implementierungen kann das Werbe-Verwaltungssystem auch die Häufigkeit der Anfragestämme berücksichtigen. Zum Beispiel können Anfragestämme, die unter einer Schwellenhäufigkeit auftreten, aus automatischer Auswahl ausgeschlossen werden. Wieder mit Bezug auf das aadvark-Beispiel nehme man an, dass die Anfragestämme „aar” und „aard” nur mit einer Häufigkeit aufgetreten sind, die unter Schwellenhäufigkeit liegt. Dementsprechend wählt das Werbe-Verwaltungssystem 130 nicht für Anfragestämme für automatisches Bieten aus. Der Werbekunde kann jedoch diese Anfragestämme manuell auswählen.
  • Um die Stamm-Gebote für die automatisch ausgewählten Anfragestämme zu bestimmen, identifiziert das Werbe-Verwaltungssystem ein Schlüsselwort-Gebot für das Schlüsselwort, aus dem der Stamm abgeleitet wurde, und bestimmt das Stamm-Gebot auf der Basis des identifizierten Schlüsselwort-Gebots. Bei bestimmten Implementierungen ist das Stamm-Gebot proportional zu dem Schlüsselwort-Gebot. Zum Beispiel kann ein Stamm-Gebot ein Prozentsatz eines entsprechenden Schlüsselwort-Gebots, z. B. 10%, sein. Bei anderen Implementierungen können die Stamm-Gebote alle auf einen anfänglichen festen Preis gesetzt werden und der Werbekunde kann diese Preise manuell justieren.
  • Bei bestimmten Implementierungen wird dem Werbekunden ein Betrag berechnet, der auf dem Stamm-Gebot basiert, wenn die Werbung mit den Suchergebnissen gezeigt wird. Ein Benutzer kann jedoch häufig Suchergebnisse empfangen, aber die Suchergebnisse ansonsten nicht anschauen (die Werbung, die mit den Suchergebnissen bereitgestellt wird, begutachten). Zum Beispiel kann der Benutzer langsam tippen. Somit möchte ein Werbekunde vielleicht nicht für jedes Auftreten einer mit den Suchergebnissen gezeigten Werbung Auktionskosten bezahlen, da es vielmals vorkommen könnte, dass der Benutzer die Werbung nicht anschaut.
  • Folglich definiert bei bestimmten Implementierungen das Werbe-Verwaltungssystem 130 Stamm-Gebote gemäß Kosten pro Zeiteinheit der Anzeige. Unter Verwendung von Stamm-Geboten, die Kosten pro Zeiteinheit der Anzeige sind, kann das Werbe-Verwaltungssystem 130 Werbekunden auf der Basis der Zeitdauer Gebühren berechnen, für die ihre Werbung angezeigt wurde.
  • Bei bestimmten Implementierungen empfängt das Werbe-Verwaltungssystem 130 Daten, die eine Dauer definieren, für die die ausgewählte Werbung in den Werbe-Slots auf der Client-Einrichtung angezeigt wurde, nachdem Werbung der Client-Einrichtung bereitgestellt wurde. Die Dauer kann durch Anweisungen auf der Client-Einrichtung bestimmt werden, die mit der Suchressource bereitgestellt werden, z. B. ein Timer, der startet, wenn die Werbung wiedergegeben wird, und stoppt, wenn neue Werbung empfangen wird oder wenn Suchergebnisse aus der Anzeige entfernt werden. Als Alternative kann die Dauer durch die Suchmaschine 110 oder das Werbe-Verwaltungssystem 130 auf der Basis der Zeitdifferenz zwischen dem Senden vorheriger Werbung und dem Senden einer Menge von derzeitiger Werbung bestimmt werden. Es können auch andere Weisen der Bestimmung der Dauer implementiert werden. Für jede ausgewählte Werbung, die angezeigt wurde, bestimmt das Werbe-Verwaltungssystem 130 einen Betrag proportional zu dem Stamm-Gebot der ausgewählten Werbung und der Dauer und berechnet jedem Werbekunden einer ausgewählten Werbung den Betrag für die ausgewählte Werbung.
  • 11 ist ein Graph 1100 zur Veranschaulichung eines Betrags auf der Basis einer Beziehung zwischen einem Stamm-Gebot und einer Anzeigedauer. Die horizontale Achse stellt die Zeit dar und die vertikale Achse Kosten, die pro Zeiteinheit auftreten, z. B. die Kosten pro Sekunde. Man nehme zum Beispiel an, dass die Zeit T0 der Zeitpunkt ist, zu dem eine Werbung auf der Client-Einrichtung wiedergegeben wird. Zum Zeitpunkt T0 entstehen keine Kosten. Mit Voranschreiten der Zeit können Kosten gemäß einer definierten Beziehung zwischen dem Stamm-Gebot in Einheitszeit zunehmen. Es können vielfältige Funktionen verwendet werden. Zum Beispiel kann die Funktion eine Polynomfunktion ersten Grades sein, die eine Beziehung zwischen dem Stamm-Gebot und Einheitszeit definiert, wie durch die Linie 1104 angegeben. Als Alternative kann die Funktion eine Polynomfunktion des Grads n sein, die eine Beziehung zwischen dem Stamm-Gebot und Einheitszeit definiert, wobei n größer als 1 ist, wie durch die Kurven 1106 und 1108 angegeben. Es können auch andere Funktionen verwendet werden, z. B. eine Sigmoid-Funktion, die eine Beziehung zwischen dem Stamm-Gebot und Einheitszeit definiert.
  • Bei bestimmten Implementierungen kann das Werbe-Verwaltungssystem 130 eine minimale Anzeigedauer definieren. Diese minimale Dauer ist größer als 0 Sekunden, und wenn eine Werbung nur für weniger als die minimale Dauer angezeigt wird, entstehen keine Gebühren. Man nehme zum Beispiel an, dass T0 100 ms beträgt, wodurch angezeigt wird, dass die Werbung für mindestens 100 ms angezeigt wurde. Nach 100 ms entstehen Gebühren, wie durch die Beträge angegeben, die den Funktionslinien 1104, 1106 und 1108 entsprechen.
  • Bei bestimmten Implementierungen kann das Werbe-Verwaltungssystem 130 eine maximale Anzeigedauer finden. Die maximale Anzeigedauer ist die Zeit, nach der keine zusätzlichen Gebühren für die Anzeige der Werbung entstehen. Zum Beispiel nehme man an, dass T1 die maximale Anzeigedauer repräsentiert, z. B. 5 Sekunden. Solange eine Werbung für eine Zeit weniger als die maximale Anzeigedauer angezeigt wird, nimmt der dem Werbekunden berechnete Betrag weiter zu, bis die maximale Anzeigedauer erreicht ist. Danach ist der Betrag ein Maximalbetrag, der nicht weiter zunimmt. Zum Beispiel wird der Maximalbetrag CPI zum Zeitpunkt T1 erreicht. Bei bestimmten Implementierungen kann dieser Maximalbetrag einem Betrag entsprechen, der einem Werbekunden typischerweise für eine Impression berechnet wird. Es können auch andere Maximalbeträge verwendet werden.
  • Bei bestimmten Implementierungen persistiert die Werbung, die mit Suchergebnissen bereitgestellt wird, in der Anzeige, sogar nachdem die entsprechenden Suchergebnisse entfernt sind. Bei diesen Implementierungen wird Werbung für einen Anfragestamm bereitgestellt und kann persistieren, bis das Auftreten eines anderen Vorhersagekriteriums erfüllt ist. Zum Beispiel nehme man an, dass der Benutzer weiter Anfrageeingaben in das Eingabefeld der in 10 gezeigten Benutzerschnittstelle bereitstellt und den Anfragestamm „gar” tippt. Die Suchergebnisse 1010 können verschwinden, da sie für die derzeitige Anfrageeingabe nicht mehr relevant sind; die Werbung kann jedoch bis zum Auftreten eines anderen Vorhersageereignisses persistieren. Falls die Werbung sowohl für Anfragestämme als auch für Schlüsselwörter bereitgestellt wurde, z. B. ein Teil der in 10 gezeigten Werbung für den Anfragestamm g bereitgestellt wurde, während andere Werbung für mit dem Wort „Gondel” assoziierte Schlüsselwörter bereitgestellt wurde, kann die Werbung auf der Basis der Schlüsselwörter mit den Suchergebnissen verschwinden, aber die mit dem Anfragestamm „g” assoziierte Werbung kann persistieren. Dieses Verhalten kann in Anweisungen implementiert werden, die mit der Suchmaschinenressource bereitgestellt werden.
  • 12 ist ein Flussdiagramm eines Prozesses 1200 zum Auswählen von Werbung als Reaktion auf einen Anfragestamm. Der Prozess 1200 kann in dem Werbe-Verwaltungssystem 130 implementiert werden.
  • Der Prozess 1200 definiert Wortstämme (1202). Zum Beispiel definiert das Werbe-Verwaltungssystem Wortstämme, die jeweils ein oder mehrere Zeichen sind, die in der Sequenz in eine Reihenfolge gesetzt werden, in der ein oder mehrere Zeichen an das Ende der Sequenz angefügt werden können, um ein Wort zu bilden.
  • Der Prozess 1200 kann Stamm-Gebote für die Wortstämme empfangen (1204). Zum Beispiel empfängt das Werbe-Verwaltungssystem Stamm-Gebote von Werbekunden.
  • Der Prozess 1200 empfängt einen Anfragestamm von einer Client-Einrichtung (1206). Zum Beispiel empfängt das Werbe-Verwaltungssystem einen Anfragestamm als eine Anfrageeingabe eines oder mehrerer Zeichen, die in einer Eingabesequenz in eine Reihenfolge gesetzt sind, die die Reihenfolge definiert, in der das eine oder die mehreren Zeichen als die Anfrageeingabe eingegeben wurden.
  • Der Prozess 1200 identifiziert Wortstämme, die mit dem Anfragestamm übereinstimmen (1208). Zum Beispiel identifiziert das Werbe-Verwaltungssystem 130 nur Wortstämme, die exakt mit dem empfangenen Anfragestamm übereinstimmen. Bei bestimmten Implementierungen kann das Werbe-Verwaltungssystem auch Wortstämme identifizieren, für die der Anfragestamm einen Stamm für den Wortstamm bildet. Wenn zum Beispiel der Anfragestamm „a” empfangen wird, können bestimmt werden, dass die Stämme „a”, „aa” und „ab” mit dem Wortstamm übereinstimmen.
  • Der Prozess 1200 stellt entsprechende Stamm-Gebote der übereinstimmenden Wortstämme in Geboten einer Werbeauktion für Werbe-Slots zur Anzeige von Werbung bereit (1210). Zum Beispiel kann das Werbe-Verwaltungssystem 130 auf die Kampagnendaten 132 zugreifen, um die Stamm-Gebote von Werbekunden abzurufen, die an den übereinstimmenden Wortstämmen vorlagen.
  • Der Prozess 1200 stellt ausgewählte Werbung bereit, die in der Auktion als einen Werbe-Slot aufweisend bestimmt wird (1212). Zum Beispiel wählt das Werbe-Verwaltungssystem 130 Werbung aus, für die die Stamm-Gebote zu den höchsten Auktionswertungen geführt haben.
  • Der Prozess 1200 stellt die gewählte Werbung zur Anzeige in den Werbe-Slots auf der Client-Einrichtung bereit (1214). Zum Beispiel überträgt das Werbe-Verwaltungssystem die Werbung zu der Client-Einrichtung und die Client-Einrichtung gibt als Reaktion auf den Empfang der Werbung diese mit den Suchergebnissen wieder.
  • §7.0 Suchergebnis-Auswahlen und Impression-Zuschreibung
  • Wie oben beschrieben, speichert die Suchmaschine 110 Chronik-Daten in Form von Klick-Logs und Anfrage-Logs. Die Suchmaschine 110 kann auch Chronik-Daten speichern, die angeben, wann Suchergebnisse zu einer Benutzerinteraktion geführt haben. Wenn zum Beispiel Suchergebnisse als Reaktion auf ein Vorhersagekriterium bereitgestellt und angezeigt wurden und dann keine zusätzlichen Anfragevorschlagsanforderungen oder Suchbefehle empfangen werden, interpretiert die Suchmaschine 110 dies als ein Signal, dass die Ergebnisse die Informationsbedürfnisse des Benutzers zu einem gewissen Grad erfüllt haben. Dementsprechend kann ein „Gültige-Vorhersage-Zählwert” für jedes der gezeigten Suchergebnisse aktualisiert werden. Der Vorhersage-Zählwert für jedes Suchergebnis kann mit seinem Gesamt-„Vorhersagezählwert” verglichen werden, d. h. wie oft das Suchergebnis als Reaktion auf die Erfüllung eines Vorhersagekriteriums bereitgestellt wurde, um eine Rate gültiger Vorhersage zu bestimmen. Da für verschiedene Vorschläge verschiedene Suchergebnisse bereitgestellt werden, werden mit der Zeit hochrelevante Suchergebnisse als hohe Raten gültiger Vorhersage aufweisend hervortreten. Dementsprechend können die Raten gültiger Vorhersage als ein Qualitätssignal verwendet werden, das die Qualität der durch die Suchergebnisse referenzierten zugrundeliegenden Ressourcen angibt.
  • Bei einer Variante dieser Implementierung wird ein Zählwert gültiger Vorhersage für ein Suchergebnis nur gezählt, wenn eine spezifische Interaktion mit dem Suchergebnis vorliegt. Zum Beispiel wird ein Zählwert gültiger Vorhersage nur gezählt, wenn ein „Maus-Over” oder eine Auswahl eines Suchergebnisses aufgezeichnet wird.
  • Bei einer anderen Implementierung bestimmt die Suchmaschine 110, welche durch Suchergebnisse referenzierte Ressourcen oft aus Anfragevorschlägen ausgewählt werden, die aus der derzeitigen Anfrageeingabe stammen. Als Reaktion auf die Erfüllung der Vorhersagekriterien werden die Ressourcen mit der höchsten Ressourcenmetrik (z. B. die obersten N Ressourcen, die am häufigsten ausgewählt werden, oder die obersten N Ressourcen, eingestuft durch eine Funktion ihrer Auswahlen, ihrer Wichtigkeit in einem Ressourcengraph, und optional andere Metriken) als Suchergebnisse für die Anfrageeingabe bereitgestellt. Die Ressourcenmetriken der Ressourcen werden dergestalt aggregiert, dass Auswahlen der Ressourcen zu Suchergebnissen führen können, die Ressourcen referenzieren, die andernfalls Reaktion auf andere Anfragevorschläge wären, die aus der derzeitigen Anfrageeingabe Stammen.
  • Die Auswahlen sind in 13 dargestellt, einem Blockdiagramm 1300, das die Auswahl von Ressourcen für eine Anfrageeingabe 1302 als Reaktion darauf, dass ein Vorhersagekriterium erfüllt wird, und auf der Basis von Ressourcenmetriken R darstellt. Für die Anfrageeingabe „a” werden Anfragevorschläge ausgewählt, für die die Anfrageeingabe ein Stamm ist. Zum Beispiel wird wie in 13 gezeigt die Menge von Anfragevorschlägen 13121316 ausgewählt. Bei bestimmten Implementierungen werden alle Anfragevorschläge ausgewählt, die aus der Anfrageeingabe 1302 stammen. Bei anderen Implementierungen wird eine Teilmenge aller Anfragevorschläge ausgewählt, die aus der Anfrageeingabe 1302 stammen. Die Teilmenge kann zum Beispiel auf den Anfragevorschlägen basieren, die am häufigsten von Benutzern ausgewählt werden, oder auf Anfragevorschlägen, die am häufigsten zu Benutzerinteraktionen (z. B. Auswahlen von Suchergebnissen) führen, oder auf Anfragevorschlägen mit den höchsten Konfidenzmaßen oder Qualitätsmaßen.
  • Aus den ausgewählten Anfragevorschlägen identifiziert das Suchsystem 110 Mengen von Ressourcen, die durch Suchergebnisse als Reaktion auf die Anfragevorschläge referenziert werden. Zum Beispiel wird die erste Menge von Ressourcen 1322 durch Suchergebnisse als Reaktion auf den Anfragevorschlag 1312 referenziert; die zweite Menge von Ressourcen 1324 wird durch Suchergebnisse als Reaktion auf den Anfragevorschlag 1314 referenziert; und die letzte Menge von Ressourcen 1326 wird durch Suchergebnisse als Reaktion auf den Anfragevorschlag 1316 referenziert. Die Mengen von Ressourcen sind nicht exklusive Mengen, d. h. eine bestimmte Ressource kann in zwei Mengen enthalten sein, wie durch die erste Ressource in der Menge 1322 und die zweite Ressource in der Menge 1324, schattiert angegeben, um anzugeben, dass sie dieselbe Ressource sind.
  • Das Suchsystem 110 aggregiert dann eine Qualitätsmetrik R für jede der referenzierten Ressourcen in jeder Menge von Ressourcen. Es können vielfältige Qualitätsmetriken verwendet werden. Zum Beispiel kann die Metrik ein Zählwert sein, wie oft eine bestimmte Ressource aus den zu den Mengen 13221326 gehörenden Suchergebnissen ausgewählt wurde; oder kann eine Auswahlrate sein, die ein Verhältnis der Anzahl von Malen, wie oft eine bestimmte Ressource aus den zu den Mengen 13221326 gehörenden Suchergebnissen ausgewählt wurde, zu der Anzahl von Malen, wie oft die Suchergebnisse präsentiert wurden, ist; oder kann ein Wert sein, der auf einer Funktion von Auswahlen, der Wichtigkeit in einem Ressourcengraphen und optional anderen Metriken basiert.
  • Die Suchmaschine 110 identifiziert die Ressourcen mit der höchsten Ressourcenmetrik und stellt als Reaktion auf das Erfüllen eines Vorhersagekriteriums Suchergebnisse bereit, die diese Ressourcen als Reaktion auf die Anfrageeingabe 1302 referenzieren. Zum Beispiel können Suchergebnisse, die die obersten N Ressourcen referenzieren, gemäß Einstufung durch ihre jeweiligen Ressourcenmetriken, für die Anfrageeingabe 1302 bereitgestellt werden. Als Alternative kann eine Teilmenge der bereitgestellten Suchergebnisse die obersten ein oder zwei Ressourcen, bestimmt durch die Ressourcenmetrik R, referenzieren und die übrigen bereitgestellten Suchergebnisse können für einen am höchsten eingestuften Anfragevorschlag sein.
  • Ähnliche Prozesse können für Werbung verwendet werden, die mit Suchergebnissen bereitgestellt wird. Wenn zum Beispiel keine zusätzlichen Anfragevorschlagsanforderungen der Anzeige der Suchergebnisse folgen und keine zusätzlichen Suchbefehle empfangen werden, wird eine Impression für jede Werbung, die mit den Suchergebnissen gezeigt wird, gezählt.
  • Bei beiden obigen Zuschreibungsmodellen werden, wenn eine Benutzerinteraktion als Reaktion auf die Suchergebnisse oder eine Werbung (z. B. eine Auswahl eines Suchergebnisses oder einer Werbung) vorliegen, entsprechende Impressions und das Click-Through aufgezeichnet.
  • Wenn der Client die in der Suchschnittstelle 502 präsentierten Suchergebnisse nach dem Empfang neuer Suchergebnisse aktualisiert, verbleibt bei bestimmten Implementierungen die Werbung, wenn bestimmt wird, dass sie immer noch für den Anfragevorschlag relevant ist, für den die Suchergebnisse bereitgestellt werden. Zum Beispiel kann sich die Suchmaschine 110 in Datenkommunikation mit dem Werbe-Verwaltungssystem 130 befinden. Für jeden Anfragevorschlag und jede Suchergebnismenge bestimmt das Suchsystem bzw. Werbe-Verwaltungssystem, ob die Werbung, die zuvor bereitgestellt wurde, für die derzeit bereitgestellten Suchergebnisse relevant ist. Wenn dies der Fall ist, bleibt die Werbung, die relevant ist, angezeigt. Die Werbung, die nicht relevant ist, kann entfernt werden, und die verfügbaren Werbe-Slots, die resultieren, können separat für neue relevante Werbung auktioniert werden.
  • §8.0 Zusätzliche Implementierungsdetails
  • In der vorliegenden Beschreibung beschriebene Ausführungsformen des Gegenstands und der funktionalen Operationen können in digitalen elektronischen Schaltkreisen oder in Computersoftware, Firmware oder Hardware implementiert werden, die die in der vorliegenden Beschreibung offenbarten Strukturen und ihre strukturellen Äquivalente oder Kombinationen einer oder mehrerer dieser umfassen. Ausführungsformen des in der vorliegenden Beschreibung beschriebenen Gegenstands können als ein oder mehrere Computerprogrammprodukte implementiert werden, d. h. als ein oder mehrere Module von Computerprogrammanweisungen, die auf einem greifbaren Programmträger zur Ausführung durch Datenverarbeitungsvorrichtungen oder zur Steuerung des Betriebs dieser codiert werden. Der greifbare Programmträger kann ein computerlesbares Medium sein, wie etwa eine maschinenlesbare Speichereinrichtung, ein maschinenlesbares Speichersubstrat, eine Speichereinrichtung oder eine Kombination einer oder mehrerer dieser.
  • Der Ausdruck „Datenverarbeitungsvorrichtungen” umfasst alle Vorrichtungen, Einrichtungen und Maschinen zum Verarbeiten von Daten, einschließlich beispielsweise eines programmierbaren Prozessors, eines Computers oder mehrerer Prozessoren oder Computer. Die Vorrichtungen können zusätzlich zu Hardware Code umfassen, der eine Ausführungsumgebung für das betreffende Computerprogramm erzeugt, z. B. Code, der Prozessor-Firmware darstellt, einen Protokollstapel, ein Datenbankverwaltungssystem, ein Betriebssystem oder eine Kombination eines oder mehrerer davon.
  • Ein Computerprogramm (das auch als Programm, Software, Softwareanwendung, Script oder Code bekannt ist) kann in einer beliebigen Form von Programmiersprache geschrieben sein, darunter kompilierte oder interpretierte Sprachen oder deklarative oder prozedurale Sprachen, und es kann in einer beliebigen Form eingesetzt werden, wie etwa als selbstständiges Programm oder als Modul, als Komponente, Subroutine oder andere Einheit, die für Verwendung in einer Datenverarbeitungsumgebung geeignet ist. Ein Computerprogramm entspricht nicht unbedingt einer Datei in einem Dateisystem. Ein Programm kann in einem Teil einer Datei, die andere Programme oder Daten hält (z. B. ein oder mehrere Scripts, die in einem Dokument in der Markup-Sprache gespeichert sind), in einer einzigen Datei, die dem betreffenden Programm gewidmet ist, oder in mehreren koordinierten Dateien (z. B. Dateien, die ein oder mehrere Module, Subprogramme oder Teile von Code speichern) gespeichert sein. Ein Computerprogramm kann verwendet werden, um auf einem Computer oder auf mehreren Computern, die sich an einem Standort befinden oder über mehrere Standorte verteilt und durch ein Kommunikationsnetzwerk miteinander verbunden sind, ausgeführt zu werden.
  • Die in der vorliegenden Beschreibung beschriebenen Prozesse und logischen Flüsse können durch einen oder mehrere programmierbare Prozessoren ausgeführt werden, die ein oder mehrere Computerprogramme ausführen, um durch Operieren an Eingangsdaten und Erzeugen von Ausgaben Funktionen auszuführen. Die Prozesse und logischen Flüsse können auch durch spezielle Logikschaltkreise, z. B. ein FPGA (Field Programmable Gate Array) oder ein ASIC (anwendungsspezifische integrierte Schaltung) ausgeführt werden bzw. die Vorrichtung kann auch als diese implementiert werden.
  • Zu für die Ausführung eines Computerprogramms geeigneten Prozessoren gehören beispielsweise sowohl allgemeine als auch spezielle Mikroprozessoren und beliebige oder mehrere Prozessoren einer beliebigen Art von digitalem Computer. Ein Prozessor empfängt im Allgemeinen Anweisungen und Daten von einem Nurlesespeicher oder einem Direktzugriffsspeicher oder beidem. Die wesentlichen Elemente eines Computers sind ein Prozessor zum Ausführen von Anweisungen und eine oder mehrere Speichereinrichtungen zum Speichern von Anweisungen und Daten. Im Allgemeinen wird ein Computer auch eine oder mehrere Massenspeichereinrichtungen zum Speichern von Daten, z. B. magnetische, magnetooptische Datenträger oder optische Datenträger, umfassen oder wirksam mit diesen gekoppelt sein, um Daten von diesen zu empfangen oder zu diesen zu transferieren. Ein Computer muss jedoch solche Einrichtungen nicht aufweisen. Darüber hinaus kann ein Computer in eine andere Einrichtung eingebettet sein, z. B. in ein Mobiltelefon, einen Personal Digital Assistant (PDA), einen mobilen Audio- oder Video-Player, eine Spielkonsole, einen Empfänger des Global Positioning System (GPS), um nur einige wenige zu nennen.
  • Computerlesbare Medien, die zum Speichern von Computerprogrammanweisungen und Daten geeignet sind, umfassen alle Formen von nichtflüchtigem Speicher, Medien- und Speichereinrichtungen, einschließlich beispielsweise Halbleiter-Speichereinrichtungen, z. B. EPROM, EEPROM und Flash-Speichereinrichtungen; magnetische Datenträger, z. B. interne Festplatten oder wechselbare Datenträger; magnetooptische Datenträger; und Datenträger des Typs CD-ROM und DVD-ROM. Der Prozessor und der Speicher können durch spezielle logische Schaltkreise ergänzt werden oder in diese integriert sein.
  • Um Interaktion mit einem Benutzer zu gewährleisten, können Ausführungsformen des in der vorliegenden Beschreibung beschriebenen Gegenstands auf einem Computer implementiert werden, der eine Anzeigeeinrichtung, z. B. einen Monitor des Typs CRT (Kathodenstrahlröhre) oder LCD (Flüssigkristallanzeige) zum Anzeigen von Informationen für den Benutzer und eine Tastatur und eine Zeigeeinrichtung, z. B. eine Maus oder einen Trackball, wodurch der Benutzer dem Computer Eingaben bereitstellen kann, aufweist. Es können auch andere Arten von Einrichtungen verwendet werden, um Interaktion mit einem Benutzer zu gewährleisten; zum Beispiel können dem Benutzer bereitgestellte Rückmeldungen eine beliebige Form von sensorischer Rückmeldung sein, z. B. visuelle Rückmeldung, hörbare Rückmeldung oder Tast-Rückmeldung; und die Eingabe von dem Benutzer kann in einer beliebigen Form empfangen werden, darunter akustische, Sprach- oder Tasteingabe.
  • Die Ausführungsformen des in der vorliegenden Beschreibung beschriebenen Gegenstands können in einem Datenverarbeitungssystem implementiert werden, das eine Backend-Komponente umfasst (z. B. als ein Datenserver), oder das eine Middleware-Komponente umfasst (z. B. einen Anwendungsserver) oder das eine Frontend-Komponente umfasst (z. B. einen Client-Computer mit einer grafischen Benutzeroberfläche oder einem Web-Browser, wodurch ein Benutzer mit einer Implementierung des in der vorliegenden Beschreibung beschriebenen Gegenstands interagieren kann), oder eine beliebige Kombination von solchen Backend-, Middleware- oder Frontend-Komponenten. Die Komponenten des Systems können durch eine beliebige Form oder ein beliebiges Medium der digitalen Datenkommunikation (z. B. ein Kommunikationsnetzwerk) miteinander verbunden werden. Beispiele für Kommunikationsnetzwerke wären ein lokales Netzwerk („LAN”), ein großflächiges Netzwerk („WAN”) und das Internet.
  • Das Datenverarbeitungssystem kann Clients und Server umfassen. Ein Client und Server sind im Allgemeinen voneinander entfernt und interagieren typischerweise durch ein Kommunikationsnetzwerk. Die Beziehung von Client und Server entsteht mittels Computerprogrammen, die auf den jeweiligen Computern laufen und eine Client-Server-Beziehung zueinander aufweisen.
  • Obwohl die vorliegende Beschreibung viele spezifische Implementierungsdetails enthält, sollten diese nicht als Begrenzung des Schutzumfangs irgendeiner Erfindung oder des Beanspruchbaren sein, sondern stattdessen als Beschreibungen von Merkmalen, die für bestimmte Ausführungsformen bestimmter Erfindungen spezifisch sein können. Bestimmte Merkmale, die in der vorliegenden Beschreibung im Kontext separater Ausführungsformen beschrieben werden, können auch in Kombination in einer einzigen Ausführungsform implementiert werden. Umgekehrt können verschiedene Merkmale, die im Kontext einer einzigen Ausführungsform beschrieben werden, auch in mehreren Ausführungsformen separat oder in einer beliebigen geeigneten Subkombination implementiert werden. Darüber hinaus können, obwohl Merkmale oben als in bestimmten Kombinationen wirkend beschrieben und sogar anfänglich als solche beansprucht wurden, ein oder mehrere Merkmale aus einer beanspruchten Kombination in bestimmten Fällen aus der Kombination herausgenommen werden und die beanspruchte Kombination kann eine Subkombination oder Variante einer Subkombination betreffen.

Claims (41)

  1. System, das Folgendes umfasst: eine Datenverarbeitungsvorrichtung; und ein Computerspeichermedium, das mit einem Computerprogramm kodiert ist, wobei das Programm Datenverarbeitungsvorrichtungsanweisungen umfasst, die, wenn sie durch die Datenverarbeitungsvorrichtung ausgeführt werden, bewirken, dass die Datenverarbeitungsvorrichtung Operationen ausführt, die Folgendes umfassen: Empfangen einer Anforderung einer Suchressource von einer Client-Einrichtung; Bereitstellen der Suchressource, die Schnittstellenanweisungen umfasst, die bewirken, dass die Client-Einrichtung eine Suchschnittstelle erzeugt, die ein Anfrageeingabefeld umfasst, für die Client-Einrichtung als Reaktion auf die Anforderung der Suchressource; Empfangen von Anfragevorschlagsanforderungen von einer Client-Einrichtung, wobei jede Anfragevorschlagsanforderung als Reaktion auf eine Anfrageeingabe in dem Anfrageeingabefeld erzeugt wurde; als Reaktion auf jede Anfragevorschlagsanforderung: Bereitstellen von Anfragevorschlägen als Reaktion auf die Anforderung; Bestimmen, ob ein Vorhersagekriterium erfüllt ist, wobei das Vorhersagekriterium von einer Benutzerauswahl eines als Reaktion auf eine oder mehrere Anfragevorschlagsanforderungen bereitgestellten Anfragevorschlags unabhängig ist und von dem Empfang einer vollständigen Anfrage von der Client-Einrichtung unabhängig ist; als Reaktion auf das Bestimmen, dass das Vorhersagekriterium erfüllt ist: Bereitstellen von Suchergebnissen für die Client-Einrichtung, wobei die Suchergebnisse Reaktion auf einen der als Reaktion auf die Anfragevorschlagsanforderung oder eine oder mehrere vorherige Anfragevorschlagsanforderungen bereitgestellten Anfragevorschläge sind; und als Reaktion auf das Bestimmen, dass das Vorhersagekriterium nicht erfüllt ist: Nichtbereitstellen der Suchergebnisse für die Client-Einrichtung.
  2. System nach Anspruch 1, wobei die Anfragevorschläge gemäß einer Reihenfolge von einer höchsten Einstufung zu einer niedrigsten Einstufung eingestuft werden und wobei der am höchsten eingestufte Anfragevorschlag der Anfragevorschlag ist, für den Suchergebnisse als Reaktion auf das Bestimmen, dass das Vorhersagekriterium erfüllt ist, bereitgestellt werden; und die Schnittstellenanweisungen bewirken, dass die Client-Einrichtung Folgendes durchführt: Wiedergeben der Anfragevorschläge gemäß der Reihenfolge; und als Reaktion darauf, dass die Client-Einrichtung die Suchergebnisse empfängt, die Reaktion auf einen der Anfragevorschläge sind, Erzeugen einer Angabe in der Schnittstelle, die den Anfragevorschlag angibt, für den die Suchergebnisse Reaktion sind.
  3. System nach Anspruch 2, wobei die Angabe eine Hervorhebung des Anfragevorschlags ist, die den Anfragevorschlag visuell von den anderen Anfragevorschlägen unterscheidet.
  4. System nach Anspruch 2 oder 3, wobei die Angabe eine automatische Vervollständigung einer Anfrageeingabe in dem Anfrageeingabefeld auf den Anfragevorschlag ist, für den die Suchergebnisse Reaktion sind, wobei die automatische Vervollständigung an die Anfrageeingabe in dem Anfrageeingabefeld angehängten differenzierten Text umfasst, wobei der differenzierte Text die Anfrageeingabe in dem Anfrageeingabefeld als einen Stamm des Anfragevorschlags angibt.
  5. System nach einem der Ansprüche 2 bis 4, wobei die Schnittstellenanweisungen bewirken, dass die Client-Einrichtung Folgendes durchführt: Anzeigen der Suchergebnisse im Wesentlichen synchron mit dem Erzeugen der Angabe in der Schnittstelle, die den Anfragevorschlag angibt, für den die Suchergebnisse Reaktion sind.
  6. System nach Anspruch 5, wobei die Schnittstellenanweisungen bewirken, dass die Client-Einrichtung Folgendes durchführt: als Reaktion auf den Empfang nachfolgender Suchergebnisse als Reaktion auf einen nachfolgenden Anfragevorschlag, wobei der nachfolgende Anfragevorschlag dem Anfragevorschlag, für den die Suchergebnisse angezeigt werden, zeitlich nachfolgend ist: Erzeugen einer Angabe in der Schnittstelle, die den nachfolgenden Anfragevorschlag angibt; Anzeigen der nachfolgenden Suchergebnisse im Wesentlichen synchron mit dem Erzeugen der Angabe in der Schnittstelle, die den nachfolgenden Anfragevorschlag angibt; und Entfernen der zeitlich vor dem Anzeigen der nachfolgenden Suchergebnisse angezeigten Suchergebnisse.
  7. System nach einem der Ansprüche 1 bis 6, wobei jeder Anfragevorschlag eine jeweilige Wahrscheinlichkeit aufweist, vom Benutzer ausgewählt zu werden; und das Bestimmen, ob ein Vorhersagekriterium erfüllt ist, Folgendes umfasst: Identifizieren des Anfragevorschlags mit der höchsten jeweiligen Wahrscheinlichkeit relativ zu den Wahrscheinlichkeiten der anderen bereitgestellten Anfragevorschläge; und Bestimmen, dass das Vorhersagekriterium erfüllt ist, wenn die höchste jeweilige Wahrscheinlichkeit des Anfragevorschlags eine Schwellenwahrscheinlichkeit übersteigt, die größer als null ist; und das Bereitstellen von Suchergebnissen für die Client-Einrichtung das Bereitstellen von Suchergebnissen als Reaktion auf den Anfragevorschlag mit der höchsten jeweiligen Wahrscheinlichkeit umfasst.
  8. System nach einem der Ansprüche 1 bis 7, wobei die Anfragevorschläge gemäß einer Reihenfolge von einer höchsten Einstufung zu einer niedrigsten Einstufung eingestuft werden und wobei der am höchsten eingestufte Anfragevorschlag der Anfragevorschlag ist, für den Suchergebnisse als Reaktion auf das Bestimmen, dass das Vorhersagekriterium erfüllt ist, bereitgestellt werden; und das Bestimmen, ob ein Vorhersagekriterium erfüllt ist, das Bestimmen umfasst, dass das Vorhersagekriterium erfüllt ist, wenn der am höchsten eingestufte Anfragevorschlag eine jeweilige Wahrscheinlichkeit aufweist, vom Benutzer ausgewählt zu werden, die eine Schwellenwahrscheinlichkeit größer als null übersteigt; und das Bereitstellen von Suchergebnissen für die Client-Einrichtung das Bereitstellen von Suchergebnissen als Reaktion auf die am höchsten eingestufte Anfrage umfasst.
  9. System nach einem der Ansprüche 1 bis 8, wobei das Bestimmen, ob ein Vorhersagekriterium erfüllt ist, das Bestimmen umfasst, ob ein Vorhersageereignis vor dem Empfang einer weiteren Anfragevorschlagsanforderung nach der Anfragevorschlagsanforderung auftritt, wobei das Vorhersageereignis unabhängig von der Benutzerauswahl eines als Reaktion auf eine vorherige Anfragevorschlagsanforderung bereitgestellten Anfragevorschlags auftritt.
  10. System nach einem der Ansprüche 1 bis 9, wobei das Bestimmen, ob ein Vorhersagekriterium erfüllt ist, Folgendes umfasst: Initialisieren und Starten eines Timers, der nach einem vordefinierten Zeitraum abläuft, als Reaktion auf die Anfragevorschlagsanforderung; Bestimmen, dass das Vorhersagekriterium erfüllt ist, wenn der Timer abläuft, bevor eine weitere Anfragevorschlagsanforderung empfangen wird.
  11. System nach einem der Ansprüche 1 bis 10, wobei die Suchressource eine Video-Suchressource ist und die Suchergebnisse Videoressourcen referenzieren.
  12. System nach einem der Ansprüche 1 bis 11, wobei die Schnittstellenanweisungen bewirken, dass die Client-Einrichtung die Operation des Erzeugens einer Anfragevorschlagsanforderung als Reaktion auf jede Zeicheneingabe in dem Anfrageeingabefeld ausführt.
  13. System nach einem der Ansprüche 1 bis 12, wobei die Datenverarbeitungsvorrichtungsanweisungen ferner bewirken, dass die Datenverarbeitungsvorrichtung Operationen ausführt, die Folgendes umfassen: Definieren von Wortstämmen, wobei jeder Wortstamm ein oder mehrere Zeichen sind, die in einer Sequenz in eine Reihenfolge gesetzt werden und an die ein oder mehrere Zeichen am Ende der Sequenz angefügt werden können, um ein Wort zu bilden; Empfangen von Stamm-Geboten für die Wortstämme, wobei jedes Stamm-Gebot ein Gebot für einen entsprechenden Wortstamm und entsprechend einem Preis ist, den ein Werbekunde für die Anzeige einer auf den entsprechenden Wortstamm abgezielten Werbung bezahlt, und wobei das Targeting auf den entsprechenden Wortstamm von Schlüsselwort-Targeting unabhängig ist; Empfangen eines Anfragestamms von einer Client-Einrichtung, wobei der Anfragestamm eine Anfrageeingabe von einer Client-Einrichtung ist und ein oder mehrere Zeichen sind, die in einer Eingabesequenz in eine Reihenfolge gesetzt sind, die, eine Reihenfolge definiert, in der das eine oder die mehreren Zeichen als die Anfrageeingabe eingegeben wurden; als Reaktion auf den Empfang eines Anfragestamms: Identifizieren von Wortstämmen, die mit dem Anfragestamm übereinstimmen; Bereitstellen der entsprechenden Stamm-Gebote für die übereinstimmenden Wortstämme als Gebote für eine Werbe-Auktion für Werbe-Slots zum Anzeigen von Werbung; Empfangen von gewählter Werbung, von der bestimmt wird, dass sie einen Werbe-Slot in der Auktion ersteigert haben; und Bereitstellen der ausgewählten Werbung zur Anzeige in den Werbe-Slots auf der Client-Einrichtung.
  14. System nach Anspruch 13, wobei das Empfangen eines Anfragestamms das Empfangen des Anfragestamms nur als Reaktion auf das Bestimmen, dass ein Vorhersagekriterium erfüllt ist, umfasst.
  15. System nach Anspruch 13 oder 14, wobei das Bereitstellen der ausgewählten Werbung zur Anzeige in den Werbe-Slots auf der Client-Einrichtung das Bereitstellen der gewählten Werbung nur als Reaktion auf das Bestimmen, dass ein Vorhersagekriterium erfüllt ist, umfasst.
  16. System nach einem der Ansprüche 13 bis 15, wobei jedes Stamm-Gebot Kosten pro Zeiteinheit der Anzeige definiert; und die Datenverarbeitungsvorrichtungsanweisungen bewirken, dass die Datenverarbeitungsvorrichtung Operationen ausführt, die ferner Folgendes umfassen: Empfangen von Daten, die eine Dauer definieren, für die die ausgewählte Werbung in den Werbe-Slots auf der Client-Einrichtung angezeigt wurde; für jede ausgewählte Werbung, Bestimmen eines Betrags proportional zu dem Stamm-Gebot der ausgewählten Werbung und der Dauer; und jedem Werbekunden einer ausgewählten Werbung den Betrag für die ausgewählte Werbung berechnen.
  17. System nach Anspruch 16, wobei das Bestimmen eines Betrags proportional zu dem Stamm-Gebot der ausgewählten Werbung und der Dauer Folgendes umfasst: Bestimmen, ob die Dauer eine Mindestdauer übersteigt, die größer als null ist; Bestimmen des Betrags als null, wenn die Dauer die Mindestdauer nicht übersteigt; und Bestimmen des Betrags als proportional zu dem Stamm-Gebot der ausgewählten Werbung und der Dauer, wenn die Dauer die Mindestdauer übersteigt.
  18. System nach Anspruch 16 oder 17, wobei das Bestimmen eines Betrags proportional zu dem Stamm-Gebot der ausgewählten Werbung und der Dauer Folgendes umfasst: Bestimmen, ob die Dauer eine Maximaldauer übersteigt; Bestimmen des Betrags als proportional zu dem Stamm-Gebot der ausgewählten Werbung und der Dauer, wenn die Dauer die Maximaldauer übersteigt; und Bestimmen des Betrags als einen Maximalbetrag, wenn die Dauer die Maximaldauer übersteigt.
  19. System nach einem der Ansprüche 16 bis 18, wobei das Bestimmen eines Betrags proportional zu dem Stamm-Gebot der ausgewählten Werbung und der Dauer das Bestimmen eines Betrags auf der Basis einer Polynomfunktion ersten Grades umfasst, die eine Beziehung zwischen dem Stamm-Gebot und der Zeiteinheit definiert.
  20. System nach einem der Ansprüche 16 bis 18, wobei das Bestimmen eines Betrags proportional zu dem Stamm-Gebot der ausgewählten Werbung der Dauer das Bestimmen eines Betrags auf der Basis einer Polynomfunktion des Grads n umfasst, die eine Beziehung zwischen dem Stamm-Gebot und der Zeiteinheit definiert, wobei n größer als eins ist.
  21. System nach einem der Ansprüche 16 bis 18, wobei das Bestimmen eines Betrags proportional zu dem Stamm-Gebot der ausgewählten Werbung und der Dauer das Bestimmen eines Betrags auf der Basis einer Sigmoid-Funktion umfasst, die eine Beziehung zwischen dem Stamm-Gebot und der Zeiteinheit definiert.
  22. System nach einem der Ansprüche 13 bis 21, wobei das Definieren von Wortstämmen für jeden von mehreren Werbekunden Folgendes umfasst: Empfangen von Schlüsselwörtern, an denen der Werbekunde geboten hat; und für jedes Schlüsselwort Auswählen eines oder mehrerer Zeichen, die einen Stamm der Schlüsselwörter bilden und die nicht alle Zeichen der Schlüsselwörter umfassen.
  23. System nach Anspruch 22, wobei das Empfangen von Stamm-Geboten für die Wortstämme Folgendes umfasst: für jeden Wortstamm Identifizieren eines Schlüsselwort-Gebots für das Schlüsselwort, aus dem der Wortstamm abgeleitet wurde; und Bestimmen des Stamm-Gebots auf der Basis des identifizierten Schlüsselwort-Gebots, wobei das Stamm-Gebot proportional zu dem Schlüsselwort-Gebot ist.
  24. Computerspeichermedium, das mit einem Computerprogramm codiert ist, wobei das Programm Datenverarbeitungsvorrichtungsanweisungen umfasst, die, wenn sie durch eine Datenverarbeitungsvorrichtung ausgeführt werden, bewirken, dass die Datenverarbeitungsvorrichtung Operationen ausführt, die Folgendes umfassen: Empfangen einer Anforderung einer Suchressource von einer Client-Einrichtung; Bereitstellen der Suchressource, die Schnittstellenanweisungen umfasst, die bewirken, dass die Client-Einrichtung eine Suchschnittstelle erzeugt, die ein Anfrageeingabefeld umfasst, für die Client-Einrichtung als Reaktion auf die Anforderung der Suchressource; Empfangen von Anfragevorschlagsanforderungen von einer Client-Einrichtung, wobei jede Anfragevorschlagsanforderung als Reaktion auf eine Anfrageeingabe in dem Anfrageeingabefeld erzeugt wurde; als Reaktion auf jede Anfragevorschlagsanforderung: Bereitstellen von Anfragevorschlägen als Reaktion auf die Anforderung; Bestimmen, ob ein Vorhersagekriterium erfüllt ist, wobei das Vorhersagekriterium von einer Benutzerauswahl eines als Reaktion auf eine oder mehrere Anfragevorschlagsanforderungen bereitgestellten Anfragevorschlags unabhängig ist und von dem Empfang einer vollständigen Anfrage von der Client-Einrichtung unabhängig ist; als Reaktion auf das Bestimmen, dass das Vorhersagekriterium erfüllt ist: Bereitstellen von Suchergebnissen für die Client-Einrichtung, wobei die Suchergebnisse Reaktion auf einen der als Reaktion auf die Anfragevorschlagsanforderung oder eine oder mehrere vorherige Anfragevorschlagsanforderungen bereitgestellten Anfragevorschläge sind; und als Reaktion auf das Bestimmen, dass das Vorhersagekriterium nicht erfüllt ist: Nichtbereitstellen der Suchergebnisse für die Client-Einrichtung.
  25. Computerspeichermedium nach Anspruch 24, wobei die Anfragevorschläge gemäß einer Reihenfolge von einer höchsten Einstufung zu einer niedrigsten Einstufung eingestuft werden und wobei der am höchsten eingestufte Anfragevorschlag der Anfragevorschlag ist, für den Suchergebnisse als Reaktion auf das Bestimmen, dass das Vorhersagekriterium erfüllt ist, bereitgestellt werden; ferner umfassend: Wiedergeben der Anfragevorschläge gemäß der Reihenfolge; und als Reaktion darauf, dass die Client-Einrichtung die Suchergebnisse empfängt, die Reaktion auf einen der Anfragevorschläge sind, Erzeugen einer Angabe in der Schnittstelle, die den Anfragevorschlag angibt, für den die Suchergebnisse Reaktion sind.
  26. Computerspeichermedium nach Anspruch 25, wobei die Angabe eine automatische Vervollständigung einer Anfrageeingabe in dem Anfrageeingabefeld auf den Anfragevorschlag ist, für die die Suchergebnisse Reaktion sind, wobei die automatische Vervollständigung an die Anfrageeingabe in dem Anfrageeingabefeld angehängten differenzierten Text umfasst, wobei der differenzierte Text die Anfrageeingabe in dem Anfrageeingabefeld als einen Stamm des Anfragevorschlags angibt.
  27. Computerspeichermedium nach einem der Ansprüche 24 bis 26, wobei jeder Anfragevorschlag eine jeweilige Wahrscheinlichkeit aufweist, vom Benutzer ausgewählt zu werden; und das Bestimmen, ob ein Vorhersagekriterium erfüllt ist, Folgendes umfasst: Identifizieren des Anfragevorschlags mit der höchsten jeweiligen Wahrscheinlichkeit relativ zu den Wahrscheinlichkeiten der anderen bereitgestellten Anfragevorschläge; und Bestimmen, dass das Vorhersagekriterium erfüllt ist, wenn die höchste jeweilige Wahrscheinlichkeit des Anfragevorschlags eine Schwellenwahrscheinlichkeit übersteigt, die größer als null ist; und das Bereitstellen von Suchergebnissen für die Client-Einrichtung das Bereitstellen von Suchergebnissen als Reaktion auf den Anfragevorschlag mit der höchsten jeweiligen Wahrscheinlichkeit umfasst.
  28. Computerspeichermedium nach einem der Ansprüche 24 bis 27, wobei die Anfragevorschläge gemäß einer Reihenfolge von einer höchsten Einstufung zu einer niedrigsten Einstufung eingestuft werden und wobei der am höchsten eingestufte Anfragevorschlag der Anfragevorschlag ist, für den Suchergebnisse als Reaktion auf das Bestimmen, dass das Vorhersagekriterium erfüllt ist, bereitgestellt werden; und das Bestimmen, ob ein Vorhersagekriterium erfüllt ist, das Bestimmen umfasst, dass das Vorhersagekriterium erfüllt ist, wenn der am höchsten eingestufte Anfragevorschlag eine jeweilige Wahrscheinlichkeit aufweist, vom Benutzer ausgewählt zu werden, die eine Schwellenwahrscheinlichkeit größer als null übersteigt; und das Bereitstellen von Suchergebnissen für die Client-Einrichtung das Bereitstellen von Suchergebnissen als Reaktion auf die am höchsten eingestufte Anfrage umfasst.
  29. Computerspeichermedium nach einem der Ansprüche 24 bis 28, wobei das Bestimmen, ob ein Vorhersagekriterium erfüllt ist, das Bestimmen umfasst, ob ein Vorhersageereignis vor dem Empfang einer weiteren Anfragevorschlagsanforderung nach der Anfragevorschlagsanforderung auftritt, wobei das Vorhersageereignis unabhängig von der Benutzerauswahl eines als Reaktion auf eine vorherige Anfragevorschlagsanforderung bereitgestellten Anfragevorschlags auftritt.
  30. Computerspeichermedium nach einem der Ansprüche 24 bis 29, wobei das Bestimmen, ob ein Vorhersagekriterium erfüllt ist, Folgendes umfasst: Initialisieren und Starten eines Timers, der nach einem vordefinierten Zeitraum abläuft, als Reaktion auf die Anfragevorschlagsanforderung; Bestimmen, dass das Vorhersagekriterium erfüllt ist, wenn der Timer abläuft, bevor eine weitere Anfragevorschlagsanforderung empfangen wird.
  31. Computerspeichermedium nach einem der Ansprüche 24 bis 30, das ferner Folgendes umfasst: Definieren von Wortstämmen, wobei jeder Wortstamm ein oder mehrere Zeichen sind, die in einer Sequenz in eine Reihenfolge gesetzt werden und an die ein oder mehrere Zeichen am Ende der Sequenz angefügt werden können, um ein Wort zu bilden; Empfangen von Stamm-Geboten für die Wortstämme, wobei jedes Stamm-Gebot ein Gebot für einen entsprechenden Wortstamm und entsprechend einem Preis ist, den ein Werbekunde für die Anzeige einer auf den entsprechenden Wortstamm abgezielten Werbung bezahlt, und wobei das Targeting auf den entsprechenden Wortstamm von Schlüsselwort-Targeting unabhängig ist; Empfangen eines Anfragestamms von einer Client-Einrichtung, wobei der Anfragestamm eine Anfrageeingabe von einer Client-Einrichtung ist und ein oder mehrere Zeichen sind, die in einer Eingabesequenz in eine Reihenfolge gesetzt sind, die eine Reihenfolge definiert, in der das eine oder die mehreren Zeichen als die Anfrageeingabe eingegeben wurden; als Reaktion auf den Empfang eines Anfragestamms: Identifizieren von Wortstämmen, die mit dem Anfragestamm übereinstimmen; Bereitstellen der entsprechenden Stamm-Gebote für die übereinstimmenden Wortstämme als Gebote für eine Werbe-Auktion für Werbe-Slots zum Anzeigen von Werbung; Empfangen von gewählter Werbung, von der bestimmt wird, dass sie einen Werbe-Slot in der Auktion ersteigert haben; und Bereitstellen der ausgewählten Werbung zur Anzeige in den Werbe-Slots auf der Client-Einrichtung.
  32. Computerspeichermedium nach einem der Ansprüche 24 bis 31, wobei das Empfangen eines Anfragestamms das Empfangen des Anfragestamms nur als Reaktion auf das Bestimmen, dass ein Vorhersagekriterium erfüllt ist, umfasst, wobei das Vorhersagekriterium von einer Benutzerauswahl eines als Reaktion auf den Anfragestamm bereitgestellten Anfragevorschlags und unabhängig von dem Empfang einer vollständigen Anfrage von der Client-Einrichtung unabhängig ist.
  33. Computerspeichermedium nach einem der Ansprüche 24 bis 32, wobei das Bereitstellen der ausgewählten Werbung zur Anzeige in Werbe-Slots auf der Client-Einrichtung das Bereitstellen der ausgewählten Werbung nur als Reaktion auf das Bestimmen, dass ein Vorhersagekriterium erfüllt ist, umfasst, wobei das Vorhersagekriterium von einer Benutzerauswahl eines als Reaktion auf den Anfragestamm bereitgestellten Anfragevorschlags unabhängig ist und von dem Empfang einer vollständigen Anfrage von der Client-Einrichtung unabhängig ist.
  34. Computerspeichermedium nach Anspruch 24 bis 33, wobei jedes Stamm-Gebot Kosten pro Zeiteinheit der Anzeige definiert; und ferner umfassend: Empfangen von Daten, die eine Dauer definieren, für die die ausgewählte Werbung in den Werbe-Slots auf der Client-Einrichtung angezeigt wurde; für jede ausgewählte Werbung, Bestimmen eines Betrags proportional zu dem Stamm-Gebot der ausgewählten Werbung und der Dauer; und jedem Werbekunden einer ausgewählten Werbung den Betrag für die ausgewählte Werbung berechnen.
  35. Computerspeichermedium nach Anspruch 34, wobei das Bestimmen eines Betrags proportional zu dem Stamm-Gebot der ausgewählten Werbung und der Dauer Folgendes umfasst: Bestimmen, ob die Dauer eine Mindestdauer übersteigt, die größer als null ist; Bestimmen des Betrags als null, wenn die Dauer die Mindestdauer nicht übersteigt; und Bestimmen des Betrags als proportional zu dem Stamm-Gebot der ausgewählten Werbung und der Dauer, wenn die Dauer die Mindestdauer übersteigt.
  36. Computerspeichermedium nach Anspruch 34 oder 35, wobei das Bestimmen eines Betrags proportional zu dem Stamm-Gebot der ausgewählten Werbung und der Dauer Folgendes umfasst: Bestimmen, ob die Dauer eine Maximaldauer übersteigt; Bestimmen des Betrags als proportional zu dem Stamm-Gebot der ausgewählten Werbung und der Dauer, wenn die Dauer die Maximaldauer übersteigt; und Bestimmen des Betrags als einen Maximalbetrag, wenn die Dauer die Maximaldauer übersteigt.
  37. Computerspeichermedium nach einem der Ansprüche 34 bis 36, wobei das Bestimmen eines Betrags proportional zu dem Stamm-Gebot der ausgewählten Werbung und der Dauer das Bestimmen eines Betrags auf der Basis einer Polynomfunktion ersten Grades umfasst, die eine Beziehung zwischen dem Stamm-Gebot und der Zeiteinheit definiert.
  38. Computerspeichermedium nach einem der Ansprüche 34 bis 36, wobei das Bestimmen eines Betrags proportional zu dem Stamm-Gebot der ausgewählten Werbung und der Dauer das Bestimmen eines Betrags auf der Basis einer Polynomfunktion des Grads n umfasst, die eine Beziehung zwischen dem Stamm-Gebot und der Zeiteinheit definiert, wobei n größer als eins ist.
  39. Computerspeichermedium nach einem der Ansprüche 34 bis 36, wobei das Bestimmen eines Betrags proportional zu dem Stamm-Gebot der ausgewählten Werbung und der Dauer das Bestimmen eines Betrags auf der Basis einer Sigmoid-Funktion umfasst, die eine Beziehung zwischen dem Stamm-Gebot und der Zeiteinheit definiert.
  40. Computerspeichermedium nach einem der Ansprüche 24 bis 39, wobei das Definieren von Wortstämmen für jeden von mehreren Werbekunden Folgendes umfasst: Empfangen von Schlüsselwörtern, an denen der Werbekunde geboten hat; und für jedes Schlüsselwort Auswählen eines oder mehrerer Zeichen, die einen Stamm der Schlüsselwörter bilden und die nicht alle Zeichen der Schlüsselwörter umfassen.
  41. Computerspeichermedium nach Anspruch 40, wobei das Empfangen von Stamm-Geboten für die Wortstämme Folgendes umfasst: für jeden Wortstamm Identifizieren eines Schlüsselwort-Gebots für das Schlüsselwort, aus dem der Wortstamm abgeleitet wurde; und Bestimmen des Stamm-Gebots auf der Basis des identifizierten Schlüsselwort-Gebots, wobei das Stamm-Gebot proportional zu dem Schlüsselwort-Gebot ist.
DE212011100017U 2010-08-19 2011-08-19 Prädiktive Anfragevervollständigung und prädiktive Suchergebnisse Expired - Lifetime DE212011100017U1 (de)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US37522210P 2010-08-19 2010-08-19
US61/375,222 2010-08-19
PCT/US2011/048419 WO2012024585A1 (en) 2010-08-19 2011-08-19 Predictive query completion and predictive search results

Publications (1)

Publication Number Publication Date
DE212011100017U1 true DE212011100017U1 (de) 2012-04-03

Family

ID=44543862

Family Applications (2)

Application Number Title Priority Date Filing Date
DE212011100019U Expired - Lifetime DE212011100019U1 (de) 2010-08-19 2011-08-19 Prädiktive Anfragevervollständigung und prädiktive Suchergebnisse
DE212011100017U Expired - Lifetime DE212011100017U1 (de) 2010-08-19 2011-08-19 Prädiktive Anfragevervollständigung und prädiktive Suchergebnisse

Family Applications Before (1)

Application Number Title Priority Date Filing Date
DE212011100019U Expired - Lifetime DE212011100019U1 (de) 2010-08-19 2011-08-19 Prädiktive Anfragevervollständigung und prädiktive Suchergebnisse

Country Status (6)

Country Link
US (7) US8700653B2 (de)
EP (2) EP2606440A1 (de)
AU (2) AU2011291549B2 (de)
CA (2) CA2808856A1 (de)
DE (2) DE212011100019U1 (de)
WO (2) WO2012024585A1 (de)

Families Citing this family (204)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20130018914A1 (en) * 2005-06-21 2013-01-17 W.W. Grainger, Inc. System and method for facilitating use of a selection guide
US8232973B2 (en) 2008-01-09 2012-07-31 Apple Inc. Method, device, and graphical user interface providing word recommendations for text input
US11048765B1 (en) 2008-06-25 2021-06-29 Richard Paiz Search engine optimizer
US9600919B1 (en) 2009-10-20 2017-03-21 Yahoo! Inc. Systems and methods for assembling and/or displaying multimedia objects, modules or presentations
US8856115B1 (en) 2009-12-07 2014-10-07 Google Inc. Framework for suggesting search terms
US11379473B1 (en) 2010-04-21 2022-07-05 Richard Paiz Site rank codex search patterns
US11423018B1 (en) 2010-04-21 2022-08-23 Richard Paiz Multivariate analysis replica intelligent ambience evolving system
US10936687B1 (en) 2010-04-21 2021-03-02 Richard Paiz Codex search patterns virtual maestro
EP2606440A1 (de) 2010-08-19 2013-06-26 Google, Inc. Ausfürhung einer prädiktiven abfrage und prädiktive suchergebnisse
US8812733B1 (en) 2010-08-19 2014-08-19 Google Inc. Transport protocol independent communications library
KR20120021056A (ko) * 2010-08-31 2012-03-08 삼성전자주식회사 검색 결과의 임시 저장이 가능한 검색 서비스 제공방법 및 이를 적용한 디스플레이 장치
KR101719268B1 (ko) 2010-09-02 2017-03-23 삼성전자주식회사 검색창과 영상 표시창이 상호전환되는 검색 서비스 제공방법 및 이를 적용한 디스플레이 장치
US8364709B1 (en) * 2010-11-22 2013-01-29 Google Inc. Determining word boundary likelihoods in potentially incomplete text
KR101850886B1 (ko) * 2010-12-23 2018-04-23 네이버 주식회사 감소 질의를 추천하는 검색 시스템 및 방법
US8473507B2 (en) 2011-01-14 2013-06-25 Apple Inc. Tokenized search suggestions
WO2012156893A1 (en) * 2011-05-18 2012-11-22 Koninklijke Philips Electronics N.V. Performing a search for a document
US20130007041A1 (en) * 2011-06-29 2013-01-03 The C-Factor Incorporated Method and apparatus for determining targeted content to deliver in a collaborative social mobile platform
US8762356B1 (en) 2011-07-15 2014-06-24 Google Inc. Detecting change in rate of input reception
US8645825B1 (en) 2011-08-31 2014-02-04 Google Inc. Providing autocomplete suggestions
US9129606B2 (en) * 2011-09-23 2015-09-08 Microsoft Technology Licensing, Llc User query history expansion for improving language model adaptation
US10387503B2 (en) 2011-12-15 2019-08-20 Excalibur Ip, Llc Systems and methods involving features of search and/or search integration
US10296158B2 (en) 2011-12-20 2019-05-21 Oath Inc. Systems and methods involving features of creation/viewing/utilization of information modules such as mixed-media modules
US10504555B2 (en) 2011-12-20 2019-12-10 Oath Inc. Systems and methods involving features of creation/viewing/utilization of information modules such as mixed-media modules
US9286390B2 (en) * 2011-12-30 2016-03-15 Microsoft Technology Licensing, Llc Presentation of rich search results in delineated areas
US8880992B2 (en) * 2012-01-10 2014-11-04 Google Inc. Method and apparatus for animating transitions between search results
US9026631B2 (en) 2012-01-24 2015-05-05 International Business Machines Corporation Business-to-business social network
US9922344B1 (en) 2012-02-24 2018-03-20 Google Llc Serving advertisements based on partial queries
US11099714B2 (en) 2012-02-28 2021-08-24 Verizon Media Inc. Systems and methods involving creation/display/utilization of information modules, such as mixed-media and multimedia modules
IL218420A0 (en) * 2012-03-01 2012-07-31 Google Inc Targeting content based on receipt of partial terms
US9495454B2 (en) * 2012-03-08 2016-11-15 Chih-Pin TANG User apparatus, system and method for dynamically reclassifying and retrieving target information object
CN103310343A (zh) * 2012-03-15 2013-09-18 阿里巴巴集团控股有限公司 商品信息发布方法和装置
US9378283B2 (en) * 2012-04-23 2016-06-28 Excalibur Ip, Llc Instant search results with page previews
US20150169643A1 (en) * 2012-05-14 2015-06-18 Google Inc. Providing supplemental search results in repsonse to user interest signal
US8671106B1 (en) 2012-05-23 2014-03-11 Google Inc. Indicators for entities corresponding to search suggestions
US9843823B2 (en) 2012-05-23 2017-12-12 Yahoo Holdings, Inc. Systems and methods involving creation of information modules, including server, media searching, user interface and/or other features
CN103455507B (zh) * 2012-05-31 2017-03-29 国际商业机器公司 搜索引擎推荐方法及装置
CN103455162B (zh) * 2012-06-01 2017-11-14 中兴通讯股份有限公司 输入处理方法及装置
US8983778B2 (en) 2012-06-05 2015-03-17 Apple Inc. Generation of intersection information by a mapping service
US8965696B2 (en) 2012-06-05 2015-02-24 Apple Inc. Providing navigation instructions while operating navigation application in background
US9886794B2 (en) 2012-06-05 2018-02-06 Apple Inc. Problem reporting in maps
US9997069B2 (en) 2012-06-05 2018-06-12 Apple Inc. Context-aware voice guidance
US9418672B2 (en) 2012-06-05 2016-08-16 Apple Inc. Navigation application with adaptive instruction text
US10176633B2 (en) * 2012-06-05 2019-01-08 Apple Inc. Integrated mapping and navigation application
US10156455B2 (en) 2012-06-05 2018-12-18 Apple Inc. Context-aware voice guidance
US9482296B2 (en) 2012-06-05 2016-11-01 Apple Inc. Rendering road signs during navigation
US10303723B2 (en) 2012-06-12 2019-05-28 Excalibur Ip, Llc Systems and methods involving search enhancement features associated with media modules
US10417289B2 (en) 2012-06-12 2019-09-17 Oath Inc. Systems and methods involving integration/creation of search results media modules
WO2013188603A2 (en) * 2012-06-12 2013-12-19 Yahoo! Inc Systems and methods involving search enhancement features associated with media modules
US9875284B1 (en) * 2012-06-18 2018-01-23 A9.Com, Inc. Displaying search completion results
US10535041B2 (en) * 2012-06-26 2020-01-14 Oath Inc. System and method of predicting community member responsiveness
WO2014014374A1 (en) * 2012-07-19 2014-01-23 Yandex Europe Ag Search query suggestions based in part on a prior search
US8577671B1 (en) 2012-07-20 2013-11-05 Veveo, Inc. Method of and system for using conversation state information in a conversational interaction system
US9465833B2 (en) 2012-07-31 2016-10-11 Veveo, Inc. Disambiguating user intent in conversational interaction system for large corpus information retrieval
US20140129973A1 (en) * 2012-11-08 2014-05-08 Microsoft Corporation Interaction model for serving popular queries in search box
US9135335B2 (en) * 2012-12-03 2015-09-15 International Business Machines Corporation Filmstrip-based query suggestions
US9384279B2 (en) 2012-12-07 2016-07-05 Charles Reed Method and system for previewing search results
US20140172564A1 (en) * 2012-12-17 2014-06-19 Facebook, Inc. Targeting objects to users based on queries in an online system
US9305114B2 (en) 2012-12-17 2016-04-05 Microsoft Technology Licensing, Llc Building long search queries
US9430782B2 (en) * 2012-12-17 2016-08-30 Facebook, Inc. Bidding on search results for targeting users in an online system
US9135307B1 (en) * 2012-12-27 2015-09-15 Google Inc. Selectively generating alternative queries
US9037598B1 (en) * 2013-01-25 2015-05-19 Google Inc. Variable query generation
US20140214820A1 (en) * 2013-01-31 2014-07-31 Chacha Search, Inc. Method and system of creating a seach query
US11741090B1 (en) 2013-02-26 2023-08-29 Richard Paiz Site rank codex search patterns
US11809506B1 (en) 2013-02-26 2023-11-07 Richard Paiz Multivariant analyzing replicating intelligent ambience evolving system
US9230013B1 (en) * 2013-03-07 2016-01-05 International Business Machines Corporation Suffix searching on documents
US20140280289A1 (en) * 2013-03-12 2014-09-18 Microsoft Corporation Autosuggestions based on user history
US20150213041A1 (en) * 2013-03-15 2015-07-30 Google Inc. Search suggestion rankings
US20140280016A1 (en) * 2013-03-15 2014-09-18 Hugh Evan Williams Autocomplete-based advertisements
US9558508B2 (en) * 2013-03-15 2017-01-31 Microsoft Technology Licensing, Llc Energy-efficient mobile advertising
USD852829S1 (en) * 2013-04-05 2019-07-02 Thales Avionics, Inc. Display screen or portion thereof with graphical user interface
WO2014167702A1 (ja) * 2013-04-12 2014-10-16 株式会社日立製作所 計算機、データ処理方法、及び、非一時的な記録媒体
US9805124B2 (en) * 2013-04-25 2017-10-31 Microsoft Technology Licensing, Llc Automatic generation of a collection of content
PT2994908T (pt) 2013-05-07 2019-10-18 Veveo Inc Interface de entrada incremental de discurso com retorno em tempo real
US20140344250A1 (en) * 2013-05-20 2014-11-20 Microsoft Corporation Enhanced search refinement for personal information services
US9633080B2 (en) 2013-05-28 2017-04-25 Microsoft Technology Licensing, Llc Hierarchical entity information for search
US20140358962A1 (en) * 2013-06-04 2014-12-04 Microsoft Corporation Responsive input architecture
US9378517B2 (en) * 2013-07-03 2016-06-28 Google Inc. Methods and systems for providing potential search queries that may be targeted by one or more keywords
US9298779B1 (en) 2013-07-16 2016-03-29 Google Inc. Combining content with a search result
US9342839B2 (en) 2013-07-16 2016-05-17 Google Inc. Combining content with a search result
WO2015010550A1 (zh) * 2013-07-26 2015-01-29 北京奇虎科技有限公司 客户端访问认证网址的方法、装置及系统
US9043425B2 (en) * 2013-07-29 2015-05-26 Google Inc. Resource locator remarketing
US9619499B2 (en) 2013-08-07 2017-04-11 International Business Machines Corporation Hardware implementation of a tournament tree sort algorithm
US9830354B2 (en) 2013-08-07 2017-11-28 International Business Machines Corporation Accelerating multiple query processing operations
US9251218B2 (en) 2013-08-07 2016-02-02 International Business Machines Corporation Tunable hardware sort engine for performing composite sorting algorithms
US9495418B2 (en) 2013-08-07 2016-11-15 International Business Machines Corporation Scalable acceleration of database query operations
US8631325B1 (en) 2013-08-09 2014-01-14 Zoomdata, Inc. Real-time data visualization of streaming data
US10185748B1 (en) * 2013-08-22 2019-01-22 Evernote Corporation Combining natural language and keyword search queries for personal content collections
US11328324B1 (en) * 2013-08-30 2022-05-10 Groupon, Inc. Systems and methods for providing promotions based on search queries
RU2592393C2 (ru) * 2013-08-30 2016-07-20 Общество С Ограниченной Ответственностью "Яндекс" Система и способ завершения пользовательского запроса и предоставления ответа на запрос
US20150081653A1 (en) * 2013-09-13 2015-03-19 Yahoo! Inc. Type free search assist
US20150088921A1 (en) * 2013-09-20 2015-03-26 Ebay Inc. Search guidance
US20150106358A1 (en) * 2013-10-14 2015-04-16 Google Inc. Systems and methods for conveying search results within an email application
US10061835B2 (en) * 2013-10-28 2018-08-28 Motorola Solutions, Inc. Establishing user-confidence levels of data inputs
US20150142891A1 (en) * 2013-11-19 2015-05-21 Sap Se Anticipatory Environment for Collaboration and Data Sharing
US9355152B2 (en) 2013-12-02 2016-05-31 Qbase, LLC Non-exclusionary search within in-memory databases
US9230041B2 (en) 2013-12-02 2016-01-05 Qbase, LLC Search suggestions of related entities based on co-occurrence and/or fuzzy-score matching
US9361406B1 (en) * 2013-12-27 2016-06-07 Google Inc. Query completions
US9940664B2 (en) * 2013-12-30 2018-04-10 Tencent Technology (Shenzhen) Company Limited Information input method, account information input method and terminal
US10311054B2 (en) * 2014-01-08 2019-06-04 Red Hat, Inc. Query data splitting
US9984165B2 (en) * 2014-02-13 2018-05-29 Amadeus S.A.S. Increasing search result validity
US8862646B1 (en) 2014-03-25 2014-10-14 PlusAmp, Inc. Data file discovery, visualization, and importing
US11194868B1 (en) * 2014-04-29 2021-12-07 Google Llc Providing supplemental information in news search
US9471570B2 (en) * 2014-04-30 2016-10-18 Excalibur Ip, Llc Method and system for user selection of query suggestions
US9827714B1 (en) 2014-05-16 2017-11-28 Google Llc Method and system for 3-D printing of 3-D object models in interactive content items
US9875287B1 (en) * 2014-05-21 2018-01-23 Google Inc. Providing a notification in place of content item
US11314826B2 (en) 2014-05-23 2022-04-26 Samsung Electronics Co., Ltd. Method for searching and device thereof
TWI748266B (zh) * 2014-05-23 2021-12-01 南韓商三星電子股份有限公司 搜索方法、電子裝置及非暫時性電腦可讀記錄媒體
US9990433B2 (en) 2014-05-23 2018-06-05 Samsung Electronics Co., Ltd. Method for searching and device thereof
US10540365B2 (en) * 2014-05-30 2020-01-21 Apple Inc. Federated search
US11061893B2 (en) * 2014-05-30 2021-07-13 Apple Inc. Multi-domain query completion
US10255267B2 (en) * 2014-05-30 2019-04-09 Apple Inc. Device, method, and graphical user interface for a predictive keyboard
US10162889B2 (en) 2014-06-18 2018-12-25 Google Llc Methods, systems, and media for searching for video content
US10339565B2 (en) * 2014-06-30 2019-07-02 Walmart Apollo, Llc Presenting advertisement content during searches of digital receipts
US20160019291A1 (en) * 2014-07-18 2016-01-21 John R. Ruge Apparatus And Method For Information Retrieval At A Mobile Device
RU2014131311A (ru) * 2014-07-29 2016-02-20 Общество С Ограниченной Ответственностью "Яндекс" Способ (варианты) генерации страницы результатов поиска, сервер, используемый в нем, и способ определения позиции веб-страницы в списке веб-страниц
GB201418402D0 (en) * 2014-10-16 2014-12-03 Touchtype Ltd Text prediction integration
US10691698B2 (en) * 2014-11-06 2020-06-23 International Business Machines Corporation Automatic near-real-time prediction, classification, and notification of events in natural language systems
US10503377B2 (en) * 2014-11-24 2019-12-10 Facebook, Inc. Dynamic status indicator
US10397346B2 (en) 2014-11-24 2019-08-27 Facebook, Inc. Prefetching places
US10863354B2 (en) 2014-11-24 2020-12-08 Facebook, Inc. Automated check-ins
US9852136B2 (en) 2014-12-23 2017-12-26 Rovi Guides, Inc. Systems and methods for determining whether a negation statement applies to a current or past query
US10310813B2 (en) 2014-12-29 2019-06-04 International Business Machines Corporation Hardware implementation of a tournament tree sort algorithm using an external memory
US9727218B2 (en) * 2015-01-02 2017-08-08 Microsoft Technology Licensing, Llc Contextual browser frame and entry box placement
US20160196348A1 (en) * 2015-01-07 2016-07-07 International Business Machines Corporation Re-ordering search results based on viewed pages
US9922082B2 (en) 2015-01-30 2018-03-20 Splunk Inc. Enforcing dependency between pipelines
US9922084B2 (en) 2015-01-30 2018-03-20 Splunk Inc. Events sets in a visually distinct display format
US9916346B2 (en) * 2015-01-30 2018-03-13 Splunk Inc. Interactive command entry list
US10726037B2 (en) 2015-01-30 2020-07-28 Splunk Inc. Automatic field extraction from filed values
US11615073B2 (en) 2015-01-30 2023-03-28 Splunk Inc. Supplementing events displayed in a table format
US10013454B2 (en) 2015-01-30 2018-07-03 Splunk Inc. Text-based table manipulation of event data
US9977803B2 (en) 2015-01-30 2018-05-22 Splunk Inc. Column-based table manipulation of event data
US10469346B2 (en) * 2015-01-30 2019-11-05 Splunk Inc. Correlating performance data of client and host to identify performance issue of a third device
US9854049B2 (en) 2015-01-30 2017-12-26 Rovi Guides, Inc. Systems and methods for resolving ambiguous terms in social chatter based on a user profile
US10061824B2 (en) 2015-01-30 2018-08-28 Splunk Inc. Cell-based table manipulation of event data
US9842160B2 (en) 2015-01-30 2017-12-12 Splunk, Inc. Defining fields from particular occurences of field labels in events
US11544248B2 (en) 2015-01-30 2023-01-03 Splunk Inc. Selective query loading across query interfaces
US11442924B2 (en) 2015-01-30 2022-09-13 Splunk Inc. Selective filtered summary graph
US10915583B2 (en) 2015-01-30 2021-02-09 Splunk Inc. Suggested field extraction
US9817871B2 (en) 2015-02-27 2017-11-14 Zoomdata, Inc. Prioritized retrieval and/or processing of data via query selection
US9251276B1 (en) 2015-02-27 2016-02-02 Zoomdata, Inc. Prioritization of retrieval and/or processing of data
US10169489B2 (en) * 2015-03-02 2019-01-01 International Business Machines Corporation Query disambiguation in a question-answering environment
US10157192B2 (en) * 2015-03-20 2018-12-18 Oath Inc. System and method for photo scene searching
US10713594B2 (en) 2015-03-20 2020-07-14 Salesforce.Com, Inc. Systems, methods, and apparatuses for implementing machine learning model training and deployment with a rollback mechanism
US9135559B1 (en) 2015-03-20 2015-09-15 TappingStone Inc. Methods and systems for predictive engine evaluation, tuning, and replay of engine performance
US9864775B2 (en) * 2015-03-26 2018-01-09 International Business Machines Corporation Query strength indicator
FR3035246A1 (fr) * 2015-04-20 2016-10-21 Qwant Procede d'affichage d'information complementaire a une saisie de recherche effectuee dans une premiere base de donnees
US10073886B2 (en) 2015-05-27 2018-09-11 International Business Machines Corporation Search results based on a search history
US10503764B2 (en) * 2015-06-01 2019-12-10 Oath Inc. Location-awareness search assistance system and method
US9792281B2 (en) 2015-06-15 2017-10-17 Microsoft Technology Licensing, Llc Contextual language generation by leveraging language understanding
CN105262794B (zh) * 2015-09-17 2018-08-17 腾讯科技(深圳)有限公司 内容投放方法及装置
RU2632269C2 (ru) * 2015-09-24 2017-10-03 Общество С Ограниченной Ответственностью "Яндекс" Способ, сервер и электронное устройство создания предложений для поискового запроса
US20180329625A1 (en) * 2015-11-05 2018-11-15 Jason Griffin Word typing touchscreen keyboard
RU2015156695A (ru) 2015-12-29 2017-07-05 Общество С Ограниченной Ответственностью "Яндекс" Способ и система обработки префикса, связанного с поисковым запросом
US11222064B2 (en) 2015-12-31 2022-01-11 Ebay Inc. Generating structured queries from images
US10078673B2 (en) 2016-04-20 2018-09-18 Google Llc Determining graphical elements associated with text
US10140017B2 (en) 2016-04-20 2018-11-27 Google Llc Graphical keyboard application with integrated search
US20170308289A1 (en) * 2016-04-20 2017-10-26 Google Inc. Iconographic symbol search within a graphical keyboard
US10305828B2 (en) 2016-04-20 2019-05-28 Google Llc Search query predictions by a keyboard
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
US10609183B2 (en) * 2016-04-21 2020-03-31 Oath Inc. Content sharing recommendations
JP2017204018A (ja) * 2016-05-09 2017-11-16 富士通株式会社 検索処理方法、検索処理プログラムおよび情報処理装置
US11334800B2 (en) * 2016-05-12 2022-05-17 International Business Machines Corporation Altering input search terms
WO2017209571A1 (en) * 2016-06-02 2017-12-07 Samsung Electronics Co., Ltd. Method and electronic device for predicting response
WO2018005903A1 (en) * 2016-06-30 2018-01-04 Zowdow, Inc. Systems and methods for enhanced search, content, and advertisement delivery
US10664157B2 (en) 2016-08-03 2020-05-26 Google Llc Image search query predictions by a keyboard
KR102017853B1 (ko) * 2016-09-06 2019-09-03 주식회사 카카오 검색 방법 및 장치
US20180081893A1 (en) * 2016-09-19 2018-03-22 Ebay Inc. Prediction-based instant search
CN108073633A (zh) * 2016-11-17 2018-05-25 百度在线网络技术(北京)有限公司 关键词的出价和匹配方式设置方法和装置
US9942312B1 (en) 2016-12-16 2018-04-10 Zoomdata, Inc. System and method for facilitating load reduction at a landing zone
US11170014B2 (en) * 2016-12-29 2021-11-09 Google Llc Method and system for preview of search engine processing
US10423638B2 (en) 2017-04-27 2019-09-24 Google Llc Cloud inference system
US10956519B2 (en) * 2017-06-29 2021-03-23 Cisco Technology, Inc. Fine-grained encrypted access to encrypted information
KR101945234B1 (ko) * 2017-07-14 2019-02-08 (주)인터버드 마지막 알파벳 제거 알고리즘을 이용한 반도체 부품 검색 방법
US11016964B1 (en) * 2017-09-12 2021-05-25 Amazon Technologies, Inc. Intent determinations for content search
KR101966779B1 (ko) * 2017-09-29 2019-04-09 재단법인 한국기계전기전자시험연구원 사용 환경 하에서의 플랜트 재질 추천 장치
US10572596B2 (en) * 2017-11-14 2020-02-25 International Business Machines Corporation Real-time on-demand auction based content clarification
US10339192B1 (en) 2017-11-30 2019-07-02 Growpath, Inc. Systems and methods for matching buzzwords in a client management system
US11475082B1 (en) 2017-12-15 2022-10-18 Palantir Technologies Inc. Systems and methods for context-based keyword searching
FR3080472B1 (fr) 2018-04-19 2021-06-04 Amadeus Sas Controle de la generation des resultats de recherche a entrees multiples
US11126630B2 (en) * 2018-05-07 2021-09-21 Salesforce.Com, Inc. Ranking partial search query results based on implicit user interactions
US11086857B1 (en) * 2018-05-15 2021-08-10 Intuit Inc. Method and system for semantic search with a data management system
RU2692045C1 (ru) * 2018-05-18 2019-06-19 Общество С Ограниченной Ответственностью "Яндекс" Способ и система для рекомендации свежих саджестов поисковых запросов в поисковой системе
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
US11514036B2 (en) * 2018-08-14 2022-11-29 Jpmorgan Chase Bank, N.A. Method and system for self-learning natural language predictive searching
US20200097499A1 (en) * 2018-09-26 2020-03-26 Rovi Guides, Inc. Systems and methods for generating query suggestions
US10936823B2 (en) 2018-10-30 2021-03-02 International Business Machines Corporation Method and system for displaying automated agent comprehension
CN109901896A (zh) * 2018-12-06 2019-06-18 华为技术有限公司 一种人机交互系统及人机交互系统中多任务处理方法
US11250039B1 (en) * 2018-12-06 2022-02-15 A9.Com, Inc. Extreme multi-label classification
US11170026B1 (en) 2019-05-28 2021-11-09 Intuit Inc. System and method for identifying questions of users of a data management system
US11409805B2 (en) 2019-05-30 2022-08-09 AdMarketplace Computer implemented system and methods for implementing a search engine access point enhanced for suggested listing navigation
US11194467B2 (en) 2019-06-01 2021-12-07 Apple Inc. Keyboard management user interfaces
US11347756B2 (en) * 2019-08-26 2022-05-31 Microsoft Technology Licensing, Llc Deep command search within and across applications
US11042558B1 (en) 2019-09-06 2021-06-22 Tableau Software, Inc. Determining ranges for vague modifiers in natural language commands
US11423066B2 (en) 2019-09-12 2022-08-23 Intuit Inc. System and method for reducing user query ambiguity through chatbot clarifying questions
US11327651B2 (en) * 2020-02-12 2022-05-10 Facebook Technologies, Llc Virtual keyboard based on adaptive language model
US11481111B2 (en) 2020-04-24 2022-10-25 Microsoft Technology Licensing, Llc Utilization of predictive gesture analysis for preloading and executing application components
US11620282B2 (en) * 2020-06-22 2023-04-04 S&P Global Inc. Automated information retrieval system and semantic parsing
US11900046B2 (en) 2020-08-07 2024-02-13 Microsoft Technology Licensing, Llc Intelligent feature identification and presentation
US20220075941A1 (en) * 2020-09-08 2022-03-10 Beijing Voyager Technology Co., Ltd. Artificial intelligence system and method for providing auto-complete suggestions
US11416136B2 (en) 2020-09-14 2022-08-16 Apple Inc. User interfaces for assigning and responding to user inputs
US11698933B1 (en) 2020-09-18 2023-07-11 Tableau Software, LLC Using dynamic entity search during entry of natural language commands for visual data analysis
US11301631B1 (en) * 2020-10-05 2022-04-12 Tableau Software, LLC Visually correlating individual terms in natural language input to respective structured phrases representing the natural language input
US11914644B2 (en) * 2021-10-11 2024-02-27 Microsoft Technology Licensing, Llc Suggested queries for transcript search

Family Cites Families (103)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6009459A (en) 1997-01-10 1999-12-28 Microsoft Corporation Intelligent automatic searching for resources in a distributed environment
US6377965B1 (en) 1997-11-07 2002-04-23 Microsoft Corporation Automatic word completion system for partially entered data
US6006225A (en) 1998-06-15 1999-12-21 Amazon.Com Refining search queries by the suggestion of correlated terms from prior searches
EP1101160B1 (de) 1998-08-05 2003-04-02 BRITISH TELECOMMUNICATIONS public limited company Multimodale benutzerschnittstelle
US6370518B1 (en) 1998-10-05 2002-04-09 Openwave Systems Inc. Method and apparatus for displaying a record from a structured database with minimum keystrokes
US6411950B1 (en) 1998-11-30 2002-06-25 Compaq Information Technologies Group, Lp Dynamic query expansion
US6751606B1 (en) * 1998-12-23 2004-06-15 Microsoft Corporation System for enhancing a query interface
US6895558B1 (en) * 2000-02-11 2005-05-17 Microsoft Corporation Multi-access mode electronic personal assistant
US6578022B1 (en) * 2000-04-18 2003-06-10 Icplanet Corporation Interactive intelligent searching with executable suggestions
US6948129B1 (en) * 2001-02-08 2005-09-20 Masoud S Loghmani Multi-modal, multi-path user interface for simultaneous access to internet data over multiple media
JP4464045B2 (ja) * 2001-02-09 2010-05-19 ジョゼフ・ミンツ テレマティック及びルートガイダンスアプリケーションに関する交通予想をマッピングするために改良された方法及びシステム
US7778816B2 (en) * 2001-04-24 2010-08-17 Microsoft Corporation Method and system for applying input mode bias
US20090006543A1 (en) * 2001-08-20 2009-01-01 Masterobjects System and method for asynchronous retrieval of information based on incremental user input
US7752326B2 (en) 2001-08-20 2010-07-06 Masterobjects, Inc. System and method for utilizing asynchronous client server communication objects
US8112529B2 (en) 2001-08-20 2012-02-07 Masterobjects, Inc. System and method for asynchronous client server session communication
US7437349B2 (en) * 2002-05-10 2008-10-14 International Business Machines Corporation Adaptive probabilistic query expansion
US7676452B2 (en) * 2002-07-23 2010-03-09 International Business Machines Corporation Method and apparatus for search optimization based on generation of context focused queries
US7146362B2 (en) * 2002-08-28 2006-12-05 Bpallen Technologies Llc Method and apparatus for using faceted metadata to navigate through information resources
US8005919B2 (en) 2002-11-18 2011-08-23 Aol Inc. Host-based intelligent results related to a character stream
US7487185B2 (en) 2003-02-24 2009-02-03 Microsoft Corporation Technique for changing views of web content
US6947930B2 (en) 2003-03-21 2005-09-20 Overture Services, Inc. Systems and methods for interactive search query refinement
US7051023B2 (en) * 2003-04-04 2006-05-23 Yahoo! Inc. Systems and methods for generating concept units from search queries
US7181445B2 (en) * 2003-09-05 2007-02-20 Bellsouth Intellectual Property Corporation Aggregating, retrieving, and providing access to document visuals
US7523096B2 (en) 2003-12-03 2009-04-21 Google Inc. Methods and systems for personalized network searching
US7451131B2 (en) 2003-12-08 2008-11-11 Iac Search & Media, Inc. Methods and systems for providing a response to a query
EP1723632A4 (de) * 2004-02-25 2007-07-25 Xplore Technologies Corp Vorrichtung zur bereitstellung von digitalen eingaben mit mehreren betriebsarten
US7836044B2 (en) 2004-06-22 2010-11-16 Google Inc. Anticipated query generation and processing in a search engine
US7487145B1 (en) * 2004-06-22 2009-02-03 Google Inc. Method and system for autocompletion using ranked results
US7483880B2 (en) * 2004-09-30 2009-01-27 Microsoft Corporation User interface for database display
US7499940B1 (en) 2004-11-11 2009-03-03 Google Inc. Method and system for URL autocompletion using ranked results
US20060161520A1 (en) * 2005-01-14 2006-07-20 Microsoft Corporation System and method for generating alternative search terms
US7461059B2 (en) 2005-02-23 2008-12-02 Microsoft Corporation Dynamically updated search results based upon continuously-evolving search query that is based at least in part upon phrase suggestion, search engine uses previous result sets performing additional search tasks
US7788248B2 (en) 2005-03-08 2010-08-31 Apple Inc. Immediate search feedback
US20060218115A1 (en) * 2005-03-24 2006-09-28 Microsoft Corporation Implicit queries for electronic documents
US7647312B2 (en) * 2005-05-12 2010-01-12 Microsoft Corporation System and method for automatic generation of suggested inline search terms
US20060271426A1 (en) 2005-05-31 2006-11-30 Microsoft Corporation Posted price market for online search and content advertisements
WO2006138706A2 (en) * 2005-06-17 2006-12-28 Computer Associates Think, Inc. System and method for identifying application resources
US7725485B1 (en) * 2005-08-01 2010-05-25 Google Inc. Generating query suggestions using contextual information
US7747639B2 (en) 2005-08-24 2010-06-29 Yahoo! Inc. Alternative search query prediction
US7672932B2 (en) 2005-08-24 2010-03-02 Yahoo! Inc. Speculative search result based on a not-yet-submitted search query
US7516124B2 (en) 2005-12-20 2009-04-07 Yahoo! Inc. Interactive search engine
US7844599B2 (en) 2005-08-24 2010-11-30 Yahoo! Inc. Biasing queries to determine suggested queries
US7921109B2 (en) 2005-10-05 2011-04-05 Yahoo! Inc. Customizable ordering of search results and predictive query generation
US7962479B2 (en) * 2005-11-09 2011-06-14 Yahoo! Inc. System and method for generating substitutable queries
US8694530B2 (en) * 2006-01-03 2014-04-08 Textdigger, Inc. Search system with query refinement and search method
US7676460B2 (en) * 2006-03-03 2010-03-09 International Business Machines Corporation Techniques for providing suggestions for creating a search query
KR100792699B1 (ko) * 2006-03-17 2008-01-11 엔에이치엔(주) 일반 추천어 및 광고 추천어 자동완성 방법 및 시스템
US20070255693A1 (en) * 2006-03-30 2007-11-01 Veveo, Inc. User interface method and system for incrementally searching and selecting content items and for presenting advertising in response to search activities
KR100754768B1 (ko) * 2006-04-06 2007-09-03 엔에이치엔(주) 사용자별 맞춤 추천어를 제공하는 시스템, 방법 및 상기방법을 실행하기 위한 프로그램이 기록된 컴퓨터에서 판독가능한 기록 매체
CA2652762A1 (en) * 2006-05-19 2008-02-07 My Virtual Model Inc. Simulation-assisted search
US8301616B2 (en) * 2006-07-14 2012-10-30 Yahoo! Inc. Search equalizer
US7890499B1 (en) 2006-07-28 2011-02-15 Google Inc. Presentation of search results with common subject matters
US7716201B2 (en) * 2006-08-10 2010-05-11 Yahoo! Inc. Method and apparatus for reconstructing a search query
US20080109401A1 (en) * 2006-09-12 2008-05-08 Microsoft Corporation Presenting predetermined search results with query suggestions
WO2008053272A1 (en) * 2006-11-04 2008-05-08 Nokia Corporation Control of search scope
US7630970B2 (en) * 2006-11-28 2009-12-08 Yahoo! Inc. Wait timer for partially formed query
US7630978B2 (en) * 2006-12-14 2009-12-08 Yahoo! Inc. Query rewriting with spell correction suggestions using a generated set of query features
US20080270932A1 (en) * 2006-12-15 2008-10-30 Iac Search & Media, Inc. Toolbox editing
US20080147653A1 (en) * 2006-12-15 2008-06-19 Iac Search & Media, Inc. Search suggestions
US8255382B2 (en) 2007-06-20 2012-08-28 Boopsie, Inc. Dynamic menus for multi-prefix interactive mobile searches
US7680778B2 (en) 2007-01-19 2010-03-16 Microsoft Corporation Support for reverse and stemmed hit-highlighting
US20080189290A1 (en) * 2007-02-06 2008-08-07 Yahoo! Inc., A Delaware Corporation Method and System for Representing an Exploration of Resources Over a Communication Network
US20080195577A1 (en) 2007-02-09 2008-08-14 Wei Fan Automatically and adaptively determining execution plans for queries with parameter markers
US7996786B2 (en) * 2007-03-05 2011-08-09 Microsoft Corporation Dynamically rendering visualizations of data sets
US20080221983A1 (en) * 2007-03-06 2008-09-11 Siarhei Ausiannik Network information distribution system and a method of advertising and search for supply and demand of products/goods/services in any geographical location
US7668823B2 (en) * 2007-04-03 2010-02-23 Google Inc. Identifying inadequate search content
US20080256056A1 (en) * 2007-04-10 2008-10-16 Yahoo! Inc. System for building a data structure representing a network of users and advertisers
US7689535B2 (en) * 2007-05-30 2010-03-30 Red Hat, Inc. Method for providing a unified view of a domain model to a user
US20090043741A1 (en) * 2007-08-09 2009-02-12 Dohyung Kim Autocompletion and Automatic Input Method Correction for Partially Entered Search Query
WO2009040574A1 (en) * 2007-09-24 2009-04-02 Taptu Ltd Search results with search query suggestions
US20090094211A1 (en) * 2007-10-05 2009-04-09 Fujitsu Limited Implementing an expanded search and providing expanded search results
US20090094551A1 (en) 2007-10-05 2009-04-09 International Business Machines Corporation Enhancements to prevent split entries in the event of a window focus shift
US8694483B2 (en) * 2007-10-19 2014-04-08 Xerox Corporation Real-time query suggestion in a troubleshooting context
US7818334B2 (en) * 2007-10-22 2010-10-19 Microsoft Corporation Query dependant link-based ranking using authority scores
US20090171929A1 (en) * 2007-12-26 2009-07-02 Microsoft Corporation Toward optimized query suggeston: user interfaces and algorithms
US8131731B2 (en) * 2007-12-27 2012-03-06 Microsoft Corporation Relevancy sorting of user's browser history
US9000957B2 (en) 2008-01-13 2015-04-07 Aberra Molla Ethiopic character entry
US7984004B2 (en) * 2008-01-17 2011-07-19 Microsoft Corporation Query suggestion generation
US8959104B2 (en) 2008-03-21 2015-02-17 Microsoft Corporation Presenting query suggestions based upon content items
US9798806B2 (en) * 2008-03-31 2017-10-24 Excalibur Ip, Llc Information retrieval using dynamic guided navigation
US20090287626A1 (en) * 2008-05-14 2009-11-19 Microsoft Corporation Multi-modal query generation
US8082278B2 (en) * 2008-06-13 2011-12-20 Microsoft Corporation Generating query suggestions from semantic relationships in content
US8768909B2 (en) 2008-06-19 2014-07-01 Tropare, Inc. Dynamic menus for multi-prefix interactive mobile searches using predictive text to yield targeted advertisements
US20090327236A1 (en) * 2008-06-27 2009-12-31 Microsoft Corporation Visual query suggestions
US8745051B2 (en) * 2008-07-03 2014-06-03 Google Inc. Resource locator suggestions from input character sequence
US8010537B2 (en) * 2008-08-27 2011-08-30 Yahoo! Inc. System and method for assisting search requests with vertical suggestions
US20100076948A1 (en) * 2008-09-09 2010-03-25 International Business Machines Corporation System and method for interfacing search request and corresponding search result
US8370329B2 (en) * 2008-09-22 2013-02-05 Microsoft Corporation Automatic search query suggestions with search result suggestions from user history
US20100125809A1 (en) * 2008-11-17 2010-05-20 Fujitsu Limited Facilitating Display Of An Interactive And Dynamic Cloud With Advertising And Domain Features
US20100131481A1 (en) * 2008-11-26 2010-05-27 Honeywell International Inc. Methods for locating an item when a search mode is not selected
US20100146012A1 (en) * 2008-12-04 2010-06-10 Microsoft Corporation Previewing search results for suggested refinement terms and vertical searches
US20100185644A1 (en) * 2009-01-21 2010-07-22 Microsoft Corporatoin Automatic search suggestions from client-side, browser, history cache
US8275759B2 (en) 2009-02-24 2012-09-25 Microsoft Corporation Contextual query suggestion in result pages
AU2010286374B2 (en) * 2009-08-31 2015-09-17 Google Llc Framework for selecting and presenting answer boxes relevant to user input as query suggestions
US9405841B2 (en) * 2009-10-15 2016-08-02 A9.Com, Inc. Dynamic search suggestion and category specific completion
US8631004B2 (en) * 2009-12-28 2014-01-14 Yahoo! Inc. Search suggestion clustering and presentation
US8560561B2 (en) * 2010-01-07 2013-10-15 Microsoft Corporation Location aware search page elements
US8732171B2 (en) * 2010-01-28 2014-05-20 Microsoft Corporation Providing query suggestions
US8782556B2 (en) 2010-02-12 2014-07-15 Microsoft Corporation User-centric soft keyboard predictive technologies
US8341222B2 (en) * 2010-04-02 2012-12-25 Microsoft Corporation Text suggestion framework with client and server model
US8560562B2 (en) * 2010-07-22 2013-10-15 Google Inc. Predictive query suggestion caching
EP2606440A1 (de) 2010-08-19 2013-06-26 Google, Inc. Ausfürhung einer prädiktiven abfrage und prädiktive suchergebnisse
US20120167009A1 (en) 2010-12-22 2012-06-28 Apple Inc. Combining timing and geometry information for typing correction

Also Published As

Publication number Publication date
US20160321270A1 (en) 2016-11-03
US20120047135A1 (en) 2012-02-23
AU2011291544B2 (en) 2015-03-26
US11620318B2 (en) 2023-04-04
CA2808803A1 (en) 2012-02-23
US20180203863A1 (en) 2018-07-19
US8706750B2 (en) 2014-04-22
EP2606440A1 (de) 2013-06-26
CA2808856A1 (en) 2012-02-23
WO2012024580A1 (en) 2012-02-23
DE212011100019U1 (de) 2012-04-05
EP2606441A1 (de) 2013-06-26
US9953076B2 (en) 2018-04-24
US20120047134A1 (en) 2012-02-23
WO2012024585A1 (en) 2012-02-23
CA2808803C (en) 2018-11-06
US20230394072A1 (en) 2023-12-07
AU2011291544A1 (en) 2013-03-14
AU2011291549A1 (en) 2013-03-14
US20120047025A1 (en) 2012-02-23
AU2011291549B2 (en) 2015-03-19
US20140181135A1 (en) 2014-06-26
US8700653B2 (en) 2014-04-15

Similar Documents

Publication Publication Date Title
DE212011100017U1 (de) Prädiktive Anfragevervollständigung und prädiktive Suchergebnisse
TWI585598B (zh) 搜尋輔助系統與方法
US8938463B1 (en) Modifying search result ranking based on implicit user feedback and a model of presentation bias
JP5220297B2 (ja) キーワードと条件に基づく広告配信方法
US8972391B1 (en) Recent interest based relevance scoring
US20150254250A1 (en) Collaborative search results
US9679027B1 (en) Generating related questions for search queries
US20090006207A1 (en) Using Previous User Search Query To Target Advertisements
JP6538277B2 (ja) 検索クエリ間におけるクエリパターンおよび関連する総統計の特定
DE112016004178T5 (de) Ereignis-basierte Inhaltsverteilung
DE112016001313T5 (de) Systeme und verfahren zum aktivieren von benutzer-sprachinteraktionen mit einem host-computergerät
DE202008018229U1 (de) Nutzerbasierte Identifikation von Inhalten
DE112012003366T5 (de) Synthese von Verzeichnissen, Domains und Subdomains
DE202008018246U1 (de) Preisbildung für Video-Werbung
DE112016001601T5 (de) Anzeige von inhaltselementen basierend auf dem benutzerinteresse zum erhalt von inhalt
AU2017216516B2 (en) Predictive query completion and predictive search results
DE212011100012U1 (de) Social Overlays auf Anzeigen
DE202010003574U1 (de) System für Anfragen an Internetsuchmaschinen

Legal Events

Date Code Title Description
R207 Utility model specification

Effective date: 20120524

R150 Utility model maintained after payment of first maintenance fee after three years
R150 Utility model maintained after payment of first maintenance fee after three years

Effective date: 20140915

R082 Change of representative

Representative=s name: PROCK, THOMAS, DIPL.-ING. (FH) DR., GB

R151 Utility model maintained after payment of second maintenance fee after six years
R081 Change of applicant/patentee

Owner name: HANSSON, OTHAR, SUNNYVALE, US

Free format text: FORMER OWNERS: BLACK, DAVID, NEW YORK, US; EFFRAT, JONATHAN J., MOUNTAIN VIEW, CALIF., US; GOMES, BENEDICT A., MOUNTAIN VIEW, CALIFORNIA, US; HANSSON, OTHAR, SUNNYVALE, CALIFORNIA, US; MAHKOVEC, ZIGA, SAN FRANCISCO, CALIFORNIA, US; MCMAHAN, BENJAMIN J., SAN JOSE, CALIFORNIA, US; STROHMAN, TREVOR, SUNNYVALE, CALIFORNIA, US; TUNGARE, MANAS, MOUNTAIN VIEW, CALIFORNIA, US; WICHARY, MARCIN K., SAN FRANCISCO, CALIFORNIA, US; WILEY, JON M., MOUNTAIN VIEW, CALIFORNIA, US; WRIGHT, JOHANNA R., MOUNTAIN VIEW, CALIFORNIA, US

Owner name: WILEY, JON M., MOUNTAIN VIEW, US

Free format text: FORMER OWNERS: BLACK, DAVID, NEW YORK, US; EFFRAT, JONATHAN J., MOUNTAIN VIEW, CALIF., US; GOMES, BENEDICT A., MOUNTAIN VIEW, CALIFORNIA, US; HANSSON, OTHAR, SUNNYVALE, CALIFORNIA, US; MAHKOVEC, ZIGA, SAN FRANCISCO, CALIFORNIA, US; MCMAHAN, BENJAMIN J., SAN JOSE, CALIFORNIA, US; STROHMAN, TREVOR, SUNNYVALE, CALIFORNIA, US; TUNGARE, MANAS, MOUNTAIN VIEW, CALIFORNIA, US; WICHARY, MARCIN K., SAN FRANCISCO, CALIFORNIA, US; WILEY, JON M., MOUNTAIN VIEW, CALIFORNIA, US; WRIGHT, JOHANNA R., MOUNTAIN VIEW, CALIFORNIA, US

Owner name: MCMAHAN, BENJAMIN J., SAN JOSE, US

Free format text: FORMER OWNERS: BLACK, DAVID, NEW YORK, US; EFFRAT, JONATHAN J., MOUNTAIN VIEW, CALIF., US; GOMES, BENEDICT A., MOUNTAIN VIEW, CALIFORNIA, US; HANSSON, OTHAR, SUNNYVALE, CALIFORNIA, US; MAHKOVEC, ZIGA, SAN FRANCISCO, CALIFORNIA, US; MCMAHAN, BENJAMIN J., SAN JOSE, CALIFORNIA, US; STROHMAN, TREVOR, SUNNYVALE, CALIFORNIA, US; TUNGARE, MANAS, MOUNTAIN VIEW, CALIFORNIA, US; WICHARY, MARCIN K., SAN FRANCISCO, CALIFORNIA, US; WILEY, JON M., MOUNTAIN VIEW, CALIFORNIA, US; WRIGHT, JOHANNA R., MOUNTAIN VIEW, CALIFORNIA, US

Owner name: MAHKOVEC, ZIGA, SAN FRANCISCO, US

Free format text: FORMER OWNERS: BLACK, DAVID, NEW YORK, US; EFFRAT, JONATHAN J., MOUNTAIN VIEW, CALIF., US; GOMES, BENEDICT A., MOUNTAIN VIEW, CALIFORNIA, US; HANSSON, OTHAR, SUNNYVALE, CALIFORNIA, US; MAHKOVEC, ZIGA, SAN FRANCISCO, CALIFORNIA, US; MCMAHAN, BENJAMIN J., SAN JOSE, CALIFORNIA, US; STROHMAN, TREVOR, SUNNYVALE, CALIFORNIA, US; TUNGARE, MANAS, MOUNTAIN VIEW, CALIFORNIA, US; WICHARY, MARCIN K., SAN FRANCISCO, CALIFORNIA, US; WILEY, JON M., MOUNTAIN VIEW, CALIFORNIA, US; WRIGHT, JOHANNA R., MOUNTAIN VIEW, CALIFORNIA, US

Owner name: EFFRAT, JONATHAN J., MOUNTAIN VIEW, US

Free format text: FORMER OWNERS: BLACK, DAVID, NEW YORK, US; EFFRAT, JONATHAN J., MOUNTAIN VIEW, CALIF., US; GOMES, BENEDICT A., MOUNTAIN VIEW, CALIFORNIA, US; HANSSON, OTHAR, SUNNYVALE, CALIFORNIA, US; MAHKOVEC, ZIGA, SAN FRANCISCO, CALIFORNIA, US; MCMAHAN, BENJAMIN J., SAN JOSE, CALIFORNIA, US; STROHMAN, TREVOR, SUNNYVALE, CALIFORNIA, US; TUNGARE, MANAS, MOUNTAIN VIEW, CALIFORNIA, US; WICHARY, MARCIN K., SAN FRANCISCO, CALIFORNIA, US; WILEY, JON M., MOUNTAIN VIEW, CALIFORNIA, US; WRIGHT, JOHANNA R., MOUNTAIN VIEW, CALIFORNIA, US

Owner name: GOMES, BENEDICT A., MOUNTAIN VIEW, US

Free format text: FORMER OWNERS: BLACK, DAVID, NEW YORK, US; EFFRAT, JONATHAN J., MOUNTAIN VIEW, CALIF., US; GOMES, BENEDICT A., MOUNTAIN VIEW, CALIFORNIA, US; HANSSON, OTHAR, SUNNYVALE, CALIFORNIA, US; MAHKOVEC, ZIGA, SAN FRANCISCO, CALIFORNIA, US; MCMAHAN, BENJAMIN J., SAN JOSE, CALIFORNIA, US; STROHMAN, TREVOR, SUNNYVALE, CALIFORNIA, US; TUNGARE, MANAS, MOUNTAIN VIEW, CALIFORNIA, US; WICHARY, MARCIN K., SAN FRANCISCO, CALIFORNIA, US; WILEY, JON M., MOUNTAIN VIEW, CALIFORNIA, US; WRIGHT, JOHANNA R., MOUNTAIN VIEW, CALIFORNIA, US

Owner name: STROHMAN, TREVOR, SUNNYVALE, US

Free format text: FORMER OWNERS: BLACK, DAVID, NEW YORK, US; EFFRAT, JONATHAN J., MOUNTAIN VIEW, CALIF., US; GOMES, BENEDICT A., MOUNTAIN VIEW, CALIFORNIA, US; HANSSON, OTHAR, SUNNYVALE, CALIFORNIA, US; MAHKOVEC, ZIGA, SAN FRANCISCO, CALIFORNIA, US; MCMAHAN, BENJAMIN J., SAN JOSE, CALIFORNIA, US; STROHMAN, TREVOR, SUNNYVALE, CALIFORNIA, US; TUNGARE, MANAS, MOUNTAIN VIEW, CALIFORNIA, US; WICHARY, MARCIN K., SAN FRANCISCO, CALIFORNIA, US; WILEY, JON M., MOUNTAIN VIEW, CALIFORNIA, US; WRIGHT, JOHANNA R., MOUNTAIN VIEW, CALIFORNIA, US

Owner name: BLACK, DAVID, US

Free format text: FORMER OWNERS: BLACK, DAVID, NEW YORK, US; EFFRAT, JONATHAN J., MOUNTAIN VIEW, CALIF., US; GOMES, BENEDICT A., MOUNTAIN VIEW, CALIFORNIA, US; HANSSON, OTHAR, SUNNYVALE, CALIFORNIA, US; MAHKOVEC, ZIGA, SAN FRANCISCO, CALIFORNIA, US; MCMAHAN, BENJAMIN J., SAN JOSE, CALIFORNIA, US; STROHMAN, TREVOR, SUNNYVALE, CALIFORNIA, US; TUNGARE, MANAS, MOUNTAIN VIEW, CALIFORNIA, US; WICHARY, MARCIN K., SAN FRANCISCO, CALIFORNIA, US; WILEY, JON M., MOUNTAIN VIEW, CALIFORNIA, US; WRIGHT, JOHANNA R., MOUNTAIN VIEW, CALIFORNIA, US

Owner name: WRIGHT, JOHANNA R., MOUNTAIN VIEW, US

Free format text: FORMER OWNERS: BLACK, DAVID, NEW YORK, US; EFFRAT, JONATHAN J., MOUNTAIN VIEW, CALIF., US; GOMES, BENEDICT A., MOUNTAIN VIEW, CALIFORNIA, US; HANSSON, OTHAR, SUNNYVALE, CALIFORNIA, US; MAHKOVEC, ZIGA, SAN FRANCISCO, CALIFORNIA, US; MCMAHAN, BENJAMIN J., SAN JOSE, CALIFORNIA, US; STROHMAN, TREVOR, SUNNYVALE, CALIFORNIA, US; TUNGARE, MANAS, MOUNTAIN VIEW, CALIFORNIA, US; WICHARY, MARCIN K., SAN FRANCISCO, CALIFORNIA, US; WILEY, JON M., MOUNTAIN VIEW, CALIFORNIA, US; WRIGHT, JOHANNA R., MOUNTAIN VIEW, CALIFORNIA, US

Owner name: WICHARY, MARCIN K., SAN FRANCISCO, US

Free format text: FORMER OWNERS: BLACK, DAVID, NEW YORK, US; EFFRAT, JONATHAN J., MOUNTAIN VIEW, CALIF., US; GOMES, BENEDICT A., MOUNTAIN VIEW, CALIFORNIA, US; HANSSON, OTHAR, SUNNYVALE, CALIFORNIA, US; MAHKOVEC, ZIGA, SAN FRANCISCO, CALIFORNIA, US; MCMAHAN, BENJAMIN J., SAN JOSE, CALIFORNIA, US; STROHMAN, TREVOR, SUNNYVALE, CALIFORNIA, US; TUNGARE, MANAS, MOUNTAIN VIEW, CALIFORNIA, US; WICHARY, MARCIN K., SAN FRANCISCO, CALIFORNIA, US; WILEY, JON M., MOUNTAIN VIEW, CALIFORNIA, US; WRIGHT, JOHANNA R., MOUNTAIN VIEW, CALIFORNIA, US

Owner name: TUNGARE, MANAS, MOUNTAIN VIEW, US

Free format text: FORMER OWNERS: BLACK, DAVID, NEW YORK, US; EFFRAT, JONATHAN J., MOUNTAIN VIEW, CALIF., US; GOMES, BENEDICT A., MOUNTAIN VIEW, CALIFORNIA, US; HANSSON, OTHAR, SUNNYVALE, CALIFORNIA, US; MAHKOVEC, ZIGA, SAN FRANCISCO, CALIFORNIA, US; MCMAHAN, BENJAMIN J., SAN JOSE, CALIFORNIA, US; STROHMAN, TREVOR, SUNNYVALE, CALIFORNIA, US; TUNGARE, MANAS, MOUNTAIN VIEW, CALIFORNIA, US; WICHARY, MARCIN K., SAN FRANCISCO, CALIFORNIA, US; WILEY, JON M., MOUNTAIN VIEW, CALIFORNIA, US; WRIGHT, JOHANNA R., MOUNTAIN VIEW, CALIFORNIA, US

R082 Change of representative

Representative=s name: PROCK, THOMAS, DR., GB

Representative=s name: PROCK, THOMAS, DIPL.-ING. (FH) DR., GB

R081 Change of applicant/patentee

Owner name: WRIGHT, JOHANNA R., MOUNTAIN VIEW, US

Free format text: FORMER OWNER: GOOGLE LLC (N.D.GES.D. STAATES DELAWARE), MOUNTAIN VIEW, CALIF., US

Owner name: MAHKOVEC, ZIGA, SAN FRANCISCO, US

Free format text: FORMER OWNER: GOOGLE LLC (N.D.GES.D. STAATES DELAWARE), MOUNTAIN VIEW, CALIF., US

Owner name: STROHMAN, TREVOR, SUNNYVALE, US

Free format text: FORMER OWNER: GOOGLE LLC (N.D.GES.D. STAATES DELAWARE), MOUNTAIN VIEW, CALIF., US

Owner name: HANSSON, OTHAR, SUNNYVALE, US

Free format text: FORMER OWNER: GOOGLE LLC (N.D.GES.D. STAATES DELAWARE), MOUNTAIN VIEW, CALIF., US

Owner name: WILEY, JON M., MOUNTAIN VIEW, US

Free format text: FORMER OWNER: GOOGLE LLC (N.D.GES.D. STAATES DELAWARE), MOUNTAIN VIEW, CALIF., US

Owner name: GOMES, BENEDICT A., MOUNTAIN VIEW, US

Free format text: FORMER OWNER: GOOGLE LLC (N.D.GES.D. STAATES DELAWARE), MOUNTAIN VIEW, CALIF., US

Owner name: TUNGARE, MANAS, MOUNTAIN VIEW, US

Free format text: FORMER OWNER: GOOGLE LLC (N.D.GES.D. STAATES DELAWARE), MOUNTAIN VIEW, CALIF., US

Owner name: EFFRAT, JONATHAN J., MOUNTAIN VIEW, US

Free format text: FORMER OWNER: GOOGLE LLC (N.D.GES.D. STAATES DELAWARE), MOUNTAIN VIEW, CALIF., US

Owner name: MCMAHAN, BENJAMIN J., SAN JOSE, US

Free format text: FORMER OWNER: GOOGLE LLC (N.D.GES.D. STAATES DELAWARE), MOUNTAIN VIEW, CALIF., US

Owner name: BLACK, DAVID, US

Free format text: FORMER OWNER: GOOGLE LLC (N.D.GES.D. STAATES DELAWARE), MOUNTAIN VIEW, CALIF., US

Owner name: WICHARY, MARCIN K., SAN FRANCISCO, US

Free format text: FORMER OWNER: GOOGLE LLC (N.D.GES.D. STAATES DELAWARE), MOUNTAIN VIEW, CALIF., US

R082 Change of representative

Representative=s name: PROCK, THOMAS, DR., GB

Representative=s name: PROCK, THOMAS, DIPL.-ING. (FH) DR., GB

R079 Amendment of ipc main class

Free format text: PREVIOUS MAIN CLASS: G06F0017300000

Ipc: G06F0016000000

R152 Utility model maintained after payment of third maintenance fee after eight years
R071 Expiry of right