knowledge-distillation
Compress large language models using knowledge distillation from teacher to student models. Use when deploying smaller models with retained performance, transferring GPT-4 capabilities to open-source models, or reducing inference costs. Covers temperature scaling, soft targets,
Installation
Pick a client and clone the repository into its skills directory.
Installation
About this skill
Compress large language models using knowledge distillation from teacher to student models. Use when deploying smaller models with retained performance, transferring GPT-4 capabilities to open-source models, or reducing inference costs. Covers temperature scaling, soft targets, reverse KLD, logit distillation, and MiniLLM training strategies.
How to use
Zainstaluj wymagane biblioteki: pip install transformers datasets accelerate torch deepspeed wandb. Opcjonalnie sklonuj repozytorium MiniLLM z GitHub (microsoft/LMOps), aby uzyskać zaawansowane implementacje destylacji.
Przygotuj parę modeli: załaduj duży model nauczycielski (np. Llama-2-70b) i mały model ucznia (np. Llama-2-7b) za pomocą AutoModelForCausalLM z biblioteki transformers.
Wybierz technikę destylacji odpowiednią do Twojego przypadku użycia: skalowanie temperatury dla prostszych scenariuszy, destylację logitów dla transferu wiedzy z modeli proprietarnych, lub odwrotną dywergencję KL (MiniLLM) dla zaawansowanej kompresji.
Przygotuj dane treningowe — możesz użyć danych syntetycznych wygenerowanych przez model nauczycielski lub istniejące zbiory danych dostosowane do Twojej domeny.
Skonfiguruj parametry treningu w TrainingArguments (liczba epok, rozmiar batcha, współczynnik uczenia) i uruchom trening za pomocą klasy Trainer, monitorując postęp w Weights & Biases.
Po treningu przetestuj model ucznia na zadaniach docelowych, aby potwierdzić, że zachował co najmniej 90% wydajności oryginalnego modelu nauczycielskiego przy znacznie mniejszym rozmiarze.