avacaondata commited on
Commit
6ae70b4
1 Parent(s): a229335

añadida documentación y refactor de texto

Browse files
Files changed (1) hide show
  1. article_app.py +22 -18
article_app.py CHANGED
@@ -1,31 +1,25 @@
1
  article = """
2
  <img src="https://www.iic.uam.es/wp-content/uploads/2017/12/IIC_logoP.png">
3
- <img src="https://drive.google.com/uc?export=view&id=1S8v94q39QRCfmVTMvjLCACmhMe9lJQdc">
4
 
5
- <p style="text-align: justify;"> This app is developed by <a href="https://www.iic.uam.es/">IIC - Instituto de Ingeniería del Conocimiento</a> as part of the <a href="https://www.eventbrite.com/e/registro-hackathon-de-pln-en-espanol-273014111557">Somos PLN Hackaton 2022.</a>
6
 
7
- Concretely, the members of the team are:
8
-
9
- <ol>
10
- <li>Alejandro Vaca Serrano: <a href="https://huggingface.co/avacaondata">@avacaondata</a></li>
11
- <li>David Betancur Sánchez: <a href="https://huggingface.co/Dabs">@Dabs</a></li>
12
- <li>Alba Segurado: <a href="https://huggingface.co/alborotis">@alborotis</a></li>
13
- <li>Álvaro Barbero Jiménez: <a href="https://huggingface.co/albarji">@albarji</a></li>
14
- <li>Guillem García Subies: <a href="https://huggingface.co/GuillemGSubies">@GuillemGSubies</a></li>
15
- </ol>
16
-
17
- The objective of this app is to expand the existing tools regarding long form question answering in Spanish. In fact, multiple novel methods (in Spanish)
18
  have been introduced to build this app.
19
  The reason for including audio as a possible input and always as an output is because we wanted to make the App much more accessible to people that cannot read or write.
20
- Below you can find all the pieces that form the system.
 
21
  <ol>
22
  <li><a href="https://hf.co/IIC/wav2vec2-spanish-multilibrispeech">Speech2Text</a>: For this we finedtuned a multilingual Wav2Vec2, as explained in the attached link. We use this model to process audio questions.</li>
23
  <li><a href="https://hf.co/IIC/dpr-spanish-passage_encoder-allqa-base">Dense Passage Retrieval for Context</a>: Dense Passage Retrieval is a methodology <a href="https://arxiv.org/abs/2004.04906">developed by Facebook</a> which is currently the SoTA for Passage Retrieval, that is, the task of getting the most relevant passages to answer a given question with. You can find details about how it was trained on the link attached to the name. </li>
24
  <li><a href="https://hf.co/IIC/dpr-spanish-question_encoder-allqa-base">Dense Passage Retrieval for Question</a>: It is actually part of the same thing as the above. For more details, go to the attached link.</li>
25
- <li><a href="https://hf.co/sentence-transformers/distiluse-base-multilingual-cased-v1">Sentence Encoder Ranker</a>: To rerank the candidate contexts retrieved by dpr for the generative model to see. This also selects the top 5 passages for the model to read, it is the final filter before the generative model.</li>
26
  <li><a href="https://hf.co/IIC/mt5-base-lfqa-es">Generative Long-Form Question Answering Model</a>: For this we used either mT5 (the one attached) or <a href="https://hf.co/IIC/mbart-large-lfqa-es">mBART</a>. This generative model receives the most relevant passages and uses them to generate an answer to the question. In the attached link there are more details about how we trained it etc.</li>
 
27
  </ol>
28
 
 
 
29
  On the other hand, we uploaded, and in some cases created, datasets in Spanish to be able to build such a system.
30
 
31
  <ol>
@@ -41,18 +35,28 @@ On the other hand, we uploaded, and in some cases created, datasets in Spanish t
41
  <ol>
42
  <li><a href="https://www.un.org/sustainabledevelopment/es/health/">Salud y bienestar</a>: pretendemos con nuestro sistema mejorar la búsqueda de información acerca de la salud y el sector biomédico, ayudando tanto a investigadores biomédicos a indagar en una gran base de datos sobre el tema, pudiendo acelerar así el proceso de investigación y desarrollo en este ámbito, como a cualquier individuo que quiera conocer mejor acerca de la salud y de los temas relacionados. De esta manera usamos la IA para promover tanto el conocimiento como la exploración en el campo de la BioMedicina en castellano.</li>
43
  <li><a href="https://www.un.org/sustainabledevelopment/es/education/">Educación de calidad</a>: al ofrecer al mundo un sistema avanzado de consulta de información, ayudamos a complementar y mejorar los sistemas de calidad actuales del mundo biomédico, pues los alumnos tienen un sistema para aprender sobre este campo interactuando a través de nuestros modelos con una gran base de conocimiento en este tema.</li>
44
- <li><a href="https://www.un.org/sustainabledevelopment/es/inequality/">Reducción de las desigualdades</a>: Al hacer un sistema end-to-end de voz a voz, en el que no sería necesario usar el teclado (no en la demo actual por cómo están hechos los spaces de Huggingface, pero sí lo permiten las tecnologías que usamos, con la arquitectura adaptada correcta), promovemos la accesibilidad a la herramienta. Esto tiene la intención de que personas que no puedan leer ni escribir tengan la oportunidad de interactuar con BioMedIA. Esto se nos ocurrió ya que recientemente un miembro del equipo, @avacaondata, estuvo con la muñeca rota, y luego operada, por lo que no habría podido interactuar con estos sistemas. Eso nos abrió los ojos acerca de la necesidad de hacer este sistema lo más flexible posible, para que fuera fácil interactuar con él independientemente de las dificultades o limitaciones físicas que pudieran tener las personas. Al incluir una salida de voz, aquellos que no tengan posibilidad de ver a través de los ojos también podrán recibir respuestas a sus dudas. Esto reduce las desigualdades de acceso a la herramienta de aquellos con alguno de esos impedimentos.</li>
45
  </ol>
46
  </p>
47
  """
48
  # 1HOzvvgDLFNTK7tYAY1dRzNiLjH41fZks
49
  # 1kvHDFUPPnf1kM5EKlv5Ife2KcZZvva_1
50
  description = """
 
51
  <a href="https://www.iic.uam.es/">
52
  <img src="https://drive.google.com/uc?export=view&id=1HOzvvgDLFNTK7tYAY1dRzNiLjH41fZks" style="max-width: 100%; max-height: 10%; height: 250px; object-fit: fill">
53
  </a>
54
- <h1> BioMedIA: Abstractive Question Answering of BioMedical Domain in Spanish </h1>
55
- Esta aplicación consiste en sistemas de búsqueda del Estado del Arte en Español junto con un modelo generativo entrenado para componer una respuesta a preguntas a partir de una serie de contextos.
 
 
 
 
 
 
 
 
 
56
  """
57
 
58
 
 
1
  article = """
2
  <img src="https://www.iic.uam.es/wp-content/uploads/2017/12/IIC_logoP.png">
3
+ <img src="https://drive.google.com/uc?export=view&id=1_iUdUMPR5u1p9767YVRbCZkobt_fOozD">
4
 
5
+ <p style="text-align: justify;"> This app is developed by the aforementioned members of <a href="https://www.iic.uam.es/">IIC - Instituto de Ingeniería del Conocimiento</a> as part of the <a href="https://www.eventbrite.com/e/registro-hackathon-de-pln-en-espanol-273014111557">Somos PLN Hackaton 2022.</a>
6
 
7
+ The objective of this app is to expand the existing tools regarding long form question answering in Spanish. In fact, multiple novel methods in this language
 
 
 
 
 
 
 
 
 
 
8
  have been introduced to build this app.
9
  The reason for including audio as a possible input and always as an output is because we wanted to make the App much more accessible to people that cannot read or write.
10
+ Below you can find all the pieces that form the system. This section is minimalist so that the user can get a broad view of the general inner working of the app, and then travel through each model and dataset where they will find much more information on each piece of the system.
11
+
12
  <ol>
13
  <li><a href="https://hf.co/IIC/wav2vec2-spanish-multilibrispeech">Speech2Text</a>: For this we finedtuned a multilingual Wav2Vec2, as explained in the attached link. We use this model to process audio questions.</li>
14
  <li><a href="https://hf.co/IIC/dpr-spanish-passage_encoder-allqa-base">Dense Passage Retrieval for Context</a>: Dense Passage Retrieval is a methodology <a href="https://arxiv.org/abs/2004.04906">developed by Facebook</a> which is currently the SoTA for Passage Retrieval, that is, the task of getting the most relevant passages to answer a given question with. You can find details about how it was trained on the link attached to the name. </li>
15
  <li><a href="https://hf.co/IIC/dpr-spanish-question_encoder-allqa-base">Dense Passage Retrieval for Question</a>: It is actually part of the same thing as the above. For more details, go to the attached link.</li>
16
+ <li><a href="https://hf.co/sentence-transformers/distiluse-base-multilingual-cased-v1">Sentence Encoder Ranker</a>: To rerank the candidate contexts retrieved by dpr for the generative model to see. This also selects the top 5 passages for the model to read, it is the final filter before the generative model. For this we used 3 different configurations to human-check (that's us seriously playing with our toy) the answer results, as generated answers depended much on this piece of the puzzle. The firs option, before we trained our own crossencoder, was to use a [multilingual sentence transformer](https://huggingface.co/sentence-transformers/distiluse-base-multilingual-cased-v1), trained on multilingual MS Marco. This worked more or less fine, although it was noticeable it wasn't specialized in Spanish. We then tried our own CrossEncoder, trained on our [translated version of MS Marco to Spanish](https://huggingface.co/datasets/IIC/msmarco_es). It worked better than the sentence transformer. Then, it occured to us by looking at their ranks distributions for the same passages, that maybe by multiplying their similarity scores element by element, we could obtain a less biased rank for the documents, therefore only those documents both rankers agree are important appear at the top. We tried this and it showed much better results, so we left both systems with the posterior multiplication of similarities.</li>
17
  <li><a href="https://hf.co/IIC/mt5-base-lfqa-es">Generative Long-Form Question Answering Model</a>: For this we used either mT5 (the one attached) or <a href="https://hf.co/IIC/mbart-large-lfqa-es">mBART</a>. This generative model receives the most relevant passages and uses them to generate an answer to the question. In the attached link there are more details about how we trained it etc.</li>
18
+ <li><a href="https://huggingface.co/facebook/tts_transformer-es-css10">Text2Speech</a>: For this we used Meta's text2speech service on Huggingface, as text2speech classes are not yet implemented on the main branch of Transformers. This piece was a must to provide a voice to voice service so that it's almost fully accessible. As a future work, as soon as text2speech classes are implemented on transformers, we will train our own models to replace this piece.</li>
19
  </ol>
20
 
21
+ Apart from those, this system could not respond in less than a minute on CPU if we didn't use some indexing tricks on the dataset, by using <a href="https://github.com/facebookresearch/faiss">Faiss</a>. We have to look for relevant passages to answer the questions on over 1.5M of semi-long documents, that means that if we want to compare the question vector as encoded by DPR against all of that vectors, we have to perform over 1.5M comparisons. Instead of that, we index those vectors on clusters of similar documents, therefore the question vector only needs to be compared against the passages of similar subject. With this we improved passages retrieving time to miliseconds. This is key since large generative language models like the ones we use already take too much time on CPU, therefore we alleviate this restriction by reducing the retrieving time.
22
+
23
  On the other hand, we uploaded, and in some cases created, datasets in Spanish to be able to build such a system.
24
 
25
  <ol>
 
35
  <ol>
36
  <li><a href="https://www.un.org/sustainabledevelopment/es/health/">Salud y bienestar</a>: pretendemos con nuestro sistema mejorar la búsqueda de información acerca de la salud y el sector biomédico, ayudando tanto a investigadores biomédicos a indagar en una gran base de datos sobre el tema, pudiendo acelerar así el proceso de investigación y desarrollo en este ámbito, como a cualquier individuo que quiera conocer mejor acerca de la salud y de los temas relacionados. De esta manera usamos la IA para promover tanto el conocimiento como la exploración en el campo de la BioMedicina en castellano.</li>
37
  <li><a href="https://www.un.org/sustainabledevelopment/es/education/">Educación de calidad</a>: al ofrecer al mundo un sistema avanzado de consulta de información, ayudamos a complementar y mejorar los sistemas de calidad actuales del mundo biomédico, pues los alumnos tienen un sistema para aprender sobre este campo interactuando a través de nuestros modelos con una gran base de conocimiento en este tema.</li>
38
+ <li><a href="https://www.un.org/sustainabledevelopment/es/inequality/">Reducción de las desigualdades</a>: Al hacer un sistema end-to-end de voz a voz, en el que no sería necesario usar el teclado (no en la demo actual por cómo están hechos los spaces de Huggingface, pero sí lo permiten las tecnologías que usamos, con la arquitectura adaptada correcta), promovemos la accesibilidad a la herramienta. Esto tiene la intención de que personas que no puedan leer ni escribir tengan la oportunidad de interactuar con BioMedIA. Vimos la necesidad de hacer este sistema lo más flexible posible, para que fuera fácil interactuar con él independientemente de las dificultades o limitaciones físicas que pudieran tener las personas. Al incluir una salida de voz, aquellos que no tengan posibilidad de ver a través de los ojos también podrán recibir respuestas a sus dudas. Esto reduce las desigualdades de acceso a la herramienta de aquellos con alguno de esos impedimentos. Además, generando una herramienta gratuita de acceso al conocimiento disponible en cualquier parte del mundo con acceso a Internet, reducimos las desigualdades de acceso a la información. </li>
39
  </ol>
40
  </p>
41
  """
42
  # 1HOzvvgDLFNTK7tYAY1dRzNiLjH41fZks
43
  # 1kvHDFUPPnf1kM5EKlv5Ife2KcZZvva_1
44
  description = """
45
+ <meta charset="UTF-8">
46
  <a href="https://www.iic.uam.es/">
47
  <img src="https://drive.google.com/uc?export=view&id=1HOzvvgDLFNTK7tYAY1dRzNiLjH41fZks" style="max-width: 100%; max-height: 10%; height: 250px; object-fit: fill">
48
  </a>
49
+ <h1 font-family: Georgia, serif;> BioMedIA: Abstractive Question Answering for the BioMedical Domain in Spanish </h1>
50
+ <p> Esta aplicación utiliza un avanzado sistema de búsqueda para obtener textos relevantes acerca de tu pregunta, usando toda esa información para tratar de condensarla en una explicación coherente y autocontenida. Más detalles y ejemplos de preguntas en la sección inferior.
51
+ Los miembros del equipo:
52
+ <ul>
53
+ <li>Alejandro Vaca Serrano: <a href="https://huggingface.co/avacaondata">@avacaondata</a></li>
54
+ <li>David Betancur Sánchez: <a href="https://huggingface.co/Dabs">@Dabs</a></li>
55
+ <li>Alba Segurado: <a href="https://huggingface.co/alborotis">@alborotis</a></li>
56
+ <li>Álvaro Barbero Jiménez: <a href="https://huggingface.co/albarji">@albarji</a></li>
57
+ <li>Guillem García Subies: <a href="https://huggingface.co/GuillemGSubies">@GuillemGSubies</a></li>
58
+ </ul>
59
+ Esperamos que disfrutéis y curioseéis con ella &#128151; </p>
60
  """
61
 
62