Po co własny harness, skoro płacę za subskrypcję
4 min czytania
Przy płatnej subskrypcji LLM Duży model językowy: program nauczony na ogromnej liczbie tekstów, który pisze i rozumie język. Działają na nim ChatGPT, Claude i Gemini. własny harness Program wokół modelu AI, który pozwala mu używać narzędzi i działać na własną rękę. w stylu OpenClaw Program z otwartym kodem, który uruchamiasz u siebie. Daje modelowi AI dostęp do plików i programów, a poleceniami sterujesz z komunikatora. czy Hermes Program z otwartym kodem od firmy Nous Research, podobny do OpenClaw. Działa u ciebie i zapamiętuje, czego się nauczył. nie ma moim zdaniem sensu. Postawiłem oba, na serwer domowy Komputer w domu, który działa całą dobę i udostępnia innym urządzeniom pliki lub programy. i na VPS Wynajęty komputer w centrum danych, do którego łączysz się przez internet i który działa całą dobę., i dałem sobie spokój.
Czym jest harness i po co go stawiałem
Sam model AI tylko odpowiada tekstem. Harness to program wokół niego: daje mu narzędzia (przeglądarkę, pliki, wyszukiwarkę), pamięć i zadania uruchamiane o zadanej porze, a rozmowę prowadzi się przez komunikator. OpenClaw i Hermes to dwa takie programy z otwartym kodem, które uruchamia się u siebie. Obiecują asystenta, który działa całą dobę i sam coś robi.
Nie miałem problemu, który taki asystent miał rozwiązać. Stawiałem je z ciekawości i dlatego, że o „asystencie 24/7” było wtedy głośno. use case Konkretny sposób użycia narzędzia, np. „codziennie rano streszcza mi pocztę”. wymyślałem na siłę, żeby zobaczyć, jak to działa, i podejrzewam, że sporo osób robi dokładnie tak samo.
Na czym i co próbowałem
Wszystkie próby robiłem na modelach uruchomionych na własnym komputerze: Gemma Rodzina modeli AI od Google, których pliki można pobrać i uruchomić na własnym komputerze. i Qwen Rodzina modeli AI od firmy Alibaba, które też można uruchomić na własnym komputerze., w wersjach parametry modelu (9B, 27B) Liczba ustawień wewnątrz modelu AI, B oznacza miliardy. Zwykle im więcej, tym model zdolniejszy, ale też cięższy dla komputera.. Wybrałem je, bo nic nie kosztują poza prądem i sprzętem, który już miałem, więc nie płacę za token Kawałek tekstu, na który model dzieli to, co czyta i pisze. Przy płatnym API cena zależy od liczby tokenów.. Z agent Program oparty na modelu AI, który sam wykonuje zadania, np. szuka informacji, klika i zapisuje. rozmawiałem przez Discord Komunikator do rozmów tekstowych i głosowych w grupach, popularny wśród graczy., którego i tak używam do kontaktu z ludźmi, więc wybór był oczywisty.
Pierwsza próba to oferty działek. Kazałem agentowi ich szukać i szło kiepsko: nie radził sobie z wczytywaniem stron ani z samym wyszukiwaniem. Wyszukiwarkę SearXNG Wyszukiwarka, którą stawiasz sam. Wysyła pytanie do kilku innych wyszukiwarek i zbiera ich wyniki. postawiłem sam, wchodziła w grę też Exa Wyszukiwarka dla programów i agentów AI, która zwraca czysty tekst stron., zrobiona z myślą o agentach AI.
Druga to przypominacz. Agent miał pisać do mnie na Discordzie, dopóki wprost nie odpiszę, że coś zrobiłem. Nie działało, bo program był pełen bug Błąd w programie, przez który działa inaczej, niż powinien..
Trzecia to sterowanie głosem z telefonu przez Open WebUI Strona do rozmów z modelami AI uruchomionymi u siebie, wyglądająca podobnie do ChatGPT.. Praktycznie nie działało.
Co się psuło
Takie programy mają duże uprawnienia w systemie, więc odpalałem je w rootless Docker Docker uruchamia program w odizolowanym środowisku. Wersja rootless nie ma uprawnień administratora, więc program nie może popsuć reszty komputera., żeby w razie wpadki nie sięgnęły do reszty komputera. W tym trybie prawie w ogóle nie chciały ruszyć. Traciłem czas na uprawnienia, szukanie w issues na GitHubie Lista zgłoszeń błędów i pomysłów w projekcie na GitHubie, serwisie, gdzie programiści trzymają kod. i kolejne obejścia. Do tego frontend Część programu, którą widzisz i klikasz: okna, przyciski, formularze. źle zapisywał ustawienia.
Najdłużej szukałem przyczyny przy skrypt Krótki program, czyli lista poleceń wykonywanych po kolei.: agent sam pisał je do uruchamiania narzędzi i sam walidował, a ja pół dnia debugowanie Szukanie i naprawianie błędów w programie., dlaczego to nie działa. Na końcu okazało się, że używany model jest po prostu za słaby.
Część winy leży po stronie modeli, bo te sprzed paru miesięcy były sporo gorsze od dzisiejszych. Mam też wrażenie, że takie projekty są testowane mniej niż aplikacje dużych firm, ale to tylko przypuszczenie. Harnessów na modelu z chmury nie sprawdzałem, więc wniosek o słabych modelach dotyczy tych małych, lokalnych.
Co mają aplikacje dostawców
Jedyna prawdziwa przewaga tych harnessów to proaktywność: agent budzi się sam (heartbeat Regularny sygnał, po którym agent się budzi i sprawdza, czy ma coś do zrobienia.) i wykonuje zadania o zadanej porze. Zadanie na konkretną godzinę da się już zlecić w aplikacjach Codexa i Claude. Dostawcy idą dalej, w stronę agentów, którzy cały czas działają w chmura Komputery firm w centrach danych, z których korzystasz przez internet, zamiast uruchamiać program u siebie.: Google ma Gemini Spark Agent AI od Google, który działa w chmurze całą dobę i np. pilnuje poczty i kalendarza. (maj), OpenAI ma dots Agent AI firmy OpenAI działający w ChatGPT, który ma własny komputer w chmurze i pracuje całą dobę. (wrzesień), a Anthropic 21 października pokazał Claude Duet Aplikacja z agentem AI firmy Anthropic, który sam podpowiada, co zrobić, np. układa terminy spotkań.. Według doniesień to wszystko jest na razie w beta Wczesna wersja produktu, którą firma udostępnia wybranym użytkownikom do testów. albo w wybranych krajach, głównie w USA, więc u nas jeszcze nie działa. Zgaduję, że przez regulacje o przetwarzaniu danych.
Wyszukiwanie wbudowane w Claude'a i Codexa jest u mnie po prostu lepsze niż ręcznie podpięty SearXNG. Skoro i tak płacę za model, po co składać to samo od zera.
Kiedy własny harness ma sens
Pierwszy przypadek to sprzęt, który udźwignie dobry model. Chodzi o Mac Studio Mały komputer stacjonarny Apple, który można kupić z bardzo dużą pamięcią, a model AI potrzebuje jej dużo. z 256 GB pamięci albo mini komputer na układach Nvidii (DGX Spark Mały komputer firmy Nvidia do uruchamiania modeli AI u siebie., nie mylić z Gemini Spark). Na takich maszynach działają modele, przy których OpenClaw czy Hermes zaczynają mieć sens. Gemma i Qwen 9B były na moim komputerze za słabe, głównie dlatego, że nie ogarniają tool calling Umiejętność modelu, by samemu uruchomić narzędzie, np. wyszukiwarkę., a na samodzielnym wywoływaniu narzędzi opiera się cała praca agenta. Użyteczne robi się to od około 27B, a taka maszyna to według mnie minimum od 20 do 30 tys. zł. Do prostych skryptów, szukania informacji i prostej analizy to wystarczy.
Pisanie kodu i bardziej skomplikowana praca i tak wymagają modeli od dostawców w chmurze. hostowanie Utrzymywanie programu na komputerze, który działa bez przerwy i jest dostępny dla użytkowników. modelu na 700B+ parametrów mija się z celem kosztowo, chyba że to duża firma, która będzie obciążać taką maszynę 24/7. Dla mnie wartość takiego sprzętu jest na razie za niska, żeby przebić abonament za 100 zł, bo mniej więcej tyle kosztuje u większości dostawców najtańszy użyteczny plan. Dochodzi jeszcze kontekst Ilość tekstu, którą model widzi naraz. Wszystko, co do niego wysłano, zajmuje w nim miejsce.: harness dokłada do niego mnóstwo własnych prompt Tekst z poleceniem, który wysyłasz do modelu AI. (pamięć, instrukcje, zaplanowane zadania), więc trzeba go dopasować do modelu.
Drugi przypadek to dane, które nie mogą wyjść do dostawcy, na przykład prawne. Wtedy zostaje własny model. W pracy mam taki przypadek: agent dostaje pełne prawa, żeby czytać dostarczone mu pliki, a internetu nie ma poza API Interfejs, przez który jeden program prosi inny o dane albo o wykonanie czynności. modelu, żeby nic nie wyciekło w niekontrolowany sposób. Aplikacje Codexa i Claude są tu prostsze: pobranie strony zwykle nie wymaga zgody, a wysłanie czegoś do formularza już tak, choć zależy to od ustawień uprawnień.
Pokrewne rzeczy: strona, którą obsługuje agent i asystent z dostępem do twoich aplikacji.