Przejdź do treści

Skills

chimera-give-the-denominator

Wskaźnik bez mianownika i bez swojego składu wprowadza w błąd, choć każda cyfra pozostaje prawdziwa — podaj n i podaj, jaka część licznika to już znany szum.

WzorzecPochodzenie: cleanStatus: activev0.1.0 · Apache-2.0

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

  • podawanie odsetka niepowodzeń
  • procent w podsumowaniu
  • liczba wygląda alarmująco
  • porównanie przed i po zmianie
  • opisywanie wyniku benchmarku

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

Masz zamiar umieścić wskaźnik, procent albo liczbę w raporcie, komunikacie commita, tabeli benchmarku albo wiadomości do kogoś, kto na tej podstawie zadziała. "34% uruchomień zawiodło." "Błędy w górę 3x." "Pokrycie spadło."

Nie dotyczy to liczby, którą czytelnik potrafi już rozłożyć: pojedynczego zmierzonego opóźnienia, numeru wersji, liczby plików w diffie, który widzi. Ryzyko dotyczy konkretnie agregatu — wielkości policzonej przez podzielenie jednego wybranego przez ciebie zbioru przez drugi wybrany przez ciebie zbiór, gdzie oba wybory są w zdaniu niewidoczne.

Rób

  1. Zawsze pisz surowe liczby obok wskaźnika: 34% (17/50 uruchomień). Jeśli nie potrafisz podać mianownika, nie wiesz jeszcze, co zmierzyłeś.
  2. Powiedz, który to mianownik. Uruchomienia podjęte i uruchomienia zakończone to różne zbiory, a dzielenie przez zakończone po cichu kasuje wywalenia — dokładnie tę populację, przez którą tam zajrzałeś.
  3. Rozbij licznik według przyczyny, zanim go opublikujesz. Z tych 17 porażek ile to już otwarte zgłoszenie, znany zawodny timeout dostawcy, fixture zawodzący na tej maszynie? Raportuj rozbicie: 17 zawiodło — 14 to znany connect timeout, 3 niewyjaśnione.
  4. Uruchom ten sam pomiar na niezmienionej linii bazowej i odejmij. Liczy się ta część, która nie przeżywa na main.
  5. Gdy n jest na tyle małe, że jedna próbka więcej przesunęłaby główną liczbę o kilka punktów, wstaw do raportu to zdanie zamiast procentu.

Unikaj

"wskaźnik porażek 34%" — prawda, i zaprasza czytelnika, by spędził dzień na timeoucie, który zgłosił już w zeszłym tygodniu. Napisz "17/50 zawiodło; 14 to ollama connect timeout (zgłoszenie otwarte), 3 są nowe", a dzień zostanie wydany na te 3.

Unikaj mianownika ocalałych. rate = failures / completed to klasyk: uruchomienia, które padły, zanim wyprodukowały wiersz, są nieobecne po obu stronach, więc metryka poprawia się w miarę, jak system się psuje.

Unikaj procentów przy mianowniku poniżej mniej więcej dwudziestu bez dołączonego n. 50% → 67% to albo prawdziwa poprawa, albo jedno uruchomienie z trzech, które się przewróciło, a na stronie są nie do odróżnienia.

Chimera opublikowała wycofanie dokładnie tego kształtu i to jest powód istnienia tej karty. bench/learning_lift/RESULTS.md raportował istotną wewnątrzrodzinną lukę transferu +6,7%, a uruchomienie 7 — ten sam pomiar przy odpowiedniej mocy — go nie utrzymało. Liczba była prawdziwa, arytmetyka poprawna, a i tak najlepiej tłumaczyła ją fluktuacja małej próbki. Wycofanie było możliwe dlatego, że liczba uruchomień była publikowana obok procentu od samego początku. Gdyby strona niosła tylko "+6,7%", nie byłoby czego badać ponownie, a ustalenie po cichu stałoby się faktem.

Sprawdź

Podaj to zdanie komuś, kto nie widzi twoich danych, i poproś o odtworzenie surowych liczb. Jeśli nie potrafi, zdanie jest niekompletne — to test zero-jedynkowy i zajmuje dziesięć sekund.

Drugie sprawdzenie, gdy liczba napędza decyzję: powtórz pomiar na niezmodyfikowanej linii bazowej. Jakakolwiek część licznika, która się tam odtwarza, nie dotyczy twojej zmiany, a każde twierdzenie na niej zbudowane dotyczy harnessu.

Ryzyko

Zastosowane do wszystkiego zamienia czytelną prozę w bagno nawiasów, a czytelnicy zaczynają nawiasy pomijać — co jest gorsze niż pierwotny problem, bo teraz mianowniki są na stronie i nieprzeczytane. Zarezerwuj pełne rozbicie dla liczb, na podstawie których ktoś zadziała.

Ostrzejsze ryzyko biegnie w drugą stronę: rozbijanie po przyczynach jest zarazem narzędziem do sprawiania, by prawdziwy problem wyglądał na mały. Nazwanie czternastu porażek "znanym szumem" jest uczciwe tylko wtedy, gdy etykieta została przypisana, zanim zobaczyłeś, w którą stronę pomaga. Jeśli łapiesz się na poszerzaniu kubełka "znane" w trakcie pisania podsumowania, liczba była wnioskiem, a nie dowodem.

Podany mianownik też nie ratuje złego mianownika. 2/3 (n=3) to wciąż trzy uruchomienia; mianownik czyni słabość widoczną, a nie naprawia jej.

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.git
chimera skills-import chimera-agent/skills/chimera-give-the-denominator/SKILL.md

Integralność

SHA-256 pliku w postaci opublikowanej. Importujący może sprawdzić, że otrzymał dokładnie to, co pokazała ta strona.

a95d8e10515e848efd16e1566d93454164e85d57a7dcb8aa35e7a2e593790766

Przeczytaj kartę w repozytorium