Phase 00 - Lesson 01
Entorno de Desarrollo
Tus herramientas moldean tu forma de pensar. Configúralas una vez, configúralas bien.
Tipo: Build Lenguajes: Python, Node.js, Rust Prerrequisitos: Ninguno Tiempo: ~45 minutos
Objetivos de Aprendizaje
- Configurar desde cero los toolchains de Python 3.11+, Node.js 20+ y Rust
- Configurar entornos virtuales y gestores de paquetes para builds reproducibles
- Verificar el acceso a la GPU con CUDA/MPS y ejecutar una operación de tensor de prueba
- Comprender el stack de cuatro capas: sistema, paquetes, runtimes, bibliotecas de IA
El Problema
Estás a punto de aprender ingeniería de IA a lo largo de más de 200 lecciones usando Python, TypeScript, Rust y Julia. Si tu entorno está roto, cada lección se convierte en una pelea contra las herramientas en lugar de aprendizaje.
La mayoría de las personas se saltan la configuración del entorno. Luego pasan horas depurando errores de import, conflictos de versiones y drivers CUDA faltantes. Vamos a hacer esto una vez, correctamente.
El Concepto
Un entorno de ingeniería de IA tiene cuatro capas:
graph TD
A["4. AI/ML Libraries\nPyTorch, JAX, transformers, etc."] --> B["3. Language Runtimes\nPython 3.11+, Node 20+, Rust, Julia"]
B --> C["2. Package Managers\nuv, pnpm, cargo, juliaup"]
C --> D["1. System Foundation\nOS, shell, git, editor, GPU drivers"]
Instalamos de abajo hacia arriba. Cada capa depende de la que está debajo de ella.
Build It
Paso 1: Base del Sistema
Revisa tu sistema e instala lo básico.
# macOS
xcode-select --install
brew install git curl wget
# Ubuntu/Debian
sudo apt update && sudo apt install -y build-essential git curl wget
# Windows (use WSL2)
wsl --install -d Ubuntu-24.04
Paso 2: Python con uv
Usamos uv — es de 10 a 100x más rápido que pip y gestiona los entornos virtuales automáticamente.
curl -LsSf https://astral.sh/uv/install.sh | sh
uv python install 3.12
uv venv
source .venv/bin/activate # o .venv\Scripts\activate en Windows
uv pip install numpy matplotlib jupyter
Verifica:
import sys
print(f"Python {sys.version}")
import numpy as np
print(f"NumPy {np.__version__}")
a = np.array([1, 2, 3])
print(f"Vector: {a}, dot product with itself: {np.dot(a, a)}")
Paso 3: Node.js con pnpm
Para las lecciones de TypeScript (agents, servidores MCP, aplicaciones web).
curl -fsSL https://fnm.vercel.app/install | bash
fnm install 22
fnm use 22
npm install -g pnpm
node -e "console.log('Node', process.version)"
Paso 4: Rust
Para lecciones críticas de rendimiento (inferencia, sistemas).
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
rustc --version
cargo --version
Paso 5: Julia (Opcional)
Para lecciones con mucha matemática donde Julia se destaca.
curl -fsSL https://install.julialang.org | sh
julia -e 'println("Julia ", VERSION)'
Paso 6: Configuración de la GPU (Si Tienes Una)
# NVIDIA
nvidia-smi
# Install PyTorch with CUDA
uv pip install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu124
import torch
print(f"CUDA available: {torch.cuda.is_available()}")
if torch.cuda.is_available():
print(f"GPU: {torch.cuda.get_device_name(0)}")
¿Sin GPU? Sin problema. La mayoría de las lecciones funcionan en CPU. Para lecciones con mucho entrenamiento, usa Google Colab o GPUs en la nube.
Paso 7: Verifica Todo
Ejecuta el script de verificación:
python phases/00-setup-and-tooling/01-dev-environment/code/verify.py
Use It
Tu entorno ya está listo para todas las lecciones de este curso. Esto es lo que usarás en cada caso:
| Lenguaje | Usado En | Gestor de Paquetes |
|---|---|---|
| Python | Fases 1-12 (ML, DL, NLP, Visión, Audio, LLMs) | uv |
| TypeScript | Fases 13-17 (Tools, Agents, Swarms, Infra) | pnpm |
| Rust | Fases 12, 15-17 (Sistemas críticos de rendimiento) | cargo |
| Julia | Fase 1 (Fundamentos de matemática) | Pkg |
Ship It
Esta lección produce un script de verificación que cualquier persona puede ejecutar para revisar su configuración.
Consulta outputs/prompt-env-check.md para un prompt que ayuda a los asistentes de IA a diagnosticar problemas del entorno.
Ejercicios
- Ejecuta el script de verificación y corrige cualquier falla
- Crea un entorno virtual de Python para este curso e instala PyTorch
- Escribe un "hello world" en los cuatro lenguajes y ejecuta cada uno