#54 Patoarchitekci Short #13

2022, Dec 09

Patoarchitekci rozmawiają m. in. o OpenAI. Sztuczna inteligencja rzekomo potrafi już wygenerować nie tylko tweety, ale i sprawne fragmenty kodu. Jak to wygląda w praktyce? Przekonaj się sam :D

Ciekawe linki i inne znaleziska z tego odcinka:

Transkrypcja

ŁK: Cześć! Słuchajcie Patoarchitektów Short. Prowadzą Łukasz Kałużny

SW: i Szymon Warda. Wszystkie linki do tego odcinka oczywiście na: patoarchitektci.io/54. Dobrze, Łukaszu, co masz?

ŁK: Coś, co pewnie już widzieliście, bo przelało się przez pół internetu. Czyli nowe dziecko od Open AI w postaci ich czatów. I co jest najciekawsze, to jest po prostu model wystawiony w formie interaktywnej i trochę poprawiony GPT 3, który do tej pory był. Teraz jest trochę poprawiony, ale urywa nogi i ręce, jak zaczyna się próbować.

SW: Wrażeniowo.

ŁK: Wrażeniowo. I wiesz co? I teraz tak. Jakościowo? No, kurde, działa. I to jest… Inaczej. Działa na zasadzie – to, co zresztą już mówiłem przy Copilocie – że z punktu widzenia technicznego to jest ciekawy zestaw narzędzi – tak jak GitHub Copilot – do akcelerowania osoby, która ma doświadczenie.

SW: Właśnie nie osób, które ma doświadczenie. Bo to może być… O ile przy Copilocie się zgadzam, bo to jest zrobienie takiej brudnej roboty de facto.

ŁK: Wiesz co… Tylko zobacz, że jeżeli ten model… Bo teraz popatrzmy sobie na połączenia. Microsoft inwestuje w Open AI, to jest po pierwsze. I druga sprawa: ma pewną taką wyłączność na wystawianie tego aktualnie u siebie w Azure jako usługę, czyli w GitHubie. Więc patrzę bardziej pod to, jaki kod z komentarza będziecie Ci w stanie Copilot w przyszłości (korzystając z takich silników) wygenerować. Popatrz się na to. Jak tę brudną robotę jeszcze lepiej zrobi.

SW: Znaczy Copilot Copilotem. To się z tym zgadzam. W ogóle zasadność Copilota, to jak omawiliśmy GitHube Universe i konferencję, to nawet podkreślałem, że to ma sens i to będzie mogło być sprzedane za grube pieniądze, powiedzmy sobie. Ale właśnie tak myśląc odnośnie samego czata. Jedna rzecz w kontekście kodowania przychodzi mi do głowy.

ŁK: No.

SW: Jakby udało się wyeliminować propagację wiedzy. Wyobraź sobie, że nagle masz bota na Slacku czy gdziekolwiek indziej, i on Ci mówi, załóżmy teraz, w formie wyszukiwania. Z reguły ludzie wolą się pytać niż szukać, tak naprawdę.

ŁK: Tak. I załatwia Ci cały problem: ładuj wiedzę ze swojego Slacka, e-maili i będzie Ci odpowiadał.

SW: I tu faktycznie to się może nie sprzedać, bym powiedział.

ŁK: Raczej taki fajny personal asystent zaczyna się budować. To jest jedno. Druga rzecz: te wszystkie rzeczy związane z copyrightingiem i innymi rzeczami. Będzie teraz pytanie, czy masz copywritera za 200 dolców za godzinę, czy software za 5 dolców?

SW: Tu jestem ciekaw. Chociaż kiedyś słuchałem podcastu bardziej nastawiony właśnie w kontekście pisania i większość ludzi już z tego korzysta tak naprawdę.

ŁK: Raczej tak. To jest ciekawa rzecz, bo ten trend ze Stanów, gdzie studenci piszą eseje za pomocą Copy AI i innych serwisów, właśnie może dojść do nas.

SW: Ale nawet właśnie w kontekście podcastu i w ogóle… Ludzie na przykład piszą dla The Economist, czyli potężnego wydawnictwa. Tam często ludzie mówią, że bardzo to im upraszcza pracę – to im 3-krotnie tnie czas pisania artykułów de facto.

ŁK: Tak. Bo całość albo przepisanie, albo bierzesz parę cytatów i: weź mi to przepisz i rozpisz.

SW: Albo nawet generowanie artykułu w danym stylu na bazie danych informacji.

ŁK: Tak, dokładnie tak. To jest genialne. Ale lecąc z czatem, bo to nie byłby sam announcement, to za mało. Więc tak: Stack Overflow na razie banuje odpowiedzi z tego rozwiązania, bo nie zawsze są poprawne. Nie ma co się dziwić. I tutaj…

SW: Chwalili się, jak wykrywają?

ŁK: Nie. Wiesz co, nie wchodziłem w to aż tak za bardzo. Na razie jest tak, że: Q&A site has been flooded with ChatGPT coding answers that look correct but often aren’t, with moderators calling for a halt. Zaczyna się po prostu ten… Ludzie sobie punkty spróbują nabijać w ten sposób.

SW: No wiadomo. To tylko do tego dąży.

ŁK: Klasyka. I drugi przykład z tweeta, który sobie wygenerowałem. Koleś prosił o kawałki kodu i wygenerował jakiś landing page, który przyklejał po prostu w HTML-u. Więc to działa genialnie. Nie mówiąc już, że model stworzył cały wirtualny świat, jak koleś kazał mu stworzyć maszynę, wejść do niej etc. Więc wygląda to fajnie. Wrzuciłem z ciekawości, żeby mi wygenerował kawałek algorytmu jakiegoś księgowego w C Sharpie. Procent składany plus jeszcze coś, żeby mi po prostu wzięło i wygenerowało. I było poprawne. Czyli na zasadzie: z kawałka domeny biznesowej wygenerował mi… Ogólnej, to ważne: ogólnej. Wygenerował mi kawałek działającego kodu.

SW: To tylko pokazuje, że nasze systemy, które piszemy, nie są unikalne i procent składany, to tak naprawdę jest coś, co…

ŁK: Tak, tak. Wiesz… Ja wrzucam przykład, ale wiesz… Napisanie tego procenta trzeba się sekundkę podrapać po głowie, żebyś napisał.

SW: Tak, ale… To nie była krytyka, jak najbardziej. To było to, że de facto ten procent składany prawie w każdym systemie finansowym będzie występował. Nie wiem już, ilu deweloperów myślało, jak go policzyć i de facto to jest po prostu kopiuj-wklej tak naprawdę. Ciekawy jestem, w jakim to kierunku pójdzie. W kontekście kodu. Bo w kontekście pisania artykułów to się już przyjęło. Ale to się już absolutnie przyjęło. To już jest standard tak naprawdę.

ŁK: Inaczej. Będę z jednego szczęśliwy, jak to pójdzie.

SW: No.

ŁK: Wreszcie chatboty na infoliniach zaczną działać.

SW: Oj nie. Ja bym chyba…

ŁK: (śmiech)

SW: Tak samo, jak byś powiedział, że za chwilę samochody będą autonomicznie jeździć. Nie, nie będą.

ŁK: Nie, nie, nie. Może, wiesz co… Może inaczej. Zaczną. In-housowe próby plus podróbki szukania słów po translacji zamienią się w coś bardziej inteligentnego.

SW: Bardziej – tak, ale żeby zaczęły działać, to bym nie powiedział. Nie.

ŁK: (śmiech) Dobra. A co u Ciebie wykopane dzisiaj?

SW: U mnie wykopany artykuł, wpis na blogu bardziej, sprzed dwóch miesięcy właściwie, ale jakoś mi umknął. Natknąłem się na niego w kontekście słuchania jednego z podcastów. Ambient Mesh. Zacznijmy w ogóle… Ambient Mesh w gronie Istio. Zacznijmy w ogóle, czym jest Ambient Mesh. Istio zdecydowało się na podział swojego dodatku, można powiedzieć networkingu. Czyli cały sidecars podzielili na dwie części. Na rzeczy, które obsługiwałyby warstwę 4, i rzeczy, które obsługiwałyby warstwę 7. I teraz, jak to zrobili? Bo stwierdzili, że sidecary generalnie są za ciężkie i powodują trochę kłopotów, jeżeli chodzi o skalowanie. Ludzie nie wiedzą, jak zrobić hardware pod to. I stwierdzili, że być może by to ułatwili. Więc co zrobili? Zrobili… De facto przenieśli najważniejszą rzecz, czyli mTLS, czyli główny element, od którego większość organizacji zaczyna wchodzić w service meshe.

ŁK: (śmiech)

SW: Bo taka jest prawda.

ŁK: Wiem. Raczej to jest jeden z dwóch… To jest jeden z dwóch powodów.

SW: A który jest drugi tak naprawdę?

ŁK: Drugi? Observability, bo nie umiemy wpiąć APM-a.

SW: Observability jest z reguły tym, co byśmy chcieli też wziąć. Elementem decyzyjnym. Ale z reguły mTLS jest jako pierwszy włączany.

ŁK: Tak, bo jest najprostszy do włączenia. Oczywiście, bo tam nie ma polityki i innych rzeczy.

SW: Tak. I observability mimo wszystko ma spory narzut na hardware.

ŁK: Dobra.

SW: Dobra, więc mamy to. Czym się zajmuje warstwa L4? Przede wszystkim tam są wrzucone mTLS-y. Obsługiwane to jest przez ztunnel. I jak na to spojrzysz, to jest to tak naprawdę przesunięcie mTLS-a na poziom CNI.

ŁK: Wiesz co? Tylko jedną rzecz dorzucę dla nich.

SW: No.

ŁK: Bo całość polega na tym… Wygląda, że Istio zrobiło faila, i ten projekt nie dał rady przerobić, bo… Musiałbym sprawdzić, co się z tym stało, ale wezmę i na następny odcinek to zrobię. Istio CNI. Było coś takiego, jak Istio CNI, i wygląda na to, że nie dali rady napisać do końca drivera.

SW: No właśnie wydaje mi się, że to jest druga próba. Fakt, że mTLS powinien być na poziomie CNI, to jest w ogóle sensowny bardzo ruch. To ma ręce i nogi.

ŁK: Znaczy tak. To jest cilium na eBPF-ie.

SW: Tak. A w ogóle niesamowicie, przynajmniej mnie zaatakowało ostatnio dużo artykułów właśnie o eBPF-ie, o którym mówiliśmy pół roku temu, że się przyjmie. Przyjął się błyskawicznie.

ŁK: Jest, jest. Idzie, idzie, idzie. Dlatego mówię, że dla mnie eBPF jest przyszłością. Szanuję Istio, że otworzyło rynek, ale są lepsze rzeczy.

SW: Ten cały obszar meshy się rusza. Powiem jeszcze na koniec, czemu Istio – i to widać wyraźnie z artykułów, które pisali – czemu tak robią. Ale wracając. Więc na poziomie właśnie takim demon setów, na poziomie CNI, mam mTLS. A chcemy jakiekolwiek observability, czyli w asę 7 sobie włączamy waypoint proxis i to nie są już sidecary. To są normalne pody na EN volume, które są odpowiednio skalowane i które łatwiej jest ogarnąć. Czyli w ogóle nie ma sidecarów. No więc ciekawa opcja. I teraz kilka wyraźnie widocznych punktów z tego artykułu. Po pierwsze: cały ten ruch jest bardzo mocno w kierunku adopcji. Widać, że Istio ma problemy z adopcją. Że ludzie boją się wchodzić w service meshe. I to bardzo czuć.

ŁK: Raczej to pokazało to, co kiedyś dyskutowaliśmy. Że Linker D zaczęło wyprzedzać np. ze względu na mniej klocków w układance.

SW: Zgadza się. Ale w ogóle adopcja meshy jest taka… Sporo do tego firm podchodzi na zasadzie takiego [niezrozumiałe]: żebyśmy spróbowali, ale trochę się boimy, ale przydałoby się mieć.

ŁK: Ale słuchaj… Tak. Tylko, że wiesz… Ja i tak trafiam na to, że w większości przypadków są niepotrzebne.

SW: Znaczy tak. Dla zastosowań typu właśnie smart http routing to w ogóle, to nie do końca. To, to nie.

ŁK: No, no nie do końca.

SW: Dla mTLS- a rozumiem w pełni.

ŁK: Raczej to jest jedyne wymaganie, które mówi za sensownością. Na szczęście drivery i dostawcy chmury idą już w rozsądnym kierunku i skończy się to.

SW: Ja bardzo chciałbym, żebyśmy odeszli od tego, żeby mTLS-a implementować na poziomie aplikacji, w kodzie.

ŁK: W ogóle tak, żeby odejść od mTLS-a w środku systemów. Może z tej perspektywy, że jest to jawnie powiedziane. Tylko powiedzieć, że cała transmisja pomiędzy naszymi elementami jest szyfrowana za pomocą infry i się tym nie interesujemy.

SW: Z takim elementem, że jeszcze service meshe ułatwiały co nieco w kontekście multi-tenantowych klastrów. Więc tutaj to ma swoją zasadność jak najbardziej. Ale teraz, idąc dalej: adopcja – zdecydowanie. I drugi element, który jest mocno podkreślony: to nie jest koniec sidecarów. Są one jeszcze wspierane, są first [niezrozumiałe] itd. I’m calling bullshit on that.

ŁK: Wiesz co… Mam wrażenie, że znowu to przepiszą. (śmiech) Tak jakby… Bo Istio ma już historię, więc drugi raz może się okazać, że dojdą do wniosku, że coś nie poszło. Powiem Ci tak. Co mi śmierdzi tutaj i to tak naprawdę? Te waypoint proxies mi trochę śmierdzi. Bo to oznacza, że apki przestają się komunikować pomiędzy sobą, tylko w każdym węźle mamy jakieś pody, przez które cały ruch musi przelecieć, żeby obsłużyć L7.

SW: Mi też waypointy trochę śmierdzą. To że się właśnie skalują – okej, ale… To, o czym rozmawialiśmy, właśnie wydaje mi się, że EBPF jest dużo lepszym ruchem niż waypoint proxies. Zdecydowanie. To, że podzielili wdrożenie Ambient Mesha, czyli takiego właśnie powiedzmy L4, jest super proste. To jest super. To jest bardzo dobry ruch. Ale wydaje mi się, że nie mają pomysłu do końca, co zrobić z tą warstwą 7 tak naprawdę.

ŁK: Znaczy… Bo tak… EBPF na podstawie Node zapewnia Ci wszystko, czyli komunikację w ramach pojedynczego noda obliczeniowego w ramach całego klastra z L4, L7 bez interesowania się, gdzie ten ruch idzie.

SW: Tak. Jeszcze jedna myśl tutaj mnie naszła przeglądając to. To jest to, że de facto service meshe service meshami, ale Grafana robi fajne rzeczy teraz, bo mamy… Mamy tempo, mamy locki, mamy całość zintegrowanych de facto w dashboardy. Że, jeżeli aplikacja wspierałaby open telemetry to właściwie observability idą z pudełka. Czyli nawet nie musimy tego wielkiego klocka włączać.

ŁK: Tak, tylko wiesz co… Dosłownie w zeszłym tygodniu miałem rozmowę z Oskarem Dudyczem na ten temat i wszystko fajnie, niby open telemetry jest proste, darmowe, ale jak przychodzi co do czego, to trzeba trochę pomyślunku włożyć.

SW: Trzeba.

ŁK: I chyba nawet więcej niż w APM-ach na początek.

SW: Ale na pewno. Bo open telemetry wymaga, żebyś jawnie dodawał te elementy. To nie jest takie magiczne jak [niezrozumiałe] albo cokolwiek innego. Ale do czego dążę? Że to observability przez sidecary będzie miało swoje miejsce. Ale wydaje mi się, że to będzie powoli, powoli niż nam potrzeba. Ale…

ŁK: Zobaczymy.

SW: Jeszcze jedna myśl odnośnie całości. To jest chyba jeden z pierwszych wpisów na Istio, który naprawdę jest dobrze udokumentowany. Jest dobrze pisany, więc mam wrażenie, że Istio chyba… W końcu miało dobrą dokumentację, gdzie nie jest pierdolnik. To jest wpis. Z reguły wpisy mieli takie: okej, dokumentacja była kompletnie tragiczna i nieaktualna, więc jestem ciekaw czy Istio zaczęło dojrzewać. Kontynuując. Wyszedł też w ogóle komercyjny projekt do enterprisowego serwis mesha na bazie Istio też. I też wygląda niegłupio. Solo.

ŁK: Solo, solo, solo.

SW: Tak.

ŁK: Jest, jest tam. Próbują coś zbudować i zbudować control plane do różnych produktów.

SW: Tak, ale taki słynny wybitny enterprise. I parę tam ficzerów ma, powiedziałbym, że sensownych. Jestem ciekaw, jak to się rozwinie dalej. Czy to będzie…

ŁK: Wiesz co… Ja mam ten. Ja mam swoje życzenie.

SW: No.

ŁK: Ono nazywa się, żeby serwis meshe poszły w zapomnienie i były po prostu elementem driverów sieciowych, jeżeli mówimy o K8s-ach.

SW: Tak, to byłoby sensowne. Dalej jestem ciekaw właśnie… Na poziomie L4 to jak najbardziej, na poziomie L7 – ciekawe, czy to się uda.

ŁK: Znaczy… Mówiąc wprost: 95% rynku nie potrzebuje większości ficzerów, które dają meshe. W sensie tych takich bardziej szczegółowych.

SW: Zgodziłbym się. A z reguły to, co dają meshe na poziomie szczegółów, właśnie observability, to z reguły i tak wymaga wsparcia w aplikacji, żeby to działało dobrze. Albo APM-a, który się wepchnie w aplikację i kod aplikacji [niezrozumiałe].

ŁK: Tak, bierze i każdy ma swój stos, który jest nieustandaryzowany. Dobra, skończmy się znęcać nad meshami.

SW: I kończymy w takim razie.

ŁK: Na razie.

SW: Trzymajcie się.