E053_GraphRAG__RAGs_basados_en_Grafos_de_conocimiento
Ep. 53

E053_GraphRAG__RAGs_basados_en_Grafos_de_conocimiento

Episode description

Episodio 53: Mejorando la calidad de los sistemas de generación aumentada por recuperación (RAG) con GraphRAG

Exploramos el uso de grafos para mejorar la calidad de los sistemas RAG, analizando la técnica de GraphRAG, que utiliza un modelo de lenguaje grande para crear un grafo de conocimiento y organizar la recuperación de información de manera más inteligente. Esto nos permite entender las relaciones entre entidades y conceptos, creando una estructura jerárquica para hacer consultas a distintos niveles de detalle. La técnica de GraphRAG ofrece resultados prometedores, pero también plantea desafíos y preguntas sobre su aplicación en dominios de alto riesgo.

Download transcript (.srt)
0:10

Buenas, esto es BIMPRAXIS, el podcast donde el

0:15

BIM se encuentra con la inteligencia artificial.

0:20

Exploramos la ciencia, la tecnología y el futuro

0:23

desde el enfoque de la arquitectura, ingeniería y

0:26

construcción.

0:28

¡Empezamos!

0:30

Hola humanas y humanos, aquí estamos con un

0:39

episodio nuevo de BIMPRAXIS.

0:42

En el episodio de hoy, el número 53,

0:44

seguimos profundizando en el uso de grafos para

0:46

mejorar la calidad de los sistemas de generación

0:48

aumentada por recuperación, o RAG para los amigos.

0:51

Ya sabéis, dentro de nuestra serie dedicada a

0:54

los RAG.

0:55

Hoy venimos con un paper académico y varias

0:57

fuentes expertas que explican una técnica, bueno, fascinante,arxiv

1:00

llamada GraphRAG.

1:02

Vamos a desgranar de qué va todo esto.

1:04

Para empezar, y para que todo el mundo

1:06

se sitúe, recordemos un poco cómo funciona un

1:08

sistema RAG básico.

1:10

El proceso habitual, según explican las fuentes, es

1:13

coger un montón de documentos, partirlos en trocitos

1:15

más pequeños, en chunks, sí, eso es, y

1:19

luego convertirlos en vectores, en números, y guardarlos

1:22

en una base de datos vectorial.

1:24

Y cuando alguien pregunta algo, pues el sistema

1:26

busca los trozos más parecidos y con eso

1:28

genera la respuesta.

1:29

Exacto.

1:30

Es un sistema de recuperación de información muy

1:33

potente, la verdad.

1:34

Pero tiene una limitación fundamental.

1:37

Y el paper From Local to Global la

1:40

identifica muy, muy claramente.

1:42

Falla estrepitosamente con lo que llaman preguntas globales.

1:46

¿Preguntas globales?

1:47

¿A qué se refieren con eso?

1:48

Pues mira, es una pregunta que no busca

1:50

un dato concreto, un trocito de información.

1:53

busca una comprensión del conjunto de datos entero.

1:56

Por ejemplo, una pregunta como ¿cuáles son los

1:59

temas principales de este corpus de documentos?

2:02

Ah, claro.

2:03

Un RAG convencional buscará fragmentos que tengan las

2:06

palabras temas o principales y, bueno, seguramente da

2:10

una respuesta bastante pobre o directamente irrelevante, porque

2:13

es una tarea de resumen, no de recuperación

2:15

pura y dura.

2:16

Vale, entiendo.

2:18

O sea que el RAG tradicional se queda

2:20

corto para entender el bosque, se centra demasiado

2:23

en los árboles.

2:24

Y es aquí, supondo, donde entra la propuesta

2:26

de las fuentes.

2:27

GraphRAG.

2:29

Lo describen como un proceso en dos pasos.

2:31

Sí.

2:31

El primer paso es la indexación.

2:34

Ahí se usa un modelo de lenguaje grande,

2:36

un LLM, para crear un grafo de conocimiento

2:40

a partir de todos los datos.

2:42

Y el segundo paso es, una vez tienes

2:44

ese grafo, usarlo para organizar una recuperación de

2:47

información que es muchísimo más inteligente.

2:51

Grafo de conocimiento.

2:52

Es un término que impone un poco.

2:55

Bueno, pero es más sencillo de lo que

2:57

parece.

2:57

A ver.

2:58

A diferencia de una base de datos normal,

3:00

con sus filas y columnas, un grafo de

3:03

conocimiento tiene nodos y aristas.

3:06

Vale.

3:06

Los nodos son las entidades, personas, empresas, conceptos.

3:11

Y las aristas son las relaciones entre esos

3:13

nodos.

3:14

Y lo interesante es que tanto los nodos

3:16

como las aristas pueden guardar información.

3:19

O sea, la línea que los une también

3:21

tiene datos.

3:22

Exacto.

3:23

Un ejemplo que hemos visto todos es la

3:25

tarjeta de información que sale en Google o

3:27

en Bing cuando buscas una persona famosa.

3:29

Ah, la ficha de la derecha.

3:31

Esa misma.

3:32

Eso se extrae de un grafo de conocimiento.

3:34

Aquí es donde la cosa se pone, para

3:36

mí, realmente interesante.

3:39

La clave de GraphRag no es solo identificar

3:42

las entidades en un texto, sino entender las

3:45

relaciones que hay entre ellas.

3:47

Y una de las fuentes da un ejemplo

3:49

que es buenísimo.

3:50

La frase es, la líder del PEO, Silvia

3:53

Mar, subió al escenario con Luke Jack, fundador

3:56

de Save Our Wildlands.

3:58

Vale, un sistema normal identificaría a Silvia Mar,

4:02

PEO, Luke Jack y Save Our Wildlands, cuatro

4:06

entidades.

4:07

Pero aquí un modelo como GPT-4 va mucho

4:10

más allá.

4:11

Entiende la semántica, entiende que la relación entre

4:15

Silvia Mar y el PEO es fuerte porque

4:18

es la líder.

4:19

Claro, es una relación estructural.

4:21

Eso es.

4:22

En cambio, su relación con Save Our Wildlands

4:25

es débil, es circunstancial, solo comparte escenario con

4:29

su fundador.

4:30

¡Ostras, qué bueno!

4:31

Esto lo que crea es un grafo ponderado,

4:34

con relaciones que tienen distinta fuerza.

4:36

Y eso es mucho más rico que una

4:38

simple red de palabras que aparecen juntas.

4:41

Y después, sobre este grafo se aplican técnicas

4:44

de Machine Learning de grafos para agrupar los

4:46

nodos en comunidades semánticas.

4:49

Vale, espera.

4:50

Comunidades semánticas.

4:51

Sí.

4:52

Básicamente agrupa los conceptos que están muy relacionados

4:55

entre sí, creando como temas o clústeres.

4:58

Y eso te da una estructura jerárquica que

5:00

te permite hacer consultas a distintos niveles de

5:03

detalle.

5:03

La teoría suena muy bien, pero vamos a

5:05

la práctica.

5:06

Las fuentes incluyen demostraciones que muestran la diferencia

5:09

de una forma, bueno, espectacular.

5:11

La primera usa un conjunto de 3.000 artículos

5:13

sobre el conflicto entre Rusia y Ucrania.

5:16

Un tema muy denso, sí.

5:18

Y la pregunta es, ¿qué es Novorossia y

5:21

cuáles son sus objetivos?

5:23

Los resultados aquí son reveladores.

5:25

Un RAG básico, sin más, falla.

5:28

No sabe qué responder.

5:30

Un RAG que llaman mejorado o afinado, responde

5:34

a la primera parte, te explica qué es

5:36

Novorossia, pero no llega a la segunda.

5:38

¿Y Graf RAG?

5:39

La diferencia es abismal.

5:41

No solo explica qué es Novorossia, sino que

5:43

da una lista de objetivos súper específicos que

5:46

ha sacado de los documentos.

5:47

¿Ah, sí?

5:48

¿Como cuáles?

5:49

Pues mira, la Compañía Nacional de Televisión de

5:51

Ucrania, una emisora de radio, un banco privado,

5:55

propiedades de Roshan e incluso planes de ataques

5:58

en Odessa.

5:59

¡Guau!

5:59

Y supongo que lo más importante es que

6:02

puedes rastrear de dónde saca cada cosa.

6:04

Para evitar alucinaciones.

6:06

Totalmente.

6:07

Cada afirmación está vinculada al fragmento de texto

6:10

original.

6:11

Esto te permite verificar la información, que es

6:13

crucial.

6:14

Y esto nos lleva de vuelta a las

6:15

preguntas globales, al gran problema.

6:18

Le preguntaron al sistema, ¿cuáles son los cinco

6:21

temas principales de los datos?

6:23

Y aquí, el RAG básico dio respuestas genéricas,

6:26

cosas como, estado de la economía rusa.

6:28

¿Cuándo el 80% de los artículos iban sobre

6:31

el conflicto.

6:33

Exacto.

6:34

Ignoró el tema principal.

6:36

GraphRAG, en cambio, identificó el conflicto como el

6:38

tema central, sin dudarlo.

6:40

Claro, porque tiene esa visión de conjunto.

6:43

Hay una contrapartida, eso sí.

6:44

GraphRAG es más costoso computacionalmente.

6:47

Mucho más.

6:48

En el ejemplo, usó 50.000 tokens y tardó

6:50

71 segundos.

6:52

El RAG básico, 5.000 tokens y 8 segundos.

6:55

Uf, es bastante diferencia.

6:58

Sí, pero la calidad y la corrección de

7:00

la respuesta son inmensamente superiores.

7:04

Al final es un trade-off.

7:05

¿Quieres rapidez o quieres precisión?

7:07

Hay otra demostración que me pareció muy visual.

7:10

Se hizo con las transcripciones del podcast Behind

7:12

the Tech de Kevin Scott.

7:14

Sí, ese caso es fascinante.

7:16

Ahí el LLM construyó el grafo de conocimiento

7:19

desde cero.

7:20

En la visualización, cada nodo era una entidad

7:23

y los colores representaban, digamos, los temas, las

7:26

particiones semánticas.

7:28

Y lo fascinante es cómo agrupó las cosas.

7:31

Sí, porque identificó una comunidad semántica sobre biología

7:34

y en el mismo clúster, en el mismo

7:36

grupo, junto a dos expertos diferentes.

7:39

Drew Endy y David Baker.

7:40

Vale, ¿y qué tiene eso de especial?

7:42

Pues que aparecieron en episodios distintos.

7:45

Nunca hablaron entre ellos.

7:46

Espera, ¿me estás diciendo que el sistema los

7:48

agrupó solo porque se dio cuenta de que

7:50

los dos hablaban de lo mismo, aunque fuera

7:52

en momentos diferentes y sin mencionarse?

7:55

Exactamente eso.

7:57

No se basó en que sus nombres aparecieran

7:58

juntos.

7:59

Se basó en que entendió las conexiones temáticas

8:02

que había debajo de sus conversaciones.

8:05

Es la prueba de que de verdad entiende

8:06

el contenido.

8:07

Desde luego.

8:08

Demuestra que no solo recupera, sino que comprende.

8:10

Entonces, después de ver todo esto, ¿qué significa?

8:13

¿Cuál es la gran conclusión?

8:15

Significa que GraphIRG no es sólo una mejora

8:18

incremental, es un cambio de paradigma.

8:20

¿De qué manera?

8:21

Pasamos de la recuperación local de fragmentos de

8:23

texto, que es lo que teníamos, a la

8:25

creación de una memoria estructurada, una comprensión global

8:28

de todo un corpus.

8:29

¿De lo local a lo global, como el

8:31

título del paper?

8:31

Justo eso, es exactamente lo que resume.

8:34

Esto plantea una pregunta interesante, creo.

8:37

Todo esto se basa en que un LLM

8:39

construye estos grafos de forma autónoma, Pero para

8:42

dominios de alto riesgo como la medicina o

8:45

el derecho, ¿podríamos fiarnos de un sistema así?

8:48

Esa es la gran pregunta.

8:51

¿Podemos ver sistemas híbridos en el futuro?

8:53

Sistemas que combinen la escala de la IA

8:55

con la precisión y la verificación del conocimiento

8:58

humano.

8:59

¿Cómo funcionaría eso?

9:01

Pues imagina un sistema donde el LLM propone

9:04

un primer borrador del grafo y luego expertos

9:06

humanos, médicos o abogados lo revisan, lo curan…

9:10

Lo validan.

9:11

Exacto.

9:12

Creando sistemas RAG que serían aún más fiables

9:15

y robustos.

9:16

Podría ser el siguiente paso.

9:18

Bueno, pues con esa reflexión nos despedimos por

9:20

hoy.

9:20

No sin antes recordar que las voces que

9:23

escuchas son generadas por una IA, por Notebook

9:25

LM.

9:26

Pero el podcast no se genera de forma

9:28

automática.

9:29

Detrás de todo lo que escuchas hay un

9:30

humano, que os manda saludos.

9:32

Se llama Julio Pablo Azquez y está encantado

9:35

de que el podcast cada vez tiene más

9:36

suscriptores.

9:38

Muchas gracias y hasta el próximo episodio.

9:51

Y hasta aquí el episodio de hoy.

9:53

Muchas gracias por tu atención.

10:04

Esto es BIMPRAXIS.

10:07

Nos escuchamos en el próximo episodio.

10:29

SUSCRÍBETE 🙏