Comprehensive technological enhancements across multiple streams for an ontology provider

Innowise llevó a cabo un software de investigación médica upgrade for an ontology provider, incorporating AI-driven search, custom data dashboards, and ontology integration.

Desafío

Los principales retos a los que se enfrentaba nuestro cliente giraban en torno a tres áreas principales: desarrollo de un front end para su sistema de búsqueda basado en IA, automatizando visualización de datos within medical research software, and integrating their ontologies into an existing system:

  • Desarrollo del front-end del sistema de búsqueda basado en IA: El principal reto del cliente era mejorar el front-end de su sistema de búsqueda basado en ontologías, adaptado a plataformas web y móviles. Este sistema era esencial para gestionar una amplia colección de artículos científicos. La actualización requería facilitar las capacidades de búsqueda, visualización de fuentes y anotación de conceptos y términos científicos en diversos formatos de documentos. Las limitaciones del sistema anterior, en particular la falta de filtros de búsqueda y de funciones de anotación, impedían el pleno aprovechamiento de su base de datos científicos.
  • Automatización de la visualización de datos para la investigación científica:< The client faced a challenge in automating data visualization for their scientific data analysis. The required system needed to support data scientists in identifying, preparing, and validating data, as well as in creating informative dashboards. This was crucial for classifying and linking medical entities, identifying molecular targets for new pharmaceuticals, and facilitating research on diseases.
  • Ontology system integration: Integrating the client’s ontologies into an existing system presented a unique challenge. The company’s legacy system heavily depended on manual processes for document handling and data entry. Our task was to modernize this system by automating document analysis and database uploads, developing a new interface, and establishing a sistema back-end. Este sistema tenía que admitir dos roles de usuario distintos: personas responsables de cargar y editar documentos y administradores para revisar y confirmar estas entradas.

Solución

El equipo de Innowise se centró en tres aspectos clave del proyecto:

Mejora del sistema de búsqueda en los programas informáticos de investigación médica

Nuestro equipo se centró en desarrollar y mejorar un sistema de búsqueda especializado basado en IA, un subsistema clave dentro de un marco más amplio, diseñado para interfaces web y móviles. Esta tarea implicó múltiples mejoras técnicas y funcionales:

  • Búsqueda avanzada de documentos: Habilitamos el sistema para realizar búsquedas exhaustivas en diversos formatos de documentos de un vasto repositorio documental. El sistema permitía a los usuarios localizar documentos, ver fuentes internas y externas e identificar conceptos científicos clave y anotaciones destacadas dentro de estos documentos.
  • Anotación y categorización: Una característica fundamental era la posibilidad de que los usuarios seleccionaran palabras o entradas específicas dentro de los documentos y las asignaran a los dominios pertinentes para su anotación. Integramos funciones de IA basadas en GPT para guiar a los usuarios en la correcta anotación y categorización de cada término o entidad.
  • Proceso de presentación y revisión: Al editar o añadir nueva información a un documento, el sistema facilitaba un proceso de revisión. Los usuarios podían enviar estos cambios, que luego se enviaban a un administrador para que asignara el estado y aprobara las nuevas anotaciones, comentarios o categorizaciones.
  • Funciones de consulta y análisis: Ahora los usuarios pueden seleccionar documentos de una gran base de datos y añadirlos a una cesta colectiva. A continuación, pueden consultar estos documentos mediante la barra de búsqueda del Analizador, formular preguntas concretas o solicitar resúmenes y análisis basados en Tecnología GPT.
  • Desarrollo de filtros personalizados: Nuestro desarrollador creó sofisticados filtros para la búsqueda de documentos, adaptados a varios tipos de fuentes.
  • Retos del visor de documentos: Una de las tareas más complejas era desarrollar un visor de documentos capaz de mostrar anotaciones marcadas en documentos PDF. Esto requería una intrincada coordinación de back-end para superponer las anotaciones correctamente.
  • Revisión del código heredado y la arquitectura: Abordamos los retos planteados por el código heredado y la falta de estructura arquitectónica, garantizando que el sistema se construyera sobre bases tecnológicas sólidas y modernas.
  • Integración de múltiples versiones de GPT: Nuestro equipo mejoró el sistema con varias versiones de GPT (3.5, 4, Davinci), lo que permitió un análisis más versátil de los documentos.
  • Integración LLM: Innowise se centró en el desarrollo de LLM personalizados que permiten a los usuarios introducir consultas en lenguaje natural. Una vez que las consultas se han convertido en solicitudes de back-end, pueden enviarse al servidor.

Automatización de cuadros de mando de ciencia de datos

Nuestra equipo de ciencia de datos se centró en la automatización de la visualización de datos mediante cuadros de mando, un componente crucial para la investigación del cliente en la identificación de dianas moleculares para nuevos tratamientos farmacéuticos. Las principales enfermedades objeto de estudio eran la obesidad y las enfermedades musculares.

  • Creación de cuadros de mando: El objetivo del equipo era crear cuadros de mando para visualizar datos farmacéuticos. Para ello fue necesario procesar grandes conjuntos de datos, que son un vasto número de artículos médicos anotados con ID y metadatos únicos, para formar tablas GBQ de tamaño considerable. 

  • Visualización de datos: Utilizando Looker Studio, transformamos estas grandes tablas de datos en formatos más pequeños y manejables para la creación de cuadros de mando. Este paso de visualización era necesario para que los expertos pudieran revisar y filtrar mejor los datos.

  • Automatización del cuadro de mandos: Tras la aprobación de los expertos médicos, automatizamos la creación del cuadro de mandos mediante técnicas de ingeniería de datos. Para ello, utilizamos repositorios que contenían secuencias de comandos SQL para obtener la información necesaria. Estas secuencias de comandos se programaron para ejecutarse a intervalos específicos, garantizando que los cuadros de mando se mantuvieran actualizados con los últimos resultados de la investigación.

  • Actualizaciones e integración continuas: Nuestra solución permitió la integración continua de nuevas publicaciones relevantes en los cuadros de mando. Este proceso dinámico de actualización fue facilitado por Google Cloud Functions. Mantenía los cuadros de mando actualizados con los datos más recientes.

  • Gestión de consultas: Gestionamos las consultas a través de grandes tablas, extrayendo información específica basada en las consultas de búsqueda. A continuación, el equipo visualizó estas estadísticas en los cuadros de mando e identificó cualquier problema en las consultas de búsqueda.

Ontology integration in research

Our project focused on integrating our client’s ontologies into an established lab management software. This task involved several key steps to modernize and automate their outdated system:

  • Análisis e investigación de sistemas: Comenzamos con un análisis y una investigación exhaustivos del sistema heredado del cliente. Este El software de gestión de laboratorio, utilizado principalmente para almacenar informes y resultados de investigación, se basaba en programas más antiguos Java y las tecnologías JSP.
  • Desarrollo de una nueva interfaz y back end: Nuestro enfoque incluía el desarrollo de una nueva interfaz y un sistema back-end para automatizar el proceso de análisis de documentos y actualización de bases de datos, que antes se hacía manualmente.
  • Tipos de usuarios y funcionalidades: Hemos diseñado el sistema para atender a dos tipos de usuarios distintos:
  • Cargador de documentos: Investigadores que añaden documentos al sistema. Una vez anotado un documento, aparece en una página especial en la que el autor de la carga puede revisar los resultados, realizar modificaciones y confirmar el envío a la base de datos.
  • Administrador: Responsable de revisar y confirmar las adiciones de documentos. Esta función implica una revisión exhaustiva de los documentos, con la capacidad de editar, aprobar o realizar cambios antes de la entrada final en la base de datos.
  • Desarrollo del back-end y revisión del código heredado: Nuestro desarrollador emprendió la tarea de revisar el código heredado existente. Esto implicó escribir páginas JSP según las especificaciones del cliente y desarrollar funcionalidades de back-end (peticiones, respuestas, procesamiento de datos e introducción en bases de datos).
  • Desarrollo de la interfaz de administración: También desarrollamos una parte administrativa del sistema en la que el administrador (normalmente el jefe del departamento de investigación) recibe una notificación con un enlace a la interfaz que muestra información de la base de datos.
  • Integración de la API ontológica: El núcleo de nuestra solución consistió en integrar la API Ontology en el software de gestión de laboratorios del cliente. Esta API servía de punto para enviar consultas relacionadas con documentos y recibir respuestas, que luego se procesaban y mostraban a través del frontend antes de enviarse a la base de datos del cliente.
  • Tratamiento de documentos y datos: In this system, documents uploaded to the ontological system were processed, and the resulting data was saved in the company’s research database. This allowed for automatic analysis of documents and retrieval of important information.
  • Desarrollo completo: Nuestro desarrollador trabajó como ingeniero full-stack, ocupándose de los aspectos front-end y back-end y garantizando una integración perfecta de todos los componentes del sistema.

Tecnologías

Lenguajes de programación

JavaScriptTypeScript, Java
Reactreact-pdf, Redux, Redux-thunk, React-redux, Primereact, SASS, Lodash, Axios, FileSaver, GPT-Tokenizer
Bota SpringJava con bibliotecas Lucene, Stardog
Python (Pandas, Numpy, Plotly, Matplotlib), GCP (Google Big Query, Google Cloud Storage, Cloud Run), Looker, Data Studio, Apache Solr, herramientas personalizadas para el tratamiento y la visualización de datos.

Proceso

Nuestro enfoque del proceso de desarrollo fue metódico y se ciñó a los principios ágiles, lo que garantizó la flexibilidad y la mejora continua.

Al principio, investigamos a fondo las necesidades del cliente y los sistemas existentes para elaborar un documento detallado de "Visión y Alcance". Basándonos en las conclusiones iniciales, procedimos a diseñar y desarrollar las funciones necesarias para cada flujo. Nuestro equipo celebró reuniones periódicas para confirmar que nuestro trabajo se ajustaba a las expectativas del cliente. Todas las funciones se implantaron y se sometieron a rigurosas pruebas de rendimiento y precisión.

Para una comunicación y un seguimiento eficaces del proyecto, utilizamos herramientas de Microsoft y Monday.com, garantizando un proceso transparente y actualizaciones en tiempo real.

Team required

1

Jefe de proyecto

3

Desarrolladores React

3

Desarrolladores Java

1

Desarrollador ML/Python

2

Ingenieros de datos

Resultados

En nuestro esfuerzo de colaboración con el cliente, que abarca tres flujos clave, hemos dado pasos significativos en el avance de sus capacidades de investigación científica. He aquí una instantánea de los resultados reales:

  • Operaciones de búsqueda racionalizadas: Los esfuerzos de nuestro equipo por perfeccionar el sistema de búsqueda permitieron duplicar la velocidad de búsqueda, lo que benefició a los investigadores en su búsqueda de un acceso rápido a los datos científicos.
  • Precisión en las anotaciones: La introducción del sistema automatizado de anotación permitió aumentar la precisión de las anotaciones, un factor crítico para los estudios científicos en profundidad.
  • Mayor eficacia en el tratamiento de datos: Al automatizar los procesos de visualización de datos, hemos reducido a la mitad el tiempo que los investigadores dedicaban al tratamiento manual de los datos, lo que se traduce en más tiempo para las actividades básicas de investigación.
  • Mayor velocidad de procesamiento de datos: La velocidad de procesamiento y visualización de datos se multiplicó por tres, lo que supuso un salto en el manejo de conjuntos de datos complejos.
  • Experiencia de usuario optimizada: La modernización de la interfaz de usuario de nuestros sistemas ha dado lugar a un notable aumento de la satisfacción de los usuarios, fomentando un mayor compromiso dentro de la comunidad científica.
  • Tiempo de investigación liberado: La automatización de tareas rutinarias ha supuesto una reducción de 60% en el tratamiento manual de datos, liberando así el tiempo de los investigadores, antes consumido por el trabajo manual.

    Contáctenos

    Reserve usted una llamada o rellene usted el siguiente formulario y nos pondremos en contacto con usted cuando hayamos procesado su solicitud.

    Envíenos un mensaje de voz
    Adjuntar documentos
    Cargar archivo

    Puede adjuntar 1 archivo de hasta 2 MB. Formatos de archivo válidos: pdf, jpg, jpeg, png.

    Al hacer clic en Enviar, autoriza a Innowise a procesar sus datos personales de acuerdo con nuestra política de privacidad. Política de privacidad para proporcionarle información relevante. Al enviar su número de teléfono, acepta que nos pongamos en contacto con usted a través de llamadas de voz, SMS y aplicaciones de mensajería. Pueden aplicarse tarifas de llamadas, mensajes y datos.

    También puede enviarnos su solicitud
    a contact@innowise.com
    ¿Qué pasa después?
    1

    Una vez recibida y procesada su solicitud, nos pondremos en contacto con usted para detallarle las necesidades de su proyecto y firmar un acuerdo de confidencialidad. Proyecto y firmaremos un acuerdo de confidencialidad.

    2

    Tras examinar sus deseos, necesidades y expectativas, nuestro equipo elaborará una propuesta de proyecto con el alcance del trabajo, el tamaño del equipo, el plazo y los costes estimados con el alcance del trabajo, el tamaño del equipo, el tiempo y las estimaciones de costes.

    3

    Concertaremos una reunión con usted para hablar de la oferta y concretar los detalles.

    4

    Por último, firmaremos un contrato y empezaremos a trabajar en su proyecto de inmediato.

    flecha