DE112013003202T5 - Erweiterung zur Expertengespräch-Erstellungsfunktion - Google Patents

Erweiterung zur Expertengespräch-Erstellungsfunktion Download PDF

Info

Publication number
DE112013003202T5
DE112013003202T5 DE201311003202 DE112013003202T DE112013003202T5 DE 112013003202 T5 DE112013003202 T5 DE 112013003202T5 DE 201311003202 DE201311003202 DE 201311003202 DE 112013003202 T DE112013003202 T DE 112013003202T DE 112013003202 T5 DE112013003202 T5 DE 112013003202T5
Authority
DE
Germany
Prior art keywords
dialog
user
question
repository
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.)
Ceased
Application number
DE201311003202
Other languages
English (en)
Inventor
c/o IBM Corporation Anand Rangachari
c/o IBM Corporation Lee Juhnyoung
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.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
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 International Business Machines Corp filed Critical International Business Machines Corp
Publication of DE112013003202T5 publication Critical patent/DE112013003202T5/de
Ceased legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N5/00Computing arrangements using knowledge-based models
    • G06N5/02Knowledge representation; Symbolic representation

Abstract

Erstellen eines Laufzeitdialogs kann beinhalten: Empfangen einer Anfangsfrage auf eine Anfangsantwort von einem Benutzer; Erstellen eines Stands eines Gesprächs-Thread auf Grundlage der Anfangsantwort; automatisches Auswählen einer nächsten zu stellenden Frage durch einen Prozessor auf Grundlage des aktualisierten Stands des Gesprächs-Thread; Vorlegen der nächsten Frage dem Benutzer; Empfangen einer nächsten Antwort auf die nächste Frage; Aktualisieren des Stands des Gesprächs-Thread auf Grundlage der nächsten Antwort; und Wiederholen des Auswählens, Vorlegens, Empfangens und Aktualisierens, bis ein Kriterium erfüllt ist.

Description

  • GEBIET
  • Die vorliegende Erfindung bezieht sich allgemein auf Computer und Computeranwendungen und insbesondere auf ein Erstellen eines Expertengesprächs mit einem Laufzeitdialog-Erstellungswerkzeug.
  • HINTERGRUND
  • Mitarbeiter in Callcentern oder Support-Abteilungen müssen mit Kunden oft komplexe, aus mehreren Schritten bestehende Verfahren durchgehen, beispielsweise beim Diagnostizieren oder Lösen von Problemen, z. B. Beheben von PC-Netzwerkproblemen, Diagnostizieren oder Beheben von Problemen bei Maschinen, Lösen von Problemen mit Mobiltelefonen für Kunden und weitere. Zu den Schwierigkeiten, dem Weg durch solche Verfahren zu folgen, kann eine kognitive Überlastung beim Behalten eines Überblicks über den aktuellen Stand des Gesprächs gehören, beispielsweise „Wo genau befinde ich mich in dem Verfahren? Wie bin ich dahin gekommen?” Eine weitere Komplikation besteht darin, dass mehrere Anfragestränge gleichzeitig aktiv sein können. Das Gespräch kann sich über mehrere Anrufe erstrecken, und das Wiederaufnehmen eines Gesprächs kann mühsam sein.
  • KURZE ZUSAMMENFASSUNG
  • Ein System zum Erstellen eines Laufzeitdialogs kann in einem Aspekt ein Dialogportal aufweisen, das funktionsmäßig in der Lage ist, eine Oberfläche bereitzustellen, um einem Benutzer eine Mehrzahl von Fragen zu stellen und eine entsprechende Mehrzahl von Antworten von dem Benutzer zu erhalten. Ein Thread-Pflegemodul kann funktionsmäßig in der Lage sein, einen Gesprächsstand auf Grundlage der erhaltenen Antworten zu pflegen. Ein Fragenauswahlmodul kann funktionsmäßig in der Lage sein, eine nächste zu stellende Frage auf Grundlage des Gesprächsstands, einer Fragenauswahlrichtlinie und einer Dialog-Repository (Ablage für Dialoge) auszuwählen.
  • Ein Verfahren zum Erstellen eines Laufzeitdialogs kann gemäß einem Aspekt ein Empfangen einer Anfangsantwort auf eine Anfangsfrage von einem Benutzer aufweisen. Das Verfahren kann auch ein Erstellen des Stands eines Gesprächs-Thread auf Grundlage der Anfangsantwort aufweisen. Das Verfahren kann weiterhin ein Auswählen einer nächsten zu stellenden Frage auf Grundlage des Stands des Gesprächs-Thread aus einer Dialog-Repository und auf Grundlage einer Fragenauswahlrichtlinie aufweisen. Das Verfahren kann auch ein Vorlegen der nächsten Frage dem Benutzer aufweisen. Das Verfahren kann weiterhin ein Empfangen einer nächsten Antwort auf die nächste Frage aufweisen. Das Verfahren kann weiterhin ein Aktualisieren des Stands des Gesprächs-Thread auf Grundlage der nächsten Antwort aufweisen. Das Verfahren kann auch ein Wiederholen des Auswählens, Vorlegens, Empfangens und Aktualisierens aufweisen, bis ein Kriterium erfüllt ist.
  • Ein computerlesbares Speichermedium, welches ein Programm von durch eine Maschine ausführbaren Befehlen zum Ausführen eines oder mehrerer hier beschriebener Verfahren speichert, kann ebenfalls bereitgestellt werden.
  • Weitere Merkmale sowie die Struktur und Funktion der verschiedenen Ausführungsformen werden weiter unten ausführlich unter Bezugnahme auf die begleitenden Zeichnungen beschrieben. In den Zeichnungen geben gleiche Bezugszeichen identische oder funktionsmäßig ähnliche Elemente an.
  • KURZBESCHREIBUNG DER VERSCHIEDENEN ANSICHTEN DER ZEICHNUNGEN
  • 1 veranschaulicht eine Architektur eines Fragenauswahlsystems in einer Ausführungsform der vorliegenden Offenbarung.
  • 2 veranschaulicht eine beispielhafte Dialogstruktur mit Gesprächs-Thread in einer Ausführungsform der vorliegenden Offenbarung.
  • 3 ist ein Ablaufplan, der ein Verfahren der Fragenauswahl in einer Ausführungsform der vorliegenden Offenbarung veranschaulicht.
  • 4 veranschaulicht eine Architektur eines Systems mit unverbundenem Betrieb in einer Ausführungsform der vorliegenden Offenbarung.
  • 5 stellt einen Ablaufplan eines Verfahrens eines unverbundenen Betriebs in einer Ausführungsform der vorliegenden Offenbarung dar.
  • 6 veranschaulicht eine Systemarchitektur eines sozialen Netzwerks in einer Ausführungsform der vorliegenden Offenbarung.
  • 7 veranschaulicht eine schematische Darstellung eines beispielhaften Computer- oder Verarbeitungssystem, in dem das Expertengespräch-Erstellungssystem in einer Ausführungsform der vorliegenden Offenbarung umgesetzt werden kann.
  • AUSFÜHRLICHE BESCHREIBUNG
  • Ein Dialogmanager ist ein webgestütztes Werkzeug, das zum Verfassen und Führen strukturierter Dialoge verwendet wird. Eine typische Verwendung besteht darin, Mitarbeitern von Callcentern zu helfen, komplexe Verfahren wie beispielsweise Diagnostizieren und Beheben von Fehlern von komplexer Hardware und Software auszuführen. Selbstbedienungsanwendungen sind ebenfalls möglich, und die Nützlichkeit ist nicht auf diagnostische Verfahren beschränkt. Eingebaute Autorenwerkzeuge sind so konzipiert, dass sie direkt von Experten für einen Gegenstand zum Verfassen von Dialoginhalten benutzt werden können. Es wird keine besondere Desktop-Software benötigt. Der Dialogmanager ist gut geeignet für Gesprächsanwendungen, in denen das System die Initiative ergreift, z. B. wie in einer Umkehrung des Anwendungsfalls von WatsonTM (Software „Deep Q&A”).
  • Die gleichzeitig anhängige US-Patentanmeldung Nr. 12/985 050 (Aktenzeichen YOR920100458), eingereicht am 5. Januar 2011, offenbart ein Erstellungsprogramm für Expertengespräche. Diese Anmeldung wird hier in Gänze durch Verweis aufgenommen. Das Erstellungsprogramm für Expertengespräche kann eine Wissensdatenbank aufweisen, die eine Dialog-Repository aufweist, welche eine Mehrzahl von Dialogen aufweist, wobei jeder Dialog eine Struktur zum Erstellen von mindestens einem Expertengespräch darstellt und eine Mehrzahl von Knoten und eine Mehrzahl von Kanten aufweist, die sich zwischen Knotenpaaren erstrecken. Ein Laufzeitdialogsystem kann auf einem Computersystem und im Datenaustausch mit der Wissensdatenbank ausgeführt werden, wobei das Laufzeitdialogsystem so konfiguriert werden kann, dass es das Expertengespräch zwischen dem Laufzeitdialogsystem und einem Benutzer auf Grundlage eines gegebenen aus der Mehrzahl von Dialogen ausgewählten Dialogs führt, indem Kommentare und Fragen dargestellt werden, die von Knoten in dem gegebenen Dialog für den Benutzer abgeleitet werden, Daten von dem Benutzer als Antwort auf die dargestellten Kommentare und Fragen eingegeben werden und an jedem Knoten geeignete Kanten auf Grundlage der eingegebenen Daten ermittelt werden. Ein webgestützter Browser kann mit dem Laufzeitdialogsystem Daten austauschen und so konfiguriert sein, dass er die Kommentare und Fragen anzeigt, die von Knoten in dem gegebenen Dialog für den Benutzer abgeleitet werden. Das Expertengespräch kann einen gerichteten azyklischen Graphen aufweisen, der aus den Knoten und Kanten des ausgewählten Dialogs aufgebaut ist.
  • In der vorliegenden Erfindung bezieht sich der Begriff „Dialog” allgemein auf eine Datenstruktur, die ein Netz von Knoten aufweist. Der Begriff „Gespräch” ist ein funktionsbezogener Begriff, der sich im Allgemeinen auf einen bestimmten Austausch von Daten zwischen einem Menschen (oder etwas anderem, was beispielsweise Fragen beantwortet) und einem Dialogmanagerwerkzeug oder -system bezieht.
  • In der vorliegenden Offenbarung kann eine Fragenauswahlrichtlinie dargestellt werden, bei welcher eine tiefenorientierte, breitenorientierte oder zielorientierte Fragenauswahl angewendet werden kann, und eine Maschinenlernfunktion kann verwendet werden, um die Länge eines Dialogs auf die Lösungen eines Problems im Zusammenhang mit einem Dialog zu verkürzen. In einem anderen Aspekt wird ein unverbundenes Modell (Modell mit lose verbundenem Betrieb) dargestellt, bei dem ein Benutzer das Expertengespräch-Erstellungsprogramm (z. B. sowohl Wissensdatenbank („knowledge base”, KB) als auch Laufzeit) offline auf dem eigenen Computer einrichtet. Der Benutzer kann weiterhin nach Bedarf oder Wunsch schrittweise Änderungen in KB und Laufzeit herunterladen. Wenn eine Netzwerkverbindung verfügbar ist, lädt das offline arbeitende Expertengespräch-Erstellungsprogramm regelmäßig die Nutzungsdaten vom Computer des Benutzers auf den Server hoch, damit sie sich in der Nutzungsdatenanalyse widerspiegeln. In noch einem weiteren Aspekt kann ein Erweiterungsmechanismus für soziale Netzwerke bereitgestellt werden, der eine Echtzeiterkennung ähnlicher Gespräche (z. B. im Gange oder historisch) und ihrer zugehörigen Daten (z. B. Thema, am Gespräch beteiligte Parteien) beinhaltet. Ein solcher Erweiterungsmechanismus für soziale Netzwerke kann es dem Benutzer ermöglichen, die Daten zu nutzen, um für zusätzliche Informationen zur Verbesserung des Dialogs auf die beteiligten Parteien zuzugreifen.
  • Fragenauswahlrichtlinien
  • Ein Dialog kann als gerichteter azyklischer Graph dargestellt oder strukturiert werden. Knoten stellen, grob gesagt, Wendungen in einem Gespräch dar. Kanten stellen Aktionen im Zusammenhang mit von Benutzern eingereichten Antworten dar. Es kann mehrere Knotentypen geben: Knoten mit mehreren Wahlmöglichkeiten und einer Antwort, mit mehreren Wahlmöglichkeiten und mehreren Antworten sowie Knoten zur Textklassifizierung. Knoten können ein Skript (ausführbarer Programmcode oder Computerbefehle) als Anhang enthalten, das Aufrufe an externe Datenbanken oder Web-Dienste oder dergleichen ermöglicht. Eine solche Dialogdarstellung kann Ähnlichkeiten mit Entscheidungsbäumen aufweisen, da bei beiden Systemarten Fragen gestellt und Antworten genutzt werden, um Schlussfolgerungen zu ziehen. Der Unterschied kann in der Frage von Ordnung und Abfolge liegen. Dialoge weisen ein starkes Ordnungselement auf. Entscheidungsbäume stellen üblicherweise eine Gruppe von Fragen dar, die in beliebiger Reihenfolge gestellt werden könnten. Algorithmen wie C4.5 können Fragen neu ordnen, um die Anzahl der von einem Benutzer zu beantwortenden Fragen möglichst gering zu halten. Dialoge können zwar durch einen einfachen Graphen dargestellt werden, der Gesprächsstand ist jedoch komplex. Beispielsweise können mehrere Knoten gleichzeitig aktiv sein. Benutzern sollte es gestattet sein, Antworten auf Fragen mit konsistenten Ergebnissen zu ändern. Es kann ein Bedarf bestehen, Benutzern Erklärungen bereitzustellen, beispielsweise „Wie bin ich an diesen Punkt im Gespräch gekommen?” Es kann auch notwendig sein, einen Gesprächsstand zu speichern und durch einen anderen Benutzer wieder aufzunehmen, z. B. damit dies in Callcentern hilfreich ist.
  • 2 veranschaulicht eine beispielhafte Dialogstruktur mit darüber gelegten Threads in einer Ausführungsform der vorliegenden Offenbarung. Ein Gesprächs-Thread ist ein Pfad durch einen Dialog-Graphen, der z. B. erstellt wird, wenn Knoten aktiviert werden. Ein Gesprächsstand ist eine Gruppe von Threads, z. B. eine geordnete Liste von Threads. Ein Gesprächs-Thread der vorliegenden Offenbarung kann in einer Ausführungsform eine kurze Erklärung der Knotenaktivität bereitstellen und konsistente Wege zur Abwicklung von Änderungen an Antworten bereitstellen. Dieses Beispiel zeigt zwei gekennzeichnete Anfangsknoten 202, 204, die Anfänge von Gesprächen darstellen. Es kann mehrere aktive Gesprächs-Threads geben, z. B. einen Gesprächs-Thread, der 202, 206 aufweist, einen anderen Gesprächs-Thread, der 202, 208, 210 aufweist, und noch einen weiteren Gesprächs-Thread, der 204 aufweist. Der letzte Knoten eines aktiven Thread weist eine unbeantwortete Frage auf. Der Knoten 212 kann als Abschlussknoten betrachtet werden. Während eines Gesprächs oder an einem bestimmten Punkt im Gespräch können mehrere Threads aktiv sein. In einer Ausführungsform der vorliegenden Offenbarung definiert der Gesprächs-Thread-Mechanismus die erforderlichen Bedingungen für eine Frage, die gestellt werden soll. Bei einer Fragenauswahlrichtlinie handelt es sich um einen Mechanismus zum Festlegen der Fragestellungsbedingungen, beispielsweise wie viele Fragen dem Benutzer angezeigt werden, welche Fragen dem Benutzer angezeigt werden, wie die Weigerung des Benutzers zur Beantwortung einer der angezeigten Fragen zu behandeln ist. Eine Fragenauswahlrichtlinie kann in einem orthogonalen Verhältnis zum Algorithmus der Thread-Pflege stehen. Viele mögliche Richtlinien können verwendet werden. Bei der tiefenorientierten Richtlinie wird beispielsweise jeweils nur eine Frage angezeigt, und es wird bei einem Gesprächs-Thread geblieben, bis der Gesprächs-Thread nicht mehr verlängert werden kann, und danach wird zu einem anderen Gesprächs-Thread gewechselt. Bei einer breitenorientierten oder ihr ähnlichen Richtlinie können mehrere Fragen angezeigt werden, wobei alle möglichen Fragen dargestellt werden. Eine dynamische Fragenrichtlinie kann Fragen auf Grundlage des aktuellen Stands des Gesprächs auswählen.
  • 1 veranschaulicht eine Architektur eines Fragenauswahlsystems in einer Ausführungsform der vorliegenden Offenbarung. Ein Dialoglaufzeitsystem 102 kann auf einem Prozessor oder dergleichen ausgeführt werden und kann so konfiguriert werden, dass es ein Gespräch zwischen einem Laufzeitdialogsystem 102 und einem Benutzer 116 führt, wobei Daten von dem Benutzer als Antwort auf Fragen eingegeben und an jedem Knoten auf Grundlage der eingegebenen Daten geeignete Kanten ermittelt werden. Ein webgestützter Browser 116 kann mit dem Laufzeitdialogsystem Daten austauschen und so konfiguriert sein, dass er die Kommentare und Fragen anzeigt, die von Knoten in dem gegebenen Dialog für den Benutzer abgeleitet werden. Das Expertengespräch kann einen gerichteten azyklischen Graphen aufweisen, der aus den Knoten und Kanten des ausgewählten Dialogs aufgebaut ist, beispielsweise wie in 114 gezeigt. Die Dialog-Repository 114 speichert einen oder mehrere Dialoge (z. B. im Datenstrukturformat eines gerichteten azyklischen Graphen) in einer oder mehreren Datenbanken. Dabei handelt es sich um ein statisches Bild von Dialogen. Wenn ein Benutzer ein Gespräch mit dem Dialogmanager beginnt, wird die Laufzeit 102 gestartet. Ein Gespräch weist einen oder mehrere Dialog-Threads auf, die durch einen oder mehrere in der Repository 114 gespeicherte Dialoge verlaufen. Ein Gespräch entwickelt sich dynamisch durch eine Interaktion zwischen dem Benutzer und dem System, und das Laufzeitsystem 102 verwaltet es, indem es den Gesprächsstand speichert. Das Laufzeitsystem 102 verwaltet auch andere Module, die es in 102 aufweist.
  • Ein Dialoglaufzeitsystem 102 oder Dialogmanager der vorliegenden Offenbarung kann ein Thread-Pflegemodul 104 enthalten, das von einem Benutzer eingereichte Antworten verarbeitet, um den Stand von Gesprächs-Threads zu aktualisieren, zu erstellen und zu verwalten, beispielsweise in einer Gesprächsstand-Datenbank oder dergleichen 106. Die Gesprächsstand-Datenbank 106 kann Gesprächsstände speichern, beispielsweise wie in 2 dargestellt. Ein Fragenauswahlmodul 108 kann die Fragen ermitteln, die an einem bestimmten Punkt in einem Gespräch auf Grundlage des Gesprächsstands (d. h. der Thread-Liste des Gesprächs) 106 und einer Fragenauswahlrichtlinie 110 zu stellen sind. Die Fragenauswahlrichtlinie 110 kann vom Autor eines Dialogs festgelegt werden, der vom Fragenauswahlmodul 108 interpretiert werden kann. Beim Autor eines Dialogs kann es sich um einen oder mehrere Experten für ein einen Gegenstand handeln, die Dialoge während einer Erstellungszeit erstellen, beispielsweise bevor der Dialogmanager für ein Benutzergespräch verwendet wird. Die Autoren können ein webgestütztes Autorenwerkzeug 118 nutzen, um Inhalte/Dialoge in der Dialog-Repository 114 zu verfassen. Der Autor kann einen oder mehrere Vorschläge und Ratschläge zur Fragenauswahl in den Dialog aufnehmen. Der Autor kann beispielsweise vorschlagen, dass der tiefenorientierte Ansatz ein Problem schneller lösen kann, jedoch möglicherweise schwerer zu verstehen ist. Die Daten können in einem maschinenverständlichen Format, beispielsweise einer Markup-Sprache, z. B. der Extensible Markup Language (XML), gespeichert werden. Das Fragenauswahlmodul 108 kann den Vorschlag nutzen oder sich gegen seine Nutzung entscheiden.
  • In einer Ausführungsform der vorliegenden Offenbarung kann die Fragenauswahlrichtlinie Fragenordnungsalgorithmen und Fragenanzahlalgorithmen aufweisen. Fragenordnungsalgorithmen können Tiefenorientierung, Breitenorientierung, auf der Nutzung beruhendes Gewichten, überwachtes Maschinenlernen und benutzerdefinierte Skripterstellung aufweisen. Fragenanzahlalgorithmen können feste Anzahl, überwachtes Maschinenlernen und benutzerdefinierte Skripterstellung aufweisen. Fragenanzahl bezieht sich auf die Anzahl der Fragen, die von jedem Benutzer in jedem Schritt eines Dialogs gestellt werden. Da der Dialogmanager Fragen mit mehreren Auswahlmöglichkeiten zulässt und zulässt, dass mehrere Dialog-Threads aktiv sein, können an jedem Punkt in einem Dialog mehrere Fragen geeignet sein, gestellt zu werden. Der Fragenanzahlalgorithmus kann entscheiden, wie viele Fragen dem Benutzer angezeigt werden sollen, z. B. eine feste Anzahl oder mit einem Algorithmus ermittelt, z. B. dynamisch.
  • Ein tiefenorientierter Fragenordnungsalgorithmus kann bei einem Gesprächs-Thread bleiben, bis der Benutzer entweder keine Antwort bereitstellt oder einen Abschlussknoten erreicht. Dieser Algorithmus kann den nächsten Gesprächs-Thread in umgekehrter Reihenfolge der Erstellung aufnehmen. Diese Aktion kann eintreten, wenn der Benutzer keine Antwort bereitstellt oder im aktuellen Knoten einen Abschlussknoten erreicht. Der Algorithmus prüft, ob es einen zusätzlichen aktiven Gesprächs-Thread gibt. Wenn dies der Fall ist, kann er denjenigen in umgekehrter Reihenfolge der Erstellung auswählen. Der tiefenorientierte Fragenordnungsalgorithmus bedeutet, dass eine einzige Fragenauswahl angezeigt wird. Beim breitenorientierten Fragenordnungsalgorithmus können alle Fragen, die geeignet sind, gestellt zu werden, angezeigt werden, und er kann eine mehrfache Fragenauswahl bedeuten. Der Fragenordnungsalgorithmus mit auf der Nutzung beruhendem Gewichten kann Fragen auf Grundlage der Häufigkeit ordnen, mit der diese Frage bei vorherigen Gesprächen beantwortet wurde. Der Fragenordnungsalgorithmus mit überwachtem Maschinenlernen kann einen mit Maschinenlernen (ML) arbeitenden Klassifikator so trainieren, dass er die Fragen unter Berücksichtigung einer bestimmten Gruppe aktiver Knoten ordnet. Der Fragenordnungsalgorithmus auf Grundlage eines Skripts kann verwendet werden, um ein Ordnen der Fragen genau festzulegen, und er kann ein Wechseln der Algorithmen auf Grundlage des Gesprächsstands ermöglichen. Die Fragenauswahl kann beispielsweise mit einer breitenorientierten Auswahl von Fragen beginnen und dann zur tiefenorientierten wechseln, wenn der Benutzer Anzeichen eines Interesses an einem bestimmten Gesprächs-Thread zeigt. Bei einem Dialogmanager-Portal 112 handelt es sich um eine Oberfläche, über die ein Benutzer auf das Dialoglaufzeitsystem der vorliegenden Offenbarung zugreifen kann. Das Portal 112 verwaltet die Anzeige der Fragen, die an jedem Punkt in einem Dialog so, wie vom Laufzeitsystem 102 ermittelt, zu stellen sind. Auf das Portal kann z. B. über einen Web-Browser des Benutzers zugegriffen werden. Das Portal 112 empfängt die Antworten auf die angezeigten Fragen und überträgt sie an das Thread-Pflegemodul 104 des Laufzeitsystem-Moduls.
  • 3 ist ein Ablaufplan, der ein Verfahren der Fragenauswahl in einer Ausführungsform der vorliegenden Offenbarung veranschaulicht. In 302 kann eine Antwort auf eine Anfangsfrage von einem Benutzer empfangen werden. Die Anfangsfrage kann dem Benutzer beispielsweise auf der Homepage eines Dialogmanagers gestellt oder dargestellt werden. In 304 kann das Portal eines Dialogmanagers die Antwort empfangen und die Antwort an ein Thread-Pflegemodul übertragen. In 306 kann das Thread-Pflegemodul die Antwort verarbeiten, um den Stand des Gesprächs-Thread zu aktualisieren, zu erstellen und zu verwalten. Beispielsweise kann es abhängig von der erhaltenen Antwort erforderlich sein, den Stand eines aktiven Thread zu aktualisieren. Es kann auch erforderlich sein, einen oder mehrere neue Threads zu erstellen. Alle Änderungen an den Threads und ihrem Stand sollten zur späteren Bezugnahme in der Gesprächsstand-Datenbank 106 protokolliert werden. In 308 kann ein Fragenauswahlmodul die nächste zu stellende Frage auf Grundlage des Gesprächsstands und/oder der Fragenauswahlrichtlinie ermitteln. Die Fragen sind als Knoten in Dialogen dargestellt, die als gerichtetes azyklisches Netz/gerichteter azyklischer Graph dargestellt sind. Der Stand eines Gesprächs ist eine Sammlung von Threads, die aktuell in einem Gespräch aktiv sind, und des Stands jedes der Threads, wie in Pfeilen und der ”Thread-Liste” in 2 dargestellt.
  • In 310 wird ermittelt, ob keine nächste Frage existiert (NIL). Wenn beispielsweise ein Abschlussknoten aller aktiven Threads erreicht ist, sind keine weiteren zu stellenden Fragen übrig. Wenn festgestellt wird, dass keine nächste Frage existiert, endet die Logik des Verfahrens.
  • Wenn es weitere Fragen gibt, überträgt das Fragenauswahlmodul in 312 die nächste Frage an das Portal des Dialogmanagers (oder dergleichen). In 314 überträgt das Portal des Dialogmanagers die nächste Frage an einen Browser des Benutzers oder dergleichen, um diese Frage für den Benutzer darzustellen. In 316 stellt der Benutzer die Antwort bereit, und das Verfahren kehrt zu 304 zurück, um den Vorgang zu wiederholen, z. B. bis es keine weiteren Fragen gibt.
  • Unverbundener Betrieb
  • 4 veranschaulicht eine Architektur eines Systems mit unverbundenem Betrieb in einer Ausführungsform der vorliegenden Offenbarung. Ein Dialogmanager ist ein zentrales System, für das es vorteilhaft ist, wenn es von mehreren Benutzern gemeinsam genutzt wird, und es ermöglicht zentrale Funktionen für Autoren, Nutzungsstatistiken und soziale Netzwerke. Einem mobilen Benutzer kann es selbst mit eingeschränkter Netzanbindung möglich sein, den Dialogmanager zu nutzen. Die Vorteile eines zentralen Dialogmanager-Systems können gewahrt werden, während gleichzeitig die Funktionsfähigkeit bis zu einem gewissen Grad für unverbundene Benutzer ermöglicht wird. Bei einem unverbundenen Dialogmanager 104 handelt es sich um eine Version einer unverbundenen lokalen Instanz eines Master-Dialogmanagers 402. Benutzer des Master-Servers können beispielsweise über ihre Web-Browser 406 oder dergleichen die Funktionalitäten des Master-Dialogmanagers 402 nutzen. Benutzer der lokalen Instanz können z. B. über ihre Web-Browser 408 oder dergleichen, beispielsweise diejenigen mit nur zeitweiliger Verbindung (intermittierend), eine lokale Instanz des Dialogmanagers 404 nutzen.
  • In einer Ausführungsform der vorliegenden Offenbarung können alle Autorenfunktionen auf dem Master 402 ausgeführt werden. Benutzer können Dialoge sowohl vom Master-Server 402 als auch vom unverbundenen Server 404 ausführen. Wenn der unverbundene Dialogmanager 404 mit einem Netzwerk mit einer direkten Netzwerkverbindung zum Master-Dialogmanager 402 verbunden wird, können die erfassten Nutzungsstatistiken von der lokalen Instanz des Dialogmanagers 404 auf den Master-Dialogmanager 402 hochgeladen werden. Außerdem können Dialoge und Parameter für Auswahlrichtlinien der Dialogfragen heruntergeladen werden. Die heruntergeladenen Daten enthalten ggf. neu in der Dialog-Repository erstellte Dialoge, beispielsweise diejenigen, die erstellt werden, während der Benutzer die unverbundene Version verwendet.
  • Dialoge können von Experten für die einzelnen Gegenstände während der Erstellungszeit erstellt werden. In einer Ausführungsform der vorliegenden Offenbarung, in der ein Dialogmanager in einer Unternehmensumgebung genutzt wird, kann es jedoch mehrere Autoren und mehrere Benutzer zur gleichen Zeit oder parallel geben. Dadurch können die Erstellungszeit und die Laufzeit gleich sein oder sich zeitlich überlappen. Dadurch können Dialoge kontinuierlich erstellt und überarbeitet werden, während sie von mehreren Benutzern verwendet werden. Bei dem, was während einer Frage (und Beantwortung) erstellt wird, handelt es sich um ein Gespräch, das einen oder mehrere aktive Threads aufweist.
  • 5 stellt einen Ablaufplan eines Verfahrens eines unverbundenen Betriebs in einer Ausführungsform der vorliegenden Offenbarung dar. In 502 kann ein Benutzer eine lokale Instanz des Dialogmanagers in den Computer des Benutzers herunterladen. In 504 wird die lokale Instanz des Dialogmanagers zum Buchführen dem Master-Dialogmanager zugeordnet. Die Version des Dialogmanagers kann zur späteren Synchronisation protokolliert werden. Die Version gibt alle Dialoge, alle ihre Parameter und die Konfiguration an. Für den Vorgang kann ein Versionskontrollsystem verwendet werden, um die Synchronisation und Datenverwaltung zu erleichtern, sobald das unverbundene System erneut mit dem Netzwerk und dem Master-System verbunden ist. In 506 kann der Benutzer die lokale Instanz des Dialogmanagers verwenden, z. B. mit einer nur zeitweiligen Verbindung zum Netz und dem Master-Server. Nachdem die Netzwerkverbindung der lokalen Instanz zum Master-Server hergestellt ist, verfügt der Benutzer in 508 über eine Option zur Datenübertragung. In 510 kann der lokale Benutzer wahlweise Dialoge und Parameter für Fragenauswahlrichtlinien herunterladen.
  • In 512 kann der Benutzer wahlweise Nutzungsstatistiken hochladen, die in den Nutzungsprotokollen in der lokalen Instanz des Dialogmanagers erfasst sind. Die Nutzungsstatistiken können eine Reihe von Benutzeraktivitäten im Dialogmanager-System aufweisen, z. B. wer auf welchen Knoten in welchem Dialog in der Repository zugegriffen und welche Antwort dafür bereitgestellt hat, mit zugehörigem Zeitstempel, beispielsweise für Analyse und Bericht zur späteren Neukalibrierung der Dialoge und des Systems.
  • Die Nutzungsweisen können wie in 506, 508, 510, 512 immer dann fortgesetzt werden, wenn eine Netzwerkverbindung zwischen dem Computer des lokalen Benutzers und dem Master-Server vorhanden ist. Somit kann der Benutzer in 514 die lokale Instanz des Dialogmanagers selbst bei einer nur zeitweiligen Verbindung zum Netzwerk und dem Master-Server nutzen.
  • Soziale Netzwerke
  • Die Funktion für soziale Netzwerke in einer Ausführungsform der vorliegenden Offenbarung kann um den Dialogmanager herum eine wirkungsvolle Gemeinschaft von Nutzern aufbauen. Die Funktion für soziale Netzwerke der vorliegenden Offenbarung in einer Ausführungsform kann Interaktionen zwischen Benutzern, Interaktionen zwischen Benutzer und Autor und Interaktionen zwischen Autoren erleichtern.
  • 6 veranschaulicht eine Systemarchitektur eines sozialen Netzwerks in einer Ausführungsform der vorliegenden Offenbarung. Mechanismen für soziale Netzwerke in einer Ausführungsform der vorliegenden Offenbarung können knoten- und themenorientierte Diskussionsforen beinhalten, was es Benutzern ermöglicht, Autoren eine Rückmeldung zu geben und untereinander Gedanken auszutauschen. Ein weiterer Mechanismus für soziale Netzwerke kann ein Abgleichen von Gesprächsständen beinhalten, dessen Grundlage der aktuelle Stand eines Gesprächs sein kann und bei dem andere archivierte Gespräche mit einem ähnlichen Stand abgerufen werden können. Das Gesprächsstand-Abgleichen kann einem Benutzer helfen, andere Benutzer zu finden, die auf eine ähnliche Situation gestoßen sind, und es kann einen natürlichen Übergang in eine Chat-Funktion, d. h. Instant Messaging, bereitstellen. Zu Mechanismen für soziale Netzwerke, bei denen Aktivitäten gefolgt wird (z. B. wie auf TwitterTM), können gehören: einem Thema oder einem Knoten folgen, z. B. Erhalten einer Benachrichtigung immer dann, wenn ein Gespräch auf einen festgelegten Knoten oder ein festgelegtes Thema stößt; einem bestimmten Benutzer folgen, z. B. Erhalten einer Benachrichtigung immer dann, wenn ein festgelegter Benutzer ein Gespräch beginnt; und einem Autor folgen, z. B. Erhalten einer Benachrichtigung immer dann, wenn ein festgelegter Autor eine Änderung an einem Dialog vornimmt.
  • Das Modul für soziale Netzwerke der vorliegenden Offenbarung kann ein eingebautes knotenorientiertes Diskussionssystem nutzen. Wenn ein Benutzer einen Knoten innerhalb eines Gesprächs sieht, kann er Kommentare abgeben oder Verbesserungen vorschlagen. Das Modul kann die Nutzung von Dialogen in der Dialog-Repository beobachten und kann andere Benutzer mit ähnlichen Nutzungsmustern vorschlagen, ähnlich der Funktion „Freunde vorschlagen” in sozialen Netzwerken. Im Fall des Dialogmanagers kann es eine Empfehlung geben, beispielsweise dass ein Benutzer, der diesen Dialog in der Repository nutzt, wahrscheinlich auch jenen Dialog nutzt, und es kann eine Lösung eines vorliegenden Problems oder von einem oder mehreren damit verwandten ansprechen. Die Empfehlung kann auf Grundlage von sozialem Verhalten von einem oder mehreren Freunden auf einer Website eines sozialen Netzwerks, von Einkäufern auf einer Website für Online-Shopping und/oder von Dialognutzern des Dialogmanagers gegeben werden.
  • Das Modul für soziale Netzwerke kann mit einem Instant-Messaging-Dienstprogramm integriert werden, um z. B. ein Fenster zum Chatten mit anderen derartigen Benutzern zu öffnen.
  • Bezugnehmend auf 6 kann ein Modul für soziale Netzwerke im Dialoglaufzeitsystem 620 ein Gesprächsstand-Abgleichmodul 604, ein Benachrichtigungsmodul 606, ein Instant-Messaging-Modul 608, ein Diskussionsforum-Modul 610, ein Knoten- und Themenfolgemodul 612, ein Benutzerfolgemodul 614 und ein Autorenfolgemodul aufweisen 616. Das Modul für soziale Netzwerke tauscht Daten mit der Datenbank für soziale Netzwerke 618 aus.
  • Das Gesprächsstand-Abgleichmodul 604 kann andere archivierte Gespräche abrufen (z. B. vorhergehende Gesprächs-Threads von einer Dialog-Repository), die einen ähnlichen Stand aufweisen wie der aktuelle Gesprächsstand. Gesprächsmerkmale wie Typen und Anzahl von Fragen und ihre Antworten können computergestützt erfasst werden. Sie können durch Nutzung von Maschinenlernen, überwachten oder nicht überwachten Clusterbildungsalgorithmen oder Kombinationen von beiden verglichen und zu Clustern zusammengefasst werden. Durch Einstellen eines Schwellenwerts kann das Modul null oder mehr Gespräche in der Datenbank erkennen, die mit dem Profil des aktuellen Gesprächs übereinstimmen.
  • Das Benachrichtigungsmodul 606 kann über die erkannten Gespräche, die mit dem Profil übereinstimmen, in Form einer Empfehlung benachrichtigen, z. B. „Die Benutzer, die ähnliche Gespräche hatten, hatten auch diese Gespräche. ”Die Benachrichtigung kann per eMail gesendet oder im Portal als Empfehlung angezeigt werden.
  • Das Instant-Messaging-Modul 608 kann den Benutzern des Dialogmanagers ermöglichen, ein oder mehrere Instant-Messaging-Systeme zu nutzen, während sie sich unter Verwendung des Dialogmanagers in einem Gespräch befinden. Der Benutzer kann beispielsweise wünschen, einen anderen Benutzer, der sich z. B. bei einem Thema und im Dialogmanager besser auskennt und der möglicherweise ähnliche Dialoge im Dialogmanager genutzt hat, über eine Instant-Messaging-Einrichtung zu erreichen, um zu fragen, wie die vom Dialogmanager gestellte Frage am besten zu beantworten ist. Das heißt, ein Gespräch mit einem Menschen kann über ein Instant Messaging geführt werden, während man sich im Gespräch mit einer Maschine (Dialogmanager) befindet.
  • Das Diskussionsforum-Modul 610 kann Benutzern des Dialogmanagers in ähnlicher Weise ermöglichen, auf ein oder mehrere Diskussionsforen im Internet direkt vom Dialogmanager aus zuzugreifen, z. B. um Informationen zu finden, die in den Dialogen im Dialogmanager möglicherweise nicht verfügbar sind. Dies kann eine Suchmaschine im Internet sein. Die Suchergebnisse können mit einem oder mehreren Dialogen Repository verbunden werden, sodass der Benutzer die Nutzung des Dialogmanagers durch Kombinieren von Foren und Suchmaschinen maximieren kann.
  • Das Knoten- und Themenfolgemodul 612 kann in ähnlicher Weise funktionieren wie die Schaltfläche ”Folgen” (”Follow”) auf den Websites sozialer Netzwerke. Dieses Modul kann dem Benutzer des Dialogmanagers ermöglichen, immer benachrichtigt zu werden (z. B. über eMail, Web-Browser, mobile Einheiten), wenn es eine Hinzufügung und/oder Überarbeitung bei einem oder mehreren Themen und den Knoten unter diesem Thema in der Dialog-Repository gibt. Die Knoten in gerichteten azyklischen Netzen enthalten Fragen. Die Fragen in den Dialogen in der Repository können in einer Ausführungsform nach Thema oder Gegenstand kategorisiert oder durch Tags gekennzeichnet werden. Das Kennzeichnen durch Tags kann manuell von menschlichen Autoren und/oder Verfassern des Dialogs erfolgen. Es kann auch durch einen Algorithmus unter Verwendung von Techniken wie Maschinenlernen, Text-Mining und/oder anderen Techniken erfolgen.
  • Das Benutzerfolgemodul 614 kann dem Benutzer des Dialogmanagers ermöglichen, einem oder mehreren Benutzern in dem System zu folgen. Bei Letztgenannten kann es sich um diejenigen handeln, die in derselben Abteilung arbeiten, eine ähnliche Art von Systemen und Software unterstützen usw., sodass der Erstgenannte möglicherweise denkt, dass es nützlich sein kann, den Letztgenannten zu folgen und zu erfahren, womit sie sich beschäftigen.
  • Das Autorenfolgemodul 616 ermöglicht dem Benutzer des Dialogmanagers, einem oder mehreren Autoren von Dialogen in dem System zu folgen. Bei einem Autor kann es sich um jemanden handeln, der Dialoge geschrieben hat, die beim Lösen von Problemen durch den folgenden Benutzer nützlich waren. Der Benutzer kann beispielsweise wissen wollen, womit sich der Autor in letzter Zeit beschäftigt hat, welche neuen Dialoge der Autor schreibt und ob die neuen Dialoge für ein künftiges Lösen von Problemen nützlich sein können, die dem folgenden Benutzer vorgelegt werden.
  • Die Datenbank für soziale Netzwerke 618 kann die gesamte Nutzung der obigen Module für soziale Netzwerke protokollieren – die Nutzung von Sofortnachrichten (z. B. von wem, an wen, was und wann), die Nutzung von Foren und Suchmaschinen (z. B. welche Suchschlüsselwörter, wann von wem), die Nutzung der Benutzerfolgefunktion (z. B. welcher Benutzer von wem, was, wann) und die Autorenfolgefunktion (z. B. welcher Autor von wem, was, wann). Alle diese Daten können für Analyse und Bericht verwendet werden – um die Module mit Funktionen für soziale Netzwerke und ihre Arbeitsweisen sowie die von ihnen genutzten Inhalte neu zu kalibrieren, z. B. um die Leistungsfähigkeit und den Betrieb des Dialogmanagers zu konfigurieren und z. B. auch, um zielgerichtetes Marketing und Werbung bereitzustellen.
  • Wieder auf 1 bezugnehmend, kann in 120 (und auch dargestellt in 4 und 6) ein webgestütztes Autorenwerkzeug eine Schnittstelle und Funktionalitäten bereitstellen, um es einem Benutzer zu ermöglichen, Dialoge beispielsweise über einen Web-Browser oder dergleichen 118 zu verfassen. Ein solcher verfasster Dialog kann in einer Dialog-Repository 114 gespeichert werden, beispielsweise einem computerlesbaren Speichermedium. In einer Ausführungsform der vorliegenden Offenbarung kann das Autorenwerkzeug Funktionalitäten wie dokumentgestütztes Verfassen, eine Touchscreen-Oberfläche zum Verfassen, Verfassen mit Echtzeit-Zusammenarbeit sowie Indexieren von Inhalten und Crowdsourcing für das Verfassen von Inhalten beinhalten.
  • Dokumentgestütztes Verfassen kann ein Verfassen einer Mehrzahl von Dialogen durch automatisches oder halbautomatisches Extrahieren von Knoten und Verknüpfungen aus elektronischen Dokumenten beinhalten, beispielsweise denjenigen von Textverarbeitungsprogrammen, Arbeitsblättern, grafischen Zeichnungsdokumenten und anderen elektronischen Dokumenten in verschiedenen Dokumentformaten. Dokumentgestütztes Verfassen kann umgekehrt ein Erstellen von Textdokumenten beinhalten (z. B. für häufig gestellte Fragen in Microsoft® Word® oder der Hypertext Markup Language (HTML) mit Einbetten interner Verknüpfungen) aus Dialogen heraus (die als Knoten in einem Dialogbaum dargestellt werden) 114, welche mit dem Autorensystem 120 des Dialogmanagers verfasst wurden.
  • Eine Touchscreen-Oberfläche zum Verfassen kann ein Anzeigen einer Mehrzahl von Dialogen in einem gerichteten azyklischen Graphen auf einer Touchscreen-Oberfläche beinhalten, wodurch es einem oder mehreren Autoren ermöglicht wird, die Repository zu durchsuchen und darin zu navigieren (z. B. 1, 114), indem Anzeige- und Berührungsfunktionen wie Zoom, Verschieben, Fischauge usw. verwendet werden, und in ähnlicher Weise einen oder mehrere Dialoge zu bearbeiten, indem unter Verwendung der Berührungsfunktionen Knoten zusammengeführt, Knoten geschwenkt, Kanten zwischen Knoten hinzugefügt/entfernt werden usw.
  • Verfassen mit Echtzeit-Zusammenarbeit kann ein Autorensystem beinhalten, das es zwei oder mehr Autoren 118 ermöglicht, an einem Dialog in der Dialog-Repository 114 in Echtzeit zu arbeiten (z. B. Erstellen, Ändern), wobei die Änderungen in Echtzeit zusammengeführt, synchronisiert und angezeigt werden.
  • Indexieren von Inhalten und Crowdsourcing zum Verfassen von Inhalten kann ein Kategorisieren und Indexieren von Knoten in einer Dialog-Repository 114 nach Thema und ein Bereitstellen von Verknüpfungen beim Auswählen von Teilbereichen von Autorenfunktionen und dem Stellen von Fragen beinhalten.
  • Bei dem Web-Browser kann es sich um eine Oberfläche mit Autorenfunktionen für den Dialogmanager handeln. Viel dialogähnliches Material wird jedoch innerhalb eines Unternehmens oft in verschiedenen Ad-hoc-Formaten gespeichert, z. B. als WordTM-Dokumente, PDF-Dateien und Textdateien, VisioTM-Diagramme, ExcelTM-Arbeitsblätter, Foren, häufig gestellte Fragen (FAQs), Wikis usw. Um die Übernahme des Dialogmanagers zu erleichtern, kann eine Dialogimportfunktion bereitgestellt werden, um das Gerüst eines Dialogs auf Grundlage solcher Materialien zu erstellen. Jede der obigen Dokumentarten erfordert einen spezialisierten Ansatz, um ein Extrahieren von Wissen zu erleichtern. Der Vorteil des Ansatzes der vorliegenden Offenbarung besteht darin, dass Inhalte von Knoten einfach aus dem Quelldokument erstellt werden können. Beispielsweise kann einem Benutzer 118 ein Bildschirm oder eine Ansicht eines Textdokuments dargestellt werden, von dem der Benutzer einen oder mehrere Teile markieren kann. Der markierte Teil wird als Knoten in einem Dialogbaum erstellt. In ähnlicher Weise kann einem Benutzer 118 ein Dokument in Form eines Diagramms dargestellt werden, das grafische Komponenten oder Elemente enthält (z. B. VisioTM- oder PowerPointTM-Diagrammelemente), und es kann ihm ermöglicht werden, eine oder mehrere Komponenten auszuwählen, die als Knoten in einem Dialogbaum erstellt werden sollen. In noch einer weiteren Ausführungsform kann einem Benutzer eine Ansicht eines Dialogbaums dargestellt werden, und es kann ihm ermöglicht werden, einen oder mehrere Knoten aus dem Baum auszuwählen, deren Inhalt als Textdokument erzeugt werden kann.
  • Um Dialoge aus einem Dokument zu extrahieren, kann ein Autor das Dokument importieren und es auf dem Bildschirm anzeigen. Der Autor kann einen Dialog (aus einer Dialog-Repository) hochladen, um ihn zu erweitern oder mit dem Erstellen eines neuen zu beginnen. Der Autor kann z. B. auswählen, Kästen um ein Stück Text oder einen Diagrammbereich ziehen, der einen Inhalt eines Knotens in einem Dialog darstellt. Der Textinhalt der Kästen wird zum anfänglichen Textinhalt eines Knotens. Der Autor kann wahlweise den Inhalt des Knotens bearbeiten, z. B. den Text bearbeiten, Bilder aktualisieren oder Weiteres. Der Dialogmanager kann zurückverweisende Verknüpfungen von dem Dialog auf das Quelldokument zur späteren Verwendung pflegen, beispielsweise für eine Überarbeitung, Prüfung und andere Zwecke. Der Dialogmanager kann Verknüpfungen zwischen den Knoten ableiten, z. B. indem ein lineares Auftreten der Blöcke innerhalb des Textes und Linien in einem Diagramm erkannt werden. Der Autor kann die Verknüpfungen manuell hinzufügen, löschen und/oder ändern. Der Autor kann das Auswählen von Inhalt eines Dokuments wiederholen und einen Knoten des Dialogs erstellen. Der Autor kann den gespeicherten Dialog der Dialog-Repository speichern, z. B. zum späteren Verwenden und Bearbeiten.
  • Autorenfunktionen können sich auch auf intelligente Einheiten stützen. Im Zuge der Verfügbarkeit leistungsfähiger neuer Tablet-PCs und anderer intelligenter Einheiten mit Touchscreen kann das Verfassen von Dialogen unter Verwendung einer Multi-Touch-Oberfläche ausgeführt werden, um Knoten unter Verwendung von Berührungsgesten und Sensoren der Einheiten wie Kreiselkompass und Beschleunigungsmesser zu erstellen, zu verknüpfen und anzuordnen, um rasch zu verschiedenen Teilen eines Dialogs zu navigieren und unter Verwendung einer eingebauten Kamera Fotos oder Videos zu machen, die als Inhalt von Dialogknoten genutzt werden können. Bei Einheiten mit kleinerem Formfaktor, die eine berührungsempfindliche Oberfläche bieten, beispielsweise Smartphones, kann die Kamera der Einheit genutzt werden, um visuelle Inhalte zu Dialogknoten hinzuzufügen.
  • Touchscreengestütztes Verfassen kann ein Verwenden einer Geste zum Erstellen eines Knotens beinhalten, z. B. Antippen eines nicht belegten Teils des Bildschirms und Verknüpfen von zwei Knoten, z. B. durch Auswählen mehrerer Knoten und ausdrückliches Festlegen einer Verknüpfung. Ein Knoten kann in die unmittelbare Nachbarschaft eines anderen Knotens gezogen werden, zu dem eine Verknüpfung gewünscht wird. Ein Dialog kann visuell angeordnet werden. Einzelne Knoten können verschoben werden, indem sie mit einem Finger gezogen werden. Verschieben eines Knotens kann auch Auswirkungen auf andere Knoten haben. Wenn als bildliche Vorstellung eine Spiralfeder verwendet wird, werden Verknüpfungen als Spiralfedern behandelt, und Knoten haben eine Masse und setzen dem Verschieben einen Reibungswiderstand entgegen. Der Gedanke dahinter ist, die Auswirkungen einer Verschiebung einzugrenzen. Wenn als bildliche Vorstellung eine starre Verbindung verwendet wird, werden angrenzende Knoten ebenfalls gezogen. Einzelne Knoten können fixiert werden, z. B. durch eine Geste wie doppeltes Antippen des Knotens. Diese Knoten werden nicht verschoben, wenn sich angrenzende Knoten verschieben. Zusätzlich können für den Umgang mit großen Dialogen eine Geste, bei der die Finger zusammengeführt bzw. gespreizt werden, und eine Schwenkgeste (panning) verwendet werden. Knoten können zusammengeführt werden, indem ein Knoten über einen anderen gezogen wird. Duplikate von Knoten können erstellt werden, indem ein Knoten auseinandergezogen wird.
  • Sensoren von Einheiten können für Autorenfunktionen verwendet werden. Einige Tablet-PCs bieten einen Kreiselkompass und Beschleunigungsmesser, um eine Bewegung der Einheit in drei Dimensionen zu erkennen. Zum Verfassen eines Dialogs kann ein Benutzer einen Tablet-PC neigen, um einen Schwenk auszuführen. Zum schnellen Navigieren kann eine dreidimensionale (3D-)Wiedergabe eines Dialogs in virtueller Realität ausgeführt werden. Indem ein Benutzer den Tablet-PC im Raum bewegt, kann er verschiedene Teile des Dialogs wie in einer Panoramaaufnahme betrachten (siehe z. B. http Doppelpunkt Schrägstrich Schrägstrich (://) occipital Punkt com Schrägstrich (/).
  • Ein Dialogknoten kann auch so verfasst werden, dass er visuelle Inhalte enthält. Es ist hilfreich, Fotos und Videos in den Inhalt eines Knotens einzubetten. Visuelle Inhalte können in Dialogen, die komplexe Maschinen betreffen, besonders wichtig sein, beispielsweise bei Geldautomaten und Bargeldein- und -auszahlungsgeraten. Im Fall von Tablet-PCs mit integrierten Kameras kann das Autorensystem das Foto oder Video unter Verwendung des Dialogeditors im Tablet-PC direkt in den Inhalt eines Knotens importieren. Bei intelligenten Mobiltelefonen (Smartphones), deren Bildschirme zum Bearbeiten eines Dialogs zu klein sind, kann eine auf dem Telefon ausgeführte App über ein drahtloses Netzwerk Daten austauschen, um visuelle Inhalte auf einen Dialog-Server hochzuladen. Ein Benutzer kann auswählen, auf welchen Knoten die Inhalte angewendet werden soll. Visuelle Inhalte können in den Hauptteil des Textes in einem Knoten eingebettet werden. Visuelle Inhalte können Auswahlmöglichkeiten innerhalb der Antworten darstellen. Es können sowohl Fotografien als auch Videos verwendet werden.
  • Bei einem auf intelligente Einheiten gestützten Verfassen kann ein Benutzer die Fähigkeiten der Touchscreen-Oberfläche einer App, die Fähigkeiten einer Bewegungssensor-Schnittstelle einer App, die Fähigkeiten einer Kamera- und Videoschnittstelle einer App und die Fähigkeiten einer Audioschnittstelle einer App nutzen, um Inhalte eines Dialogs (Inhalte eines Knotens, der einen Dialog darstellt) zu erstellen, zu verändern und mit Anmerkungen zu versehen.
  • Verfassen kann auch in Zusammenarbeit in Echtzeit erfolgen. Verfassen von Dialogen kann eine Tätigkeit sein, bei der intensiv zusammengearbeitet wird. Es kann eine nicht in Echtzeit erfolgende Art der Zusammenarbeit geben, bei der ein Dialog in Themen aufgeteilt und jedes Thema zur Bearbeitung an einen Autor gegeben wird. Dafür kann es erforderlich sein, Autoren zu gestatten, Themen durch Verwendung von Sperrfunktionen für einen ausschließlichen Zugriff zu reservieren. Bei einer Zusammenarbeit in Echtzeit können zwei Autoren gleichzeitig an einem Dialog arbeiten, wobei beide genau das gleiche Material sehen. Beim Verfassen mit Echtzeit-Zusammenarbeit können alle Bearbeitungen des Dokuments sofort auf den Bildschirmen aller beteiligten Benutzer sichtbar sein. Verfassen mit Echtzeit-Zusammenarbeit kann auch neue und produktive Möglichkeiten zur gemeinsamen Arbeit an Text-, Video- und Audio-Inhalten ermöglichen, um Funktionen mit Mehrwert, farbcodierte Bearbeitungen, Verlaufswiedergabe und Rückgängig-Funktionen bereitzustellen.
  • Verfassen mit Echtzeit-Zusammenarbeit kann ein Client-Server-Modell beinhalten. Beispielsweise wird einer der Verfasser-Instanzen die Rolle des Servers für die Zusammenarbeit zugewiesen, wenn das Dokument geöffnet wird. Dieser Server stellt sicher, dass die Synchronisierung mit anderen Verfassern gewahrt bleibt, indem er die Latenzzeit des Netzwerks ermittelt und als Zeitsynchronisationsserver fungiert. Der Server empfängt Benachrichtigungen mit Zeitstempel über lokale Änderungen, die an dem Dokument von einem als Client ausgeführten Autor vorgenommen werden. Der Server ermittelt, wie sich diese Änderungen auf seine lokale Kopie auswirken sollten, und sendet seine Änderungen mittels Rundsenden an den für die Zusammenarbeit definierten Pool. Die lokalen Kopien spiegeln die Änderungen wider, wenn eine offizielle Antwort vom Server zurückgesendet wird. Ein lokales Autorenwerkzeug mit Echtzeit-Zusammenarbeit kann die Änderungen in der lokalen Kopie anzeigen, z. B. mit Farbcodierung. Der Autor kann die Endfassung des Dialogs in einer Dialog-Repository speichern.
  • Verfassen kann auch themenorientiert erfolgen. Ein ”Thema” oder ”Gegenstand” kann zum Kategorisieren und Organisieren von Knoten in Dialogen verwendet werden. Beispielsweise ist jedem Knoten ein Thema zugeordnet. Themen dienen dazu, Bereiche eines Dialogs zu kennzeichnen. Themen weisen eine Einschlusshierarchie auf. Gegenstände können andere Gegenstände enthalten und so eine Struktur in Knoten bereitstellen. Themenorientiertes Verfassen kann eine natürliche Möglichkeit bereitstellen, einen großen Dialog zum Zeitpunkt des Verfassens unter mehreren Autoren zu verteilen. Zur Laufzeit kann ein Benutzer, wenn ein Thema gegeben ist, direkt zum besten Anfangsknoten springen.
  • Themen können eine Unterstützung von nicht in Echtzeit erfolgender Zusammenarbeit ermöglichen. Ein Autor kann beispielsweise mit dem Arbeiten an einem neuen Dialog beginnen. Wenn der Dialog wächst und Unterthemen ermittelt werden, kann der ursprüngliche Autor andere Autoren einladen, bei der Dialogerstellung mitzuwirken („Crowdsourcing”). Das Autorensystem kann die Fähigkeit unterstützen, Einladungen an neue Autoren zu senden. In einer Einladung können ein Thema und ein Stammknoten für die Erweiterung angegeben werden. Ein neuer Autor kann Unterthemen erstellen. Einladungen können auch mit Rundsendefunktionen an eine Gemeinschaft und nicht ausdrücklich an einzelne Autoren gesendet werden. Eine Unterstützung von Crowdsourcing kann ermöglichen, dass jeder daran Interessierte eine Autorenaufgabe annimmt. Um ein Wettbewerbsgefühl zu schaffen, kann das Autorensystem einen Mechanismus für soziale Anreize pflegen, beispielsweise eine Anzeigetafel, mit der Dialogbeiträge von Autoren verfolgt und unter ihnen eine Rangfolge erstellt wird.
  • Zu themenorientiertem Verfassen kann gehören, dass ein Autor eine Themenhierarchie erstellt, die mehrere Themen zu einem Gegenstand in einem strukturierten Format enthält. Ein oder mehrere Themen in der Hierarchie werden einem oder mehreren Autoren zugewiesen, um Dialoge zu den Themen zu erstellen. Für jeden Knoten, den der Autor erstellt (z. B. mit einem Werkzeug zum Verfassen von Dialogen), wird ein Thema empfohlen und zugewiesen. Der Autor speichert die Endfassung des Dialogs in der Dialog-Repository (z. B. zum späteren Verwenden und Bearbeiten). Ein themenorientiertes Autorensystem erzeugt Indizes von Knoten, indem Dialogknoten den Themen in der Hierarchie zugeordnet werden. Das themenorientierte Autorensystem speichert den Themenindex in einer Hierarchie in der Dialog-Repository für die Verwendung zur Laufzeit.
  • Zur Laufzeit wird dem Benutzer des Dialogmanagers ein zu lösendes Problem vorgegeben. Der Benutzer kann die Hierarchie des Themenindex ansehen, um neben anderen Wahlmöglichkeiten mit einem oder mehreren Dialogen zum Lösen des vorgegebenen Problems zu beginnen. Der Benutzer folgt einem oder mehreren ausgewählten Dialogen, bis die Lösung des Problems gefunden ist.
  • 7 veranschaulicht eine schematische Darstellung eines beispielhaften Computer- oder Verarbeitungssystem, in dem das Expertengespräch-Erstellungssystem in einer Ausführungsform der vorliegenden Offenbarung umgesetzt werden kann. Bei dem Computersystem handelt es sich nur um ein Beispiel eines geeigneten Verarbeitungssystems, und es ist nicht so zu verstehen, als würde es eine Einschränkung hinsichtlich des Nutzungs- oder Funktionalitätsumfangs von Ausführungsformen der hier beschriebenen Verfahrensweise nahelegen. Das dargestellte Verarbeitungssystem kann mit zahlreichen anderen universellen oder auf einen bestimmten Zweck ausgerichteten Computersystemumgebungen oder -konfigurationen betrieben werden. Zu Beispielen von allgemein bekannten Computersystemen, -umgebungen und/oder -konfigurationen, die zur Verwendung mit dem in 7 dargestellten Verarbeitungssystem geeignet sein können, zählen, ohne auf diese beschränkt zu sein, Personal-Computer-Systeme, Server-Computersysteme, Thin Clients, Thick Clients, Handheld- oder Laptop-Einheiten, Mehrfachprozessorsysteme, Systeme auf Grundlage von Mikroprozessoren, Set-Top-Boxen, programmierbare Unterhaltungselektronik, Netzwerk-PCs, Kleincomputersysteme, Großrechner-Computersysteme und verteilte Cloud-Computing-Umgebungen, die jedes der obigen Systeme bzw. jede der obigen Einheiten und dergleichen beinhalten.
  • Das Computersystem kann im allgemeinen Zusammenhang von durch ein Computersystem ausführbaren Befehlen beschrieben werden beschrieben werden, beispielsweise Programmmodulen, die von einem Computersystem ausgeführt werden. Allgemein können Programmmodule unter anderem Routinen, Programme, Objekte, Komponenten, Logik, Datenstrukturen und so weiter beinhalten, die bestimmte Aufgaben ausführen oder bestimmte abstrakte Datentypen umsetzen. Das Computersystem kann in der Praxis in verteilten Cloud-Computerumgebungen verwirklicht werden, in denen Aufgaben von entfernt angeordneten Verarbeitungseinheiten ausgeführt werden, die über ein Datenübertragungsnetzwerk verbunden sind. In einer verteilten Cloud-Computerumgebung können sich Programmmodule sowohl lokal als auch auf entfernt angeordneten Computersystem-Speichermedien befinden, die Speichereinheiten für Arbeitsspeicher beinhalten.
  • Zu den Komponenten des Computersystems können, ohne auf diese beschränkt zu sein, ein oder mehrere Prozessoren oder Verarbeitungseinheiten 12, ein Systemspeicher 16 und ein Bus 14 gehören, der verschiedene Systemkomponenten verbindet, unter anderem den Systemspeicher 16 mit dem Prozessor 12. Der Prozessor 12 kann ein Dialoglaufzeitsystem oder -modul 10 beinhalten, das die hier beschriebenen Verfahren ausführt. Das Modul 10 kann in die integrierten Schaltungen des Prozessors 12 programmiert sein oder aus dem Systemspeicher 16, der Speichereinheit 18 oder dem Netzwerk 24 oder Kombinationen davon geladen werden.
  • Der Bus 14 kann für eine oder mehrere von beliebigen von mehreren Typen von Busstrukturen stehen, unter anderem für einen Speicherbus oder eine Speichersteuereinheit, einen Peripheriebus, einen beschleunigten Grafikanschluss und einen Prozessor oder lokalen Bus, die beliebige aus einer Vielfalt von Busarchitekturen nutzen. Beispielhaft und nicht als Einschränkung kann es sich bei solchen Architekturen unter anderen um einen Industry-Standard-Architecture-(ISA-)Bus, einen Micro-Channel-Architecture-(MCA-)Bus, einen Enhanced-ISA-(EISA-)Bus, einen lokalen Video-Electronics-Standards-Association-(VESA-)Bus oder einen Peripheral-Component-Interconnects-(PCI-)Bus handeln.
  • Das Computersystem kann eine Vielfalt von durch das Computersystem lesbaren Medien beinhalten. Bei solchen Medien kann es sich um beliebige verfügbare Medien handeln, auf die das Computersystem zugreifen kann, und sie beinhalten sowohl flüchtige als auch nichtflüchtige, wechselbare als auch nichtwechselbare Medien.
  • Der Systemspeicher 16 kann durch das Computersystem lesbare Medien in Form von flüchtigen Speichern, beispielsweise einen Speicher mit wahlfreiem Zugriff (RAM) und/oder einen Cachespeicher, beinhalten. Das Computersystem kann außerdem weitere wechselbare/nichtwechselbare, flüchtige/nichfflüchtige Computersystem-Speichermedien beinhalten. Lediglich als Beispiel kann das Speichersystem 18 bereitgestellt werden, um von einem nichtwechselbaren, nichtflüchtigen magnetischen Medium zu lesen und darauf zu schreiben (z. B. eine ”Festplatte”). Ein Magnetplattenlaufwerk zum Lesen von und Schreiben auf eine wechselbare, nichtflüchtige Magnetplatte (z. B. ein ”Diskette”) und ein optisches Plattenlaufwerk zum Lesen von oder Schreiben auf eine wechselbare, nichtflüchtige optische Platte wie beispielsweise eine CD-ROM, DVD-ROM oder andere optische Medien sind zwar nicht dargestellt, können aber bereitgestellt werden. In solchen Fällen kann jedes über eine oder mehrere Datenmedien-Schnittstellen mit dem Bus 14 verbunden sein.
  • Das Computersystem kann auch Daten mit einer oder mehreren externen Einheiten 26 austauschen, beispielsweise einer Tastatur, einer Zeigereinheit, einer Anzeige 28 usw.; einer oder mehr Einheiten, die es einem Benutzer ermöglichen, mit dem Computersystem zu interagieren; und/oder beliebigen Einheiten (z. B. Netzwerkkarte, Modem usw.), die es dem Computersystem ermöglichen, Daten mit einem oder mehreren anderen Computereinheiten auszutauschen. Ein solcher Datenaustausch kann über Eingabe/Ausgabe-(E/A-)Schnittstellen 20 stattfinden.
  • Das Computersystem kann aber auch Daten mit einem oder mehreren Netzwerken 24, beispielsweise einem Nahbereichsnetzwerk (LAN), einem allgemeinen Weitbereichsnetzwerk (WAN) und/oder einem öffentlichen Netzwerk (z. B. dem Internet) über den Netzwerkadapter 22 austauschen. Wie abgebildet tauscht der Netzwerkadapter 22 Daten mit anderen Komponenten des Computersystems über den Bus 14 aus. Obgleich nicht dargestellt, sollte jedoch verständlich sein, dass noch weitere Hardware- und/oder Softwarekomponenten in Verbindung mit dem Computersystem verwendet werden könnten. Beispiele hierfür sind unter anderem, ohne auf diese beschränkt zu sein: Mikrocode, Einheitentreiber, redundante Verarbeitungseinheiten, externe Plattenlaufwerkanordnungen, RAID-Systeme, Bandlaufwerke und Archivierungsspeichersysteme usw.
  • Wie für einen Fachmann verständlich sein wird, können Aspekte der vorliegenden Erfindung als System, Verfahren oder Computerprogrammprodukt verkörpert sein. Dementsprechend können Aspekte der vorliegenden Erfindung die Form einer vollständigen Hardware-Ausführungsform, einer vollständigen Software-Ausführungsform (darunter Firmware, residente Software, Mikrocode usw.) oder einer Ausführungsform annehmen, die Software- und Hardware-Aspekte miteinander verbindet und die hier alle allgemein als ”Schaltkreis”, ”Modul” oder ”System” bezeichnet werden können. Darüber hinaus können Aspekte der vorliegenden Erfindung die Form eines Computerprogrammprodukts annehmen, das in einem oder mehreren computerlesbaren Medium (Medien) verkörpert ist, auf denen ein computerlesbarer Programmcode verkörpert ist.
  • Jede Kombination von einem oder mehreren computerlesbaren Medien kann genutzt werden. Bei einem computerlesbaren Speichermedium kann es sich beispielsweise und ohne darauf beschränkt zu sein um ein elektronisches, magnetisches, optisches, elektromagnetisches, Infrarot- oder Halbleitersystem, eine derartige Vorrichtung oder Einheit oder jede geeignete Kombination davon handeln. Zu konkreteren Beispielen (eine keinen Anspruch auf Vollständigkeit erhebende Liste) für das computerlesbare Speichermedium würden die folgenden gehören: eine elektrische Verbindung mit einer oder mehreren Leitungen, eine tragbare Computerdiskette, eine Festplatte, ein Speicher mit wahlfreiem Zugriff (RAM), ein Nur-Lese-Speicher (ROM), ein löschbarer programmierbarer Nur-Lese-Speicher (EPROM- oder Flash-Speicher), ein Lichtwellenleiter, ein tragbarer Compactdisc-Nur-Lese-Speicher (CD-ROM), eine optische Speichereinheit, eine magnetische Speichereinheit oder jede geeignete Kombination davon. Im Zusammenhang mit diesem Dokument kann es sich bei einem computerlesbaren Speichermedium um ein beliebiges materielles Medium handeln, das ein Programm zur Verwendung durch oder in Verbindung mit einem System, einer Vorrichtung oder einer Einheit zur Ausführung von Befehlen enthalten oder speichern kann.
  • Ein computerlesbares Signalmedium kann ein sich ausbreitendes Datensignal enthalten, in dem sich computerlesbarer Programmcode befindet, beispielsweise im Basisband oder als Teil einer Trägerwelle. Ein solches sich ausbreitendes Signal kann eine beliebige aus einer Vielfalt von Formen annehmen, unter anderem und ohne darauf beschränkt zu sein elektromagnetische, optische oder jede geeignete Kombination davon. Bei einem computerlesbaren Signalmedium kann es sich um ein beliebiges computerlesbares Medium handeln, das kein computerlesbares Speichermedium ist und ein Programm zur Verwendung durch oder in Verbindung mit einem System, einer Vorrichtung oder einer Einheit zur Ausführung von Befehlen übertragen, verbreiten oder transportieren kann.
  • Auf einem computerlesbaren Medium enthaltener Programmcode kann unter Verwendung jedes geeigneten Mediums übertragen werden, unter anderem drahtlos, drahtgebunden, mittels Lichtwellenleiterkabel, HF usw. oder jeder geeigneten Kombination davon.
  • Computerprogrammcode zum Ausführen von Funktionen für Aspekte der vorliegenden Erfindung kann in jeder Kombination von einer oder mehreren Programmiersprachen geschrieben sein, darunter eine objektorientierte Programmiersprache wie beispielsweise Java®, Smalltalk, C++ oder dergleichen und herkömmliche prozedurale Programmiersprachen wie die Programmiersprache ”C” oder ähnliche Programmiersprachen, eine Skripterstellungssprache wie Perl, VBS oder ähnliche sprachen und/oder funktionale Sprachen wie Lisp und ML sowie logikorientierte Sprachen wie Prolog. Der Programmcode kann vollständig auf dem Computer des Benutzers, teilweise auf dem Computer des Benutzers, als eigenständiges Software-Paket, teilweise auf dem Computer des Benutzers und teilweise auf einem entfernt angeordneten Computer oder vollständig auf dem entfernt angeordneten Computer oder Server ausgeführt werden. In dem letztgenannten Szenario kann der entfernt angeordnete Computer mit dem Computer des Benutzers über jede Art von Netzwerk verbunden sein, darunter ein Nahbereichsnetzwerk (LAN) oder ein Weitbereichsnetzwerk (WAN), oder die Verbindung kann zu einem externen Computer hergestellt werden (beispielsweise über das Internet unter Verwendung eines Internet-Dienstanbieters).
  • Gesichtspunkte der vorliegenden Erfindung werden mit Bezug zu Ablaufplan-Veranschaulichungen und/oder Blockschaubildern von Verfahren, Vorrichtungen (Systemen) und Computerprogramm-Erzeugnissen gemäß Ausführungsformen der Erfindung beschrieben. Es versteht sich, dass jeder Block der Ablaufplan-Veranschaulichungen und/oder Blockschaltbilder und Kombinationen der Blöcke in den Ablaufplan-Veranschaulichungen und/oder Blockschaltbildern durch Computerprogrammbefehle umgesetzt werden können. Diese Computerprogrammbefehle können einem Prozessor eines Universalcomputers, eines Spezialcomputers oder anderer programmierbarer Datenverarbeitungsvorrichtungen bereitgestellt werden, sodass eine Maschine in der Weise hervorgebracht wird, dass die Befehle, die über den Prozessor des Computers oder anderer programmierbarer Datenverarbeitungsvorrichtungen ausgeführt werden, Mittel zum Umsetzen der Funktionen/Handlungen schaffen, die in dem Block oder den Blöcken der Ablaufpläne und/oder Blockschaubilder festgelegt sind.
  • Diese Computerprogrammbefehle können auch auf einem computerlesbaren Medium gespeichert werden, das einen Computer oder andere programmierbare Datenverarbeitungsvorrichtungen oder andere Einheiten anweisen kann, in einer bestimmten Weise zu funktionieren, sodass die auf dem computerlesbaren Medium gespeicherten Befehle ein Herstellungsprodukt hervorbringen, das Befehle enthält, die Funktionen/Handlungen umsetzen, die in dem Block oder den Blöcken der Ablaufpläne und/oder Blockschaubilder festgelegt sind.
  • Die Computerprogrammbefehle können auch in einen Computer, andere programmierbare Datenverarbeitungsvorrichtungen oder andere Einheiten geladen werden und veranlassen, dass eine Reihe von Funktionsschritten auf dem Computer, den anderen programmierbaren Vorrichtungen oder anderen Einheiten ausgeführt wird, um einen per Computer umgesetzten Prozess in der Weise hervorzubringen, dass die Befehle, die auf einem Computer oder anderen programmierbaren Vorrichtungen ausgeführt werden, Prozesse zum Umsetzen der Funktionen/Handlungen bereitstellen, die in dem Block oder den Blöcken der Ablaufpläne und/oder Blockschaubilder festgelegt sind.
  • Die Ablaufpläne und Blockschaltbilder in den Figuren veranschaulichen die Architektur, die Funktionalität und den Betrieb von möglichen Umsetzungen von Systemen, Verfahren und Computerprogrammprodukten gemäß verschiedenen Ausführungsformen der vorliegenden Erfindung. In dieser Hinsicht kann jeder Block in den Ablaufplänen oder Blockschaltbildern ein Modul, Segment oder den Teil eines Codes darstellen, das bzw. der einen oder mehrere ausführbare Befehle zur Umsetzung der festgelegten logischen Funktion(en) umfasst. Es sollte auch beachtet werden, dass in einigen alternativen Umsetzungen die in dem Block angegebenen Funktionen in einer anderen als der in den Figuren angegebenen Reihenfolge stattfinden können. Beispielsweise können je nach betroffener Funktionalität zwei als aufeinander folgend dargestellte Blöcke tatsächlich im Wesentlichen gleichzeitig ausgeführt werden, oder die Blöcke können manchmal in umgekehrter Reihenfolge ausgeführt werden. Es wird auch angemerkt, dass jeder Block der Blockschaltbilder und/oder Ablaufplan-Veranschaulichungen und Kombinationen der Blöcke in Blockschaltbildern und/oder der Ablaufplan-Veranschaulichungen durch Hardware-Spezialsysteme umgesetzt werden können, die die festgelegten Funktionen oder Handlungen durchführen, oder durch Kombinationen von Spezial-Hardware und Computerbefehlen.
  • Das Computerprogrammprodukt kann alle jeweiligen Funktionen aufweisen, welche die Umsetzung der hier beschriebenen Verfahrensweise ermöglichen und die, wenn sie in ein Computersystem geladen wird, zur Ausführung der Verfahren in der Lage ist. Computerprogramm, Softwareprogramm, Programm oder Software bezeichnet im vorliegenden Zusammenhang jeden Ausdruck in jeder Sprache, jedem Code oder jeder Schreibweise eines Satzes von Anweisungen, die dazu gedacht sind, einen Computer, der eine Fähigkeit zur Informationsverarbeitung aufweist, dazu zu veranlassen, eine bestimmte Funktion entweder direkt oder nach einer oder beiden der folgenden Möglichkeiten auszuführen: (a) Umwandlung in eine andere Sprache, anderen Code oder andere Schreibweise; und/oder (b) Vervielfältigung in einer anderen materiellen Form.
  • Die hier verwendete Begrifflichkeit dient lediglich zum Zweck der Beschreibung bestimmter Ausführungsformen und ist nicht als Einschränkung der Erfindung gedacht. In der hier verwendeten Weise sollen die Einzahlformen ”ein”, ”einer”, ”eine” und ”der”, ”die”, ”das” auch die Pluralformen einschließen, sofern der Zusammenhang nicht deutlich etwas anderes angibt. Weiterhin versteht sich, dass die Begriffe „weist auf” und/oder „aufweisend”, wenn sie in dieser Beschreibung verwendet werden, das Vorhandensein von angegebenen Merkmalen, Ganzzahlen, Schritten, Operationen, Elementen und/oder Komponenten beschreiben, jedoch nicht das Vorhandensein oder die Hinzufügung von einem oder mehreren weiteren Merkmalen, Ganzzahlen, Schritten, Operationen, Elementen, Komponenten und/oder Gruppen davon ausschließen.
  • Die entsprechenden Strukturen, Materialien, Handlungen und Äquivalente aller Mittel oder aus Schritt plus Funktion bestehender Elemente in den nachfolgenden Ansprüchen, sollen, sofern zutreffend, alle Strukturen, Materialien oder Handlungen zum Ausführen der Funktion in Kombination mit anderen beanspruchten Elementen so, wie sie ausdrücklich beansprucht werden, einschließen. Die Beschreibung der vorliegenden Erfindung wurde zur Veranschaulichung und Beschreibung vorgelegt, ist jedoch nicht als erschöpfend oder beschränkt auf die Erfindung in der offenbarten Form zu verstehen. Viele Änderungen und Varianten werden für den Fachmann ersichtlich sein, ohne vom Geltungsbereich und Geist der Erfindung abzuweichen. Die Ausführungsform wurde gewählt und beschrieben, um Grundgedanken der Erfindung und die praktische Anwendung bestmöglich zu erklären und es einem anderen Fachmann zu ermöglichen, die Erfindung für verschiedene Ausführungsformen mit verschiedenen Änderungen zu verstehen, die für den jeweils betrachteten bestimmten Zweck geeignet sind.
  • Verschiedene Aspekte der vorliegenden Offenbarung können als Programm, Software oder Computerbefehle verkörpert sein, die auf einem computer- oder maschinennutzbaren oder -lesbaren Medium verkörpert sind, wodurch der Computer oder die Maschine veranlasst wird, die Schritte des Verfahrens auszuführen, wenn diese auf dem Computer, Prozessor und/oder dem Maschine ausgeführt werden. Eine von einer Maschine lesbare Programmspeichereinheit, die in materieller Form ein Programm von auf der Maschine ausführbaren Befehlen zum Ausführen verschiedener in der vorliegenden Offenbarung beschriebener Funktionalitäten und Verfahren verkörpert, wird ebenfalls bereitgestellt.
  • Das System und das Verfahren der vorliegenden Offenbarung können auf einem Universalcomputer- oder Spezialcomputersystem umgesetzt und ausgeführt werden. Die Begriffe ”Computersystem” und ”Computernetzwerk”, wie sie in der vorliegenden Anmeldung verwendet sein können, können eine Vielzahl von Kombinationen ortsfester und/oder tragbarer Computerhardware, Software, Peripherieeinheiten und Speichereinheiten beinhalten. Das Computersystem kann eine Vielzahl einzelner Komponenten beinhalten, die vernetzt oder auf andere Weise verbunden sind, um ihre Funktion in kooperativer Weise zu erfüllen, oder es kann eine oder mehrere unabhängige Komponenten enthalten. Die Hardware- und Softwarekomponenten des Computersystems der vorliegenden Anmeldung können ortsfeste und tragbare Einheiten wie beispielsweise Desktop, Laptop und/oder Server beinhalten und können darin enthalten sein. Bei einem Modul kann es sich um eine Komponente einer Einheit, Software, eines Programms oder Systems handeln, das eine gewisse „Funktionalität” umsetzt, die als Software, Hardware, Firmware, elektronischer Schaltkreis oder/usw. verkörpert sein kann.
  • Die oben beschriebenen Ausführungsformen sind veranschaulichende Beispiele, und dies sollte nicht so ausgelegt werden, dass die vorliegende Erfindung auf diese besonderen Ausführungsformen beschränkt wäre. Somit können von einem Fachmann verschiedene Änderungen und Abwandlungen vorgenommen werden, ohne vom Geist und Geltungsbereich der Erfindung, wie er in den anhängenden Ansprüchen definiert ist, abzuweichen.

Claims (25)

  1. Verfahren zum Erstellen eines Laufzeitdialogs, das aufweist: Empfangen einer Anfangsantwort auf eine Anfangsfrage von einem Benutzer; Erstellen eines Stands eines Gespräch-Threads auf Grundlage der Anfangsantwort; automatisches Auswählen einer nächsten zu stellenden Frage durch einen Prozessor auf Grundlage des Stands des Gespräch-Threads aus einer Dialog-Repository und einer Fragenauswahlrichtlinie; Vorlegen der nächsten Frage dem Benutzer; Empfangen einer nächsten Antwort auf die nächste Frage; Aktualisieren des Stands des Gespräch-Thread auf Grundlage der nächsten Antwort; und Wiederholen des Auswählens, Vorlegens, Empfangens und Aktualisierens, bis ein Kriterium erfüllt ist.
  2. Verfahren nach Anspruch 1, wobei die Fragenauswahlrichtlinie einen Fragenordnungsalgorithmus aufweist.
  3. Verfahren nach Anspruch 2, wobei der Fragenordnungsalgorithmus Tiefenorientierung, Breitenorientierung, auf der Nutzung beruhendes Gewichten, überwachtes Maschinenlernen oder benutzerdefinierte Skripterstellung oder Kombinationen davon aufweist.
  4. Verfahren nach Anspruch 1, wobei die Fragenauswahlrichtlinien einen Fragenanzahlalgorithmus aufweisen, wobei der Fragenanzahlalgorithmus feste Anzahl, überwachtes Maschinenlernen oder benutzerdefinierte Skripterstellung oder Kombinationen davon aufweist.
  5. Verfahren nach Anspruch 1, das weiterhin aufweist: Verfassen eines Dialogs und Speichern des Dialogs in der Dialog-Repository, wobei das Verfassen eines oder mehrere aufweist aus: dokumentgestütztes Verfassen, das zum Erstellen des Dialogs einen oder mehrere Knoten und Verknüpfungen aus einem elektronischen Dokument extrahiert; Gemeinschaftliches Verfassen in Echtzeit, welches es zwei oder mehreren Autoren ermöglicht, in Echtzeit an dem Dialog in der Dialog-Repository zu arbeiten, indem die Arbeit der zwei oder mehr Autoren zusammengeführt und synchronisiert wird; auf intelligente Einheiten gestütztes Verfassen, welches es ermöglicht, einen Knoten des Dialogs mithilfe einer Geste zu erstellen; themenorientiertes Verfassen, welches es einem Autor ermöglicht, eine Themenhierarchie zu erstellen, die mehrere Themen zu einem Gegenstand in einem strukturierten Format enthält, und diese Themen einem oder mehreren Autoren zum Erstellen zusätzlicher Dialoge unter den Themen zuzuweisen; oder Verfassen mit Crowdsourcing, welches es dem Autor ermöglicht, einen oder mehrere Autoren einzuladen, beim Erstellen des Dialogs mitzuwirken; oder Kombinationen davon.
  6. Verfahren nach Anspruch 1, wobei das Kriterium darin besteht, dass eine Lösung erreicht wurde, um sie dem Benutzer bereitzustellen.
  7. Verfahren nach Anspruch 1, wobei das Kriterium darin besteht, dass ein Benutzer aufgehört hat, die nächste Frage zu beantworten.
  8. Verfahren nach Anspruch 1, das weiterhin Bereitstellen einer Empfehlung für die Antwort auf Grundlage einer oder mehrerer Antworten beinhaltet, die von einem oder mehreren befreundeten Benutzern auf der Website eines sozialen Netzwerks empfangen wurden, die dem Benutzer zugeordnet sind.
  9. Verfahren nach Anspruch 1, das weiterhin Bereitstellen einer Empfehlung für die Antwort auf Grundlage einer oder mehrerer Nachrichten in einem Instant-Messaging-System beinhaltet.
  10. Verfahren nach Anspruch 1, das weiterhin beinhaltet, es dem Benutzer zu ermöglichen, einem Autor eines Dialogs in der Dialog-Repository zu folgen.
  11. Verfahren nach Anspruch 1, das weiterhin Benachrichtigen des Benutzers als Antwort auf ein Erkennen einer Änderung in der Dialog-Repository beinhaltet.
  12. Verfahren nach Anspruch 1, das weiterhin beinhaltet: Synchronisieren einer lokalen Dialog-Repository und Nutzen von Daten auf einer lokalen Maschine mit entsprechenden Daten, die von einer Master-Instanz eines Dialogmanagersystems auf einem entfernt angeordneten Server heruntergeladen wurden; Ausführen einer lokalen Instanz des Dialogmanager-Werkzeugs in der lokalen Maschine, wobei die Schritte des Empfangens einer Anfangsantwort, Auswählens, Vorlegens, Empfangens einer nächsten Antwort, Aktualisierens und Wiederholens über die lokale Instanz des Dialogmanager-Werkzeugs und Nutzen der lokalen Dialog-Repository sowie die Nutzung von Daten auf der lokalen Maschine ausgeführt werden, wobei die lokale Instanz nicht mit einer Master-Instanz des Dialogmanager-Werkzeugs verbunden zu sein braucht; Hochladen von einer oder mehreren Nutzungsstatistiken, die vom Ausführen der lokalen Instanz erzeugt werden, welche die Schritte des Empfangens einer Anfangsantwort, Auswählens, Vorlegens, Empfangens einer nächsten Antwort, Aktualisierens und Wiederholens ausführt, als Antwort auf ein Erkennen, dass die lokale Instanz mit der Master-Instanz auf einem Server verbunden ist; und Synchronisieren der lokalen Instanz des Dialogmanager-Werkzeugs und der zugehörigen lokalen Dialog-Repository mit der Master-Instanz auf dem Server.
  13. Computerlesbares Speichermedium, das ein Programm von durch eine Maschine ausführbaren Befehlen speichert, um ein Verfahren zum Aufbauen eines Laufzeitdialogs auszuführen, welches aufweist: Empfangen einer Anfangsantwort auf eine Anfangsfrage von einem Benutzer; Erstellen eines Stands eines Gesprächs-Thread auf Grundlage der Anfangsantwort; automatisches Auswählen einer nächsten zu stellenden Frage aus einer Dialog-Repository durch einen Prozessor auf Grundlage des aktualisierten Stands des Gespräch-Threads und einer Fragenauswahlrichtlinie; Vorlegen der nächsten Frage dem Benutzer; Empfangen einer nächsten Antwort auf die nächste Frage; Aktualisieren des Stands des Gesprächs-Thread auf Grundlage der nächsten Antwort; und Wiederholen des Auswählens, Vorlegen, Empfangens und Aktualisierens, bis ein Kriterium erfüllt ist.
  14. Computerlesbares Speichermedium nach Anspruch 13, wobei die Fragenauswahlrichtlinien einen Fragenordnungsalgorithmus aufweisen, wobei der Fragenordnungsalgorithmus Tiefenorientierung, Breitenorientierung, auf der Nutzung beruhende Gewichtung, überwachtes Maschinenlernen oder benutzerdefinierte Skripterstellung oder Kombinationen davon aufweist.
  15. Computerlesbares Speichermedium nach Anspruch 14, das weiterhin aufweist: Verfassen eines Dialogs und Speichern des Dialogs in der Dialog-Repository, wobei das Verfassen eines oder mehrere aufweist aus: dokumentgestütztes Verfassen, das zum Erstellen des Dialogs einen oder mehrere Knoten und Verknüpfungen aus einem elektronischen Dokument extrahiert; Gemeinschaftliches Verfassen in Echtzeit, welches es zwei oder mehreren Autoren ermöglicht, in Echtzeit an dem Dialog in der Dialog-Repository zu arbeiten, indem die Arbeit der zwei oder mehr Autoren zusammengeführt und synchronisiert wird; auf intelligente Einheiten gestütztes Verfassen, welches es ermöglicht, einen Knoten des Dialogs mithilfe einer Geste zu erstellen; themenorientiertes Verfassen, welches es einem Autor ermöglicht, eine Themenhierarchie zu erstellen, die mehrere Themen zu einem Gegenstand in einem strukturierten Format enthält, und diese Themen einem oder mehreren Autoren zum Erstellen zusätzlicher Dialoge unter den Themen zuzuweisen; oder Verfassen mit Crowdsourcing, welches es dem Autor ermöglicht, einen oder mehrere Autoren einzuladen, beim Erstellen des Dialogs mitzuwirken; oder Kombinationen davon.
  16. Computerlesbares Speichermedium nach Anspruch 13, wobei die Fragenauswahlrichtlinie einen Fragenanzahlalgorithmus aufweist.
  17. Computerlesbares Speichermedium nach Anspruch 16, wobei der Fragenanzahlalgorithmus feste Anzahl, überwachtes Maschinenlernen oder benutzerdefinierte Skripterstellung oder Kombinationen davon aufweist.
  18. Computerlesbares Speichermedium nach Anspruch 13, wobei das Kriterium darin besteht, eine Lösung zu erreichen, um sie dem Benutzer bereitzustellen.
  19. Computerlesbares Speichermedium nach Anspruch 13, das weiterhin Bereitstellen einer Empfehlung für die Antwort auf Grundlage einer oder mehrerer Antworten beinhaltet, die von einem oder mehreren befreundeten Benutzern auf der Website eines sozialen Netzwerks empfangen wurden, die dem Benutzer zugeordnet sind.
  20. Computerlesbares Speichermedium nach Anspruch 13, das weiterhin Bereitstellen einer Empfehlung für die Antwort auf Grundlage einer oder mehrerer Nachrichten in einem Instant-Messaging-System beinhaltet.
  21. Computerlesbares Speichermedium nach Anspruch 13, das weiterhin beinhaltet, es dem Benutzer zu ermöglichen, einem Autor eines Dialogs in der Dialog-Repository zu folgen.
  22. Computerlesbares Speichermedium nach Anspruch 13, das weiterhin Benachrichtigen des Benutzers als Antwort auf ein Erkennen einer Änderung in der Dialog-Repository beinhaltet.
  23. Computerlesbares Speichermedium nach Anspruch 13, das weiterhin beinhaltet: Abgleichen des Gesprächsstand-Thread, um einen oder mehrere Benutzer zu finden, die auf einen im Wesentlichen gleichen Gesprächs-Thread gestoßen sind; Benachrichtigen von einem oder mehreren Benutzern mit Informationen, die zu dem im Wesentlichen gleichen Gesprächs-Thread gehören; Ermöglichen des Nutzens von einem oder mehreren Instant-Messaging-Systemen, während die Schritte des Empfangens einer Anfangsantwort, Auswählens, Vorlegens, Empfangens einer nächsten Antwort, Aktualisierens und Wiederholens ausgeführt werden; direktes Zugreifen auf ein oder mehrere dialogbezogene Diskussionsformen in einem Netz; Senden einer Benachrichtigung als Antwort auf ein Erkennen einer Änderung, die zu einem oder mehreren Themen und Knoten gehört, die zu einem oder mehreren Themen in der Dialog-Repository gehören; Ermöglichen für den Benutzer, einem oder mehreren anderen Benutzern eines Dialogmanager-Werkzeugs zu folgen; oder Protokollieren einer Nutzung die zu dem Nutzen der Messaging-Systeme mit einer oder mehreren Instanzen, dem Zugreifen auf ein oder mehrere dialogbezogene Foren und dazu gehört, dass der Benutzer einem oder mehreren anderen Benutzern folgt; oder Kombinationen davon.
  24. System zum Erstellen eines Laufzeitdialogs, das aufweist: einen Prozessor; ein Dialogportal, das funktionsmäßig in der Lage ist, auf dem Prozessor ausgeführt zu werden, und das weiterhin funktionsmäßig in der Lage ist, eine Oberfläche bereitzustellen, um einem Benutzer eine Mehrzahl von Fragen zu stellen und eine entsprechende Mehrzahl von Antworten von dem Benutzer zu erhalten; ein Thread-Pflegemodul, das funktionsmäßig in der Lage ist, einen Gesprächsstand auf Grundlage der erhaltenen Antworten zu pflegen; und ein Fragenauswahlmodul, das funktionsmäßig in der Lage ist, eine nächste zu stellende Frage auf Grundlage des Gesprächsstands, einer Fragenauswahlrichtlinie und einer Dialog-Repository auszuwählen.
  25. System nach Anspruch 24, wobei die Fragenauswahlrichtlinie den Fragenordnungsalgorithmus festlegt, der Tiefenorientierung, Breitenorientierung, auf der Nutzung beruhende Gewichtung, überwachtes Maschinenlernen oder benutzerdefinierte Skripterstellung oder Kombinationen davon aufweist.
DE201311003202 2012-06-29 2013-04-30 Erweiterung zur Expertengespräch-Erstellungsfunktion Ceased DE112013003202T5 (de)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US13/538,634 US9471872B2 (en) 2012-06-29 2012-06-29 Extension to the expert conversation builder
US13/538,634 2012-06-29
PCT/US2013/038721 WO2014003885A1 (en) 2012-06-29 2013-04-30 Extension to the expert conversation builder

Publications (1)

Publication Number Publication Date
DE112013003202T5 true DE112013003202T5 (de) 2015-04-09

Family

ID=49779198

Family Applications (1)

Application Number Title Priority Date Filing Date
DE201311003202 Ceased DE112013003202T5 (de) 2012-06-29 2013-04-30 Erweiterung zur Expertengespräch-Erstellungsfunktion

Country Status (5)

Country Link
US (1) US9471872B2 (de)
JP (1) JP2015526799A (de)
CN (1) CN104321765A (de)
DE (1) DE112013003202T5 (de)
WO (1) WO2014003885A1 (de)

Families Citing this family (39)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8612233B2 (en) * 2011-01-05 2013-12-17 International Business Machines Corporation Expert conversation builder
US20140129077A1 (en) * 2012-11-05 2014-05-08 Service Solutions U.S. Llc Scan tool with configurable shortcuts
US10915557B2 (en) * 2013-01-31 2021-02-09 Walmart Apollo, Llc Product classification data transfer and management
US20140214841A1 (en) * 2013-01-31 2014-07-31 Wal-Mart Stores, Inc. Semantic Product Classification
US20140214844A1 (en) * 2013-01-31 2014-07-31 Wal-Mart Stores, Inc. Multiple classification models in a pipeline
US10013480B2 (en) * 2014-03-26 2018-07-03 Excalibur Ip, Llc Method and system for decomposing social relationships into domains of interactions
EP2933070A1 (de) * 2014-04-17 2015-10-21 Aldebaran Robotics Verfahren und Systeme zur Handhabung eines Dialogs mit einem Roboter
US10460239B2 (en) 2014-09-16 2019-10-29 International Business Machines Corporation Generation of inferred questions for a question answering system
JP6512912B2 (ja) * 2015-04-10 2019-05-15 キヤノン株式会社 被計測物の形状を計測する計測装置
WO2016167424A1 (ko) * 2015-04-16 2016-10-20 주식회사 플런티코리아 답변 추천 장치, 자동 문장 완성 시스템 및 방법
US10515150B2 (en) 2015-07-14 2019-12-24 Genesys Telecommunications Laboratories, Inc. Data driven speech enabled self-help systems and methods of operating thereof
CN108351862B (zh) * 2015-08-11 2023-08-22 科格诺亚公司 利用人工智能和用户输入来确定发育进展的方法和装置
US10455088B2 (en) 2015-10-21 2019-10-22 Genesys Telecommunications Laboratories, Inc. Dialogue flow optimization and personalization
US10382623B2 (en) 2015-10-21 2019-08-13 Genesys Telecommunications Laboratories, Inc. Data-driven dialogue enabled self-help systems
CA3116106C (en) * 2015-10-21 2023-12-12 Greeneden U.S. Holdings Ii, Llc Data-driven dialogue enabled self-help systems
US10482133B2 (en) * 2016-09-07 2019-11-19 International Business Machines Corporation Creating and editing documents using word history
US10740402B2 (en) 2016-10-20 2020-08-11 Diwo, Llc System and method for human interaction in cognitive decision making process
JP6555757B2 (ja) * 2016-11-07 2019-08-07 Necプラットフォームズ株式会社 応対支援装置、方法、及びプログラム
CN110622179A (zh) 2017-02-09 2019-12-27 科格诺亚公司 用于数字个性化医疗的平台和系统
US10176800B2 (en) 2017-02-10 2019-01-08 International Business Machines Corporation Procedure dialogs using reinforcement learning
CN108766421B (zh) * 2017-04-20 2020-09-15 杭州萤石网络有限公司 语音交互的方法及装置
US10666581B2 (en) * 2017-04-26 2020-05-26 Google Llc Instantiation of dialog process at a particular child node state
CN107247751B (zh) * 2017-05-26 2020-01-14 武汉大学 基于lda主题模型的内容推荐方法
US20190026346A1 (en) 2017-07-24 2019-01-24 International Business Machines Corporation Mining procedure dialogs from source content
US10311874B2 (en) 2017-09-01 2019-06-04 4Q Catalyst, LLC Methods and systems for voice-based programming of a voice-controlled device
WO2019103177A1 (en) * 2017-11-22 2019-05-31 Hyperconnect, Inc. Terminal, method of matchmaking the same, and device of matchmaking the same
US11308312B2 (en) 2018-02-15 2022-04-19 DMAI, Inc. System and method for reconstructing unoccupied 3D space
WO2019161207A1 (en) 2018-02-15 2019-08-22 DMAI, Inc. System and method for conversational agent via adaptive caching of dialogue tree
CN109065172B (zh) * 2018-07-04 2023-04-11 平安科技(深圳)有限公司 病症信息获取方法、装置、计算机设备和存储介质
US11386338B2 (en) * 2018-07-05 2022-07-12 International Business Machines Corporation Integrating multiple domain problem solving in a dialog system for a user
US20210295727A1 (en) * 2018-08-03 2021-09-23 Sony Corporation Information processing apparatus, information processing method, and program
JP7068962B2 (ja) * 2018-08-13 2022-05-17 株式会社日立製作所 対話方法、対話システム及びプログラム
US10891950B2 (en) 2018-09-27 2021-01-12 International Business Machines Corporation Graph based prediction for next action in conversation flow
US20210397662A1 (en) * 2018-11-06 2021-12-23 Datascientist Inc. Search needs evaluation apparatus, search needs evaluation system, and search needs evaluation method
KR20240031439A (ko) 2019-03-22 2024-03-07 코그노아, 인크. 개인 맞춤식 디지털 치료 방법 및 디바이스
US11133006B2 (en) * 2019-07-19 2021-09-28 International Business Machines Corporation Enhancing test coverage of dialogue models
CN111159379B (zh) * 2019-12-30 2022-12-20 苏宁云计算有限公司 一种自动出题方法、装置及系统
CN112667795B (zh) * 2021-01-04 2023-07-28 北京百度网讯科技有限公司 对话树构建方法和装置、对话树运行方法、装置以及系统
US11430446B1 (en) * 2021-08-12 2022-08-30 PolyAI Limited Dialogue system and a dialogue method

Family Cites Families (27)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7133834B1 (en) * 1992-08-06 2006-11-07 Ferrara Ethereal Llc Product value information interchange server
US6711585B1 (en) * 1999-06-15 2004-03-23 Kanisa Inc. System and method for implementing a knowledge management system
US20010047261A1 (en) * 2000-01-24 2001-11-29 Peter Kassan Partially automated interactive dialog
WO2001067225A2 (en) * 2000-03-06 2001-09-13 Kanisa Inc. A system and method for providing an intelligent multi-step dialog with a user
WO2002027592A1 (fr) * 2000-09-29 2002-04-04 Sony Corporation Systeme de gestion d'information faisant intervenir un agent
US7159178B2 (en) * 2001-02-20 2007-01-02 Communispace Corp. System for supporting a virtual community
US20070226628A1 (en) * 2002-02-20 2007-09-27 Communispace Corporation System for supporting a virtual community
US7733366B2 (en) * 2002-07-01 2010-06-08 Microsoft Corporation Computer network-based, interactive, multimedia learning system and process
US7606714B2 (en) 2003-02-11 2009-10-20 Microsoft Corporation Natural language classification within an automated response system
US7280965B1 (en) * 2003-04-04 2007-10-09 At&T Corp. Systems and methods for monitoring speech data labelers
US20050027536A1 (en) * 2003-07-31 2005-02-03 Paulo Matos System and method for enabling automated dialogs
US20050080628A1 (en) * 2003-10-10 2005-04-14 Metaphor Solutions, Inc. System, method, and programming language for developing and running dialogs between a user and a virtual agent
US7881451B2 (en) * 2004-05-18 2011-02-01 At&T Intellectual Property I, L.P. Automated directory assistance system for a hybrid TDM/VoIP network
WO2005122145A1 (en) * 2004-06-08 2005-12-22 Metaphor Solutions, Inc. Speech recognition dialog management
CN1794233A (zh) * 2005-12-28 2006-06-28 刘文印 一种网上用户交互问答方法及其系统
US8503665B1 (en) * 2007-04-18 2013-08-06 William S. Meisel System and method of writing and using scripts in automated, speech-based caller interactions
US8010527B2 (en) * 2007-06-29 2011-08-30 Fuji Xerox Co., Ltd. System and method for recommending information resources to user based on history of user's online activity
US20090041215A1 (en) 2007-08-09 2009-02-12 Ma Capital Lllp System and method for IVR development
US20110200979A1 (en) * 2007-09-04 2011-08-18 Brian Benson Online instructional dialogs
US8155959B2 (en) * 2007-11-07 2012-04-10 Robert Bosch Gmbh Dialog system for human agent to correct abnormal output
JP2009193448A (ja) * 2008-02-15 2009-08-27 Oki Electric Ind Co Ltd 対話システム、方法及びプログラム
US8296144B2 (en) * 2008-06-04 2012-10-23 Robert Bosch Gmbh System and method for automated testing of complicated dialog systems
US8943394B2 (en) * 2008-11-19 2015-01-27 Robert Bosch Gmbh System and method for interacting with live agents in an automated call center
CA2714523A1 (en) * 2009-09-02 2011-03-02 Sophia Learning, Llc Teaching and learning system
US20120076283A1 (en) 2010-09-23 2012-03-29 Ajmera Dinesh Predictive Customer Service Environment
DE112011103447T5 (de) 2010-10-15 2013-08-22 Intelligent Mechatronic Systems, Inc. Durch implizite Zuordnung und Polymorphismus gesteuerte Mensch-Maschine-Wechselwirkung
US8612233B2 (en) 2011-01-05 2013-12-17 International Business Machines Corporation Expert conversation builder

Also Published As

Publication number Publication date
CN104321765A (zh) 2015-01-28
WO2014003885A1 (en) 2014-01-03
US9471872B2 (en) 2016-10-18
JP2015526799A (ja) 2015-09-10
US20140006319A1 (en) 2014-01-02

Similar Documents

Publication Publication Date Title
DE112013003202T5 (de) Erweiterung zur Expertengespräch-Erstellungsfunktion
DE112020002228T5 (de) Kognitive video- und audio-suchaggregation
US11451594B2 (en) Generation and management of data insights to aid collaborative media object generation within a collaborative workspace
DE102014208515A1 (de) Interaktive georäumliche Karte
Wu et al. A field analysis of journalism in the automation age: Understanding journalistic transformations and struggles through structure and agency
DE102017207686A1 (de) Einblicke in die belegschaftsstrategie
DE112013000487T5 (de) Erweiterte gemeinsame Bildschirmnutzung in einer elektronischen Besprechung
DE10150388A1 (de) Kollaborationssitzungs-Aufnahmemodell
DE102016101373A1 (de) Anzeigesteuerverfahren, anzeigesteuervorrichtung und elektronisches gerät
DE112016004579T5 (de) Mobile Anwenderschnittstelle
Thompson et al. Speaking with things: Encoded researchers, social data, and other posthuman concoctions
US11804247B2 (en) Collaborative media object generation and presentation in improved collaborative workspace
DE202016008220U1 (de) Touchgestensteuerung einer Videowiedergabe
DE112015003612T5 (de) Zusammenfassungsansichten für E-Books
Pohjola et al. Pragmatic Knowledge Services.
DE112020004921T5 (de) Vorausschauende virtuelle rekonstruktion physischer umgebungen
DE112022001161T5 (de) Techniken zur bereitstellung einer suchschnittstelle innerhalb eines karussells
Hall et al. Insight provenance for spatiotemporal visual analytics: Theory, review, and guidelines
US20230130900A1 (en) Virtual classroom with remote class features
Zimmer Guided Interaction and Collaborative Exploration in Heterogeneous Network Visualizations
Wang et al. Dynamic Visualization of Time-Based Changes to Data Generated by Reddit. com: The Real Time Conversation Project.
Bayer et al. Development of a modular software framework for supporting architects during early design phases
DE112021004302T5 (de) Synchronisieren einer sprachantwort eines sprachassistenten mit aktivitäten eines benutzers
Sahel et al. Creating StoryLines: Participatory Design with Power Grid Operators
Wilhelm Collaborative, Version Controlled Map Editing

Legal Events

Date Code Title Description
R012 Request for examination validly filed
R016 Response to examination communication
R002 Refusal decision in examination/registration proceedings
R003 Refusal decision now final