Please log in to watch this conference skillscast.
In this talk Allister Beharry offers an overview of Selma — a Web-based multimodal dialog agent for healthcare self-management written entirely in F# using WebSharper.
Rule-based chatbots and dialog agents are often derided as "state-machine spaghetti code" where implementations in imperative languages like Python and C# inevitably devolve into unmanageable tangles of nested conditional logic and state mutation. The trend nowadays is to use ML models instead of rule-driven systems. But rule-based dialog systems are inherently pattern-matching systems and languages that excel at pattern-matching may be able to avoid this exponential growth in complexity.
In this talk I'll give an overview of Selma — a Web-based multimodal dialog agent for healthcare self-management written entirely in F# using WebSharper.
The main topics of this talk are:
• Using WebSharper to build client-server CUIs in F#
• Using the Wit.ai service to extract and classify utterances into dialogue acts, intents, and entities.
• Using F# active patterns to compose type-safe rules over these structures that drive the dialogue.
• How an F# conversation agent compares to MS Bot Framework or ML-driven agents.
YOU MAY ALSO LIKE:
Declarative, Concise Implementation of a Rule-based Dialog System in F#
Allister Beharry has been programming computers for more than 20 years. He likes both Windows and Linux. His current focus is computer security, machine learning, CUIs, and .NET HPC and scientific computing. He works mostly on free and open-source software in C# and F#.