Domodesk ofrece su herramienta con ( IA) Inteligencia Artificial, NapolitanoGPT, para preguntar sobre tus propios PDFs

El 23 de Mayo de 2023, acogimos, como ya es habitual en Domodesk, a dos alumnos en prácticas Erasmus+ italianos, sabíamos que habían estudiado un curso de desarrollo web (formación profesional), y también conocíamos, que contrariamente a otros alumnos que hemos tenido en prácticas,  iban a estar con nosotros hasta el 10 de Agosto, da tiempo para hacer cosas chulas.

Una vez aquí, Filippo y Manuel, intentamos conocer sus intereses y desvelar aquello que pudiera ser motivador para unas prácticas, se les planteo el poder desarrollar un proyecto, con el ánimo de, si se conseguía algún resultado, perfecto, pero si no se conseguía, que al menos, fuera un camino de aprendizaje divertido.

Dicho y hecho, después de llevar meses siguiendo la frenética evolución de la Inteligencia Artificial (IA) en Domodesk y con ganas de hacer algo, tomamos la decisión de emprender el proyecto dentro de esta disciplina, con la certeza de que íbamos a aprender mucho, con cualquier reto, y siguiendo la máxima con la que finalizaba nuestra nota de bienvenida el primer día

“Vi do il benvenuto e spero che, soprattutto, ci divertirem”

Y este fue el reto:

********************************************

Asistente de documentación técnica PDF

Objetivos

El proyecto pretende crear una aplicación B2B que pueda almacenar, leer y hablar sobre los documentos PDF de la empresa, y cada uno de ellos tendrá su propio banco de trabajo con su propio chatbot que podrá responder a cualquier pregunta sobre los documentos PDF que la empresa haya decidido compartir subir a la aplicación.

La idea es evaluar modelos LLM con los que podamos optar a una licencia comercial, y a poder rodar en local, sin tener que conectar a la red, para mantener la privacidad de los documentos compartidos.

Requisitos

Los requisitos de la aplicación son:

–              Debe responder correctamente

–              Debe ser rápida

–              Debe ser de uso local (imposible a fecha de Agosto de 2023  ***)

–              Debe consumir la menor cantidad de energía posible.

–              Debe funcionar con un hardware que no sea demasiado exigente. (***)

Obviamente, los requisitos son indicativos y no es seguro que se cumplan todos.

***********************************************

Partiendo de ahí, comenzamos con la estrategia de aproximación, primero debíamos de conocer el “estado-del-arte” de la IA en modelos generativos, y para ello se les indicó unos canales YouTube que deberían seguir, aquí es donde empieza la fiesta, pronto descubrimos que la información fluye y evoluciona en cuestión de horas, no de días, y lo que hoy das como lo último, en unas horas estará sobrepasado por algo mejor.

El primer mes sería dedicado solo a investigar, aprender y conocer herramientas que nos posibilitaran el trabajo, hay que comentar que la última semana ya no aportaban nada los canales de video de gente difundiendo, con mucho nivel, sobre lo que acontecía en IA, de hecho, nos pasamos a leer “research papers” para los que, nadie, estábamos preparados ni teníamos formación suficiente para extraer el jugo al máximo, pero algo quedaba ;-).

Una vez finalizado ese aprendizaje, ya nos dimos cuenta de que podíamos montar un “framework” pero pensando en el futuro para cierto requerimientos, porque el objetivo de LOCAL y PRIVACIDAD se desvanecía ante la evidencia de que los LLM vistos, y créanme, fueron muchos (destrozamos HuggingFace), por no decir todos los que salían a la luz en esas fechas, no iban a poder rodar en un PC discretamente potente…eso no era posible, aunque también aprendimos que en breve lo será, porque el avance de la comunidad open source es diabólico, y con Llama 2 en abierto y con licencia comercial, sumado a modelos procesados con métodos de cuantización, agrupamiento en clústeres , dispersión y reducción, esto será posible en breve, aunque no para nuestro proyecto.

Las ideas son universales, y sabíamos que todo esto estaba en manos de otros a lo largo del mundo, de hecho, a mitad del proyecto hubo una fuga, que acabo con una imagen en Reddit, donde veíamos como OpenAI incluía algunas de estas funcionalidades perseguidas (motivo de orgullo para un grupo de inocentes que seguíamos hacia delante porque no sabíamos que era imposible), maravilloso, OpenAI nos copia!!! (LoL, aunque el nuestro tiene usos distintos y detalles únicos)

No tenemos recursos, ni maquinas con muchas (ninguna) Nvidias H100 para inferir o entrenar modelos con Tensorflow… pero teníamos, el entusiasmo, el buen trabajo en equipo, las ganas, y el talento por desarrollar, con nosotros, de dos italianos volcados con los objetivos de manera incondicional.

Invitamos a un amigo Ingeniero Biomédico y propusimos que Filippo y Manuel nos hicieran una presentación sobre cómo íbamos a acometer el desarrollo, y así fue, cuando resolvimos que ante la imposibilidad del LLM local, usaríamos el API del chatGPT 3.5, y este stack de desarrollo

Frontend: HTML, CSS y JavaScript

Backend: Python, Flask, LangChain y ChromaDB

SGBD: SQLite

Control de versiones: Git y GitHub

Nube: PythonAnywhere

 

Ahí nos dimos cuenta del atrevimiento, en la presentación nos dijeron que el 15 de Julio tendríamos el proyecto finalizado (eso es el empuje romántico de dos personas con entusiasmo y ganas de hacer, admirable), y haciéndonos eco de ese espíritu atrevido de las culturas mediterráneas, se nos ocurrió que el sentir “Napolitano” sumaba ese “no sé qué”, así que el proyecto tenia nombre, NapolitanoGPT. (Go Ahead!!)

 

 

En Domodesk, forzamos a que crearan un cuaderno de bitácora, donde se detalla los avances y trabajos por semanas, por nuestra experiencia, sabemos lo adecuado de documentar un proyecto de I+D (no lo detallamos aquí, porque sería farragoso de leer para no entendidos…pero está disponible para curiosos en nuestras oficinas), es una manera de ver el esfuerzo de realizar un proyecto en un mes y medio efectivo (sin contar el tiempo anterior de investigación), una locura de viaje donde nos hemos divertido, sobre todas las cosas.

 

 

Y, al final, tenemos un producto que podemos comercializar a empresas, y como dijo aquel, “lo hicimos porque no sabíamos que era imposible” , había nacido NapolitanoGPT un proyecto realizado en tiempos record, gracias al buen trabajo en equipo, y las ganas de aprender de Filippo y Manuel y su alto potencial para empaparse de todo lo nuevo, y dejarse guiar en esta maravillosa experiencia.

 

A fecha de hoy, y después de haber pasado por demos a más de una docena de personas, que en Domodesk, consideramos referentes en sus distintas ocupaciones y disciplinas, os presentamos el producto.

 

Para poder usar, por ejemplo, en servicios técnicos, subiendo manuales de productos y facilitando que personas sin formación específica puedan encontrar, de forma sencilla, respuestas, o para contratos legales, informes financieros, contenidos propietarios y material de formación. Haga cualquier pregunta sobre el contenido de sus PDFs y obtenga respuestas claras y razonadas de forma rápida.

 

 

A partir del 4 de Septiembre, esperamos tus consultas, ¿Quieres contratar un empleado listo sin los costes de un empleado?, ¿Tu servicio técnico está saturado y necesitas una herramienta que la puedan usar empleados auxiliares sin formación técnica especifica?…. habla con nosotros  y deja que la Inteligencia Artificial sea una ayuda en tu empresa, ponemos a la venta el proyecto en dos modalidades, empotrado en un MiniPC o customizado en la web para las empresas que quieran algo más personalizado.

Habla con nosotros

 

¿Cómo imaginamos el futuro en Domodesk? 20 años, fuera de la caja. 1998-2018

¿Cómo imaginamos el futuro en Domodesk? , posiblemente la tendencia es a interpretar un mundo lleno de sensores, weareables, y dispositivos, todo ellos en el releído IoT, pero la irrupción de un nuevo empuje a la Inteligencia Artificial abandonada desde los 60-70, y abonado el resurgimiento de nuevos talentos, científicos de datos o expertos en bigdata, biotecnólogos,  profesionales del “deep learning “ y “machine learning”,  nanotecnólogos, expertos en desarrollos de soluciones con cadenas de bloques (https://es.linkedin.com/in/leifferreira no lo conocemos en persona pero tenemos amigos comunes), filósofos y sociólogos creativos, matemáticos expertos en caos y fractales, expertos en física y tecnología cuántica, psicólogos de la inmersión, creadores de escenarios  y asistentes virtuales dotados de estímulos y comportamientos emocionales, expertos en nuevos materiales, lideres capaces de pensar “fuera de la caja” y con la empatía como bandera, nos llevan a un nuevo paradigma, donde la línea de llenar de sensores, o de investigar miles de variables de una forma física para adecuar escenarios o automatizar procesos, es un callejón sin salida, ahora todo se torna más evolutivo con el análisis de patrones, descubrimiento de “atractors” u orígenes, generadores de algoritmos disruptivos,  que nos desvelan información esencial de supuestos comportamientos caóticos otra ora impredecibles o muy alejados de viabilidad con conceptos tecnológicos o científicos basados en protocolos y creencias del siglo XX.

 

 

 

Si quieres entender el DEEP LEARNING, escucha esta magnífica charla TEDx https://www.youtube.com/watch?v=xx310zM3tLs y si quieres jugar con el MACHINE LEARNING utiliza esto de la mano de Google https://www.tensorflow.org/

 

 

Dicho esto, el lector puede interpretar que el párrafo queda lejos de apostar por hechos fehacientes, o afirmaciones categóricas, que muestren más visiblemente el nuevo rumbo de la tecnología, y cómo será aplicada en nuestro día a día. Por ello, vamos a citar noticias de hitos que, algunas empresas o personas, empiezan a marcar con tinta (del siglo XX) la hoja de ruta, de lo comentado, en el siglo XXI.

Por ejemplo, un nuevo concepto de detección de imagen de la israelita Vayyar Imaging, con sede en Tel Aviv,  que está haciendo afirmaciones de que su tecnología basada en ondas de radio puede visualizar todo lo que sucede, incluso alguien respirando en un espacio 3D, y en tiempo real, y contrariamente a lo que pueda sugerir el término “detección de imagen”, no hay cámaras intrusivas, ni perdida de la privacidad, porque sus chips generan la imagen de entornos radioeléctricos, es decir, como si fuese un radar que es capaz de plasmar detalles con forma de diferentes  ondas de radio y reconstruir IMÁGENES VIRTUALES de gestos, comportamientos, movimientos, situaciones relativas de personas en entornos 3D, etc, etc.Y como el I+D+i hay que ir pagándolo, ya podemos ver un simple ejemplo de los resultados de esta compañía https://walabot.com/diy

 

Ya habíamos visto antes como a nivel militar, se empezaban a utilizar los ecos producidos en objetos y cuerpos de señales que hoy en días nos invaden, p.e. WiFi, para ver a través de las paredes y poder detectar donde se sitúan personas, u otros, en espacios cerrados y sin visión.

Un claro ejemplo, de que alguien podría pensar en términos de siglo XX y buscar cámaras diminutas y discretamente ocultas, resoluciones mejores, sensores en nuestra ropa o cuerpo….y NO, no es el camino, con el ejemplo de arriba, nos ahorramos cámaras, falta de privacidad y “llevables” sensores molestos, entre otros.

Lo mismo lo vemos en los avances que se están dando en el entorno de la conducción autónoma, hubieron aproximaciones de llenar cada vez más los vehículos de sensores de todo tipo para lograr el sueño de movilidad sin conductor, y de pronto, llegan empresas que empiezan a utilizar “motores de percepción” (algoritmos) , o que analizan cientos de miles de vehículos y de perfiles de conductor para extraer modos de conducción y geo-extrapolarlos a coches SIN CONDUCTOR como la base o núcleo inteligente de sus sistemas, otra vez más se traduce en visiones basadas en conocimientos y creencias tipo siglo XX, con acercamientos más creativos y rompedores del siglo XXI.

O una empresa que ha puesto su desarrollo en el campo de la seguridad física y personal a través del reconocimiento de los perfiles o patrones de audio que se originan cuando se inicia un incendio en nuestros hogares, cuando unas termitas están haciendo polvo nuestras hermosas vigas de madera, cuando un intruso ha entrado en casa, etc, etc,, en fin, olvídate de llenar la casa de sensores y detectores, un simple sistema será capaz de alertarte de todo a través de imperceptibles patrones de audio. (ver https://cocoon.life/https://www.audioanalytic.com/ )

 

 

O aquellos que detectan patrones de consumo eléctrico y huellas eléctricas en electrodomésticos para, a partir de ahí, detectar el encendido o apagado de estos, ¿Por qué no? del consumo eléctrico de cada uno de ellos sin tener que colgar unas pinzas amperimétricas en el cable de alimentación, simplemente tratando las huellas eléctricas en la línea de tensión y aplicando inteligencia en la detección de patrones. Los usos son múltiples, y si no, mira esta empresa http://www.bidgely.com/

Nada que no podamos encontrar en la naturaleza, donde vemos como ciertas especies utilizan su sensibilidad a las señales electromagnéticas, su capacidad para detectar partículas en el aire a kilómetros, o la habilidad para manejar otro tipo de espectros que no utilizamos los humanos. O el conocimiento de ciertas personas anónimas, capaces de subir a lo más alto de su pueblo en determinadas fechas del año y detectar cambios en el clima que después son perfectamente extrapolables a los eventos climatológicos que vamos a encontrar el año siguiente,  ¿magia?, no, una nueva manera de enfrentar los problemas buscando la resolución de sistemas complejos buscando los puntos o detalles (trozos) que son el origen de desencadenamiento, y desde luego, como leíamos a alguien en el MIT no utilizando CPUs (siglo XX) de Intel,  “un procesador Intel de última generación ofrece más que suficiente capacidad para ejecutar extensas hojas de cálculo financieras o software de operaciones corporativas, los chips optimizados para el “deep learning” rompen ciertos tipos de problemas, como la compresión de comandos de voz o el reconocimiento de imágenes, en millones de trozos de pequeño tamaño. Dado que las GPU como la de Nvidia están formadas por miles de núcleos de procesamiento, diminutos, repletos de un solo trozo de silicio, pueden manejar miles de estos trozos simultáneamente. Asignar un procesador Intel a este tipo de trabajo supondría un enorme despilfarro de recursos, ya que cada uno de estos procesadores contiene varias docenas de núcleos diseñados para ejecutar algoritmos complejos. Los chips de aprendizaje profundo (deep learning) no necesitan pensar tanto para manejar todas esas micro tareas”

 

 

tal como lo vemos, y para dar una imagen más gráfica,  en el mundo profesional, es mejor tener un equipo multidisciplinar y talentoso bien avenido que un “sabio muy capaz” trabajando solo

Otra vez más, nos vienen a la cabeza las palabras de ese genio llamado Arthur C. Clarke

1ª ley de Clarke: “Cuando un científico distinguido pero de edad avanzada afirma que algo es posible, casi con toda seguridad está en lo cierto. Cuando afirma que algo es imposible, muy probablemente se equivoca”.

2ª ley de Clarke: “La única manera de descubrir los límites de lo posible es aventurarse un poco más allá de dichos límites, en lo imposible

3ª ley de Clarke: “Cualquier tecnología suficientemente avanzada es indistinguible de la magia”.

 

 

La domótica vuelve a retomar otros caminos avanzados, todos estos conceptos remueven nuestra pasión por lo que hacemos, y si hace años ya hablamos de algo que se  hacía llamar “Ambient  Inteligence”  (AmI) https://en.wikipedia.org/wiki/Ambient_intelligence , hoy vemos que hay nueva gasolina, para seguir empujando más, en el año (2018) en el que cumplimos 20 años desde que se fundó Domodesk (1998) http://www.domodesk.com .

 

Manuel Gálvez

Domodesk S.L.