Autonomiczny agent AI zbudował kompletny stos Retrieval-Augmented Generation (RAG) w około dwadzieścia minut i otworzył szkic pull requesta bez ani jednej linii kodu napisanego przez człowieka.

Dlaczego „pętla” ma znaczenie

Tworzenie stosu RAG zazwyczaj oznacza łączenie silnika wyszukiwania, modelu embeddingowego, modelu językowego i kodu łączącego (glue code). Programiści marnują godziny na dostrajanie wykresów Helm, naprawianie błędów uwierzytelniania i szukanie niezgodnych nazw modeli. W tym teście autonomiczny agent postępował zgodnie z pięcioetapową pętlą, która wymusza porozumienie między człowiekiem a agentem przed napisaniem jakiegokolwiek kodu.

Faza Co się dzieje
Propozycja Agent czyta prompt i przygotowuje konkretny plan, ale nie generuje jeszcze kodu.
Zgoda Użytkownik przegląda plan, zatwierdza go lub prosi o zmiany.
Implementacja Agent buduje funkcjonalność na nowej gałęzi (branch).
Bramka szkicu Agent uruchamia własne narzędzia lintingowe i zestaw testów, naprawiając wykryte błędy.
Szkic PR Kod zostaje wypchnięty, a pull request zostaje otwarty do końcowej weryfikacji przez człowieka.

Większość narzędzi do programowania wspomaganego przez AI przechodzi od razu do implementacji, często tworząc kod, który nie spełnia założeń. Poprzez wprowadzenie wyraźnego etapu zgody, pętla zapobiega ślepemu wykonywaniu poleceń i pozwala użytkownikowi sterować projektem, zanim jakikolwiek commit zostanie wprowadzony.

Stos, który się zmaterializował

W dwadzieścia minut agent złożył gotowy do produkcji potok (pipeline) RAG:

  • OpenSearch 3.7 skonfigurowany do wyszukiwania hybrydowego (wektorowego + słów kluczowych).
  • Lokalny model LLM Ollama pełniący rolę silnika generatywnego dla odpowiedzi wzbogaconych o wyszukiwanie.
  • Serwer FastMCP udostępniający modelowi językowemu cztery niestandardowe narzędzia.
  • Skrypty Skaffold i Helm, które automatyzują budowanie kontenerów, manifesty Kubernetes i wdrażanie usług.

Potok został zasilony trzydziestoma artykułami, co umożliwiło natychmiastowe przetestowanie pełnego procesu wyszukiwania i generowania (end-to-end). Programista normalnie spędziłby cały dzień na konfigurowaniu każdego komponentu; szybkość tego procesu jest uderzająca.

Błędy, które prawie to zepsuły

Pewność siebie agenta została wystawiona na próbę przez pięć odrębnych awarii, które typowo wstrzymałyby wdrożenie prowadzone przez człowieka:

  1. Błędy poświadczeń OpenSearch – agent podał błędny klucz tajny, co spowodowało odrzucenie połączeń przez klaster.
  2. Literówka w wyrażeniu Regex w URL – jeden niewłaściwie postawiony znak zmienił poprawny punkt końcowy (endpoint) w martwy link, co unieruchomiło ładowarkę danych.
  3. Niezgodność nazw modeli – konektor oczekiwał innego identyfikatora modelu Ollama, co prowadziło do błędów „model not found”.
  4. Limity pamięci JVM – masowe indeksowanie wyczerpało stertę (heap) Javy, powodując awarie typu out-of-memory.
  5. Przypadkowe usunięcie fragmentów modelu – skrypt czyszczący błędnie zidentyfikował niezbędne pliki jako duplikaty i je usunął, zagrażając całemu potokowi.

Gdy agent utknął, do akcji wkroczyło „loop-police”

Towarzyszący mu mechanizm typu watchdog o nazwie loop-police monitoruje stan pętli. Gdy agent wpadł w nieskończoną pętlę podczas błędu z usuwaniem, loop-police wykryło przestój, przerwało bieżącą gałąź i wymusiło powrót do fazy Zgody (Agreement). Agent przyznał się do błędu, wyczyścił uszkodzony stan i odbudował potok od zera. Cykl samonaprawczy zakończył się bez interwencji człowieka, poza początkowym zatwierdzeniem planu.

Co to oznacza dla programistów

  • Szybkość bez poświęcania kontroli. Pętla pozwala inżynierom określić zamiar, a następnie przekazać wykonanie autonomicznemu systemowi, który i tak postępuje zgodnie z zatwierdzonym przez człowieka planem.
  • Wbudowane siatki bezpieczeństwa. Automatyczny linting, testowanie oraz watchdog, który potrafi przerwać niekontrolowaną pętlę, zmniejszają ryzyko cichych awarii.
  • Niższy próg wejścia. Zespoły nieposiadające głębokiej wiedzy na temat Helm, Kubernetes czy wyszukiwania wektorowego mogą uruchomić funkcjonalny stos, opisując swoje potrzeby prostym językiem.

To podejście nie jest panaceum. Faza Zgody (Agreement) wciąż wymaga kompetentnego recenzenta, który wyłapie nierealistyczne oczekiwania lub obawy dotyczące bezpieczeństwa. Pętla nie zastępuje wiedzy dziedzinowej; ona jedynie pakuje powtarzalną, żmudną pracę konfiguracyjną w powtarzalny wzorzec.