Sobre el proyecto

AirLLM permite la inferencia y el ajuste fino de modelos de lenguaje de miles de millones de parámetros en GPU de consumo con tan solo 2 GB de VRAM. Funciona manteniendo solo una capa de transformer en la GPU en cada momento — los pesos se transmiten desde el disco capa por capa — por lo que los requisitos de memoria de la GPU dependen del tamaño de la capa, no del tamaño total del modelo. Capacidades clave: - Inferencia para modelos que van desde ~8B hasta 2,8T parámetros en una sola GPU de gama baja - Cuantización opcional por bloques (4 bits u 8 bits) para una inferencia hasta 3× más rápida - Ajuste fino LoRA de modelos enormes con poca VRAM; los pesos base congelados se transmiten desde el disco mientras los adaptadores permanecen residentes - Soporte para arquitecturas MoE, Flash, FP8 y visión nativa (VL) - Multiplataforma: Linux/CUDA y macOS (Apple Silicon mediante MLX) Las familias de modelos compatibles incluyen Llama (2/3/3.1/3.3/4), Qwen (1/2/2.5/3/3.5/3.8, densos y MoE), DeepSeek (V2/V3/R1), Mistral y Mixtral, Phi, Gemma, ChatGLM, Baichuan, InternLM, Yi y Kimi K3. Ejemplo de uso: ```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) ``` Con compresión opcional: ```python model = AutoModel.from_pretrained("garage-bAInd/Platypus2-70B-instruct", compression='4bit') ``` Ejemplo de entrenamiento (LoRA): ```bash python air_llm/examples/train_qwen38_flash_next_lora.py --data my_data.jsonl --seq-len 512 --save-adapter adapter.pt ``` Opciones de configuración: compression (none/4bit/8bit), profiling_mode, layer_shards_saving_path, hf_token, prefetching (activado por defecto), delete_original. El modelo original se divide y se almacena en caché capa por capa en la primera ejecución, por lo que se requiere suficiente espacio en disco en el directorio de caché de Hugging Face.