PLUS: addes example
Browse files- 0-1 Pysentimiento_files/arquitectura.jpg +0 -0
- app.py +12 -0
- pages/3_🏗 Arquitectura.py +32 -0
0-1 Pysentimiento_files/arquitectura.jpg
ADDED
app.py
CHANGED
@@ -2,10 +2,22 @@ import streamlit as st
|
|
2 |
from src import get_predict
|
3 |
def main():
|
4 |
st.title("FinacIA")
|
|
|
|
|
|
|
5 |
st.write("Ingresa el titulo de una noticia y te diremos si es positiva, negativa o neutral")
|
|
|
6 |
texto = st.text_input("Ingresa un texto")
|
7 |
if texto:
|
|
|
8 |
resultado = get_predict(texto)
|
9 |
st.write("Resultado:", resultado)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
10 |
if __name__ == '__main__':
|
11 |
main()
|
|
|
2 |
from src import get_predict
|
3 |
def main():
|
4 |
st.title("FinacIA")
|
5 |
+
st.write("Este es un DEMO del proyecto FinacIA, una aplicación que permite analizar noticias financieras y predecir el sentimiento del mercado")
|
6 |
+
st.write("En las páginas posteriores se encuentra la documentación del proyecto, el entrenamiento del modelo, el análisis exploratorio de los datos y tambien la arquitectura del proyecto")
|
7 |
+
|
8 |
st.write("Ingresa el titulo de una noticia y te diremos si es positiva, negativa o neutral")
|
9 |
+
|
10 |
texto = st.text_input("Ingresa un texto")
|
11 |
if texto:
|
12 |
+
texto = "Una de cada diez empresas cerrará y la mitad entrará en pérdidas"
|
13 |
resultado = get_predict(texto)
|
14 |
st.write("Resultado:", resultado)
|
15 |
+
|
16 |
+
st.subheader("Creadores:")
|
17 |
+
st.write("Alejandro Bedoya Taborda")
|
18 |
+
st.write("Alejandro Noriega Soto")
|
19 |
+
st.write("Cristian Camilo Henao Rojas")
|
20 |
+
st.write("Fredy Alberto Orozco Loaiza")
|
21 |
+
st.write("Ronald Gabriel Palencia")
|
22 |
if __name__ == '__main__':
|
23 |
main()
|
pages/3_🏗 Arquitectura.py
ADDED
@@ -0,0 +1,32 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
import streamlit as st
|
2 |
+
|
3 |
+
st.header("Arquitectura del proyecto")
|
4 |
+
st.write("""
|
5 |
+
La arquitectura de la aplicación de inteligencia artificial se basa en una estructura de capas. Comenzamos con el usuario, que se conecta a través de una computadora o celular, y accede a la capa de presentación o front-end. Esta consta de dos APIs principales: "login/registro" y "suscripción". Estas APIs separan los procesos relacionados con el inicio de sesión, el registro y la gestión de suscripciones.
|
6 |
+
|
7 |
+
Además, en esta arquitectura, se utiliza una función lambda que se encarga de gestionar el envío de notificaciones a los usuarios. Esto permite una mayor flexibilidad y escalabilidad.
|
8 |
+
|
9 |
+
En cuanto al alojamiento de la aplicación, todos estos componentes, incluyendo las APIs y la función lambda, se encuentran alojados en AWS (Amazon Web Services). Utilizar AWS para alojar la aplicación proporciona beneficios como escalabilidad, alta disponibilidad y facilidad de implementación.
|
10 |
+
""")
|
11 |
+
|
12 |
+
st.image("0-1 Pysentimiento_files/arquitectura.jpg", caption="Arquitectura del proyecto")
|
13 |
+
|
14 |
+
st.write("""
|
15 |
+
El soporte técnico puede involucrar un equipo que brindan asistencia y resuelven cualquier problema que pueda surgir.
|
16 |
+
|
17 |
+
Después de la capa de presentación, la arquitectura de la aplicación se integra con el backend, que es el encargado de unificar todos los componentes principales del proyecto. El backend está dividido en tres grandes subgrupos.
|
18 |
+
|
19 |
+
El primer subgrupo se encuentra alojado en la nube de AWS y está encargado de almacenar y gestionar los datos de la aplicación. Esta parte del backend se encarga de manejar el almacenamiento de información relevante, como perfiles de usuarios, historiales de suscripción, entre otros.
|
20 |
+
|
21 |
+
El segundo subgrupo del backend es la parte de inteligencia artificial. Aquí es donde se utiliza para realizar las predicciones.
|
22 |
+
|
23 |
+
El tercer subgrupo consiste en una herramienta de web scraping. Esta herramienta se utiliza para recopilar información relevante de diversas fuentes en línea y alimentar al modelo de IA. Esta parte del backend funciona en una instancia de AWS y se encarga de extraer y preparar los datos necesarios para el funcionamiento del modelo.
|
24 |
+
|
25 |
+
Dentro de la parte alojada en la nube, también se incluyen funcionalidades adicionales como la integración con una pasarela de pago. Esta integración permite gestionar los cobros de suscripción. Para esto último, se utiliza una función lambda que se ejecuta cuando finaliza una suscripción, permitiendo realizar el cobro correspondiente.
|
26 |
+
|
27 |
+
Por último, la arquitectura de la aplicación incluye la gestión de la base de datos. Esta se almacena en la nube para garantizar que la información sea segura y no se pierda. Dado que esta base de datos contiene datos críticos para el funcionamiento de la aplicación.
|
28 |
+
|
29 |
+
Además, se guarda el modelo entrenado en un formato específico, como pkl, h5, pb, u otros. Este formato permite conservar el modelo de IA en un estado óptimo para su posterior uso y realizar predicciones de manera eficiente. Al elegir un formato adecuado, se facilita la carga y el despliegue del modelo en el entorno de producción.
|
30 |
+
|
31 |
+
Asimismo, los datos recopilados a través del web scraping y otros medios se almacenan en una base de datos elástica. Esta base de datos está diseñada para manejar un crecimiento constante en la cantidad de datos almacenados. La elasticidad permite adaptarse a medida que la aplicación recopila más información con el tiempo, asegurando que no se vea afectada la capacidad de almacenamiento y consulta de los datos.
|
32 |
+
""")
|