Saltar al contenido principal

Variables de Entorno

Configura el comportamiento de AITraining mediante variables de entorno.

Autenticación

Hugging Face

export HF_TOKEN="hf_xxxxxxxxxxxxxxxxxxxxx"
Requerido para:
  • Modelos privados
  • Datasets privados
  • Push a Hub

Weights & Biases

export WANDB_API_KEY="xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
Requerido al usar --log wandb.

Configuración de GPU

Seleccionar GPUs

# Usar solo GPU 0
export CUDA_VISIBLE_DEVICES=0

# Usar GPUs 0 y 1
export CUDA_VISIBLE_DEVICES=0,1

# Deshabilitar GPU (solo CPU)
export CUDA_VISIBLE_DEVICES=""

Gestión de Memoria

# Limitar fragmentación de memoria y habilitar segmentos expandibles
export PYTORCH_CUDA_ALLOC_CONF=max_split_size_mb:512,expandable_segments:True

Sobrescribir GPU

# Forzar entrenamiento CPU (sobrescribir detección de GPU)
export AUTOTRAIN_FORCE_NUM_GPUS=0

# Forzar GPU única
export AUTOTRAIN_FORCE_NUM_GPUS=1

Configuraciones Mac (Apple Silicon)

Control MPS

# Deshabilitar MPS (forzar CPU en Mac)
export AUTOTRAIN_DISABLE_MPS=1

# Forzar habilitar MPS incluso con configuraciones incompatibles
export AUTOTRAIN_ENABLE_MPS=1
Cuando MPS está deshabilitado o es incompatible, AITraining establece automáticamente PYTORCH_ENABLE_MPS_FALLBACK=1 para fallback en CPU.

Configuraciones de Seguridad

Ejecución de Código Remoto

# Deshabilitar trust_remote_code para todo cargado de modelo (más seguro)
export ALLOW_REMOTE_CODE=false
Establecer ALLOW_REMOTE_CODE=false puede impedir cargar modelos que requieren código personalizado (como algunos modelos multimodales). El predeterminado es true.

Logging

Configuraciones W&B

export WANDB_PROJECT=my-project
export WANDB_ENTITY=my-team
export WANDB_MODE=offline  # No sincronizar con la nube

Configuraciones del Hub

Nombre de Usuario Predeterminado

export HF_USERNAME=my-username

Directorio de Caché

export HF_HOME=/path/to/cache
export TRANSFORMERS_CACHE=/path/to/cache

Configuraciones de Entrenamiento

Deshabilitar Telemetría

export HF_HUB_DISABLE_TELEMETRY=1

Modo Offline

export TRANSFORMERS_OFFLINE=1
export HF_HUB_OFFLINE=1

Ejemplos de Uso

Script de Configuración Completo

Crea un script de configuración setup_env.sh:
#!/bin/bash

# Autenticación
export HF_TOKEN="hf_your_token_here"
export WANDB_API_KEY="your_wandb_key"

# Configuraciones de GPU
export CUDA_VISIBLE_DEVICES=0,1

# Caché
export HF_HOME=~/.cache/huggingface

# Configuraciones del proyecto W&B
export WANDB_PROJECT=my-project
Ejecuta antes del entrenamiento:
source setup_env.sh
aitraining llm --train ...

Usando Archivos .env

Crea un archivo .env:
HF_TOKEN=hf_xxxxx
WANDB_API_KEY=xxxxx
CUDA_VISIBLE_DEVICES=0
Carga con:
export $(cat .env | xargs)
aitraining --config training.yaml

Variables Internas

Estas se establecen automáticamente por AITraining:
VariableValorPropósito
TF_CPP_MIN_LOG_LEVEL3Suprimir advertencias de TensorFlow
TOKENIZERS_PARALLELISMfalseDeshabilitar advertencias de paralelismo del tokenizer
BITSANDBYTES_NOWELCOME1Suprimir mensaje de bienvenida de bitsandbytes
AUTOTRAIN_TUI_MODE1Establecido al ejecutar en modo TUI

Variables de Debug

VariablePredeterminadoPropósito
PAUSE_ON_FAILURE1Pausar Space en fallo de entrenamiento (para backend Spaces)

Prioridad

Al usar --config, el archivo de configuración toma control total de los parámetros de entrenamiento. Las variables de entorno se usan para autenticación y configuraciones del sistema (como HF_TOKEN, WANDB_API_KEY, CUDA_VISIBLE_DEVICES).

Próximos Pasos