A Companion Robot That Might Want to Hurt You
Dave Niewinski has built a realistic, and slightly creepy, clone of GLaDOS, utilizing NVIDIA Jetson hardware and AI to give her personality.
For the uninitiated, GLaDOS, the Genetic Lifeform and Disk Operating System, is an iconic character from the critically acclaimed video game series Portal, developed by Valve. Initially introduced as the central antagonist in the original Portal game released in 2007, GLaDOS quickly became one of gaming's most memorable and chilling villains. Created by Aperture Science, she serves as the controlling intelligence behind the Aperture Science Enrichment Center, where players navigate a series of test chambers armed only with a portal gun.
What makes GLaDOS particularly intriguing is her complex personality, which blends a cold, calculating demeanor with dark humor and occasional hints of vulnerability. Voiced with sinister charm, GLaDOS's dialogue is laced with sarcasm and veiled threats, making her interactions with the player both unnerving and captivating. Her distinct robotic voice and memorable lines, such as "The cake is a lie," have become synonymous with the Portal franchise.
A villainous robot like GLaDOS might seem like an odd choice for a companion, but I suppose isolation can make a person do some strange things. That was the case for hardware hacker and YouTuber Dave Niewinski, anyway, who came down with COVID recently and had to keep to himself for a while. During that time, he decided to build a realistic clone of GLaDOS to keep him company. And we are glad he did — the interactive animatronic robot is powered by AI to make it a good companion, even if it may be secretly bent on his destruction.
There are many pieces to a project like this, but getting the voice right is perhaps the most important factor in creating a convincing replica of GLaDOS. Niewinski did a quick survey of pre-built voice generators that seek to replicate GLaDOS’s voice, but found them all to be lacking, so a custom solution was needed. He found that Valve has a large number of audio clips of GLaDOS speaking on their website, which made it easy to collect a dataset of over an hour in length.
This dataset was leveraged to train a pair of machine learning models. The first is a spectrogram generator called Fastpitch, which was fine-tuned to sound more like GLaDOS’s voice. The results were close, but not quite right, so another model, called a vocoder, was also trained to sound like the target voice and further process the results. This combination of models produced a pretty convincing GLaDOS voice.
These networks were then loaded into NVIDIA’s Riva AI software development kit to make them easy to access over a network. As an added benefit, Riva also supplied speech-to-text capabilities that allowed people to also talk to the robot. The text generated by this pipeline is fed into a locally-running large language model, and the results it produces are then fed into the GLaDOS voice generator for a spoken response.
The models all ran locally on a Forge Carrier Board for the powerful yet small NVIDIA Jetson AGX Orin computer module. This little beast of a computer even had enough processing power left over to control a Unitree Z1 robotic arm that served as the base of the robot. The remainder of GLaDOS’s body consisted of 3D-printed parts and some RGB LEDs. As a finishing touch, to give the robot more personality, a Stereolabs ZED 2i depth camera was included in the build. This fed data into a person tracking algorithm (yes, also running on the Jetson AGX Orin), and moved the Z1 robot arm to keep GLaDOS “looking” at the person it was talking to.
This is really a fantastic build. It is a very convincing clone of GLaDOS and has a lot of personality. It does have one problem, however. The 3D-printed parts are a bit too heavy for the robot arm, causing the motors to overheat over time. Perhaps Niewinski can correct this problem after getting over his illness.
R&D, creativity, and building the next big thing you never knew you wanted are my specialties.