Saltearse al contenido

Subir recursos

Cada componente busca sus archivos en un sitio concreto y con un nombre concreto. Por eso, en vez de un único botón de subir, hay un asistente para cada tipo de recurso: te pide lo que necesita el componente, comprueba el archivo antes de guardarlo y al terminar te dice qué escribir en cada campo.

El menú Subir

Pulsa Subir en la cabecera de la página de almacenamiento y elige qué vas a subir.

El menú Subir con un asistente por tipo de recurso: SQLite, Chroma, FAISS, modelo entrenado, Python Code, skill y archivos de un flujo

Todos los asistentes funcionan igual:

  1. Arrastra el archivo a la zona punteada o haz clic para elegirlo. Si el tipo no es el que espera el componente, lo verás antes de subir nada.
  2. Indica dónde va: la carpeta, el nombre o el flujo. El asistente propone un nombre válido a partir del archivo. Por ejemplo, Tienda Online.sqlite3 se convierte en Tienda_Online, porque los campos de los componentes no admiten espacios.
  3. Si ya existe algo con ese nombre, verás un aviso y tendrás que marcar que quieres reemplazarlo. Nunca se sobrescribe nada sin preguntar.
  4. Pulsa Subir. Al terminar verás qué se ha guardado y los valores para el componente, con botones para copiarlos.

Los archivos grandes se envían por partes y se reintentan solos si la conexión falla un momento. El límite es de 5 GB por archivo.

Base de datos SQLite

Para usar en el componente SQLite una base de datos que ya tienes en tu equipo.

El asistente de SQLite con el archivo elegido, el Persist Directory y el Database Name

  • Archivo: .db, .sqlite o .sqlite3. Antes de subirlo se comprueba que es de verdad una base SQLite.
  • Persist Directory: la carpeta donde se guarda. Elige una que exista o crea una nueva con + Nueva carpeta…. default es la que usa el componente cuando el campo está vacío.
  • Database Name: el nombre con el que la abrirá el componente. Se guarda siempre como <nombre>.db, aunque el archivo original fuera .sqlite.

Al terminar, NappAI abre la base para comprobar que no está dañada y te muestra sus tablas con su número de filas:

El resultado: la ruta donde se guardó, las tablas con sus filas y los valores para los componentes SQLite y Amazon S3

En el componente SQLite, escribe esos dos valores y usa la operación SQL para consultarla. Si conectas su salida Database Info a un SQL Agent, podrás preguntarle en lenguaje natural.

Base de datos Chroma

Para usar en Chroma DB una base vectorial ya creada: la que descargaste de otra instalación de NappAI o una que creaste en tu equipo.

  • Archivo: un .zip con la carpeta completa de la base. Sirve tal cual el ZIP que da la descarga de una carpeta de Chroma DB.
  • Persist Directory: el nombre de la carpeta. Si eliges una existente, su contenido se sustituye por el del ZIP.

Antes de guardarla, NappAI comprueba que la base se puede abrir y lee sus colecciones. Si no es una base válida, no se toca nada. Al terminar verás un Collection Name por cada colección.

El resultado de subir una base Chroma: la carpeta restaurada y el Collection Name y Persist Directory para Chroma DB

En el componente, deja vacío Chroma Server Host para que use la carpeta local.

Índice FAISS

Para usar en el componente FAISS un índice ya creado.

  • Archivo: el .zip de la carpeta del índice (el de la descarga), o sus dos archivos, el .faiss y el .pkl con el mismo nombre.
  • Persist Directory: la carpeta del índice.

Al terminar verás el Index Name: es el nombre de esos archivos sin la extensión.

Conecta al componente el mismo modelo de embeddings con el que se creó el índice: así las búsquedas encuentran lo que buscas.

Modelo entrenado

Para usar un modelo .joblib entrenado en NappAI con Predictive Model, Recommender o Text Classifier, por ejemplo uno descargado de otra instalación de NappAI.

El asistente de modelo: el tipo de modelo, el archivo .joblib y el Model Name

  • Tipo de modelo: el componente que lo va a usar.
  • Model Name: el nombre que elegirás en el campo Model Name del componente, con las operaciones de predicción o evaluación. Solo admite letras, números, ., - y _.

Sirven los modelos guardados por estos mismos componentes.

Archivos para Python Code

Para que tu código del componente Python Code lea datos, modelos o cualquier archivo.

  • Volume Directory: el volumen. Elige uno existente o crea uno nuevo.
  • Archivo: cualquier archivo, o varios a la vez.
  • Si subes un .zip, puedes marcar Descomprimir como volumen completo para restaurar un volumen entero, por ejemplo uno que descargaste. Si no lo marcas, el ZIP se guarda tal cual dentro del volumen.

En el componente, escribe el Volume Directory. Dentro del código, la variable volume es la ruta de esa carpeta:

with open(f"{volume}/ventas_octubre.csv") as archivo:
ventas = archivo.read()

Cómo usarlo te da la ruta exacta de cada archivo para copiarla al código. Lo que tu código escriba en volume también se guarda y estará en la siguiente ejecución.

Skill

Para importar una skill y usarla en Stored Skill.

  • Archivo: un .zip o .skill con su SKILL.md.

Se importa exactamente igual que desde Mis Skills, con las mismas comprobaciones, y el nombre de la skill sale de su SKILL.md. Después aparece en el campo Skill de Stored Skill. Para editarla, ve a Mis Skills.

Archivos de un flujo

Para los documentos, imágenes, CSV o audios que leen componentes como File, Image File, CSV to Data List o Video and Audio Loader.

  • Flujo: el flujo en cuya carpeta se guardan.
  • Archivo: uno o varios, de cualquier tipo.

Cómo usarlo te da el valor del campo de archivo del componente con el formato <id-del-flujo>/<archivo>, que funciona desde cualquiera de tus flujos, no solo desde ese.

Archivos

La sección Archivos (la carpeta files) es tu espacio propio de archivos: guardas en ella lo que quieras, con las carpetas que quieras, y tus flujos la usan con los componentes de NappAI Storage. No pertenece a ningún flujo ni a ningún componente concreto.

  • Desde el explorador: ábrela y sube archivos o carpetas con el botón Subir o arrastrándolos. También puedes crear carpetas, renombrar y eliminar.
  • Desde un flujo: Storage Files lista, lee, guarda, mueve, copia, elimina y crea enlaces de descarga de archivos; Storage Folders hace lo mismo con carpetas, y Storage Search busca archivos por nombre, tipo, fecha o tamaño.

En esos componentes, una ruta sin sección, como informes/q3.pdf, está dentro de Archivos (files/informes/q3.pdf). Las rutas completas de otras secciones, como pycode_data/ventas/datos.csv o <id-del-flujo>/notas.txt, también funcionan.

Un flujo puede leer todo tu almacenamiento, pero solo puede cambiar Archivos, las carpetas de archivos de cada flujo y los volúmenes de Python Code. Las bases de datos vectoriales, las bases SQLite, los modelos entrenados y las skills son de solo lectura para un flujo: puede copiarlos, pero no modificarlos ni eliminarlos.

Subir desde el explorador

En el explorador también puedes subir directamente a la carpeta abierta, con el botón Subir o arrastrando archivos y carpetas enteras a la ventana. Cada sección solo acepta lo que su componente puede leer, y el explorador te avisa si arrastras algo que no corresponde. En las secciones de Chroma, FAISS y Python Code aparece además el botón para subir un ZIP completo.

El panel de subidas

Las subidas se ven en un panel en la esquina inferior derecha, que sigue disponible aunque cierres el explorador o el asistente.

El panel de subidas con dos archivos subidos y uno pendiente de decidir si se reemplaza

  • Cada archivo muestra su progreso, la velocidad y su estado: en cola, subiendo, verificando o subido.
  • La X cancela una subida en curso.
  • Si ya existe un archivo con el mismo nombre, la subida se queda esperando a que elijas Reemplazar u Omitir.
  • Si una subida falla, el motivo aparece debajo y puedes reintentarla con la flecha circular.
  • Limpiar quita de la lista las subidas terminadas.

Si algo falla

MensajeQué hacer
El archivo no es una base de datos SQLiteTiene la extensión, pero su contenido no es SQLite. Comprueba que es el archivo correcto.
La base de datos está dañada y no se puede abrirVuelve a exportarla desde su origen.
El ZIP no contiene una base Chroma válidaComprime la carpeta completa de la base, o usa el ZIP que da la descarga.
No hay un índice FAISS completoFalta el .faiss o el .pkl, no tienen el mismo nombre o hay otros archivos en el ZIP.
El ZIP intenta escribir fuera de su carpetaEl ZIP contiene rutas peligrosas y se rechaza entero. Vuelve a crearlo.
Ya existe con ese nombreMarca la opción de reemplazar o elige otro nombre.
Este tipo de archivo no se puede subir a esta carpetaCada sección solo admite lo que lee su componente. Usa el asistente de Subir que corresponda.
El servidor no tiene espacio libre suficienteContacta con el soporte de NappAI.