Entorno de Python con uv
Para todo lo relacionado con Python —instalar la versión correcta, gestionar dependencias y ejecutar cada ejemplo— usamos uv: un único binario que sustituye a pip, venv, pyenv y pip-tools a la vez, y que es entre 10 y 100 veces más rápido que pip instalando paquetes. No necesitas tener Python instalado de antemano: uv también se encarga de eso.
Instalar uv
# macOS / Linux
curl -LsSf https://astral.sh/uv/install.sh | sh
# Windows (PowerShell)
powershell -ExecutionPolicy ByPass -c "irm https://astral.sh/uv/install.ps1 | iex"
Si prefieres otro método (Homebrew, pipx, el paquete de tu distribución de Linux…), la guía oficial de instalación los recoge todos. Cierra y vuelve a abrir la terminal si el comando uv no aparece disponible enseguida, y comprueba que todo ha ido bien:
uv --version
Instalar Python con uv
No hace falta que instales Python por tu cuenta ni que lo descargues de python.org: uv descarga e instala las versiones de Python que le pidas, aisladas del resto del sistema.
uv python install 3.12
Este libro usa Python 3.12 en todos sus ejemplos. Si ya tienes otra versión instalada en tu sistema (o ninguna), no importa: en el siguiente paso vas a fijar 3.12 por proyecto, así que cada ejemplo del libro usará siempre esa versión, independientemente de lo que haya instalado globalmente.
Crear un proyecto
Con uv y Python 3.12 ya disponibles, cada proyecto Python de este libro se crea igual:
uv init
uv python pin 3.12
uv init crea el pyproject.toml del proyecto; uv python pin 3.12 fija la versión de Python que usan todos los ejemplos del libro, incluso si tu sistema tiene otra versión instalada.
Instalar dependencias
Cada capítulo indica, en su propia sección “Preparar el proyecto”, qué paquetes necesita además de lo básico —normalmente el SDK de Anthropic y, cuando hay salida estructurada, Pydantic—. Añádelos con:
uv add <paquete>
No hace falta instalar de antemano todo lo que usará el libro: cada capítulo pide solo lo que necesita, cuando lo necesita.
Ejecutar los ejemplos
uv run main.py
uv run se asegura de que el entorno virtual del proyecto (.venv/, que nunca debe subirse a Git) existe y tiene las dependencias del pyproject.toml instaladas antes de ejecutar el script. El fichero uv.lock que genera uv fija las versiones exactas de cada dependencia, directa o transitiva: commitéalo para que cualquiera que clone el repo obtenga exactamente los mismos paquetes.