Nå kan Amunds AI-fuglekasse jage hakkespetter med Lego

– Communityet på Twitch var i harnisk. Vi måtte gjøre noe, vi måtte passe på fugleungene! forteller utvikler Amund Skullerud.

Pinnen under hakkespetten nederst til høyre i bildet er en Lego-arm koblet til en servo som kan aktiveres av Twitch-brukere ved å sende kommandoen !defend. 📸: Privat / fra Twitch-stream
Pinnen under hakkespetten nederst til høyre i bildet er en Lego-arm koblet til en servo som kan aktiveres av Twitch-brukere ved å sende kommandoen !defend. 📸: Privat / fra Twitch-stream Vis mer

I fjor sommer skrev vi om Amund Skullerud som hadde bygget en AI-fuglekasse med kameraer, AI-genererte stemmer og "fuglegjenkjenning".

Fuglekassen har en livestream på Twitch, med AI-basert gjenkjenning av fuglearter – og AI-genererte stemmer som kan fortelle seerne om hvilke fugler de ser.

Denne våren var Skullerud klar med en ny versjon av fuglekassen – BØRDBOX – nå med en masse forbedringer.

For selv om "maskinvaren" – altså fuglekassen, kameraene og serveren i kjelleren – stort sett er det samme som før, har det skjedd en masse på programvaresiden.

Og med muligheter for å jage bort kidnappende hakkespetter.

Borat og Oslo-losen

– Jeg har implementert en haug med AI-agenter og stemmegenerering, og bruker AG2.ai til å sette sammen et kommentatorpanel. Der har du Borat, Lars Monsen, Linni Meister og Oslo-losen – og de prater sammen! sier Skullerud.

Twitch-brukerne kan med en kommando be for eksempel Borat eller David Attenborough om å beskrive fuglene på skjermen.

Streamer.bot brukes blant annet for å bygge inn interaktivitet i fuglekasse-streamen på Twitch, der brukerne kan gi ulike kommandoer. 📸: Privat
Streamer.bot brukes blant annet for å bygge inn interaktivitet i fuglekasse-streamen på Twitch, der brukerne kan gi ulike kommandoer. 📸: Privat Vis mer

AG2-rammeverket sender stafettpinnen mellom de ulike botene som prater, men holder styr på konteksten hele tiden slik at det blir en slags samtale.

– Noen ganger begynner de å krangle og diskutere seg mellom hverandre i noen absurde samtaler. Som at Borat spør Linni Meister om å bli med hjem til Kasakhstan for å bli kona hans.

Skullerud jobber til daglig som CTO og Tech Lead i Dokflyt, og selv om fuglekasseprosjektet er mest for moro – så brukes prosjektet også for å teste ut teknologi som han kanskje kan få bruk for i jobbsammeheng.

– Det er en kjempefin lekegrind for å teste ut slike agentnettverk, som AG2 er.

«Communityet på Twitch var i harnisk. Vi måtte gjøre noe, vi måtte passe på ungene!»

Kidnappet fugleunger på direkten

Den nyvinningen Skullerud kanskje er mest fornøyd med i årets versjon av fuglekassen, er hakkespett-jageren som kan aktiveres av seerne med en kommando i Twitch-chatten.

Tidligere i vår stakk nemlig en hakkespett hodet inn i fuglekassen og snappet til seg to blåmeis-unger. På direkten.

– Communityet på Twitch var i harnisk. Vi måtte gjøre noe, vi måtte jo passe på ungene!

Her kidnappes blåmeisungene (NB: Sterke bilder! 😱):

Lego-hakkespett-jager

Det første som ble prøvd var å aktivere en sirene via en høyttaler i det ene kameraet, men dette hadde ingen effekt. Hakkespetten brydde seg ikke om lyden.

Det måtte tenkes nytt.

Skullerud kom på at han hadde en gammel innretning på kontoret bestående av en Raspberry Pi, en servomotor og litt Lego. Denne ble brukt til å trykke inn en lysbryter for å skru av og på lyset.

– Det var tross alt to meter å gå bort til lysbryteren. Sånn kunne vi jo ikke ha det på jobben! Med denne kunne folk skru av og på lyset med kommandoer i en Slack-kanal.

Nå hadde imidlertid servoen ligget ubrukt i en skuff lenge. Med hakkespettdramaet friskt i minne kom idéen om å bygge om innretningen til en hakkespettjager som skulle monteres på fuglekassen:

Fascinerende!

– Jeg spurte ChatGPT om hvordan jeg kunne bruke Python til å få servoen til å rotere, og fikk tilbake noe Python-kode som ikke tåler dagens lys!

Når noen på Twitch sender kommandoen !defend vil hakkespettjageren jage bort hakkespetten.

– Det går først til serveren min i kjelleren. Så sendes det en POST-request til dette endepunktet på Raspberry PI-en som trigger servoen.

Amund Skullerud kjører BØRDBOX på en server i kjelleren. 📸: Privat
Amund Skullerud kjører BØRDBOX på en server i kjelleren. 📸: Privat Vis mer
«Et klipp på TikTok som viste hakkespett-jageren i aksjon ble sett av hele 800.000 brukere.»

– Dette har blitt brukt av communityet på Twitch. Da går Lego-motoren, og så kommer Tony Soprano og truer med noe sånt som "You better scram, or you will be sleeping with the fishes!"

Hakkespettjageren har blitt lagt merke til. Et klipp på TikTok som viste hakkespett-jageren i aksjon ble sett av hele 800.000 brukere.

– Da var det mange som kom inn på streamen og ville kjøre !defend-kommandoen!

Her forsvarer en seer fugleungene mot hakkespetten:

Hakkespettjageren har fått navnet "MortiDefender", oppkalt etter en bruker på Twitch som har vært ekstra ivrig på å forsvare fugleungene mot hakkespennen.

– Det er fascinerende og fornøyelig at noen et helt annet sted i verden kjører den Lego-motoren i vår hage!

Sjekk ut fuglekasse-streamen her »