system-one-design
Zamień krok pytaj-i-wyciągaj na typowane pytania — po jednym warunku, nazwy opcji bez werdyktu, liczba w odpowiedzi — i nigdy nie pozwól, by ta liczba sama zatrzymała pracę.
Nadane przez osobę, która przeczytała kartę, a nie deklarowane przez sam plik. Karta, którą agent destyluje podczas przebiegu z niezaufaną treścią, rodzi się skażona i czeka na recenzję, zanim kiedykolwiek zostanie pobrana.
Kiedy przychodzi na myśl
- wyciąganie tak lub nie z prozy modelu
- klasyfikowanie wielu elementów modelem
- proszenie modelu o ocenę czegoś
- odpowiedź modelu decyduje, co stanie się dalej
Wartość zwykle kryje się w Unikaj i Sprawdź. Rób to sekcja, którą pisze każdy.
Treść karty powyżej to tłumaczenie. Angielski oryginał jest tym, co importuje CLI, co agent czyta w czasie działania i czego dotyczy hasz poniżej.
Wyzwalacz
Krok zadaje modelowi pytanie, którego odpowiedź to jedna z kilku znanych wartości — tak lub nie, jedna z pięciu etykiet, poziom od niskiego do wysokiego — a potem odczytuje tę wartość z napisanej prozy. Albo to samo pytanie zadaje się setkom elementów. To typowana decyzja w przebraniu czatu.
Rób
- Zadaj je jako typowane pytanie (
chimera decide,POST /api/decidelub narzędziedecide):nouldla tak/nie,choicedla jednej z zestawu,scoredla uporządkowanych poziomów. Wraca prawdopodobieństwo. - Jeden warunek na pytanie. „Czy to błąd i czy pochodzi z bazy danych?” to dwa pytania; zadaj oba i połącz odpowiedzi w kodzie, gdzie reguła jest widoczna.
- Nadaj opcjom nazwy, które nie niosą werdyktu (nie "yes", "safe", "pass"), a znaczenie wpisz
w kryteria. Opcja zbiorcza ("other") to miejsce, gdzie trafia niepewny odczyt — daj jej wąskie
kryterium albo ją pomiń. Niech pierwsze słowa opcji się różnią: lokalny model odczytuje etykietę po pierwszym tokenie, więc
codingicoding_agentnigdy nie dadzą się rozróżnić (w ten sposób 24 z 231 publicznych elementów JevBench zostały nieodczytane). O opcji zbiorczej, zmierzone na 1000 tematów commitów: szerokie „other” pochłonęło 78% elementów należących do nazwanej opcji, a wąskie 58%; usunięcie go podniosło F1 nazwanych klas z 0,24 do 0,43, kosztem tego, że elementy naprawdę spoza zbioru trafiają do nazwanej opcji. - Pokaż modelowi tylko to, co jest oceniane: nie wyjście narzędzi dookoła, nie zdanie, które przemawia za odpowiedzią.
- Każdy próg wybieraj na podstawie oznaczonych przykładów, nigdy na oko, i trzymaj liczbę obok decyzji, którą zasiliła.
- Arytmetykę, daty i liczenie zostaw w kodzie: oblicz fakt, umieść go w stanie i zapytaj o niego. Model decyzyjny czyta; nie liczy (na trudnym poziomie JevBench lokalny model trafił 1 z 15 elementów z datami i liczbami).
Unikaj
Pozwalania, by liczba kończyła, pomijała lub zatwierdzała pracę. Decyzja może dodać kontroli — przegląd, ostrzeżenie, drugie sprawdzenie — i nic więcej: jedyna decyzja w tym projekcie, która mogła powiedzieć „zatrzymaj się”, pogorszyła każdy model, którym sterowała, i tym bardziej, im lepszy był model.
Unikaj też czytania odpowiedzi po rozumowaniu (liczba zapada się do 0 lub 1), dzielenia jednej oceny na atomy opisujące coś, co mają obie klasy (atom „niszczy dane?” oznaczał uprawnione sprzątanie tak samo chętnie jak ataki) i traktowania surowego prawdopodobieństwa jak skalibrowanego. Utrzymuj stan oszczędny: wiersz dla każdego faktu, który nie zaszedł (kolumna „none”), przesuwał liczbę przy każdym elemencie, a ta sama powtórzona treść czyta się jak wzorzec, którego nie ma.
Sprawdź
- Linter akceptuje każde pytanie (odrzucone pytanie nigdy nie trafia do modelu).
- Każde pytanie odpowiada w obie strony na twoich elementach; takie, które zawsze mówi to samo, czyta format, nie tekst.
- Przy długim stanie i modelu lokalnym prompt mieści się w oknie kontekstu — ciche obcięcie wygląda jak wynik modelu.
- Gdzieś oznaczona próbka pokazuje, że liczba rozdziela przypadki, które mają znaczenie — i obejmuje każdy sposób, w jaki decyzja się myli, po obu stronach; próbka z jednego rodzaju błędu kalibruje tylko ten rodzaj.
- Zanim odczytasz zmianę sformułowania jako efekt, zadaj niezmienione pytanie ponownie i zobacz, jak bardzo liczba zmienia się sama.
Ryzyko
Typowana odpowiedź wygląda pewniej niż proza, a nie jest: mały model może dobrze porządkować, a mimo to pewnie mylić się w środku swojej skali. Traktuj nieskalibrowaną liczbę jako wskazówkę, zapisz ją i skalibruj na własnych etykietach, zanim jakikolwiek próg coś znaczy.
Jak użyć
Karta to dane. Sklonuj repozytorium i zaimportuj ją ścieżką — to, co przychodzi przez sieć, jest traktowane jako skażone i wstrzymywane do zatwierdzenia. Taki jest pożądany sposób działania i dlatego nie ma tu instalatora w jednej linijce.
git clone https://github.com/brcampidelli/chimera-agent.gitchimera skills-import chimera-agent/skills/system-one-design/SKILL.mdIntegralność
SHA-256 pliku w postaci opublikowanej. Importujący może sprawdzić, że otrzymał dokładnie to, co pokazała ta strona.
347bfae9f826835f3351a60983b826f9b59fe5a7a9c1b87bf1a7bc3415ece699