News for hackers. Stuff that matters.
Re:Siri, What Time Is It in London? by Joeri on Saturday May 23, 2020 @05:37AM (#23281535)
When i made a meeting room reservation chatbot the hardest part was managing a conversational context without the user getting stuck.

In the end I had a “draft booking” and a conversation loop, where the bot would repeatedly ask to fill in missing parts (eg nr of participants) and then give you a summary and opportunity to correct things. It was hard to do, and definitely required a lot of contextual understanding of how people book meeting rooms. That approach doesn’t scale up well.

I think the basic problem is being stuck in a local optimum. The scripted bot approach doesn’t scale to complex conversations, and you need to start from scratch to do better.

Re:Siri, What Time Is It in London? by j-pb on Saturday May 23, 2020 @06:25AM (#23281763)
Ahh the good old "conversation is a state machine" pitfall. Even linguists I work with do that sometimes, I guess it's how the simple models that we're taught with work.

Wanna have the simplest parser? Finite State Automaton to the rescue! So people automatically assume that a the simplest approach yo conversation is also something like a finite state machine.

Here's the thing. The only reasonable FSA would be a clique.

You can always move between nodes.

A much more feasible approach is the "actions competing for repelevance" one. Where you have global state manipulated by actions, and all the actions generate a "appiccability score" for the given user input. The system then chooses the most appropriate action, and it does it's thing. And on the next user input the cycle repeats.