| Sv translation | ||||||||||
|---|---|---|---|---|---|---|---|---|---|---|
| ||||||||||
IntroductionYou might want to create a routing application which allows your callers to use speech recognition to perform various tasks - such as inform the system of what they want, or who they want to be connected to. There are three ways of doing this with the jtel system.
Simple Word- or Phrase SpottingIn this mode, the caller can utter a sentence, and the system will try to extract words / phrases which correspond to a particular action in the call flow. For example, suppose the caller utters "I have a problem with my system and would like to speak to someone from technical support", then you could define the words "problem, support" as the keywords which will take the caller to this action. Call flows like this can be built using the object Input Menu DTMF ASR.
Entity ExtractionTo complete an automated process, you might need several pieces of information from the caller. For example, using the example of a newspaper delivery complaint, you might need:
We are sure, you have seen plenty of Voice Bot demos where the sales person will demonstrate the scenario above by saying something like: "My customer number is 12345678 and I didn't get my newspaper on Monday morning and I want it to be delivered again". Nice ... and yes, you can build those kind of applications with jtel. But it's a far cry from the reality of how human beings actually interact with automated systems. Try it out - just read the sentence above. How likely is it that you would actually say that? More likely, callers will say something like "I didn't get my newspaper", and you will have to continue on from that point. Also, bear in mind, that your process will not work, unless you get all three pieces of information required by your backend REST API or interface - in the right format to actually give to the API or interface concerned. Using LLMs will not give you a 100% result here - so be aware that if you go for the LLM approach you will get unpredictable results sometimes. Sometimes it is better to use a step by step call flow once you know what the caller wants, leading the caller through the inputs you require until you have them all and can execute the process on the backend. Call flows like this are built using the Input ASR Object, and specific extractors for the type of information you want at a particular point in the call flow.
LLM Based Call-FlowsThe third way of producing a voice bot is using speech recognition in combination with an LLM and crafted prompts, which instruct the LLM how to query the caller for the information required to complete a process. Taking our example above, you might build an LLM prompt something like this:
Call flows like this are built using the Input ASR Object and the "Any Text" extractor. The results are passed to the LLM (including any previous interactions from the conversation) for processing. Once you detect a JSON Structure containing all of the information you need, you can complete the process. Or you can break-out of the LLM based approach, and return to Entity Extraction if you like, at any point in the process.
|
| Sv translation | ||||||||||
|---|---|---|---|---|---|---|---|---|---|---|
| ||||||||||
EinführungWenn Sie eine Routing-Anwendung erstellen möchten, mit der Ihre Anrufer mithilfe der Spracherkennung verschiedene Aufgaben ausführen können – beispielsweise dem System mitteilen, was sie möchten oder mit wem sie verbunden werden möchten. Mit dem jtel-System gibt es drei Möglichkeiten, dies zu tun.
Einfaches Erkennen von Wörtern oder Phrasen (Wordspotting)In diesem Modus kann der Anrufer einen Satz sagen, und das System versucht, Wörter/Ausdrücke zu extrahieren, die einer bestimmten Aktion im Anrufablauf entsprechen. Angenommen, der Anrufer sagt: „Ich habe ein Problem mit meinem System und möchte mit jemandem vom technischen Support sprechen“, dann könnten Sie die Wörter „Problem, Support“ als Schlüsselwörter definieren, die den Anrufer zu dieser Aktion führen. Anrufabläufe wie dieser können mit dem Objekt „Input Menu DTMF ASR” erstellt werden.
EntitätsextraktionUm einen automatisierten Prozess abzuschließen, benötigen Sie möglicherweise mehrere Informationen vom Anrufer. Nehmen wir zum Beispiel eine Beschwerde über die Zeitungszustellung: Sie benötigen möglicherweise folgende Angaben:
Wir sind sicher, Sie haben schon viele Voice-Bot-Demos gesehen, in denen der Verkäufer das oben beschriebene Szenario demonstriert, indem er etwas sagt wie: „Meine Kundennummer lautet 12345678, ich habe meine Zeitung am Montagmorgen nicht erhalten und möchte, dass sie erneut zugestellt wird.“ Schön ... und ja, mit jtel können Sie solche Anwendungen erstellen. Das entspricht jedoch bei weitem nicht der Realität, wie Menschen tatsächlich mit automatisierten Systemen interagieren. Probieren Sie es aus – lesen Sie einfach den obigen Satz. Wie wahrscheinlich ist es, dass Sie das tatsächlich sagen würden? Wahrscheinlicher ist, dass Anrufer etwas sagen wie „Ich habe meine Zeitung nicht erhalten“, und Sie müssen dann von diesem Punkt aus weitermachen. Beachten Sie außerdem, dass Ihr Prozess nur dann funktioniert, wenn Sie alle drei von Ihrer Backend-REST-API oder -Schnittstelle benötigten Informationen im richtigen Format erhalten, um sie tatsächlich an die betreffende API oder Schnittstelle weitergeben zu können. Die Verwendung von LLMs liefert Ihnen hier kein 100-prozentiges Ergebnis – seien Sie sich also bewusst, dass Sie bei einem LLM-Ansatz manchmal unvorhersehbare Ergebnisse erhalten. Manchmal ist es besser, einen schrittweisen Anrufablauf zu verwenden, sobald Sie wissen, was der Anrufer möchte, und ihn durch die erforderlichen Eingaben zu führen, bis Sie alle Informationen haben und den Vorgang im Backend ausführen können. Anrufabläufe wie dieser werden mithilfe des Input ASR-Objekts und spezifischer Extraktoren für die Art von Informationen erstellt, die Sie an einem bestimmten Punkt im Anrufablauf benötigen.
LLM-basierte AnrufabläufeDie dritte Möglichkeit zur Erstellung eines Sprachbots besteht in der Verwendung von Spracherkennung in Kombination mit einem LLM und speziell entwickelten Eingabeaufforderungen, die dem LLM mitteilen, wie es den Anrufer nach den für die Durchführung eines Vorgangs erforderlichen Informationen fragen soll. Anhand unseres obigen Beispiels könnten Sie eine LLM-Eingabeaufforderung etwa wie folgt erstellen:
Solche Anrufabläufe werden mithilfe des Input-ASR-Objekts und des Extraktors „Any Text“ erstellt. Die Ergebnisse werden zur Verarbeitung an das LLM weitergeleitet (einschließlich aller vorherigen Interaktionen aus der Konversation). Sobald Sie eine JSON-Struktur mit allen erforderlichen Informationen erkannt haben, können Sie den Prozess abschließen. Sie können aber auch jederzeit während des Prozesses aus dem LLM-basierten Ansatz ausbrechen und zur Entitätsextraktion zurückkehren, wenn Sie möchten.
|