This Robotic Mixologist Pours ChatGPT-Crafted Cocktails
Terence Grover integrated ChatGPT into his robotic bartender to generate recipes based on spoken user requests.
Many of us enjoy a cheeky little cocktail every now and again, but making them sure is a lot of work. So, it isn’t surprising that robotic bartender projects are pretty common and always very popular. But those almost all work by mixing ingredients based on curated libraries of recipes. If the owner or a guest wants a drink that isn’t in that library, they’re out of luck. That’s why Terence Grover integrated ChatGPT into his robotic bartender to generate recipes based on spoken user requests.
Grover chose to harness gravity to dispense the liquor and mixers, which eliminated the need for pumps. The bottles hang upside-down from a rotating stand, with solenoid-actuated dispenser valves at the bottom. When the synthetic mixologist needs to pour, for example, some vodka, it will use a motor to rotate that bottle over the coaster where the user’s cup should be resting. It then opens the dispenser, allowing the cup to fill. Holes in the tops of the bottles let air in to replace the dispensed liquid, which stops a vacuum from preventing flow. A weight sensor checks how much liquor is in the glass and a proximity sensor determines if there is even a glass there in the first place.
Because the entire top end of the machine spins, Grover both an ESP32 development board and a Raspberry Pi. The ESP32 handles all of the hardware at the top, while the Pi handles the hardware at the bottom—namely, the weight sensor. That circumvents the need for a slip ring that would normally be necessary to avoid tangled wires. The Pi talks to the top ESP32 to receive data.
To make use of all of that, Grover had to give the robot a way to accept drink requests and find recipes. That works by listening to voice commands, which it turns into text using the Whisper API (Application Programming Interface). That text then goes to ChatGPT, which attempts to find a recipe that suits the request. It does so based on the liquor and mixer bottles available, which are explicitly stated in the code that generates the prompt. Assuming ChatGPT understands the order and can find an appropriate recipe, it will then return pouring instructions. As a bonus, the robot will also “speak” some chitchat recorded by Grover. The Pi handles the voice recordings and API calls, while the ESP32 controls the dispensing hardware.
The big disadvantage of this design is the limited capacity. As shown, it only holds four bottles: vodka, gin, tonic, and orange juice. There are only like two good drinks you can make using those ingredients and they’re pretty easy to mix, which defeats some of the purpose.