Generatywna sztuczna inteligencja w tworzeniu oprogramowania: mity i rzeczywistość dla ekspertów
Generatywne modele językowe (LLM) obiecują uproszczenie tworzenia oprogramowania, ale w praktyce ich możliwości są ograniczone do typowych zadań. Pandas umożliwiała agregowanie danych z Excela jedną linijką kodu na długo przed erą chat-botów. Podobnie, CMS i platformy no-code rozwiązywały zadania tworzenia stron internetowych bez użycia naturalnego języka.
df = pd.read_excel("tmp.xlsx", index_col=0)
df.agg(["sum", "min"])
Takie narzędzia istniały zawsze. LLM dodają dostępność przez API, ale nie zmieniają istoty: kod musi działać przewidywalnie, a nie być generowany na podstawie niejasnego opisu.
Scenariusze agentowe: teoria a praktyka
Agenci oparci na LLM mogą iteracyjnie wykonywać plany w idealnych warunkach. Jednak rzeczywiste projekty wymagają precyzyjnej specyfikacji zachowania. Napisanie działającego kodu jest prostsze niż opisanie wszystkich niuansów w naturalnym języku, pełnym niejednoznaczności.
Składnia Pythona lub JavaScript jest już uproszczona do minimum. Szczegółowa inżynieria promptów często jest bardziej obszerna niż sam kod. Dla programistów mid/senior wyszukiwanie w Stack Overflow i edycja to standardowy workflow, który LLM jedynie powielają.
Różnice w postrzeganiu: programiści a menedżerowie
Menedżerowie widzą wartość w szybkim prototypowaniu i "generowaniu kodu". Programiści wiedzą: prototyp wymaga dopracowania, a weryfikacja generacji LLM pochłania czas. Nie ma metryk efektywności poza liczeniem tokenów.
- Plusy dla menedżerów: Wizualny postęp, GitHub z tysiącami linii.
- Minusy dla zespołów: Brak zrozumienia kodu, problemy w architekturze, testach, wdrażaniu.
- Rzeczywistość: Wąskie gardła — nie w pisaniu linii, a w wymaganiach i integracjach.
Wymuszanie narzędzi AI z góry ignoruje doświadczenie: jeśli narzędzie jest użyteczne, zostanie przyjęte dobrowolnie.
Problemy vibe coding na przykładach
Przypadki takie jak generacja 40k linii gry zamiast użycia open-source klonów (agar.io) demonstrują nieefektywność. Anthropic i podobne usługi monetyzują nowicjuszy, a nie przyspieszają produkcję oprogramowania.
Generacja książek lub wiedzy to spam. Objętość promptów dla wysokiej jakości wyników (jak u Pelevina) przekracza tekst. Rynek e-booków jest już zalany zautomatyzowanym treściem bez wartości.
Przydatne zastosowania dla profesjonalistów
LLM przyspieszają rutynę:
- Generacja boilerplate kodu.
- Wyszukiwanie w dokumentacji.
- Pomysły na refaktoryzację.
Ale wymagają precyzyjnych promptów i weryfikacji. Wprowadzanie głosowe i naturalny język dla codziennych zadań (usuwanie tła na zdjęciach) są perspektywiczne dla aplikacji end-user.
Ewolucja API (Visa dla agentów AI) uprości integracje, ale dane i narzędzia CLI rozwiązują więcej niż modele.
Co jest ważne
- LLM nie tworzą nowej wartości bez ekspertyzy: skupienie na weryfikacji i integracji.
- Efektywność rośnie od zrozumienia narzędzi, a nie od ślepej generacji.
- Dla senior programistów — narzędzie w arsenale, a nie zastąpienie umiejętności.
- Unikaj spamu: generuj prototypy, ale dopracowuj ręcznie.
- Przyszłość — w API i danych, a nie w uniwersalnych agentach.
Rozumiej kod, który piszesz lub generujesz. To podstawowa zasada.
— Editorial Team
Brak komentarzy.