MathJake commited on
Commit
b0784b0
verified
1 Parent(s): eb29c8f

Update src/chatbox_v1.py

Browse files
Files changed (1) hide show
  1. src/chatbox_v1.py +59 -59
src/chatbox_v1.py CHANGED
@@ -1,60 +1,60 @@
1
- import streamlit as st
2
- from Rag_milvus import query_qdrant, obtener_colecciones, query_qdrant_sinumbral
3
- from Llm_local import get_response_from_mistral, generarPages
4
- from sentence_transformers import SentenceTransformer
5
-
6
- col1, col2 = st.columns([1, 4])
7
- with col1:
8
- st.image("Procuradurialogo.jpg", width=600)
9
-
10
- with col2:
11
- st.markdown("""
12
- <div style='display: flex; align-items: center; height: 100%;'>
13
- <h1 style='margin: 0; text-align: center;'>ProcurIA</h1>
14
- </div>
15
- """, unsafe_allow_html=True)
16
-
17
- st.sidebar.title("Men煤 de Funciones")
18
- generarPages()
19
- #Inicializamos nuestro historial de chat
20
- if "messages" not in st.session_state:
21
- st.session_state.messages = [{"role": "assistant", "content": "Hola!, en que puedo ayudarte?"}]
22
-
23
- #Definimos modelo
24
- model = SentenceTransformer("all-MiniLM-L6-v2")
25
-
26
- #Elegimos una coleccion
27
- colecciones = obtener_colecciones()
28
- coleccion_seleccionada = st.sidebar.selectbox("Selecciona una colecci贸n", colecciones)
29
-
30
- # Mostrar el historial de mensajes
31
- for message in st.session_state.messages:
32
- with st.chat_message(message["role"]):
33
- st.markdown(message["content"])
34
-
35
- # Entrada del usuario
36
- if prompt := st.chat_input("Escribe tus dudas"):
37
- st.session_state.messages.append({"role": "user", "content": prompt})
38
-
39
- with st.chat_message("user"):
40
- st.markdown(prompt)
41
-
42
- with st.chat_message("assistant"):
43
- if coleccion_seleccionada == "Todas las colecciones":
44
- colecciones_disponibles = obtener_colecciones()
45
- results = []
46
- umbral=1
47
- for coleccion in colecciones_disponibles[1:]:
48
- coleccion_results = query_qdrant_sinumbral(prompt,model,coleccion)
49
- results.extend(coleccion_results)
50
- else:
51
- umbral=0.56
52
- results = query_qdrant(prompt, model, coleccion_seleccionada,5,umbral)
53
-
54
- if not results:
55
- response = "Disculpa, no tengo informaci贸n para responder esa pregunta."
56
- else:
57
- response = st.write_stream(get_response_from_mistral(prompt, results))
58
-
59
- st.session_state.messages.append({"role": "assistant", "content": response})
60
  st.write(results)
 
1
+ import streamlit as st
2
+ from Rag_milvus import query_qdrant, obtener_colecciones, query_qdrant_sinumbral
3
+ from Llm_local import get_response_from_mistral, generarPages
4
+ from sentence_transformers import SentenceTransformer
5
+
6
+ col1, col2 = st.columns([1, 4])
7
+ with col1:
8
+ #st.image("Procuradurialogo.jpg", width=600)
9
+
10
+ with col2:
11
+ st.markdown("""
12
+ <div style='display: flex; align-items: center; height: 100%;'>
13
+ <h1 style='margin: 0; text-align: center;'>ProcurIA</h1>
14
+ </div>
15
+ """, unsafe_allow_html=True)
16
+
17
+ st.sidebar.title("Men煤 de Funciones")
18
+ generarPages()
19
+ #Inicializamos nuestro historial de chat
20
+ if "messages" not in st.session_state:
21
+ st.session_state.messages = [{"role": "assistant", "content": "Hola!, en que puedo ayudarte?"}]
22
+
23
+ #Definimos modelo
24
+ model = SentenceTransformer("all-MiniLM-L6-v2")
25
+
26
+ #Elegimos una coleccion
27
+ colecciones = obtener_colecciones()
28
+ coleccion_seleccionada = st.sidebar.selectbox("Selecciona una colecci贸n", colecciones)
29
+
30
+ # Mostrar el historial de mensajes
31
+ for message in st.session_state.messages:
32
+ with st.chat_message(message["role"]):
33
+ st.markdown(message["content"])
34
+
35
+ # Entrada del usuario
36
+ if prompt := st.chat_input("Escribe tus dudas"):
37
+ st.session_state.messages.append({"role": "user", "content": prompt})
38
+
39
+ with st.chat_message("user"):
40
+ st.markdown(prompt)
41
+
42
+ with st.chat_message("assistant"):
43
+ if coleccion_seleccionada == "Todas las colecciones":
44
+ colecciones_disponibles = obtener_colecciones()
45
+ results = []
46
+ umbral=1
47
+ for coleccion in colecciones_disponibles[1:]:
48
+ coleccion_results = query_qdrant_sinumbral(prompt,model,coleccion)
49
+ results.extend(coleccion_results)
50
+ else:
51
+ umbral=0.56
52
+ results = query_qdrant(prompt, model, coleccion_seleccionada,5,umbral)
53
+
54
+ if not results:
55
+ response = "Disculpa, no tengo informaci贸n para responder esa pregunta."
56
+ else:
57
+ response = st.write_stream(get_response_from_mistral(prompt, results))
58
+
59
+ st.session_state.messages.append({"role": "assistant", "content": response})
60
  st.write(results)