Featured image

Announcement, slides, demo video. All resources can also be found in my archive.


Recording coming soon.


Demo Link to heading

During the talk I showed a recording of a demo built with Intentional, a new library to prompt voice bots in a way that takes inspiration from classic intent-based chatbots. Here are the instructions needed to run this same demo on your own machine and play with it.

Intentional is still in its very first stages of development and highly unstable!

I am looking for contributors to help this project come to life, so if you would like to help there are many ways to do so: leave a star on the repo, test the library on your machine, open an issue, reach out to me to leave feedback (you can find my contact on the homepage), spread the word about Intentional, or even contribute to the project with a PR.

Follow @intentional-ai Watch Star

First, install Intentional and the plugin for Textual’s UI:

pip install intentional intentional-textual-ui
This demo was only tested on Linux (Ubuntu). You will need portaudio in order for Intentional to handle audio from your microphone, so if you face errors during the installation, try: sudo apt install portaudio19-dev

Next, you’ll need the configuration file where the conversation tree is defined. Intentional bots are, at their core, entirely defined by this configuration file (with the partial exception of tools, as you can see in the documentation). Download the demo configuration file from this link and save it as demo.yml.

Now, make your OpenAI API key available to the CLI:

export OPENAI_API_KEY=<your api key>

Now you’re ready to run the bot. Intentional comes with a simple CLI that can directly run bots from a config file and draw their conversation graph. To run the bot and talk to it as shown in the video, run:

intentional demo.yml

You should see a UI such as this coming up (with the chat history empty):

Just start speaking and the bot will quickly reply to you.

Occasionally the transcriptions don’t work well. The bot is generating such transcriptions exclusively for your convenience, so even if they’re mangled, in most cases you can be confident that the model actually heard you well.

To see the conversation graph, run this command:

intentional demo.yml --draw

The PNG file will be created next to demo.yml and will be called demo.png.