À propos du projet
AirLLM permet l'inférence et le fine-tuning de modèles de langage à plusieurs milliards de paramètres sur des GPU grand public avec aussi peu que 2 Go de VRAM. Il fonctionne en ne gardant qu'une seule couche de transformer sur le GPU à tout moment — les poids sont diffusés depuis le disque couche par couche — de sorte que les besoins en mémoire GPU dépendent de la taille de la couche, et non de la taille totale du modèle.
Capacités principales :
- Inférence pour des modèles allant d'environ 8B à 2,8T de paramètres sur un seul GPU bas de gamme
- Quantification par blocs optionnelle (4 bits ou 8 bits) pour une inférence jusqu'à 3× plus rapide
- Fine-tuning LoRA de modèles gigantesques sur une faible VRAM ; les poids de base gelés sont diffusés depuis le disque tandis que les adaptateurs restent résidents
- Prise en charge des architectures MoE, Flash, FP8 et vision native (VL)
- Multiplateforme : Linux/CUDA et macOS (Apple Silicon via MLX)
Les familles de modèles prises en charge incluent Llama (2/3/3.1/3.3/4), Qwen (1/2/2.5/3/3.5/3.8, dense et MoE), DeepSeek (V2/V3/R1), Mistral & Mixtral, Phi, Gemma, ChatGLM, Baichuan, InternLM, Yi et Kimi K3.
Exemple d'utilisation :
```python
from airllm import AutoModel
model = AutoModel.from_pretrained("Qwen/Qwen3-32B")
input_tokens = model.tokenizer(text, return_tensors="pt", truncation=True, max_length=128)
generation_output = model.generate(input_tokens['input_ids'].cuda(), max_new_tokens=20)
```
Avec compression optionnelle :
```python
model = AutoModel.from_pretrained("garage-bAInd/Platypus2-70B-instruct", compression='4bit')
```
Exemple d'entraînement (LoRA) :
```bash
python air_llm/examples/train_qwen38_flash_next_lora.py --data my_data.jsonl --seq-len 512 --save-adapter adapter.pt
```
Options de configuration : compression (none/4bit/8bit), profiling_mode, layer_shards_saving_path, hf_token, prefetching (activé par défaut), delete_original. Le modèle original est découpé et mis en cache couche par couche lors de la première exécution, ce qui nécessite un espace disque suffisant dans le répertoire de cache de Hugging Face.
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.