Poradniki · 2 min czytania · 25 sierpnia 2026

Jak zrozumieć, czym jest harness w AI

Przejdź do treści i przykładów
Grafika ilustrująca: Jak zrozumieć, czym jest harness w AI

Źródło: Link

Wiesz juz, co zrobic. Trudniej to robic pod presja.

Mind Architect to 180-dniowy program Jana Gajosa: decyzje, nawyki i granice przeniesione do codziennych reakcji. 180 lekcji w 6 modulach, Manfred AI Coach i powtorki rozlozone w czasie.

Poznaj Mind Architect →

Harness w AI to kod i konfiguracja, które otaczają model: przygotowują wejście, udostępniają narzędzia, odbierają odpowiedź i sprawdzają wynik. Sam model przewiduje odpowiedź. Harness decyduje, jak wykorzystać ją w zadaniu. Może obsługiwać pojedyncze wywołanie albo wiele kroków z ponowną próbą po błędzie.

Z jakich elementów składa się harness

W praktyce harness rzadko jest jednym modułem. Zwykle to zestaw prostych, osobno testowanych części, które można rozwijać niezależnie od wyboru modelu:

  • Budowanie wejścia – składanie instrukcji, danych i opisu wymaganego formatu odpowiedzi.
  • Narzędzia – funkcje, które model może wywołać, na przykład wyszukiwarka dokumentów, baza danych albo uruchamianie testów.
  • Walidacja – sprawdzenie, czy odpowiedź ma właściwą strukturę, typy i wartości.
  • Obsługa błędów – decyzja, czy ponowić próbę, zmienić instrukcję, zgłosić problem człowiekowi, czy przerwać zadanie.
  • Limity i pomiar – maksymalna liczba prób, czas oczekiwania, koszt wywołań oraz zapis logów do późniejszej analizy.

Dzięki takiemu podziałowi model można wymienić na nowszy bez przepisywania reszty systemu. Kontrakt wyjścia i walidator pozostają te same.

Przykład: odpowiedź, której można użyć w programie

Załóżmy, że program potrzebuje sumy trzech liczb i identyfikatora źródła. Polecenie dla modelu:

Zwróć wyłącznie JSON o polach sum i source. Oblicz sumę 17+26+30. source ma być dokładnie synthetic-example. Nie dopisuj komentarza.

W próbie redakcyjnej z 2 października 2026 model claude-sonnet-5-5 przez API zwrócił:

{"sum":73,"source":"synthetic-example"}

Wynik jest poprawny, ale program powinien go sprawdzić przed zapisaniem. Następujący walidator działa bez dostępu do API:

import json

def validate(text):
    data = json.loads(text)
    if not isinstance(data, dict) or set(data) != {"sum", "source"}:
        raise ValueError("Niewłaściwe pola")
    if type(data["sum"]) is not int or data["sum"] != 17 + 26 + 30:
        raise ValueError("Błędna suma")
    if data["source"] != "synthetic-example":
        raise ValueError("Niewłaściwe źródło")
    return data

print(validate('{"sum":73,"source":"synthetic-example"}'))

Co robi tu harness

  1. Przekazuje dane i wymagany format.
  2. Odczytuje odpowiedź modelu.
  3. Parsuje JSON i sprawdza typy, pola oraz obliczenie.
  4. Zapisuje poprawny wynik albo zwraca błąd do obsługi.

Sprawdzono również celowo przygotowaną odpowiedź z sumą 72. Walidator ją odrzucił. Ten błędny JSON był kontrolnym wejściem testu, nie błędem zaobserwowanym w odpowiedzi modelu. Prompt, odpowiedź i metoda testu są dostępne do pobrania.

Co zrobić po odrzuceniu odpowiedzi

Walidator, który tylko zgłasza wyjątek, to dopiero połowa pracy. Harness musi zdecydować, co dalej. Najprostsza strategia to ponowienie wywołania z dopiskiem o błędzie, na przykład „pole sum ma złą wartość”, i twardym limitem prób. Po wyczerpaniu limitu zadanie trafia do kolejki do ręcznego przeglądu. Taki limit chroni przed pętlą, która generuje koszty bez poprawy wyniku. Zapisanie każdej próby w logu pozwala potem ustalić, czy problemem był prompt, model czy sam walidator.

Harness, prompt i agent

Prompt jest instrukcją w pojedynczym wejściu. Harness może tę instrukcję budować, wybierać narzędzia, ograniczać liczbę prób i mierzyć koszt. Agent korzysta z takiego otoczenia, aby planować działania lub wywoływać narzędzia. Nie każdy harness jest agentem i nie każdy wymaga pętli autonomicznych działań.

Do sumowania trzech liczb wystarcza zwykły kod; przykład pokazuje kontrolę odpowiedzi, a nie powód do używania AI w prostym dodawaniu. Przy analizie dokumentu analogiczna kontrola może wymagać numeru strony i cytatu obecnego w źródle. Prawidłowy format JSON nie dowodzi wtedy prawdziwości interpretacji.

Gdzie harness wpływa na wyniki benchmarków

Pojęcie harnessu pojawia się także przy ocenie modeli. W testach takich jak SWE-bench Verified, Terminal-Bench czy Aider Polyglot wynik zależy nie tylko od modelu, lecz także od otoczenia, w którym model pracuje: dostępnych narzędzi, limitu kroków, sposobu przekazywania kontekstu i reguł uznania zadania za wykonane. Dwa zespoły mogą więc uruchomić ten sam model i uzyskać różne rezultaty, jeśli ich harnessy się różnią. Przy porównywaniu liczb warto sprawdzić, jaką konfigurację opisał autor wyniku. Sama nazwa modelu nie wystarcza.

Praktyczne zastosowania prostego harnessu

Ten sam schemat sprawdza się w zadaniach, w których wynik trafia dalej do programu, a nie tylko do czytelnika:

  • Wyciąganie danych z dokumentów – model zwraca pola takie jak numer, data i kwota, a harness sprawdza format daty oraz to, czy podany fragment faktycznie występuje w tekście źródłowym.
  • Klasyfikacja zgłoszeń – odpowiedź musi należeć do zamkniętej listy kategorii, więc walidator odrzuca każdą etykietę spoza listy.
  • Generowanie kodu – harness uruchamia testy jednostkowe na wyniku i zwraca modelowi komunikat o niezaliczonym teście.

We wszystkich tych przypadkach kryterium przyjęcia odpowiedzi jest zapisane w kodzie, a nie w ocenie „na oko”.

Od czego zacząć

Wybierz jedno zadanie i opisz warunek przyjęcia odpowiedzi: wymagane pola, sprawdzalne obliczenie lub dowód z dokumentu. Ustal również, co program zrobi przy błędzie. Dopiero potem dodawaj ponowne próby i narzędzia. Przykłady kontraktów wyjścia znajdziesz w dokumentacji structured outputs Anthropic; aktualne sposoby pracy z modelem opisuje przegląd API.

Powiązane tematy

Udostępnij:
Nie przegap nowych artykułów - dodaj SukcesAI do swoich źródeł w wyszukiwarce Google.
Dodaj do preferowanych źródeł
Jan Gajos

Ekspert AI & Founder, AI Evolution

Pasjonat sztucznej inteligencji, który od 18 lat działa z sukcesem biznesowo i szkoleniowo. Wprowadzam AI do swoich firm oraz codziennego życia. Fascynują mnie nowe technologie, gry wideo i składanie klocków Lego - tam też widzę logikę i kreatywność, które AI potrafi wzmacniać. Wierzę, że dobrze użyta sztuczna inteligencja to nie ogłupiające ułatwienie, lecz prawdziwy przełom w sposobie, w jaki myślimy, tworzymy i pracujemy.