Cómo Crear una App Móvil con IA Local Usando Mistral y Transformers.js con React Native

Tiempo de lectura: 2 minutos

¿Te imaginas una app móvil que funcione con inteligencia artificial sin conexión a internet? Hoy te muestro cómo usar Transformers.js y un modelo como Mistral 7B cuantizado en el navegador o en tu móvil, sin enviar datos a servidores externos.

Caballo salvaje - Pexels

Con esto lograrás privacidad total, usando el propio dispositivo, no tiene costes de uso, funciona en móviles, dispositivos, web…

Necesitas:

  • Conocimientos básicos de JavaScript o React Native
  • Node.js 18+
  • 1 navegador moderno (o entorno React Native con WebView)
  • Opcional: modelo Mistral 7B cuantizado con GGUF + WebAssembly

Instalar transformers

npm install @xenova/transformers

Cargar el modelo:

import { pipeline } from '@xenova/transformers';

const runModel = async () => {
  const classifier = await pipeline('text-classification', 'Xenova/distilbert-base-uncased-finetuned-sst-2-english');
  const result = await classifier('Esta idea de app es increíble.');
  console.log(result);
};

runModel();

Este ejemplo utiliza un modelo básico.

Sustituye por un modelo más potente (como Mistral)

const chat = await pipeline('text-generation', 'Xenova/mistral-7b-instruct');
const output = await chat('¿Puedes explicarme qué es Transformers.js en lenguaje sencillo?');

Nota: Estos modelos usan WebGPU si está disponible. En móviles puedes usarlo con WebView o WebGPU nativo (experimental en Android/iOS 17+).

Integra en una App React Native

Puedes usar un <WebView> para correr este modelo desde el móvil sin conexión:

import React from 'react';
import { WebView } from 'react-native-webview';

export default function App() {
  return (
    <WebView source={{ uri: 'file:///android_asset/index.html' }} />
  );
}

Y en index.html, incluyes tu modelo usando Transformers.js.

BONUS: Usa modelos de Hugging Face en .gguf

Si prefieres usar modelos cuantizados, puedes combinarlos con motores como:

Eso te permite correr Mistral 7B Q4 o Q5 en el navegador o móvil.

Recuerda que una aplicación así ocupa bastante espacio.

Deja un comentario