


Zusammenfassung der Erfahrungen im Chatbot-Design basierend auf Zustandsmaschinen
Um die Bedürfnisse und Verbesserungsrichtungen intelligenter Roboterprojekte besser zu verstehen, müssen wir häufig einige Tools entwickeln. Von den verschiedenen Robotikprojekten, an denen ich beteiligt war, konnten die meisten die Produktanforderungen erfolgreich erfüllen. Durch diese Praktiken wurde uns zutiefst klar, dass wir die bestehende Roboterdefinitionssprache erheblich verbessern müssen, wenn wir weiter vorankommen und uns verbessern wollen.
- Vereinfachen Sie den Erstellungsprozess von Bots, die komplexe Konversationsabläufe erfordern.
- Maximieren Sie die Wiederverwendbarkeit, indem Sie Module und Dialogpfade wiederverwenden, die in der Vergangenheit definiert wurden, um Bots zu erstellen.
In herkömmlichen Praktiken ist dies nicht einfach, da die Absichtsdefinition mit teilweisen Reihenfolgebeschränkungen vermischt ist und die Freiheit des Dialogs einschränkt Wege. Dies ist ausreichend für den Umgang mit „offenen“ Bots (häufig bei Bots im FAQ-Stil), bei denen die meisten Fragen in sich geschlossen und immer verfügbar sind. Bei „geschlosseneren“ Bots sind die potenziellen Konversationsbeschränkungen jedoch viel größer (z. B. ein Bot, der zum Buchen von Tickets online verwendet wird).
Um die Funktionalität der Chatbot-Definitionssprache auf ein neues Niveau zu bringen, haben wir in einigen Projekten DSLs eingeführt, die näher an der Semantik von Zustandsmaschinen liegen und die Absichtsdefinition vollständig mit Konvertierungsregeln integrieren, die den Roboter so steuern, dass er fest ausgeführt wird -Punkt verfügbare Absichten Trennung, dies hat folgende Vorteile:
- Vorherige Absichten können im neuen Roboter wiederverwendet werden, auch wenn der Dialogpfad anders eingestellt ist.
- Komplexe Dialogabläufe können mithilfe von Zustandsmaschinen definiert werden, sodass der Bot eine klare und präzise Semantik beibehalten kann.
- Zur Kontrolle von Übergängen können komplexe Staatswächter geschaffen werden. Versetzen Sie den Bot basierend auf Benutzereingaben, bevorstehenden Ereignissen und früheren Daten, Konversationsparametern usw. in einen neuen Status.
- Staatskörper können verwendet werden, um komplexe Konversationslogik als Reaktion auf Benutzeranfragen zu speichern.
- Roboter können modularisiert werden, um Teile der Zustandsmaschine in anderen Robotern wiederzuverwenden.
- Lokale Fallbacks können als Teil des Stateful-Verhaltens definiert werden. Zusätzlich zum standardmäßigen globalen Fallback können Sie auch lokale Fallbacks mit Zuständen verknüpfen, um Fehler im Kontext des Zustands zu behandeln, z. B. die Anzeige einer Nachricht, die dem Benutzer bei der Beantwortung einer vom Bot in einem bestimmten Zustand der Konversation gestellten Frage hilft.
Intent-Definitionssprache
Die Absichtsdefinition ist jetzt vom Ausführungsteil entkoppelt, ist aber immer noch eine separate Untersprache. Für jede Absicht müssen wir lediglich einige Trainingssätze bereitstellen, damit der Roboter die Absicht der Äußerung des Benutzers erkennen und daraus die erforderlichen Parameter extrahieren kann.
Als Beispiel haben wir einen einfachen Bot, der nur zwei Arten von Benutzeräußerungen versteht: Begrüßungen und Namensnennung. Wir können für jeden Äußerungstyp ein paar Beispielsätze bereitstellen und den Roboter lernen lassen, diese zu erkennen. Wenn der Benutzer eine Äußerung eingibt, führt der Roboter basierend auf seiner Absicht die entsprechende Aktion aus und extrahiert daraus die erforderlichen Parameter.
intent Hello { inputs { "你好" "早上好" } } intent MyNameIs { inputs { "我的名字叫小明" "我是小明" "你可以叫我小明" } creates context Greetings { set parameter name from fragment "小明" (entity any) } }
Wir stellen für jede Absicht einige Beispielsätze zur Verfügung, um dem Roboter beizubringen, sie zu erkennen. Darüber hinaus erheben wir in manchen Fällen auch einige Parameter im Kontext (z. B. den Namen des Nutzers), um in Zukunft persönlicher auf den Nutzer eingehen zu können.
Wir haben nicht angegeben, welche Absicht der Bot zuerst zu erfüllen versuchen soll, das ist Teil der Ausführungssprache. Dieser Ansatz ermöglicht es uns, diese Absichten wiederzuverwenden (z. B. müssen wir in einem anderen Bot den Benutzer möglicherweise nach seinem Namen fragen, nicht erst nach der Begrüßungsabsicht).
Execution Definition Language
Verwenden Sie Ausführungsdateien, um eine Zustandsmaschine zu definieren, die beschreibt, wie der Roboter auf Absichten/Ereignisse reagiert und Übergänge durchführen kann. Dadurch kann der Bot-Designer die Ausführungsdatei anzeigen und den gesamten Konversationsablauf verstehen.
Jeder Zustand in der Ausführungssprache enthält 3 Teile
- Körper (optional): Die Reaktion, die der Roboter ausführt, wenn er in den Zustand eintritt.
- Next (erforderlich): Definiert die ausgehende Konvertierung, ausgedrückt als condition –> State. Wenn ein Ereignis/eine Absicht empfangen wird, wird die Bedingung ausgewertet und wenn der Übergang erfüllt ist, wechselt die Ausführungs-Engine in den angegebenen Zustand und führt die entsprechende Reaktion aus. Es ist zu beachten, dass Konvertierungsbedingungen sehr komplex sein können. Sie sind echte Wächter, was bedeutet, dass der Übergang nicht navigierbar ist und die Engine in ihrem aktuellen Zustand verbleibt, wenn die gesamte Bedingung nicht erfüllt ist.
- Fallback (optional): Dieser Abschnitt kann beliebigen Code enthalten (genau wie der Abschnitt Body), der ausgeführt wird, wenn die Engine keinen navigierbaren Übergang findet.
Das Ausführungsmodell enthält außerdem 2 Sonderzustände:
- Init:是创建用户会话时进入的常规状态。它可以包含 Body、_Next_和 Fallback 部分。
- Default_Fallback:它只能包含 Body 部分,并且不能作为转换的目标状态。该状态表示在当前状态中未定义本地回退时执行的默认回退代码。该状态可用于打印通用错误消息(例如,“抱歉,我没明白您的意思”),而本地回退则可以打印针对当前状态的定制消息(例如,“请回答是或否”)。
最后,一个状态可以定义一个单一的通配符转换(使用保留字符___作为转换条件),当计算状态主体时将自动导航。这使我们能够在多个地方重用相同的代码并模块化执行逻辑。下面是一个简单的机器人示例,它只回复问候意图,询问用户名并向用户问好。这个机器人的回复可以通过我们基于 React 的聊天小部件显示。
//We can always have an init state in case we need to initialize some bot parameters (e.g. welcoming message) Init { Next { //Here we state that the bot will first listen for an utterance matching the Hello intent, it will ignore anything else intent == Hello --> HandleHello } } HandleHello { Body { ReactPlatform.Reply("你好, 你叫什么名字?") } Next { //We wait for the user to input the name, no other transition is possible at this point //Obviously, in more complex bots we may have several possible outgoing transitions in a given state intent == MyNameIs --> HandleMyNameIs } } HandleMyNameIs { Body { ReactPlatform.Reply("你好 " + context.get("Greetings").get("name")) } Next { // An automatic transition to the Init state since at this point the conversation is finished and we can start again _ --> Init } } // Default Fallback state could go here
Das obige ist der detaillierte Inhalt vonZusammenfassung der Erfahrungen im Chatbot-Design basierend auf Zustandsmaschinen. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

In John Rawls 'wegweisendem Buch von 1971 schlug er ein Gedankenexperiment vor, das wir als Kern des heutigen KI-Designs und der Entscheidungsfindung verwenden sollten: den Schleier der Unwissenheit. Diese Philosophie bietet ein einfaches Instrument zum Verständnis von Eigenkapital und bietet auch eine Entwurf für Führungskräfte, um dieses Verständnis zu nutzen, um KI auf gerechte Weise zu entwerfen und umzusetzen. Stellen Sie sich vor, Sie treffen Regeln für eine neue Gesellschaft. Aber es gibt eine Prämisse: Sie wissen nicht im Voraus, welche Rolle Sie in dieser Gesellschaft spielen werden. Möglicherweise sind Sie reich oder arm, gesund oder behindert, gehören einer Mehrheit oder einer marginalen Minderheit. Der Betrieb unter diesem "Schleier der Unwissenheit" verhindert, dass Regelmacher Entscheidungen treffen, die selbst zugute kommen. Im Gegenteil, die Menschen werden motivierter sein, die Öffentlichkeit zu formulieren

Zahlreiche Unternehmen sind auf Roboterprozessautomatisierung (RPA) spezialisiert und bieten Bots, um sich wiederholende Aufgaben zu automatisieren - Uipath, Automatisierung überall, blaues Prisma und andere. In der Zwischenzeit verarbeiten Sie Mining, Orchestrierung und intelligente Dokumentenverarbeitung Speciali

Die Zukunft der KI bewegt sich über die einfache Wortvorhersage und die Konversationsimulation hinaus. KI -Agenten sind aufgetaucht, in der Lage, unabhängige Handlungen und Aufgabenabschluss zu erledigen. Diese Verschiebung zeigt sich bereits in Tools wie dem Claude von Anthropic. KI -Agenten: Forschung a

Schnelle technologische Fortschritte erfordern eine zukunftsweisende Perspektive auf die Zukunft der Arbeit. Was passiert, wenn die KI nur die Produktivitätsverstärkung überschreitet und unsere gesellschaftlichen Strukturen prägt? Topher McDougals bevorstehendes Buch Gaia Wakes:

Die Produktklassifizierung, die häufig komplexe Codes wie "HS 8471.30" aus Systemen wie dem harmonisierten System (HS) umfasst, ist für den internationalen Handel und den Inlandsumsatz von entscheidender Bedeutung. Diese Codes gewährleisten den korrekten Steuerantrag und wirken sich auf jeden Inv aus

Die Zukunft des Energieverbrauchs in Rechenzentren und Klimaschutzinvestitionen In diesem Artikel wird der Anstieg des Energieverbrauchs in Rechenzentren untersucht, die von KI und ihren Auswirkungen auf den Klimawandel angetrieben werden, und analysiert innovative Lösungen und politische Empfehlungen, um diese Herausforderung zu befriedigen. Herausforderungen des Energiebedarfs: Zentren im großen und ultra-großen Maßstab verbrauchen enorme Macht, vergleichbar mit der Summe von Hunderttausenden gewöhnlicher nordamerikanischer Familien und aufstrebende AI-Zentren im Bereich Ultra-Large-Scale-Zentren verbrauchen Dutzende von Zeiten mehr mehr Macht als diese. In den ersten acht Monaten des 2024 haben Microsoft, Meta, Google und Amazon rund 125 Milliarden US -Dollar in den Bau und den Betrieb von AI -Rechenzentren investiert (JP Morgan, 2024) (Tabelle 1). Der wachsende Energiebedarf ist sowohl eine Herausforderung als auch eine Chance. Laut Kanarischen Medien der drohende Elektrizität

Generative AI revolutioniert die Film- und Fernsehproduktion. Das Ray 2-Modell von Luma sowie das Gen-4 von Runway, Openai von Sora, Google's VEO und andere neue Modelle verbessern die Qualität der generierten Videos mit beispielloser Geschwindigkeit. Diese Modelle können problemlos komplexe Spezialeffekte und realistische Szenen erzeugen, selbst kurze Videoclips und Kameraser-Bewegungseffekte wurden erreicht. Während die Manipulation und Konsistenz dieser Tools noch verbessert werden müssen, ist die Geschwindigkeit des Fortschritts erstaunlich. Generatives Video wird zu einem unabhängigen Medium. Einige Modelle sind gut in der Animationsproduktion, andere sind gut in Live-Action-Bildern. Es ist erwähnenswert, dass Adobe's Firefly und Moonvalleys MA

ChatGPT -Benutzererfahrung lehnt ab: Ist es ein Modellverschlechterungs- oder Benutzererwartungen? In jüngster Zeit haben sich eine große Anzahl von ChatGPT bezahlten Nutzern über ihre Leistungsverschlechterung beschwert, die weit verbreitete Aufmerksamkeit erregt hat. Die Benutzer berichteten über langsamere Antworten auf Modelle, kürzere Antworten, mangelnde Hilfe und noch mehr Halluzinationen. Einige Benutzer äußerten Unzufriedenheit in den sozialen Medien und wiesen darauf hin, dass ChatGPT zu „zu schmeichelhaft“ geworden ist, und neigt dazu, Benutzeransichten zu überprüfen, anstatt ein kritisches Feedback zu geben. Dies wirkt sich nicht nur auf die Benutzererfahrung aus, sondern verleiht Unternehmenskunden auch tatsächliche Verluste, wie z. B. reduzierte Produktivität und Rechenressourcenverschwendung. Nachweis der Leistungsverschlechterung Viele Benutzer haben einen signifikanten Verschlechterung der Chatgpt-Leistung gemeldet, insbesondere in älteren Modellen wie GPT-4 (die Ende dieses Monats bald vom Service abgebrochen werden). Das


Heiße KI -Werkzeuge

Undresser.AI Undress
KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover
Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool
Ausziehbilder kostenlos

Clothoff.io
KI-Kleiderentferner

Video Face Swap
Tauschen Sie Gesichter in jedem Video mühelos mit unserem völlig kostenlosen KI-Gesichtstausch-Tool aus!

Heißer Artikel

Heiße Werkzeuge

Senden Sie Studio 13.0.1
Leistungsstarke integrierte PHP-Entwicklungsumgebung

EditPlus chinesische Crack-Version
Geringe Größe, Syntaxhervorhebung, unterstützt keine Code-Eingabeaufforderungsfunktion

VSCode Windows 64-Bit-Download
Ein kostenloser und leistungsstarker IDE-Editor von Microsoft

SecLists
SecLists ist der ultimative Begleiter für Sicherheitstester. Dabei handelt es sich um eine Sammlung verschiedener Arten von Listen, die häufig bei Sicherheitsbewertungen verwendet werden, an einem Ort. SecLists trägt dazu bei, Sicherheitstests effizienter und produktiver zu gestalten, indem es bequem alle Listen bereitstellt, die ein Sicherheitstester benötigen könnte. Zu den Listentypen gehören Benutzernamen, Passwörter, URLs, Fuzzing-Payloads, Muster für vertrauliche Daten, Web-Shells und mehr. Der Tester kann dieses Repository einfach auf einen neuen Testcomputer übertragen und hat dann Zugriff auf alle Arten von Listen, die er benötigt.

ZendStudio 13.5.1 Mac
Leistungsstarke integrierte PHP-Entwicklungsumgebung
