O czym jest ten film
- Ross, autor kanału Ras Mic, postanowił na żywo zbudować domowy głośnik z asystentem AI — choć nigdy wcześniej nie majstrował przy sprzęcie.
- Punktem wyjścia była premiera GPT-6 Astra: zamiast odblokowywać Apple HomePoda, agent zaproponował własną konstrukcję na Raspberry Pi z rozmowami przez OpenAI Realtime.
- Model przygotował całą listę zakupów (Raspberry Pi, mikrofon ReSpeaker, głośniki Pebble, karta microSD 128 GB) wraz z linkami do kanadyjskiego Amazona.
- Zanim sprzęt dotarł, Codex napisał kod osadzający agenta Ruth na głośniku, założył pull request i samodzielnie go scalił.
- Montaż prowadził autor, wysyłając agentowi zdjęcie każdego ukończonego kroku i pytając, co dalej.
- Problemy rozwiązywano iteracyjnie z modelem — głośnik nie działał m.in. dlatego, że został podpięty własnym kablem zasilającym zamiast oryginalnym.
- Po dołączeniu Raspberry Pi do sieci domowej głośnikiem można sterować zdalnie z każdego komputera, a nawet przez agenta.
- Asystent reaguje na frazę „Hey Pluto”; po poprawkach słucha ciągle, ma nowy głos, krótsze opóźnienia i komendę usypiania.
- Agent prowadzi jedną rozmowę z wątkami równoległymi (plan treningowy w tle plus pytania na bieżąco) i jest zsynchronizowany z instancją w chmurze dostępną z telefonu i przeglądarki.
- Zapowiedziany kolejny etap to obudowa drukowana w 3D pod roboczą nazwą „Halo”, mniejsze przetworniki wewnętrzne i izolacja mikrofonu od wibracji.
10 najważniejszych takeaways — z kontekstem zastosowania
1.Niech model rozpisze projekt, zanim cokolwiek kupisz
Na czym polega: Autor nie dobierał podzespołów sam — poprosił model o całą ścieżkę: Raspberry Pi jako mózg, OpenAI Realtime do rozmów głosowych, mikrofon, głośnik, zasilanie i nośnik pamięci, a do tego kolejność montażu i linki do sklepu we właściwym kraju.
Jak stosować: Na starcie projektu poproś agenta o trzy rzeczy: listę części z uzasadnieniem każdego wyboru, schemat połączeń i plan działania krok po kroku. Doprecyzuj region zakupów — inaczej dostaniesz linki do amerykańskiego sklepu i cudze cła.
Na co uważać: Model bywa zbyt optymistyczny co do kompatybilności; przed płatnością sam sprawdź złącza, parametry zasilania i to, czy wszystko zmieści się w planowanej obudowie.
2.Zdjęcia postępu jako interfejs montażu
Na czym polega: Autor nie znał się na elektronice, więc pracował w pętli: złożyć elementy według poradnika, zrobić zdjęcie ukończonego kroku, wysłać do Codexa, zapytać „co dalej?”.
Jak stosować: Przy pracy fizycznej traktuj zdjęcia jako sposób rozmowy z agentem — model na bieżąco weryfikuje stan montażu i koryguje następne ruchy.
Na co uważać: Kadr musi pokazywać detale: złącza, orientację wtyczek, numerację portów. Rozmazane zdjęcie to błędna diagnoza i złe zalecenia.
3.Kod można dopiąć, zanim przyjdzie sprzęt
Na czym polega: Jeszcze przed dostawą paczek Codex napisał kod integrujący agenta z głośnikiem, założył pull request i samodzielnie go scalił — strona programistyczna była gotowa w chwili rozpoczęcia skręcania.
Jak stosować: W projektach łączonych rozwijaj software równolegle z wysyłką komponentów, opierając się na planie z punktu 1. Urządzenie podłączysz potem do gotowej integracji.
Na co uważać: Kod pisany „w ciemno” wymaga dostrojenia do rzeczywistego sprzętu (w filmie trzeba było np. wskazać domyślny mikrofon i wyjście audio) — zarezerwuj czas na iteracje po montażu.
4.Raspberry Pi od razu do sieci — stery przechodzą na agenta
Na czym polega: Jedna z pierwszych decyzji po uruchomieniu systemu: malinka dołącza do sieci domowej i zyskuje zdalny dostęp. Od tej chwili urządzeniem można zarządzać z dowolnej maszyny — także poleceniami agenta.
Jak stosować: Jeśli budujesz sprzęt, który będzie stał gdzieś w domu, na starcie skonfiguruj dostęp zdalny w ramach sieci. Oszczędzasz monitor, klawiaturę i bieganie do urządzenia.
Na co uważać: Mikrofon stale podłączony do sieci to kwestia zaufania — zabezpiecz dostęp i świadomie ograniczaj to, co agent może zrobić bez pytania.
5.Gdy sprzęt nie działa, najpierw zasilanie
Na czym polega: Głośnik nie był wykrywany, choć wszystko wyglądało na poprawne. Po serii prób okazało się, że autor użył własnego kabla zasilającego zamiast oryginalnego; procedura „odłącz na 30 sekund, odwróć, podłącz” przywróciła działanie.
Jak stosować: Przy dziwnych awariach zacznij od prostych rzeczy: oryginalne zasilanie i kable, pełny restart — dopiero potem szukaj przyczyn w software.
Na co uważać: Model diagnozuje tylko to, co mu pokażesz lub opiszesz. Samowolne „ulepszanie” zestawu własnymi akcesoriami potrafi zamaskować prawdziwą przyczynę i wydłużyć szukanie o dobre kilkadziesiąt minut.
6.Fraza wybudzająca to decyzja produktowa, nie detal
Na czym polega: Pierwsza wersja wymagała „Hey Pluto” przed każdym pytaniem. Poprawka: ciągły nasłuch przez 60 sekund po każdej odpowiedzi oraz komenda usypiania zamiast czekania na koniec okna.
Jak stosować: Projektując asystenta głosowego, ustal trzy parametry: sposób wybudzenia, czas nasłuchu po odpowiedzi i komendę zakończenia rozmowy. To one decydują, czy rozmowa jest naturalna.
Na co uważać: Im dłuższy nasłuch, tym większe ryzyko, że urządzenie łapie dźwięki tła — w filmie agent wtrącał się w rozmowy, które go nie dotyczyły — a przy modelach w chmurze rosną też koszty.
7.Głos jest częścią produktu, nie dodatkiem
Na czym polega: Pierwotne brzmienie asystenta było fatalne. Wybór „naturalnego, ciepłego, kobiecego” głosu zmienił odbiór całej rozmowy — autor porównał efekt do Jarvis.
Jak stosować: Przy integracji głosu testuj kilka wariantów na zdaniach z twojego rzeczywistego zastosowania, a nie na „dzień dobry”. Brzmienie buduje poczucie jakości całości.
Na co uważać: Głos tworzy oczekiwania co do inteligencji — zbyt „filmowe” brzmienie sprawia, że każde potknięcie agenta jest tym bardziej rażące.
8.Jedna rozmowa, wiele wątków — agent nie może milknąć
Na czym polega: Początkowo przerwane pytanie kończyło rozmowę („zacznij nową”). Po zmianie agent przyjął zadanie w tle — plan treningowy — i jednocześnie odpowiadał na bieżące pytania, a na życzenie meldował postęp.
Jak stosować: W narzędziach agentowych oddziel wątki zadań od wątku rozmowy: użytkownik powinien móc przerwać, dopytać i wrócić bez utraty kontekstu.
Na co uważać: Równoległość wymaga świadomego zarządzania stanem — bez tego agent zgubi wątek albo odpowie nie na to pytanie.
9.„Jeden serwer, wielu klientów” zamienia gadżet w produkt
Na czym polega: Głośnik jest zsynchronizowany z wdrożoną instancją agenta dostępną także z telefonu i przeglądarki. Docelowo autor chce architektury z jednym serwerem stanu, do której podłączają się wszyscy klienci; przepisanie planuje w Ruście.
Jak stosować: Jeśli budujesz asystenta, od razu projektuj wiele kanałów dostępu wokół wspólnego serwera — wtedy głośnik staje się jednym z „okien” na to samo, a nie wyspą.
Na co uważać: Synchronizacja wielu klientów z jednym stanem to poważne wyzwanie inżynieryjne; w materiale jest to jeszcze plan, a nie działający system.
10.Od plątaniny kabli do obudowy — etapami
Na czym polega: Po udowodnieniu, że koncept działa „na stole”, model zaproponował etap produktowy: prototyp obudowy z druku 3D, wymianę dużych głośników Pebble na małe przetworniki wewnętrzne, izolację mikrofonu od wibracji i wentylatora, dopiero potem wykończenie.
Jak stosować: Rozdzielaj dowód słuszności (działający prototyp z gotowych modułów) od industrializacji (obudowa, akustyka, zasilanie) i każdy etap osobno iteruj z modelem.
Na co uważać: W akustyce AI podpowiada, ale nie zastąpi pomiarów — izolacja mikrofonu i dobór przetworników wymagają prób na fizycznym prototypie.
Redakcyjne tłumaczenie
Wstęp: jeden człowiek, 200 dolarów abonamentu i głośnik do zbudowania
Siri jest okropne, Alexa — beznadziejna. Czy jeden człowiek, płacący 200 dolarów za abonamenty AI, zbuduje coś lepszego? Odpowiedź z góry: działa, ale słabo.
Szanowni państwo — dziś będziecie na żywo oglądać, jak zakładam startup sprzętowy. Zbuduję głośnik z AI do własnego domu. A jeśli się przyjmie, może uda się zebrać finansowanie, kupić jacht na Bahamach i sączyć bezalkoholowe mojito, wielbiąc mojego Pana.
Od razu jednak zaznaczam: nie jestem sprzętowcem. Robię to pierwszy raz w życiu. Mam trochę kreatywności, sporo pomysłów i wielką wiarę, że mój Pan chce posłużyć się mną do czegoś dużego. Dziś zabiorę was w podróż od momentu narodzin pomysłu po zakup podzespołów — a potem zbudujemy to razem i mam nadzieję, że na końcu filmu będzie działający produkt. Zapowiada się świetnie, bo nigdy czegoś takiego nie robiłem. Weźcie koc i popcorn. Zaczynamy.
Jak narodził się pomysł: 4 września, godzina 16:18
Pomysł przyszedł w piątek 4 września o 16:18 — wtedy pojawił się GPT-6 Astra. Zapytałem Codex, czy mam zainstalowanego Blendera, i kazałem mu stworzyć głośnik w stylu HomePoda. Jeśli pamiętacie głośniki Apple HomePod — moim zdaniem to jedne z najładniejszych, jakie kiedykolwiek powstały. Pierwotnie chciałem po prostu kupić jednego i odblokować, ale po porządnym rozeznaniu wyszło, że na razie się nie da.
Wtedy powiedziałem modelowi: chcę zbudować domowy głośnik z AI. Chcę wgrać na niego mojego agenta Ruth z jednego konkretnego repozytorium. Jak zrobić to samemu? I GPT-6 Astra rozpisał mi całą drogę: potrzebne będzie Raspberry Pi, rozmowy pójdą przez OpenAI Realtime, dokupić trzeba peryferia — mikrofon, głośnik, zasilanie i nośnik pamięci. Dostałem nawet kolejność montażu. I wtedy zaczęło mnie wciągać.
(Informacja dodatkowa: Ruth to autorski agent konwersacyjny autora; na głośniku występuje pod imieniem Pluto i reaguje na frazę „Hey Pluto”.)
(Informacja dodatkowa: OpenAI Realtime to interfejs do rozmów głosowych z modelem w czasie rzeczywistym, bez osobnego etapu zamiany mowy na tekst.)
Poprosiłem o linki do Amazon.ca. Wy, Amerykanie, rządzicie internetem — gdybym napisał po prostu „Amazon”, dostałbym .com, a ja nie mam zamiaru płacić ceł. Model dał właściwe linki i kupiłem wszystko, co widać na ekranie. Nie wiem, jak to poskładać? Znów AI: dostałem rozpiskę, co z czym połączyć, a nawet wizualizację, jak całość ułoży się w obudowie à la HomePod.
Został jeden problem: jak osadzić Ruth na głośniku? Wiecie co — model napisał kod, założył pull request, czyli propozycję zmiany w kodzie, i samodzielnie go scalił. Strona programistyczna gotowa. Kod wmergowany, sprzęt na biurku. Czas budować.
Fragment sponsorski: Grockbot i własny model w dwie godziny
Zanim zaczniemy składać — słowo o dzisiejszym sponsorze. Jeśli oglądacie mój kanał, wiecie, że Grockbot to mój faworyt. Używam go do wszystkiego: do budowania aplikacji, do inżynierii wstecznej, do zarządzania pull requestami z telefonu. Dziś użyłem go do czegoś szczególnego — do dotrenowania własnego modelu.
Powiedziałem mu: przejrzyj wszystkie pliki, treści i wiadomości na maszynach w mojej sieci i sprawdź, jakie kategorie danych mam. Przeszukał wszystko i wskazał najobszerniejszą z nich: sesje agentów programistycznych — najlepszy materiał treningowy. Kazałem mu te dane zebrać i przygotować pod dotrenowanie.
Samo w sobie już by mnie przekonało, ale było więcej: Grockbot ustawił mi z Daytoną całe środowisko do trenowania modeli. Mam własne, dotrenowane modele, gotowe w moim harnessie, serwowane na GPU — wszystko postawione rękami mojego agenta. Całość zajęła mniej niż dwie godziny: rozpoznanie sieci, przygotowanie danych, uruchomienie i nadzór treningów, postawienie serwisu na GPU, żeby model działał lokalnie.
(Informacja dodatkowa: Daytona to platforma do szybkiego stawiania izolowanych środowisk deweloperskich; „harness” to środowisko uruchomieniowe, w którym model wykonuje zadania.)
Naprawdę muszę wam to polecić — jak raz to skonfigurujecie, nie wrócicie. Link w opisie. Wracamy do budowania.
Pierwszy montaż: malinka w obudowie
Wyciągamy Raspberry Pi. Mamy kabel HDMI do USB-C… nie, kłamałem, to zwykłe HDMI. To jest obudowa. O, a to radiator. A to? Karta pamięci — na nią wgram system operacyjny, jaki wybiorę. I proszę: oto sam Raspberry Pi. Popatrzcie na ten piękny komputer. To będzie mózg naszego głośnika.
Rozłożyłem wszystko na biurku, zrobiłem zdjęcie, wysłałem do Codexa i pytam: co dalej? Włączyłem poradnik, bo powtarzam — jestem w tym nowy. Wentylator kładziemy na obudowę i klik, siedzi. Dalej: „dolną część obudowy połóż płasko i przechyl malinkę o jakieś pięćdziesiąt stopni”. Jak on to zrobił?… Aha, od środka. Poszedłem za filmikiem z YouTube — łatwo go znaleźć — i Raspberry Pi stanął na nogi. Po każdym kroku robię zdjęcie postępu i wysyłam do Codexa ze słowami: „Krok zrobiony. Co dalej?”.
Następnie biorę kartę microSD o pojemności 128 GB i wkładam ją do urządzenia. Bracie, czemu to takie trudne? Tato, pracuj ciężej, nie mądrzej!… Nie. Mądrzej, nie ciężej.
Póki się z tym męczę, przypomnę wam słowa z Ewangelii: „Tak bowiem Bóg umiłował świat, że dał Syna swego Jednorodzonego, aby każdy, kto w Niego wierzy” — w Jezusa — „nie zginął, ale miał życie wieczne”. Bracia, powiedzcie: amen.
Karta wchodzi… dobrym kierunkiem? No dobrze. Kabel wpinam w port HDMI 0, za chwilę pójdzie do monitora. Jest zasilanie, monitor podpięty, klawiatura i mysz też. Widzicie tę piękną klawiaturę — a obok moja witamina D. Pamiętajcie o witaminie D! Na ekranie rusza instalacja Raspberry Pi. Czemu klawiatura nie działa?… No i w końcu działa.
System stoi — stery przejmuje agent
Nie wiem, co dalej, więc pytam Codexa. Odpowiada: włącz zdalny dostęp, żeby konfigurować malinkę z twojego Macka. Podłącz Raspberry Pi do sieci domowej przez Wi-Fi albo Ethernet.
Dla kontekstu: mam w domu mały homelab — dwie maszyny z Linuksem, stacjonarny Mac i MacBooka, na którym teraz pracuję. Z tego jednego laptopa, a nawet z telefonu, sięgam do wszystkich tamtych komputerów. Sugestia, żeby dołączyć malinkę do tej sieci, jest świetna: będę mógł coś zmienić, naprawić czy obejrzeć z każdego urządzenia w domu — a nawet kazać agentowi zrobić to za mnie. Tak robimy.
Duży postęp: Raspberry Pi jest w sieci. Mikrofonu jeszcze nie widać — zrozumiałe, dopiero co postawiliśmy system. Kolejne kroki według Codexa: podłączyć malinkę do ReSpeakera, a ReSpeaker do Pebble’ów. Pebble? Nie mam pojęcia, co to. Chodźcie sprawdzać.
To jest ReSpeaker — macierz mikrofonowa. Gdy powiem „Hej Alexa” albo „Hej Siri”, to właśnie ona wyłapuje frazę i budzi agenta. A Pebble… Pebble to nasz piękny głośnik. Podłączamy go do Raspberry Pi.
Podpiąłem. I mamy pokaz świateł. Chwila. Jeszcze chwila. Jeszcze chwila.
Kabel, który wszystko zawalił
Głośnik nie został rozpoznany. Szarpałem się z Codexem w tę i we w tę, aż wyszło, o co chodzi: używałem własnego kabla zasilającego zamiast oryginalnego. Poszedłem za instrukcją — odłączyć na trzydzieści sekund, odwrócić, podłączyć z powrotem. Zrobiłem wszystko. I działa. Pamiętajcie o subskrypcji — jeśli jej nie macie, to jest dobry moment.
Kolej na głośniki Pebble. Codex melduje: „Pi widzi ReSpeaker, brak ostrzeżeń o zasilaniu, ustawiłem go jako domyślny mikrofon i wyjście audio”. Czas na ciężką artylerię. Wyjmujemy z pudełek: głośnik numer jeden, głośnik numer dwa. Wpinam USB — o, mogę wprost przez USB-C. Głośniki mają zasilanie, ReSpeaker siedzi na malince, zostaje kabel aux między nimi. Wygląda na to, że wszystko jest podpięte jak trzeba — ReSpeaker nawet się podświetla. każę Codexowi zrobić szybki test dźwięku.
Testy: głośnik gra, mikrofon milczy
Cicho, ale coś słyszałem — nawet z gałką skręconą na maksimum. „Front center. Front center”. Działa! Działa! Dźwięk zaskakująco czysty. Co dalej? Głośnik zaliczony, przechodzimy do mikrofonu.
— Hej Ruth, słyszysz mnie? Hej Ruth, słyszysz? Hej Ruth. Hej Ruth. Hej Ruth, mnie słyszysz? Jeden, dwa, jeden, dwa, jeden, dwa, trzy.
Nic. Ale teraz najlepsze: testy przeprowadza za mnie AI. Każe powtórzyć tę samą frazę.
— Ludzie powinni się zapisać na kanał. Jezus jest Panem.
I zadziałało. Zadziałało! Melduję Codexowi: tak, było. Co mamy dalej?
Dzień drugi: agent na głośniku
Musiałem odejść do tatowych obowiązków, więc u mnie technicznie zaczyna się dzień drugi — u was film płynie dalej. Głośnik działa, mikrofon działa, Raspberry Pi działa. Zostało jedno: wgrać agenta działającego bez przerwy. Takiego, do którego powiem „Hej Pluto” albo „Hej Ruth” — i się obudzi, i zrobi, o co poproszę.
Przerywnik: o niepokoju i pokoju (Flp 4,6–7)
Póki Codex pracuje, podzielę się z wami mądrością z Listu do Filipian, rozdział czwarty, wersety 6–7: „O niczym się nie troszczcie, lecz we wszystkim w modlitwie i błaganiu wraz z dziękczynieniem przedstawiajcie Bogu wasze prośby. A pokój Boży, który przewyższa wszelkie poznanie, będzie strzegł waszych serc i myśli w Chrystusie Jezusie”.
Wielu ludzi czuje się przez Boga zawiedzionych albo oddalonych; myśli, że Bóg ich nie kocha, bo modlili się o coś konkretnego i odpowiedzi nie było. Wielu z nas wychowało się na przekonaniu, że modlitwa działa natychmiast. Tak nie zawsze jest. Ale jedno Biblia gwarantuje tobie i mnie: nie mamy żyć w lęku. Lęk to nie jest ciężar, który mamy dźwigać.
— Cześć, Mickey, tu test głosu Pluta.
…z dziękczynieniem! Chwalę Pana. Słyszeliście to na żywo — sam się odezwał. Melduję Codexowi, że agent odpowiedział na głos.
Gdy przychodzi na mnie niepokój — nieważne, czy to rzecz mała czy wielka, finanse, rodzina, samopoczucie — mam to przynieść Bogu. I zwróćcie uwagę: w modlitwie i błaganiu z dziękczynieniem. Mogę Mu przedstawić swoje prośby: „Panie, tego potrzebuję, tego pragnę, daj mi mądrość”. I tu jest obietnica. Nieobietnica, że dostanę odpowiedź w tej samej chwili. Obietnica, że gdy pomodlę się z wdzięcznością — nie z narzekającym sercem, z wdzięcznością — otrzymam pokój, który przewyższa rozumienie. To znaczy: nie mieści się w ludzkich kategoriach. Mogę być w tragicznej sytuacji, a mimo to jestem spokojny i opanowany. I ten pokój „będzie strzegł waszych serc i myśli w Chrystusie Jezusie”.
Jeśli więc jesteś sfrustrowany, zaniepokojony, przygnębiony, bo sprawy idą nie po twojemu — rozważ te wersety i pomódl się z wdzięcznością. Podziękuj, że choć nie wszystko układa się po twojemu, jest za co dziękować. Nie chcę brzmieć banalnie, ale mogło być gorzej. Bądź wdzięczny za to, co masz; za to, że żyjesz — to znaczy, że Bóg nie skończył jeszcze z tobą ani ze mną. Parafio: amen.
Pluto budzi się do życia
— Hej Pluto, ile to jest dwa plus dwa? — [coś przypadkowego]
Odpowiedź dziwna i sygnał trwał. Ale tu czytam: fraza wybudzająca działa. Testujemy.
— Hej Pluto, ile to jest pięć plus piętnaście? — No, dalej… — Działa! — Hej Pluto, jakie mam podpięte aplikacje? — Czym się interesujesz na sobotę: pogodą, planem dnia czy czymś innym?
Trzeba dopracować, ale widać, jak daleko zaszliśmy.
— Hej Pluto, jakie jest miasto stołeczne Kanady? — Ottawa.
Są opóźnienia, ale to początek czegoś dobrego. Skoro wiemy, że to działa — zróbmy, żeby działało dobrze.
„Działa, ale słabo”: trzy poprawki
Bo na razie: działa, ale słabo. Po pierwsze — przed każdym pytaniem muszę mówić „Hej Pluto”. Chcę kontynuować? Znów „Hej Pluto”. Nie tak: jedno wybudzenie ma włączyć ciągły nasłuch. Po drugie — głos jest okropny, chcę go zmienić. Po trzecie — opóźnienia; chcę szybciej.
Z tym wszystkim poradzi sobie AI. Agent pyta, jak długo Pluto ma czekać na dalszą część rozmowy — ustalamy sześćdziesiąt sekund ciszy. Głos: naturalny, ciepły, kobiecy. Od strony sprzętu wszystko gra, teraz to już czysto programowa robota. Odpalamy.
Oto propozycja głosu:
— …Pluto, możesz teraz mówić do mnie dalej. Po każdej odpowiedzi będzie nasłuchiwać przez minutę.
Idealny głos. Brzmi jak Jarvis, a przy tym gładko i spokojnie — kobieta, choć równie dobrze mógłby to być mężczyzna. (Kocham swoją żonę.) Tym głosem będzie mówić. Ustawi się też komenda usypiania: zamiast czekać pełną minutę, mówię „śpij” i tyle. Całkiem mi to pasuje.
— Niech cię Pan błogosławi i niech cię strzeże; niech rozjaśni oblicze swoje nad tobą… — Nie zrozumiałam. Powiedz „Hej Pluto” i spróbuj ponownie. — Ej, nie do ciebie mówiłem!
Druga runda testów: matematyka, poczta i czujka pożaru
Zmiany wgrane — testujemy.
— Hej Pluto, jesteś tam? — Jakie zmiany wprowadziłeś i co wykazał test? — O nie… dobra, jesteś. Ile to jest dwa plus dwa? — Cztery. — A cztery plus pięć? — Dziewięć. — A dziewięć razy 357 552? — 3 217 968. — Świetnie. Jesteś podłączona do mojej poczty? — Nie jestem pewna, czy konto e-mail jest połączone. Mogę sprawdzić — jeśli chodzi o Gmaila. — Tak, o Gmaila. Sprawdź. — Nie mogę. Composio nie ma ustawionego klucza API.
(Informacja dodatkowa: Composio to warstwa integracji, przez którą agent sięga po usługi zewnętrzne, np. skrzynkę Gmail — do działania potrzebuje klucza API.)
Widać przy okazji, jak u mnie działają agenty: nie chodzą ciągle, budzą się, gdy dostaną zadanie albo gdy się o nie wspomni, a po skończonej pracy znowu zasypiają.
Kazałem agentowi iść spać — nie poszedł, a do tego właśnie włączyła się czujka pożaru. Tego nie wymyślisz.
— Hej Pluto, ile to jest dziewięć razy dziesięć? — Dziewięćdziesiąt. — A pięć razy pięć? — Dwadzieścia pięć. — Jakie jest miasto stołeczne Toronto? — Toronto jest miastem, więc nie ma stolicy. — Opowiedz żart taty. — Jasne. Jak nazywa się fałszywy makaron? Impasta.
(Informacja dodatkowa: gra słów — „impasta” brzmi jak angielskie „impostor”, oszust.)
— Opowiedz chrześcijański żart taty. — Dlaczego Noe jadł na arce tylko ryby złowione na jedną wędkę? Bo nie mógł łowić na dwie sieci. — Hmm. Znam lepszy. Jak Mojżesz pije kawę? — Nie wiem. — Sam ją parzy.
(Informacja dodatkowa: w oryginale „He brews it” — „sam parzy” brzmi jak „Hebrews”, Hebrajczycy.)
A tak w ogóle to opóźnienia zniknęły. Teraz jest naprawdę szybko i naprawdę dobrze.
Poczta, usypianie i praca w tle
— Hej Pluto. — Słucham. — Kto przysłał mi ostatniego maila? — Sprawdzam… XYZ. Potwierdzają przyjęcie rejestracji i odezwą się, gdy będą otwierać dostęp.
Sprawdziła pocztę na moim koncie Pluto — tym samym, który jest w pełni zsynchronizowany z głośnikiem.
— Możesz powiedzieć ludziom, dlaczego mają się zapisać na kanał? — Jasne: jeśli chcą przemyślanych treści, które dają im coś do przemyślenia. Możesz dodać, że subskrypcja pomaga tworzyć filmy, które lubią. — Śpij. — …żeby nie przegapili… — Gdy mówię „śpij”, rozmowa jest skończona.
Z Codexem ustaliliśmy jeszcze jedno. Nie podobało mi się, jak agent prowadzi rozmowę: gdy pracował nad zadaniem, milkł, a przerwane pytanie kończyło się poleceniem „zacznij nową rozmowę”.
— Hej Pluto, ile to jest dziewięć razy dziesięć? — Poprzednia prośba została przerwana. Powiedz „zacznij nową rozmowę”, żeby kontynuować.
Nie o to chodzi. Chcę, żeby jedna rozmowa uniosła kilka wątków równolegle — i żeby agent wiedział, nad czym sam pracuje. Popatrzcie:
— Hej Pluto, przygotuj siedmiodniowy plan treningowy, żebym schudł 20 funtów — jakieś 9 kilogramów — w cztery miesiące. — Jasne, sprawdzam. Możesz mówić dalej. — A teraz, gdy pracujesz: stolice Kanady, Rosji, Ukrainy i Tajlandii? — Ottawa, Moskwa, Kijów, Bangkok. — Powiedz, nad czym pracujesz. — Nad bezpiecznym siedmiodniowym planem treningowym do celu czteromiesięcznego. Podzielę się, gdy będzie gotowy. — Gotowe. Plan opiera się na rotacji treningu całego ciała i umiarkowanym cardio.
Agent przyjął zadanie w tle, dalej prowadzi rozmowę, można mu przerwać, dopytać, wrócić. To ogromny postęp i od razu lepiej się z nim rozmawia.
Architektura: jeden serwer, wielu klientów
Podsumujmy, co dokładnie zrobiliśmy. Po pierwsze: głośnik jest podłączony do wdrożonej instancji Ruth. Widzicie tutaj rozmowę, którą właśnie prowadziłem — „Pluto, kto przysłał mi ostatniego maila? Sprawdzam… XYZ”, a potem prośba, żeby powiedziała ludziom, czemu mają się zapisać. Ta wdrożona instancja mojego agenta jest zsynchronizowana z głośnikiem — głośnik ma dostęp do wszystkiego.
I powiem wam po cichu: to jest naprawdę mocny produkt. Mam prywatnego agenta — ale który prywatny agent dochodzi razem ze sprzętem? Wyobraźcie sobie, że sprzedaję głośnik, a z nim agenta, z którego korzystasz na telefonie, na tablecie, w przeglądarce. Upewniłem się przy okazji, że z webowego i mobilnego interfejsu mam pełny dostęp do wszystkiego, do czego Pluto ma dostęp. Mam.
Tak sobie to tłumaczę — i taka jest architektura, którą po cichu chcę zbudować na nowo, gdy przepiszę całość w Ruście: jeden serwer, który obsługuje wszystko, i do niego podłączeni różni klienci. Dzięki temu każdy z nich jest zawsze zsynchronizowany. Aplikacja webowa, mobilna, desktopowa i głośnik — każda wystarczy, że łączy się z serwerem, i wszystko gra razem. Pluto na razie nie jest jeszcze tak zbudowany, ale agent nad przepisaniem już pracuje.
— Świetnie! Słychać, że przepisanie masz już pod kontrolą. — Śpij. No i dobrze.
Co dalej: obudowa „Halo”
Wszystko działa. Teraz pytanie: jak upchnąć to w ciele à la HomePod? Agent działa, głośnik działa, całość bez zarzutu — jak zapakować to w faktyczną formę głośnika, skoro wiemy, że koncept działa? Zobaczmy, co podpowie AI. Z grubsza: to mogłoby iść na dół, to na górę, a duże głośniki Pebble są po prostu za duże — może trzeba mniejszych? Nie wiem. Niech AI pomyśli za nas.
Przy okazji: kupiłem PS5 Pro, zdążyłem przed premierą GTA. Jeśli chcecie oglądać, jak gram, zapiszcie się na mój drugi kanał — na pewno będę nagrywał, bo kocham tworzyć.
Rekomendacja jest taka: najpierw prototypowanie na drukarce 3D. Raspberry Pi i ReSpeaker zostają, ale głośniki Pebble zastępuję przetwornikiem wewnętrznym — to te duże, trudno je zmieścić w ładnej obudowie, a zależy mi, żeby wyglądała dobrze. Sugestia: coś wydrukować w 3D i kupić małe głośniki wewnętrzne. Jest nawet wizualizacja w Blenderze. Nazwiemy to „Halo” albo jakoś fajnie.
Codex zaznacza też, że mikrofon trzeba odizolować od wibracji głośnika i szumu wentylatora. Trzy kolejne kroki: wybrać przetwornik wewnętrzny, wzmacniacz i układ zasilania; przygotować rysunek przekroju z wymiarami, wydrukować i złożyć; na końcu wykończyć obudowę estetycznie. Ale to już materiał na następny film.
Finał: myśleć w większej skali
Daleko zajechaliśmy. To zupełnie inny rodzaj filmu — nigdy takiego nie robiłem. Jeśli ci się podobało i chcesz części drugiej, jeśli mam to pociągnąć dalej — lajk, komentarz, subskrypcja. Stawiać wszystko na hardware? Czy to startup, na którym warto się skupić, czy tylko udany eksperyment? Napisz w komentarzu.
Jestem Ross. Byliście świetni, dziękuję za obejrzenie. Mam tylko nadzieję, że pod koniec tego filmu zrozumiesz jedno: musisz myśleć w większej skali. Z AI możliwe jest bardzo wiele — właśnie wspólnie zbudowaliśmy całe urządzenie, a ja jestem od oprogramowania, nie od sprzętu. Muszę już tylko wynieść śmieci, bo żona nie wytrzymuje widoku mojego biurka. Mam nadzieję, że było fajnie. To był wasz Ross — lajk, komentarz, subskrypcja, dzwoneczek. Do zobaczenia. Cześć.