Spaces:
Runtime error
Runtime error
Jorge Henao
commited on
Commit
·
79959c6
1
Parent(s):
ab08839
about update, index update: reforma pensional
Browse files
about.py
CHANGED
@@ -5,29 +5,39 @@ def show_about_ask2democracy():
|
|
5 |
description = """
|
6 |
<h2>Sobre esta iniciativa</h2>
|
7 |
<p>Muchas de las discusiones que ocurren en Colombia generalmente están sustentadas en documentos que salvo pocas excepciones, casi nadie lee.
|
8 |
-
En este demo se han indexado algunos textos relevantes para la discución pública que suelen estar dispersos y poco accesibles. Además,
|
9 |
<p>
|
10 |
-
También se busca contribuir a la inteligencia artificial abierta y en español, mediante la construcción de un dataset y el entrenamiento de un modelo de lenguaje adaptado para las
|
11 |
<p>
|
12 |
-
Textos indexados: Propuesta reforma de la salud febrero 2023 , Capítulo de hallazgos y recomendaciones de la comisión de la verdad (trabajo en progreso, si quieres apoyar escríbeme)
|
13 |
<div align="right">
|
14 |
Creado por Jorge Henao 🇨🇴 <a href="https://twitter.com/jhenaotw" target='_blank'>Twitter</a> <a href="https://www.linkedin.com/in/henaojorge" target='_blank'/>LinkedIn</a> <a href="https://linktr.ee/jorgehenao" target='_blank'/>Linktree</a>
|
15 |
</div>
|
16 |
<p>
|
17 |
<h2>¿Cómo utilizar este espacio?</h2>
|
18 |
-
Selecciona
|
19 |
-
No se trata de un sistema de búsquedas basado en palabras clave, por el contrario, puedes redactar preguntas más extensas y elaboradas. Cuanto más contexto le des a la pregunta mejores resultados
|
20 |
<h2>Integración opcional con OpenAI</h2>
|
21 |
Este demo usa recursos de computo limitados de Hugging Face y una base de datos vectorial Pinecone sin costo para la gente (si quieres ayudar a que sea más rápido ecríbeme).
|
22 |
De manera opcional, si tienes una cuenta en OpenAI también puedes activar la integración copiando tu API key en el panel de la izquierda.
|
23 |
Una vez ingreses el api key, cada vez que hagas una pregunta el sistema la usará para elaborar una respuesta breve a partir de los resultados de búsqueda obtenidos, basándose siempre en las fuentes oficiales.
|
24 |
También puedes configurar que tan larga quieres que sea la respuesta (max tokens), y que tan creativas (temperatura).
|
25 |
-
<p><p><b>Nota:El sistema no guarda tu API key, la utiliza para aumentar tus consultas mientras lo uses.</b>
|
26 |
<h2>Inteligencia artificial y democracia</h2>
|
27 |
Pretende ayudar a construir democracia participativa apaloncándose en el estado del arte de la inteligencia artificial.
|
28 |
-
Al ser un demo accesible puede
|
29 |
<p>
|
30 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
31 |
Algo que puede ayudar a elevar el nivel del debate público en paises de habla hispana.
|
32 |
<h2>Ask2Democracy v0.3</h2>
|
33 |
Esta version usa sentence transformers (Cosine similarity), una base de dactos vectorial Pinecone para almacenar los embeddings, <a href= "https://github.com/deepset-ai/haystack">Haystack framework</a> y la integración con OpenAI.
|
|
|
5 |
description = """
|
6 |
<h2>Sobre esta iniciativa</h2>
|
7 |
<p>Muchas de las discusiones que ocurren en Colombia generalmente están sustentadas en documentos que salvo pocas excepciones, casi nadie lee.
|
8 |
+
En este demo se han indexado algunos textos relevantes para la discución pública que suelen estar dispersos y poco accesibles. Además, se apoya en el estado del arte de la inteligencia artificial (abajo más detalles) para entender preguntas complejas en español.
|
9 |
<p>
|
10 |
+
También se busca contribuir a la inteligencia artificial abierta y en español, mediante la construcción de un dataset y el entrenamiento de un modelo de lenguaje adaptado para las discusiones ciudadanas. Algo que puede ayudar a elevar la calidad del debate en todos los países de habla hispana.
|
11 |
<p>
|
12 |
+
Textos indexados: Propuesta reforma pensional de Marzo 22 de 2023, Propuesta reforma de la salud del 13 febrero 2023 , Capítulo de hallazgos y recomendaciones de la comisión de la verdad (trabajo en progreso, si quieres apoyar escríbeme)
|
13 |
<div align="right">
|
14 |
Creado por Jorge Henao 🇨🇴 <a href="https://twitter.com/jhenaotw" target='_blank'>Twitter</a> <a href="https://www.linkedin.com/in/henaojorge" target='_blank'/>LinkedIn</a> <a href="https://linktr.ee/jorgehenao" target='_blank'/>Linktree</a>
|
15 |
</div>
|
16 |
<p>
|
17 |
<h2>¿Cómo utilizar este espacio?</h2>
|
18 |
+
Selecciona el de documento que quieres explorar en el panel de la izquierda, escribe preguntas en la caja de texto y presiona el botón.
|
19 |
+
No se trata de un sistema de búsquedas basado en palabras clave, por el contrario, puedes redactar preguntas más extensas y elaboradas. Cuanto más contexto le des a la pregunta mejores resultados obtienes.
|
20 |
<h2>Integración opcional con OpenAI</h2>
|
21 |
Este demo usa recursos de computo limitados de Hugging Face y una base de datos vectorial Pinecone sin costo para la gente (si quieres ayudar a que sea más rápido ecríbeme).
|
22 |
De manera opcional, si tienes una cuenta en OpenAI también puedes activar la integración copiando tu API key en el panel de la izquierda.
|
23 |
Una vez ingreses el api key, cada vez que hagas una pregunta el sistema la usará para elaborar una respuesta breve a partir de los resultados de búsqueda obtenidos, basándose siempre en las fuentes oficiales.
|
24 |
También puedes configurar que tan larga quieres que sea la respuesta (max tokens), y que tan creativas (temperatura).
|
25 |
+
<p><p><b>Nota:El sistema no guarda tu API key, sólo la utiliza para aumentar tus consultas mientras lo uses.</b>
|
26 |
<h2>Inteligencia artificial y democracia</h2>
|
27 |
Pretende ayudar a construir democracia participativa apaloncándose en el estado del arte de la inteligencia artificial.
|
28 |
+
Al ser un demo accesible en web, puede ayudarle a un ciudadano del común a tener una opinión más informada, ayudándole a ser partícipe del debate público haciendo preguntas directamente a las fuentes en su propio lenguaje y llegando a sus propias conclusiones.
|
29 |
<p>
|
30 |
+
Modelos cerrados como ChatGPT /GPT-4 son asombrosos pero alusinan y tienen conocimiento limitado del mundo después de 2021.
|
31 |
+
Respecto a la inteligencia artificial hay algunas hipótesis que se quieren probar:
|
32 |
+
- ¿Que tan efectiva puede ser un sistema de búsquedas con un modelo de inteligencia artificial abierto, para ayudar a la gente a entender discuciones ciudadanas relevantes?
|
33 |
+
- ¿Que tan creativa puede ser en esa materia?
|
34 |
+
- ¿Puede un modelo de inteligencia artificial abierta, ayudarle a la gente a entender documentos legislativos: propuestas de reforma, planes de gobierno, y en general documentos de discución pública?
|
35 |
+
- ¿Puede un modelo abierto igualar o mejorar a un modelo como ChatGPT/GPT-4 de OpenAI para el entendimiento de discusiones ciudadanas en español?
|
36 |
+
<p>Por lo anterior hay tres frentes de experimentación:
|
37 |
+
-Abstactive Question Answering: Usando modelos de lenguaje para entender el lenguaje español, y extraer respuestas a preguntas complejas.
|
38 |
+
-Text Generation: Usando modelos de lenguaje para entender el lenguaje español, y generar respuestas a preguntas complejas.
|
39 |
+
-Rag: Usando modelos de lenguaje para entender el lenguaje español, y generar respuestas a preguntas complejas.
|
40 |
+
Por lo que se prentende la construcción de un dataset SQuAD. Dataset usado para entrenar(fine-tunning) uno o más modelos(Bert/GPT-2/Apalaca...) adapatado a discuciones ciudadanas en español.
|
41 |
Algo que puede ayudar a elevar el nivel del debate público en paises de habla hispana.
|
42 |
<h2>Ask2Democracy v0.3</h2>
|
43 |
Esta version usa sentence transformers (Cosine similarity), una base de dactos vectorial Pinecone para almacenar los embeddings, <a href= "https://github.com/deepset-ai/haystack">Haystack framework</a> y la integración con OpenAI.
|
app.py
CHANGED
@@ -81,8 +81,10 @@ def search_and_show_generative_results(query:str, retriever_top_k = 5, generator
|
|
81 |
st.markdown(f"[Lee más aquí]({answer[3]})")
|
82 |
|
83 |
|
84 |
-
indexes = [{"title": "
|
85 |
-
{"title": "
|
|
|
|
|
86 |
|
87 |
index_titles = [item["title"] for item in indexes]
|
88 |
|
@@ -106,7 +108,7 @@ def main():
|
|
106 |
</div>""", unsafe_allow_html=True)
|
107 |
st.sidebar.title("Configuración de búsqueda")
|
108 |
with st.sidebar.expander("Parámetros de recuperación", expanded= True):
|
109 |
-
index = st.selectbox("Selecciona
|
110 |
top_k_retriever = st.slider("Retriever Top K", 1, 10, 5)
|
111 |
top_k_reader = st.slider("Reader Top K", 1, 10, 3)
|
112 |
|
@@ -118,9 +120,6 @@ def main():
|
|
118 |
openai_api_max_tokens = st.slider("OpenAI max tokens", 10, 100, 30, step=10)
|
119 |
|
120 |
sample_questions = get_samples_for_index(index).splitlines()
|
121 |
-
# selected_sample_question = st.selectbox("Algunas preguntas de ejemplo:", sample_questions)
|
122 |
-
# if selected_sample_question == "Selecciona una pregunta de ejemplo":
|
123 |
-
# selected_sample_question = ""
|
124 |
query = st.text_area("",placeholder="Escribe aquí tu pregunta y presiona Buscar")
|
125 |
with st.expander("Algunas preguntas de ejemplo", expanded= False):
|
126 |
for sample in sample_questions:
|
|
|
81 |
st.markdown(f"[Lee más aquí]({answer[3]})")
|
82 |
|
83 |
|
84 |
+
indexes = [{"title": "Propuesta reforma pensional marzo 22 de 2023", "name": "Reforma pensional Marzo 2023", "samples": samples_hallazgos_paz},
|
85 |
+
{"title": "Propuesta reforma de la salud 13 de febrero de 2023", "name": "Reforma de la salud 13 Febrero 2023", "samples": samples_reforma_salud},
|
86 |
+
{"title": "Hallazgos de la comisión de la verdad", "name": "Hallazgos y recomendaciones - 28 de Junio 2022", "samples": samples_hallazgos_paz}
|
87 |
+
]
|
88 |
|
89 |
index_titles = [item["title"] for item in indexes]
|
90 |
|
|
|
108 |
</div>""", unsafe_allow_html=True)
|
109 |
st.sidebar.title("Configuración de búsqueda")
|
110 |
with st.sidebar.expander("Parámetros de recuperación", expanded= True):
|
111 |
+
index = st.selectbox("Selecciona el documento que deseas explorar", index_titles)
|
112 |
top_k_retriever = st.slider("Retriever Top K", 1, 10, 5)
|
113 |
top_k_reader = st.slider("Reader Top K", 1, 10, 3)
|
114 |
|
|
|
120 |
openai_api_max_tokens = st.slider("OpenAI max tokens", 10, 100, 30, step=10)
|
121 |
|
122 |
sample_questions = get_samples_for_index(index).splitlines()
|
|
|
|
|
|
|
123 |
query = st.text_area("",placeholder="Escribe aquí tu pregunta y presiona Buscar")
|
124 |
with st.expander("Algunas preguntas de ejemplo", expanded= False):
|
125 |
for sample in sample_questions:
|