Distribuir Modelos en varios Discos Duros usando Enlaces Simbólicos (Pinokio)

Distribuir Modelos en varios Discos Duros usando Enlaces Simbólicos (Pinokio)
Distribuir Modelos en varios Discos Duros usando Enlaces Simbólicos (Pinokio)

Aprende a distribuir los modelos de IA de Pinokio en varios discos duros utilizando enlaces simbólicos (symlinks) para gestionar eficientemente el espacio en sistemas Linux.

💾 Distribuir Modelos usando Pinokio en varios discos duros

A medida que trabajamos con modelos de Inteligencia Artificial más grandes y numerosos, es común encontrarse con problemas de espacio en el disco principal. Pinokio, por defecto, almacena todos los archivos descargados en su directorio de inicio, generalmente ubicado en ~/pinokio o en una ruta similar dentro de tu Home.

Una solución eficiente para esto es distribuir las carpetas de modelos más grandes en discos duros adicionales utilizando enlaces simbólicos (symlinks).

Paso 1: Identificación del problema y de la ubicación

Asegúrate de tener Pinokio instalado. En tu caso, la ruta principal de Pinokio está ubicada en un disco duro específico (ejemplo de la imagen: un disco montado por UUID).

Directorio de inicio de Pinokio

El objetivo es liberar espacio en este disco principal moviendo las carpetas grandes a otro volumen.

Paso 2: Identificación y Montaje de Discos Adicionales

Asegúrate de tener los discos adicionales montados y accesibles. Puedes verificar los discos montados y sus rutas (como /media/jacrdeveloper/data_2) con:

lsblk

O simplemente usando el explorador de archivos de tu sistema.

Paso 3: Mover los Modelos y Crear el Enlace Simbólico

Para cada modelo que desees mover (por ejemplo, modelo1.git), debes seguir el siguiente proceso:

1. Copia el modelo al nuevo disco

Copia recursivamente la carpeta completa del modelo al nuevo destino. Es recomendable mantener una estructura de directorio similar (pinokio/api/modelo1.git) para mayor orden.

Ejemplo de comando de copia (Asegúrate de reemplazar todas las rutas):

# Copiar el modelo al nuevo disco (/media/usuario/data_2)
cp -r /ruta/actual/pinokio/api/modelo1.git /media/jacrdeveloper/data_2/pinokio/api/modelo1.git
Modelos copiados en el nuevo disco

2. Eliminar la carpeta original

Una vez confirmada la copia, elimina la carpeta original del disco principal para liberar el espacio.

# Eliminar el directorio original
rm -rf /ruta/actual/pinokio/api/modelo1.git

Finalmente, crea un enlace simbólico que apunte del directorio original (vacío) al nuevo destino. Este enlace engaña a Pinokio haciéndole creer que el archivo sigue en la ubicación antigua.

Sintaxis: ln -s [DESTINO_REAL] [UBICACIÓN_FALSA]

# Crear enlace simbólico:
# ln -s [ruta_en_disco_2] [ruta_original_en_disco_1]
ln -s /media/jacrdeveloper/data_2/pinokio/api/modelo1.git /ruta/actual/pinokio/api/modelo1.git
Enlace simbólico creado

Ahora, cuando Pinokio intente acceder a modelo1.git en su ubicación original, el enlace simbólico lo redirigirá instantáneamente al modelo real en el segundo disco duro.


Nota Importante: La única pega de este método es que el front-end de Pinokio puede dejar de mostrar en el listado los iconos o detalles de los modelos movidos a través de symlinks, aunque el modelo funcionará perfectamente al ejecutarse.