distributed-llm-pretraining-torchtitan
Trenuj ogromne modele językowe na setkach GPU-ów z PyTorch i równoległością 4D
Instalacja
Wybierz klienta i sklonuj repozytorium do odpowiedniego katalogu skilli.
Instalacja
O skillu
Umożliwia rozproszone pretraining modeli LLM (Llama 3.1, DeepSeek V3 i inne) przy użyciu TorchTitan — natywnej platformy PyTorch do szkolenia na dużą skalę. Obsługuje 4D parallelism (FSDP2, tensor parallel, pipeline parallel, context parallel), Float8, torch.compile i rozproszone checkpointy. Skaluje się od 8 do 512+ GPU-ów z przyspeszeniem 65%+ na kartach H100 w porównaniu do standardowych podejść.
Jak używać
Zainstaluj TorchTitan za pomocą pip install torchtitan lub klonując repozytorium PyTorch i instalując zależności z requirements.txt. Wymaga PyTorch w wersji 2.6.0 lub nowszej.
Pobierz tokenizer modelu, który chcesz trenować. Przejdź na https://huggingface.co/settings/tokens, wygeneruj token dostępu, a następnie uruchom python scripts/download_hf_assets.py --repo_id meta-llama/Llama-3.1-8B --assets tokenizer --hf_token=TWÓJ_TOKEN (zastąp TWÓJ_TOKEN swoim tokenem HuggingFace).
Przygotuj plik konfiguracji treningowej w formacie TOML. Możesz użyć istniejącego szablonu z ./torchtitan/models/llama3/train_configs/llama3_8b.toml lub stworzyć własny, definiując parametry takie jak folder wyjściowy, rozmiar modelu i ustawienia paralelizacji.
Uruchom trening na dostępnych GPU-ach, wykonując ./run_train.sh z wskazaniem pliku konfiguracji. Na pojedynczym węźle z 8 GPU-ami użyj CONFIG_FILE="./torchtitan/models/llama3/train_configs/llama3_8b.toml" ./run_train.sh.
Monitoruj postęp treningowy i zarządzaj checkpointami. TorchTitan automatycznie zapisuje punkty kontrolne w folderze dump_folder zdefiniowanym w konfiguracji, co umożliwia wznowienie treningów w razie przerwania.