The Raspberry Pi is a type of single-board computer (SBC), meaning that its entire hardware set is placed on a single electronics board. It is essentially a minicomputer the size of a credit card (or smaller)!
This demonstration was based on 2 projects. Read more about them below. For this basic demonstration we elected to use all pluggable components with nothing required to be wired into the Pi's GPIO pins; this project focused solely on the technology behind the AI-powered voice virtual assistant.
The basic setup looks like below.
The second project used a Pi Zero W which is even smaller than the Pi 4 B but still has wifi and Bluetooth built in. We installed an Ad Blocker called Pi-Hole which allows you to surf the internet and consume media without the annoying and often overwhelming amount of ads.
Learn more and check it out on the official Raspberry Pi site
Demo 1: AI-powered voice virtual assistant on a Pi 4B
We used a portable speaker which could be connected to the Pi via Bluetooth or audio jack and a USB plug-and-play microphone. The Python code was adapted to remove the input from the button for triggering the AI assistant and instead once activated by starting the script continued to listen and process prompts.
The project utilizes ChatGPT and Azure Cognitive Speach Services (CSS) as is discussed at length in the above links. Several Azure voice models were loaded as options for the script which allowed users to interact with different assistants each providing a unique experience.
Below is an audio recording of what the interaction with the AI assistant sounds like.
Demo 2: Pi-Hole Ad Blocker on a Pi Zero W
It does this by acting as a DNS sinkhole. Learn more about what this is here!
You can follow well-defined tutorials such as the following on how to set up and configure Pi-Hole and how to test it by either manually pointing your device's DNS to it or forcing all devices to use it on a network.