Toolverse
Wszystkie skille

model-pruning

autor: davila7

Zmniejsz rozmiar modeli LLM i przyspeszy wnioskowanie technikami pruning bez retrainingu

Instalacja

Wybierz klienta i sklonuj repozytorium do odpowiedniego katalogu skilli.

Instalacja

Szybkie info

Autor
davila7
Wyświetlenia
17

O skillu

Umożliwia kompresję dużych modeli językowych o 40–60% przy minimalnej stracie dokładności. Wykorzystaj techniki Wanda i SparseGPT do osiągnięcia sparsity na poziomie 50% i przyspieszenia inferecji 2–4×. Idealne do wdrażania na urządzeniach z ograniczoną mocą obliczeniową, takich jak urządzenia mobilne czy edge'owe. Obsługuje pruning bez retrainingu, strukturalny i niestrukturalny, oraz N:M sparsity.

Jak używać

  1. Zainstaluj wymagane zależności: sklonuj repozytorium Wanda (https://github.com/locuslab/wanda), przejdź do katalogu i uruchom pip install -r requirements.txt. Opcjonalnie zainstaluj SparseGPT dla metod drugiego rzędu. Zainstaluj torch, transformers i accelerate poleceniem pip install torch transformers accelerate.

  2. Załaduj model do kompresji, na przykład Llama-2-7b, używając AutoModelForCausalLM.from_pretrained() z torch_dtype=torch.float16 i device_map="cuda" dla GPU. Załaduj odpowiadający tokenizer AutoTokenizer.from_pretrained().

  3. Przygotuj dane kalibracyjne — małą próbkę tekstu reprezentatywną dla Twojego przypadku użycia. Dane te będą użyte do obliczenia wag i aktywacji bez pełnego retrainingu modelu.

  4. Zastosuj pruning Wanda, która jest metodą one-shot nie wymagającą retrainingu. Wanda oblicza iloczyn wag i aktywacji, aby zidentyfikować mniej ważne neurony do usunięcia, osiągając docelowy poziom sparsity (np. 50%).

  5. Zweryfikuj dokładność skompresowanego modelu na zbiorze testowym. Metoda Wanda gwarantuje stratę dokładności poniżej 1% przy redukcji rozmiaru o 40–60%.

  6. Wdróż skompresowany model na docelowym sprzęcie — urządzeniach mobilnych, edge'owych lub serwerach z ograniczoną pamięcią. Sparsity umożliwia przyspieszenie inferecji dzięki wsparciu akceleratorów sprzętowych.

Podobne skille