Robot
Źródło: UMass Memorial Health/YT

Nowy robot Google sam się zaprogramuje

Naukowcy, reprezentujący firmę Google, opracowali robota, który jest w stanie sam wygenerować kod programistyczny na podstawie wpisanego, w naturalnym języku, polecenia. Czy to znaczy, że programiści mogą zacząć obawiać się konkurencji?

Proces kodowania robotów

Programowanie to proces tworzenia oprogramowania komputerowego dla urządzenia na podstawie kodu, który pozwola na uruchomienie i wykonywanie konkretnych zadań przez maszynę. Oprogramowanie dla robotów nie jest łatwe i wymaga doświadczenia w tworzeniu rozbudowanych kodów.

Dlatego naukowcy z firmy Google postanowili „nauczyć” swoją nową maszynę samodzielnego programowania i tworzenia kodu. Aby było to możliwe, Google wykorzystał model językowy o nazwie Code as Policies (CaP). Model został opracowany w oparciu o Google Pathways Language Model (PaLM), dzięki któremu możliwy jest proces interpretowania naturalnego języka na kod programistyczny.

Jak działa samoprogramujący się robot?

Wystarczy podać urządzeniu gotowe polecenie, a on sam utworzy kod, co na swoim blogu wyjaśniają inżynierowie Google.

„Po dostarczeniu kilku przykładowych instrukcji w połączeniu z odpowiednim kodem, modele językowe mogą przyjmować nowe instrukcje i autonomicznie generować nowy kod, który ponownie komponuje wywołania API, syntetyzuje nowe funkcje i wyraża pętle sprzężenia zwrotnego w celu tworzenia nowych zachowań w czasie wykonywania.”

Inżynierowie Google
Robot Google, który samodzielnie generuje kod
Robot Google, który samodzielnie generuje kod wykorzystując CaP, źródło: GoogleBlog

Generowanie kodu możliwe jest przez dostarczenie odpowiednich „wskazówek” w postaci interfejsów API lub zestawów gotowych narzędzi, a także kilku przykładowych instrukcji, które konieczne są do stworzenia kodu. Model językowy CaP może także wykorzystywać do swojego działania operacje arytmetyczne i logiczne.

Póki co, wytworzony przez Google model CaP działa w dość ograniczonym zakresie. Jeśli podane maszynie parametry są przez urządzenie nieobsługiwane, kod po prostu nie zostanie napisany. Tworzony kod musi także mieścić się w jednej linii, co dość mocno ogranicza możliwości.

Robot Google, źródło: GoogleBlog

Pojawiają się także obawy, że robot może uszkodzić ludzi w pobliżu, jeśli na przykład zacząłby się szybko kręcić z wyciągniętym ramieniem, bo „uznał”, że jest to najlepsza metoda na wykonanie narzuconego mu zadania.

Tak czy inaczej – pomysł Google na samoprogramującego się robota jest dość ciekawy i może kiedyś zostanie dopracowany na tyle, aby był bardziej funkcjonalny, mniej ograniczony i w pełni bezpieczny dla otoczenia.