nnsight-remote-interpretability
Badaj wnętrze sieci neuronowych bez GPU — lokalnie lub zdalnie na modelach gigantycznych
Instalacja
Wybierz klienta i sklonuj repozytorium do odpowiedniego katalogu skilli.
Instalacja
O skillu
nnsight to narzędzie do interpretacji i manipulacji wewnętrznymi stanami modeli PyTorch. Uruchamiaj eksperymenty mechanistycznej interpretacji na modelach 70B+ przez zdalne wykonanie NDIF, bez potrzeby lokalnych zasobów GPU. Ten sam kod działa zarówno na małych modelach lokalnie, jak i na ogromnych modelach zdalnie — wystarczy zmienić jeden parametr.
Jak używać
Zainstaluj nnsight i jego zależności: upewnij się, że masz PyTorch w wersji 2.0.0 lub wyższej oraz nnsight w wersji 0.5.0 lub wyższej dostępne w swoim środowisku Python.
Załaduj model PyTorch, z którym chcesz pracować — może to być dowolna architektura, od transformerów po Mambę czy modele niestandardowe.
Użyj kontekstu trace() do przechwycenia aktywacji: otwórz blok
with model.trace(prompt)i wskaż warstwy oraz tensory, które chcesz zapisać za pomocą.save(). Na przykładmodel.transformer.h[5].output[0].save()przechwyci wyjście piątej warstwy.Aby uruchomić eksperyment lokalnie na małym modelu, pozostaw domyślne ustawienia. Dla dużych modeli (70B+) dodaj parametr
remote=Truedo trace(), co automatycznie przesyła obliczenia na zdalne zasoby NDIF.Wykonaj interwencje na aktywacjach — możesz modyfikować wartości, przeprowadzać eksperymenty ablacyjne lub dzielić aktywacje między różne prompty, wszystko w ramach tego samego bloku trace().
Wyodrębnij wyniki z obiektu zwróconego przez trace() i analizuj uzyskane tensory — nnsight zwraca pełny dostęp do wewnętrznych stanów modelu bez konieczności reimplementacji.