O czym jest ten film
- Jev służy do szybkich, wąskich decyzji, takich jak klasyfikacja zgłoszeń. Nie jest zamiennikiem Claude’a w pisaniu, programowaniu czy złożonym rozumowaniu.
- Model obsługuje trzy rodzaje pytań: wybór jednej z podanych możliwości, ocenę według skali oraz odpowiedź typu „tak” lub „nie”.
- W jednym żądaniu można zadać kilka pytań i otrzymać odpowiedź o stałej strukturze, wraz z poziomem pewności.
- Autor pokazuje, jak połączyć Jev z GitHub Actions, by nadawał nowym zgłoszeniom etykiety.
- Pierwsza etykieta określa rodzaj pracy: błąd, zmiana dokumentacji albo nowa funkcja.
- Druga wskazuje agenta programistycznego, któremu dalszy system może przekazać zadanie.
- W demonstracji Jev rozpoznaje zmianę w animacji postaci jako nową funkcję i wskazuje Codexa z modelem Astra.
- Poziom pewności można wykorzystać do kierowania niejednoznacznych przypadków do człowieka.
- Autor przedstawia własne szacunki kosztów, według których Jev jest znacznie tańszy od większych modeli przy masowej klasyfikacji.
- Pokazuje też, jak etykiety mogą uruchamiać dalszą pracę „fabryki oprogramowania”: od podjęcia zgłoszenia przez agenta po przygotowanie pull requestu.
10 najważniejszych takeaways — z kontekstem zastosowania
1.Dobieraj model do rodzaju decyzji
Na czym polega: Jev wybiera odpowiedzi w ściśle określonym zakresie. Claude i podobne modele nadają się do zadań, które wymagają dłuższej wypowiedzi lub rozumowania.
Jak stosować: Wypisz decyzje podejmowane w swoim procesie. Te, które da się sprowadzić do kilku jasnych możliwości, przetestuj z Jev; złożone zadania pozostaw większemu modelowi.
Na co uważać: Szybkość klasyfikacji nie oznacza, że model poradzi sobie z matematyką, analizą naukową czy trudnym przypadkiem wymagającym wnioskowania.
2.Najpierw ustal dozwolone odpowiedzi
Na czym polega: W pytaniu typu „wybór” Jev dostaje zamkniętą listę, na przykład: „błąd”, „dokumentacja”, „nowa funkcja”.
Jak stosować: Zdefiniuj kategorie przed podłączeniem modelu do procesu. Dzięki temu dalsza automatyzacja może reagować na konkretne etykiety.
Na co uważać: Jeśli lista nie obejmuje rzeczywistych przypadków, model będzie musiał wybrać spośród niedopasowanych możliwości.
3.Łącz kilka prostych pytań w jednym żądaniu
Na czym polega: Jev może jednocześnie określić kategorię zgłoszenia, wskazać zespół lub agenta i ocenić inną cechę sprawy.
Jak stosować: Przekaż ten sam opis raz, a następnie poproś o wszystkie decyzje potrzebne do skierowania zadania dalej.
Na co uważać: Każde pytanie powinno mieć jasną instrukcję i własny zestaw dopuszczalnych odpowiedzi.
4.Wykorzystuj stałą strukturę odpowiedzi
Na czym polega: Według autora Jev zwraca dane w przewidywalnym formacie, który można odczytać w kodzie lub narzędziu do automatyzacji, takim jak n8n.
Jak stosować: Zmapuj pola odpowiedzi na etykiety, kolejki albo kolejne kroki procesu.
Na co uważać: Stały format ułatwia integrację, ale sam w sobie nie dowodzi, że wybrana kategoria jest trafna.
5.Ustal próg dla spraw niejednoznacznych
Na czym polega: Odpowiedź zawiera poziom pewności od 0 do 1. Autor proponuje, by wyniki poniżej wybranego progu, na przykład 0,75, przekazywać człowiekowi.
Jak stosować: Zacznij od przeglądu przypadków z niskim wynikiem i sprawdź, jaki próg odpowiada kosztowi pomyłek w twoim procesie.
Na co uważać: W demonstracji wybór agenta otrzymał wynik 0,62, choć kategoria zgłoszenia dostała 1. Pewność oceniaj osobno dla każdej decyzji.
6.Oddziel rozpoznanie zadania od jego wykonania
Na czym polega: Jev nadaje etykiety, a dopiero późniejsza automatyzacja uruchamia właściwego agenta programistycznego.
Jak stosować: Potraktuj klasyfikację jako pierwszy etap: zgłoszenie → etykiety → odpowiednia ścieżka pracy → przegląd wyniku.
Na co uważać: Sama etykieta nie naprawia błędu ani nie wdraża funkcji. Do tego potrzebny jest dalszy proces.
7.Dobieraj agenta według charakteru pracy
Na czym polega: W przykładzie autora trudne zadania programistyczne trafiają do Claude’a z modelem Fable, prace wymagające rozumienia przestrzeni do Codexa z Astrą, a zmiany dokumentacji do Claude’a z Haiku.
Jak stosować: Zapisz własne reguły przydziału i powiąż je z etykietami w repozytorium.
Na co uważać: To wybory autora dla jego projektu, a nie uniwersalny ranking modeli. Sprawdź, czy podobny podział sprawdza się przy twoich zadaniach.
8.Zostawiaj ślad po decyzji modelu
Na czym polega: Automatyzacja autora dodaje do zgłoszenia komentarz zawierający dane wysłane do Jev, odpowiedź i poziomy pewności.
Jak stosować: Zapisuj te informacje przy zgłoszeniu, aby móc prześledzić błędną klasyfikację i poprawić instrukcje.
Na co uważać: Przed publikacją komentarza w repozytorium sprawdź, czy dane przekazane modelowi mogą być widoczne dla osób czytających zgłoszenie.
9.Licz koszty dla własnego obciążenia
Na czym polega: Autor szacuje, że milion prostych klasyfikacji kosztowałby około 21 dolarów w Jev, około 1500 dolarów w Sonnet 5 i około 7500 dolarów w Fable 5.1.
Jak stosować: Przy dużej liczbie podobnych zgłoszeń porównaj koszt klasyfikacji różnymi modelami na własnych danych i przy własnych stawkach.
Na co uważać: To szacunki podane w materiale, nie cennik gwarantowany dla każdego zastosowania. Oszczędność ma sens tylko wtedy, gdy trafność jest wystarczająca.
10.Zacznij od etykietowania, potem rozbuduj proces
Na czym polega: W pierwszym kroku GitHub Action tylko klasyfikuje zgłoszenie. W drugim etykieta może uruchomić agenta, który przygotuje zmianę i pull request.
Jak stosować: Najpierw sprawdź, czy etykiety są trafne. Gdy reguły działają, podepnij pod nie kolejne etapy pracy.
Na co uważać: Im więcej działań uruchamia etykieta, tym większe znaczenie ma błędna klasyfikacja. Zachowaj możliwość przeglądu przed połączeniem zmian z projektem.
Redakcyjne tłumaczenie
Jev nie jest konkurentem Claude’a
Jev od TypeSafe.ai to imponujący model, ale mam wrażenie, że wokół niego narosło zbyt wiele oczekiwań. Widziałem materiały nazywające go „pogromcą Claude’a”. To nietrafne porównanie: Jev nie potrafi nawet napisać pełnego zdania. Jest za to zadanie, które wykonuje szybciej i lepiej niż duże modele językowe. Pokażę je na działającym projekcie.
Mam repozytorium z aplikacją internetową, w której znajduje się trójwymiarowa postać Claude’a. Scena przedstawia upiorną rezydencję, ale postać nie wygląda na przestraszoną. Tworzę więc na GitHubie zgłoszenie dotyczące nowej mimiki. Po chwili pojawiają się przy nim dwie etykiety: „Enhancement” i „Agent Codex”.
Po utworzeniu zgłoszenia jego tytuł i opis zostały wysłane do Jev. Poprosiłem model o dwie decyzje. Najpierw miał ustalić, czy chodzi o błąd, dokumentację, czy nową funkcję. Uznał, że dodanie wyrazu strachu jest rozszerzeniem aplikacji. Następnie miał wskazać agenta, któremu należy powierzyć pracę.
W moim systemie działają agenci oparci na Codexie i Claude Code. Zadania dotyczące grafiki 3D oraz rozumowania przestrzennego zwykle kieruję do Codexa z modelem GPT-6 Astra. Dlatego Jev wybrał właśnie tego agenta. W komentarzu pod zgłoszeniem widzę też dane wysłane do modelu, jego odpowiedź i poziom pewności obu decyzji. W tym przykładzie dla każdej z nich wyniósł on 100%.
Pokażę, jak zbudować taki mechanizm. GitHub jest tu tylko przykładem: podobną klasyfikację można wykorzystać również w innych projektach, choćby przy tworzeniu gier.
Jakie zadania wykonuje Jev
Porównywanie Jev z dużymi modelami, takimi jak Claude, prowadzi na manowce. Autorzy TypeSafe stworzyli go do błyskawicznych, prostych decyzji. Claude i inne duże modele potrafią prowadzić rozmowę, rozumować i wykonywać znacznie bardziej złożoną pracę. Jev jest szybszy, ale nie nadaje się do trudnych obliczeń, zagadnień naukowych ani zadań wymagających wieloetapowego myślenia. Ma też okno kontekstowe liczące około 32 tys. tokenów.
Nie jest chatbotem. Jego możliwości można sprowadzić do trzech rodzajów odpowiedzi: wyboru, oceny i odpowiedzi typu „tak” lub „nie”. TypeSafe nazywa je odpowiednio „Choice”, „Score” i „Null”.
Przy wyborze podajemy modelowi kontekst i listę dopuszczalnych możliwości. Wiadomość klienta może trafić do działu rozliczeń, pomocy technicznej albo sprzedaży. Zgłoszenie na GitHubie może zostać oznaczone jako błąd, zmiana dokumentacji albo nowa funkcja.
Ocena przydaje się wtedy, gdy chcemy określić nasilenie jakiejś cechy. Możemy na przykład przekazać opinię klienta i zapytać, czy jej ton jest spokojny, sfrustrowany czy bardzo gniewny. Odpowiedź typu „tak” lub „nie” pozwoli z kolei ustalić, czy treść wskazuje na pilną sprawę. Model dołącza do wyniku poziom pewności. Żaden z tych trybów nie służy do pisania rozbudowanych wypowiedzi.
Żądanie, odpowiedź i poziom pewności
W żądaniu do API wskazujemy model, na przykład jev-latest, podajemy kontekst i definiujemy pytania. Wyobraźmy sobie wiadomość: „Pomocy, od trzech dni nie działają mi wypłaty”. Możemy zapytać, czy sprawa jest pilna, który dział powinien się nią zająć oraz jak silna jest frustracja klienta. Pytanie o pilność będzie miało typ „Null”, wybór działu — „Choice”, a ocenę emocji można uzyskać przez „Score”. Wszystkie te pytania mieszczą się w jednym żądaniu.
Według autora odpowiedź ma stałą strukturę. To ważne, gdy chcemy odczytywać ją w aplikacji albo przekazać do narzędzia takiego jak n8n. Oprócz wybranych odpowiedzi otrzymujemy poziom pewności w skali od 0 do 1. Wynik 1 oznacza 100%. Możemy więc ustalić regułę: jeśli dla danej decyzji wartość spadnie poniżej 0,75, sprawa trafi do człowieka.
Czy do takiej klasyfikacji użyć Jev, czy Claude’a? Zależy to od zadania i kosztu. Gdy decyzja wymaga poprawnych obliczeń, wiedzy naukowej lub rozumowania, większy model może być konieczny. Przy prostej klasyfikacji Jev może wystarczyć. Według szacunków autora milion takich decyzji kosztowałoby około 21 dolarów w Jev, około 1500 dolarów w Sonnet 5 i około 7500 dolarów w Fable 5.1. Ta różnica ma znaczenie, jeśli podobnych zgłoszeń przetwarzamy bardzo dużo.
Materiał sponsorowany: pobieranie danych ze stron
Sponsorem odcinka jest Decodo. Gdy prosimy agenta AI o pobranie informacji ze strony internetowej, może się okazać, że witryna nie zwraca danych przy zwykłym żądaniu albo udostępnia je tylko z wybranych lokalizacji. Decodo oferuje API do pobierania stron oraz serwer MCP, przez który agent może z niego korzystać.
Usługa zapewnia między innymi zmienne adresy IP, obsługę stron renderowanych przez JavaScript i ponawianie nieudanych prób. Można wskazać adres strony oraz lokalizację, z której ma pochodzić żądanie. Agent otrzymuje wynik w postaci Markdownu lub uporządkowanego JSON-u.
Według informacji przedstawionych w odcinku bezpłatny plan obejmuje 2000 kredytów ważnych przez rok i nie wymaga karty płatniczej. Autor podaje też kod LEONVANZYL, który ma zapewniać 10% zniżki na pierwszy płatny plan.
Dostęp do Jev i przygotowanie projektu
Aby skorzystać z Jev bezpośrednio, można zalogować się na typesafe.ai. W chwili nagrywania obowiązywała tam lista oczekujących, choć wcześniej na krótko ją usunięto. Autor wskazuje OpenRouter jako inną drogę dostępu do najnowszej wersji Jev. W pokazanym projekcie korzysta jednak z API TypeSafe. Osoby pracujące przez OpenRouter powinny odpowiednio zmienić polecenia przekazywane agentowi programistycznemu.
W panelu TypeSafe warto najpierw otworzyć Playground. Dostępne przykłady pokazują trzy typy pytań i sposób łączenia ich w jednym żądaniu. Po uruchomieniu przykładu można obejrzeć odpowiedź, a widok JSON ujawnia jej strukturę. Następnie trzeba utworzyć klucz API i przechować go w bezpiecznym miejscu. Autor zaznacza, że klucz pokazywany podczas nagrania usunie po zakończeniu pracy.
Jev jest usługą płatną, więc konto wymaga środków. Autor dostał przy rejestracji 5 dolarów kredytu i do chwili nagrania nie zużył go w całości. Zakłada, że podobny kredyt otrzymują także inni użytkownicy.
Do ćwiczenia potrzebne jest repozytorium na GitHubie. Można użyć projektu autora, własnego istniejącego repozytorium albo utworzyć nowe wyłącznie na potrzeby próby. Autor kopiuje adres projektu, otwiera Claude Code, wybiera Opus 5.5 z wysokim poziomem wysiłku obliczeniowego i prosi o sklonowanie repozytorium do katalogu projektu. Następnie poleca utworzyć dla niego nowe prywatne repozytorium na GitHubie.
Etykiety, które kierują dalszą pracą
GitHub udostępnia domyślne etykiety, między innymi „bug”, „documentation” i „enhancement”. Autor dodaje też etykiety wskazujące agentów: Claude z Fable, Codex z Astrą oraz Claude z Haiku do prostych prac. Chce, aby po utworzeniu zgłoszenia Jev nadawał jedną etykietę określającą rodzaj zmiany i drugą wskazującą agenta.
To pierwszy etap większego procesu. Autor odwołuje się do schematu „fabryki oprogramowania” pokazanego przez Vercel. Człowiek tworzy zgłoszenie, system rozpoznaje jego typ, a etykiety wskazują dalszą ścieżkę. Przy błędzie agent może najpierw odtworzyć problem, potem go naprawić, uruchomić testy i przygotować pull request. Przy nowej funkcji powinien ocenić pomysł, wdrożyć zmianę i poddać ją przeglądowi. Zmianę dokumentacji można powierzyć tańszemu modelowi, takiemu jak Haiku. Autor proponuje też, by na etapie klasyfikacji wybrać konkretnego agenta z dostępnej grupy.
Żeby agent programistyczny wiedział, jak korzystać z Jev i API TypeSafe, autor instaluje w projekcie oficjalną umiejętność TypeSafe. Następnie wydaje mu polecenie przygotowania GitHub Action uruchamianej po dodaniu nowego zgłoszenia.
Instrukcja określa dwie decyzje Jev: wybór jednej z kategorii „enhancement”, „bug” i „documentation” oraz wybór etykiety agenta. W regułach autora trudniejsze zadania programistyczne trafiają do Claude’a z Fable, prace wymagające rozumienia przestrzeni — na przykład przy animacji 3D — do Codexa z Astrą, a zmiany dokumentacji do Claude’a z Haiku. Akcja ma również dodać komentarz pokazujący dane wejściowe, odpowiedź Jev i poziom pewności każdej decyzji. Do połączenia z usługą potrzebny jest klucz API TypeSafe.
Próba na nowym zgłoszeniu
Po wysłaniu zmian do GitHuba autor tworzy zgłoszenie dotyczące nowej emocji postaci: strachu. Jev oznacza je jako rozszerzenie i wybiera Codexa z Astrą. W komentarzu widać, że kategoria otrzymała wynik pewności 1, czyli 100%, natomiast wybór agenta — 0,62.
Ta druga wartość sugeruje, że opis nie rozstrzygał jednoznacznie, komu powierzyć pracę. Autor uważa, że zarówno Astra, jak i Fable poradziłyby sobie z tą zmianą. Właściciel procesu może jednak sam ustalić, co zrobić z podobnym wynikiem. Komentarz pozwala sprawdzić dokładnie, jakie dane trafiły do Jev i co model zwrócił. Według autora całe żądanie zużyło mniej niż 800 tokenów.
Od klasyfikacji do pull requestu
Automatyczne etykietowanie można połączyć z systemem, który rzeczywiście wykonuje zgłoszone zadania. Autor pokazuje drugie repozytorium, związane z grą strategiczną czasu rzeczywistego. Utworzył w nim zgłoszenie z prośbą o większą różnorodność oprawy wizualnej. Zostało ono zaklasyfikowane jako nowa funkcja i przypisane Claude’owi.
Po nadaniu etykiety „ready” status zmienia się na „factory running”. Oznacza to, że jeden z agentów rozpoczął pracę. Po jej zakończeniu ma utworzyć pull request, który autor będzie mógł przejrzeć i połączyć z projektem. Zapowiada, że odsyłacz do materiału o budowie takiej „fabryki oprogramowania” umieści w opisie filmu.
Na koniec autor zaprasza do swojej społeczności Agentic Labs w serwisie Skool. Oferuje tam kurs o pracy z agentami programistycznymi, spotkania na żywo i cotygodniowe sesje poświęcone wybranym tematom. Jedna z zapowiedzianych sesji ma dotyczyć Jev.