Skip to content
This page has been auto-translated and may contain errors.View in English

Ejecutar proyectos de modelos de código abierto localmente

Usa esta página para ejecutar cualquiera de los proyectos de modelos de código abierto extraídos. Uno carga un modelo Transformers.js en tu navegador; el otro ejecuta un servidor Express que llama a Ollama en tu computadora. Identifica cuál proyecto tienes y sigue solo esa configuración.

Qué necesitas primero

Instala una versión LTS compatible de Node.js. Se recomienda Node 24 e incluye npm. Si Node y npm son nuevos para ti, Running the code locally te guía a través de la instalación y verificación de ambos.

El proyecto Transformers.js necesita un navegador actual, una conexión a internet para su primera descarga de biblioteca y modelo, y suficiente almacenamiento y memoria del navegador para el modelo. No necesita una clave de API.

El proyecto Ollama también necesita Ollama, suficiente espacio en disco y memoria para el modelo mistral, y su servicio Ollama local en ejecución. No necesita una cuenta de proveedor ni clave de API.

JunoQué necesitas primero Instala Node.js LTS primero, luego elige la configuración para tu proyecto: un navegador actual y una conexión a internet para Transformers.js, o la app Ollama con su servicio en ejecución para la lección de Ollama.

Ninguna configuración necesita una clave de API, así que no hay clave que crear aquí.

JunoQué necesitas primero Ambos proyectos ejecutan el modelo en tu propio hardware, así que no hay clave de proveedor que configurar. Transformers.js descarga el modelo en la pestaña del navegador; la lección de Ollama necesita el servicio Ollama separado instalado y en ejecución antes de que su servidor pueda alcanzarlo.

Instala Node LTS de todas formas, porque npm impulsa ambas configuraciones.

JunoQué necesitas primero Dos formas de computar localmente significan dos presupuestos de recursos. La configuración del navegador depende de archivos remotos de biblioteca y modelo más caché, almacenamiento y memoria del navegador; la configuración de Ollama necesita el servicio nativo, pesos de modelo descargados y suficiente memoria libre y capacidad de procesador para la inferencia.

Verifica que tu máquina pueda sostener el modelo antes de empezar.

Identifica el proyecto que extrajiste

Abre una terminal en la carpeta extraída que contiene package.json:

bash
$ cd path-to-your-downloaded-project

Si el nombre de la carpeta no te dice cuál lección extrajiste, abre index.js. Una importación express significa la lección de Ollama, que necesita la reparación de paquete abajo. Una importación de @xenova/transformers de jsDelivr significa la aplicación del navegador, que funciona sin cambios.

JunoIdentifica el proyecto que extrajiste Abre tu terminal en la carpeta que contiene package.json, y verifica dónde estás antes de ejecutar cualquier cosa.

Luego mira la parte superior de index.js: express te lleva a la sección de Ollama, Transformers.js te lleva a la sección del navegador.

JunoIdentifica el proyecto que extrajiste Las dos descargas se ven iguales desde afuera pero funcionan de manera diferente: el proyecto del modelo del navegador comienza con Vite, mientras que el proyecto de Ollama es un servidor Node que también necesita el servicio Ollama separado.

Elige la sección que coincida con la tuya y sigue solo esa, porque los pasos de configuración no se mezclan.

JunoIdentifica el proyecto que extrajiste Identifica el proyecto por sus importaciones, no por el nombre de la carpeta. Ambos ZIPs incluyen un package.json de forma Vite, así que solo index.js los distingue.

Aplicar la reparación de Ollama al proyecto del navegador reemplazaría un script de inicio Vite funcional con uno Node que no puede servir la página.

Ejecuta el proyecto Transformers.js

Usa estas instrucciones para AI Models In The Browser With Transformers.js. Este proyecto necesita Node y npm para Vite.

Instálalo e inícialo:

bash
$ npm install
$ npm start

Abre la URL Local que imprime Vite, usualmente http://localhost:5173/. La página primero importa Transformers.js de jsDelivr y luego descarga el modelo de detección de objetos Xenova/yolos-tiny. Espera hasta que su estado cambie de Loading model... a Ready antes de seleccionar Detect Objects; el botón permanece deshabilitado hasta entonces.

La primera carga necesita una conexión a internet y puede tomar más tiempo que una página frontend ordinaria. El caché del navegador puede hacer que las cargas posteriores sean más rápidas. Si el estado nunca llega a Ready, abre la pestaña Network de DevTools: una solicitud jsDelivr bloqueada apunta a un problema de bloqueador de contenido o CDN, mientras que un archivo de modelo que crece lentamente significa que la descarga de pesos sigue en progreso. Detén Vite con Ctrl+C.

No se necesita credencial de proveedor

El modelo se ejecuta en tu navegador en lugar de a través de una API de inferencia alojada. No hay archivo .env ni clave de API que configurar para esta lección.

JunoEjecuta el proyecto Transformers.js Ejecuta npm install, luego npm start, abre la URL Local y espera a que el estado lea Ready antes de seleccionar cualquier cosa.

La primera descarga de modelo es la lenta. Si Ready nunca llega, verifica la pestaña Network en DevTools.

JunoEjecuta el proyecto Transformers.js Tres cosas se cargan en orden: Vite sirve la página, jsDelivr suministra la biblioteca y los pesos del modelo se descargan en el navegador para ejecutarse allí.

Esa primera carga está limitada por tu velocidad de descarga, así que un estado lento usualmente significa una descarga en progreso en lugar de un error.

JunoEjecuta el proyecto Transformers.js La página puede abrirse antes de que el modelo esté listo, porque index.js espera el pipeline en el nivel superior antes de habilitar el botón.

Cuando Ready nunca llega, la pestaña Network nombra la solicitud en falta: una solicitud jsDelivr bloqueada apunta a un bloqueador de contenido o CDN, un archivo de modelo que crece lentamente apunta a una descarga lenta de pesos.

Repara y ejecuta el proyecto Ollama

Usa estas instrucciones para Download and Run AI Models on Your Computer with Ollama. El ZIP exportado contiene el código de la lección Node, pero su package.json generado todavía describe un proyecto Vite. No puede ejecutarse localmente sin una pequeña reparación de paquete.

Después de instalar Ollama, asegúrate de que su servicio local esté en ejecución. Descarga el modelo nombrado por el código de la lección:

bash
$ ollama pull mistral
$ ollama ls

El segundo comando debe listar mistral. Dependiendo de tu sistema operativo, abrir la aplicación Ollama inicia el servicio automáticamente. Si no lo hace, ejecuta ollama serve en una terminal separada y déjalo en ejecución.

En el proyecto extraído, agrega "type": "module" como propiedad de nivel superior de package.json, hermano de "scripts":

json
{
  "type": "module",
  "scripts": {
    "start": "vite"
  }
}

Luego cambia el script de inicio de:

json
"start": "vite"

a:

json
"start": "node index.js"

Instala las dos dependencias importadas por index.js:

bash
$ npm install express ollama
$ npm start

El servidor imprime:

text
Server is running on port 3000

Prueba la ruta sin invocar un modelo:

text
http://localhost:3000/

Debe pedirte que suministres un parámetro question. Luego intenta una solicitud de modelo local real:

text
http://localhost:3000/?question=Why%20is%20the%20sky%20blue%3F

El servidor Express espera mientras Ollama carga el modelo y genera su respuesta. La primera respuesta puede ser notablemente más lenta. Detén Express con Ctrl+C. Detén un proceso ollama serve lanzado por separado con Ctrl+C cuando ya no lo necesites.

No se requiere clave de API de proveedor ni archivo .env. Los pesos del modelo y la inferencia permanecen en la máquina que ejecuta Ollama.

JunoRepara y ejecuta el proyecto Ollama Descarga el modelo mistral y mantén Ollama en ejecución, luego arregla package.json: agrega el tipo de módulo y apunta el script de inicio a node index.js.

Instala express y ollama, inicia el servidor y hazle una pregunta en el puerto 3000. Una primera respuesta lenta significa que el modelo se está cargando, no que algo se rompió.

JunoRepara y ejecuta el proyecto Ollama Dos procesos cooperan aquí: Ollama sirve el modelo y Express expone la ruta de la lección. Los metadatos del paquete del ZIP se escribieron para un proyecto Vite, así que la reparación lo apunta al punto de entrada Node e instala los dos paquetes importados.

Si una solicitud se cuelga, verifica cuál de los dos procesos se detuvo.

JunoRepara y ejecuta el proyecto Ollama La exportación describe el tipo incorrecto de aplicación, así que ambas ediciones de paquete son requeridas: el tipo de módulo permite que Node cargue las importaciones ESM, y el script de inicio ejecuta index.js en lugar de Vite.

Incluso después de la reparación, Express solo responde si Ollama se ejecuta por separado con mistral ya descargado; el servidor nunca inicia el servicio de modelo para ti.

Solución de problemas

La página Transformers.js se queda en Loading model...: Verifica la consola del navegador y la pestaña Network de DevTools. Los bloqueadores de contenido o una red restringida pueden bloquear jsDelivr o la descarga del modelo. Intenta un navegador actual con suficiente almacenamiento y memoria libres.

El proyecto Ollama dice Cannot find package 'express' o 'ollama': Ejecuta npm install express ollama en la carpeta que contiene package.json.

Node dice Cannot use import statement outside a module: Agrega "type": "module" a package.json.

npm start lanza Vite o se queja de un index.html faltante: Cambia el script de inicio a node index.js. La lección de Ollama es un servidor Node, no una página Vite.

La ruta no puede conectar a Ollama: Confirma que la aplicación Ollama o ollama serve estén en ejecución, luego usa ollama ls para confirmar que el modelo mistral está instalado.

El puerto 3000 ya está en uso: Detén el otro proceso o cambia la constante port en index.js, reinicia Express y abre la URL correspondiente.

JunoSolución de problemas Iguala la solución al proyecto: para Transformers.js, mira la pestaña Network y Console del navegador; para Ollama, verifica la reparación del paquete, el modelo instalado, el servicio en ejecución y el puerto.

La mayoría de los errores aquí vienen de un paso perdido.

JunoSolución de problemas Descubre qué tiempo de ejecución falló antes de cambiar nada: Vite y los activos del navegador pertenecen al proyecto Transformers.js, mientras que Node, Express y el servicio Ollama pertenecen al otro.

Una solución aplicada al proyecto incorrecto usualmente crea nuevos errores.

JunoSolución de problemas Para Transformers.js, la falla vive en las descargas o la memoria del navegador. Para Ollama, verifica la cadena en orden: Node acepta la sintaxis del módulo, Express mantiene el puerto 3000, el servicio está en ejecución y mistral aparece en ollama ls.

Un síntoma posterior es a menudo la misma falla anterior en una forma diferente.