🚀 DiscoveryPlus: Plataforma d'Explotació d'Intel·ligència Tecnològica


DiscoveryPlus és l'eina de visualització i anàlisi avançada que permet als investigadors extreure valor dels milions de registres de PATSTAT allotjats al clúster StarRocks de ymir.uab.cat. L'aplicació està dissenyada per transformar dades massives en decisions estratègiques mitjançant un flux de treball iteratiu, visual i assistit per intel·ligència artificial.
1. Arquitectura del Stack Tecnològic
L'aplicació segueix un model client-servidor amb una separació clara de responsabilitats per garantir escalabilitat i velocitat:
- Frontend (Interfície d'usuari): Desenvolupat en JavaScript utilitzant el framework Angular i la llibreria de components Fuse. Ofereix un entorn de treball modular, altament reactiu i professional per a la gestió de projectes de recerca.
- Capa d'API (Backend): Implementada amb FastAPI (Python). Aquesta tria permet una comunicació extremadament ràpida i asíncrona, gestionant eficaçment les peticions d'alta concurrència cap als motors de dades.
- Capa de Dades (ORM): El backend utilitza SQLAlchemy per comunicar-se amb StarRocks, permetent una traducció neta i optimitzada de les sentències SQL des del codi Python.
- Visualització Analítica: Tota la capa gràfica interactiva i els dashboards de dades estan construïts amb la llibreria Apache E-charts.
2. Integració Híbrida de Motors de Recerca
El cor de DiscoveryPlus és la seva capacitat per orquestrar tres tecnologies de cerca diferents en una sola experiència d'usuari:
- StarRocks (Motor OLAP): El motor principal per a consultes relacionals i agregacions massives sobre les 50 taules de PATSTAT. Gestiona el "múscul" analític.
- Elasticsearch (External Catalog): Elasticsearch corre en un contenidor Podman independent. Està configurat com un "External Catalog" dins de StarRocks, permetent que una sola consulta SQL pugui unir (JOIN) metadades estructurades amb cerques de text complet sobre títols i resums (Abstracts).
- Intel·ligència Artificial (LLM): Connexió via API a models de llenguatge natural, ja sigui de forma local (mitjançant Ollama) o a través de proveïdors comercials, facilitant la recerca semàntica i la interpretació de conceptes complexos.
3. Flux de Treball de l'Investigador
L'aplicació proposa un mètode de treball cíclic i de refinament progressiu dividit en dues fases:
Fase A: Cerca i Identificació (Discovery)
L'usuari defineix el seu conjunt d'interès (des d'unes poques patents fins a milers) mitjançant:
- Cerca de Text: Sobre títols i abstracts usant el suport d'Elasticsearch per a paraules clau i proximitat.
- Llenguatge Natural: Descripció semàntica del concepte de recerca processat per un LLM.
- Operadors Lògics: cerques booleanes tradicionals (AND, OR, NOT) sobre una dotzena de camps específics (inventors, codis IPC, països, etc.).
- Filtres de garbell: Filtres sobre camps seleccionats (any, famílies tecnològiques, etc.)
Fase B: Refinat Visual i Detecció de Tendències
Un cop identificat el corpus inicial, s'activen les gràfiques d'E-charts per analitzar el conjunt:
- Hypes i Tendències: Evolució temporal de les publicacions per detectar tecnologies emergents.
- Entitats Expertes: Identificació d'empreses, universitats o inventors líders en l'àrea seleccionada.
- Interactivitat de Filtre: Les gràfiques són clicables; cada selecció visual actua com un filtre instantani que recalcula i refina tot el corpus del projecte en mil·lisegons.
Es pot tornar a la fase A i tornar a garbellar.
4. Finalització i Baixada de Documents
Un cop l'investigador ha focalitzat el seu conjunt d'interès mitjançant la repetició de les fases de filtrat:
- Gestió de Projectes: Es guarda l'estat de la recerca amb tots els criteris i filtres aplicats.
- Exportació: Es procedeix a la descàrrega dels documents de patents per a l'estudi detallat final o la integració en informes tècnics.

Estructura del codi font
Document: DISCOVERY_PLUS_APP.md
Projecte: ymir.uab.cat
Data: Març 2026