• Saltar a la navegación principal
  • Saltar al contenido principal
Logo Codificando Bits

Codificando Bits

  • Academia
    • Rutas
    • Cursos
    • Proyectos
    • Tutoriales
  • Acceder
  • Suscribirse

Introducción a Streamlit

En este tutorial veremos una introducción a la librería Streamlit, una librería de Python que con muy pocas líneas de código nos permite crear aplicativos web (o aplicaciones que se pueden ejecutar desde el navegador de Internet) de forma muy sencilla.

Comencemos entendiendo qué es Streamlit y el uso que podemos darle en nuestros proyectos de Ciencia de Datos, Machine Learning e Inteligencia Artificial (IA).

Si estás suscrito a la Academia Online puedes acceder al enlace de descarga del set de datos y el código fuente de este tutorial.

¿Qué es Streamlit?

Según la documentación oficial de la librería:

«Streamlit es una librería de código abierto de Python desarrollada para Científicos de Datos e Ingenieros de Machine Learning e Inteligencia Artificial que permite construir aplicaciones de datos con muy pocas líneas de código»

Así que se trata de una librería que nos permite desarrollar interfaces gráficas para nuestros proyectos, bien sea que queramos visualizar datos o que queramos por ejemplo implementar interfaces como para aplicaciones de IA como por ejemplo los Chatbots.

Por ejemplo, podemos crear interfaces que nos permitan tomar una tabla de datos (o DataFrame de Pandas) y visualizar no sólo la tabla sino también generar gráficos interactivos tipo gráficos de línea, histogramas o cualquier otro tipo de herramienta de visualización que facilite la interpretación de los datos.

O podemos también desarrollar interfaces interactivas para implementar, por ejemplo, asistentes virtuales. Ejemplos de este uso son los proyectos Chatbot 100% local con Ollama y Streamlit y Chatbot de documentos PDF con Ollama y Streamlit, disponibles acá en la Academia Online.

El aplicativo a desarrollar

Teniendo una idea clara de qué es y qué tipo de aplicaciones nos permite implementar Streamlit, ya estamos listos para comenzar con la parte central de este tutorial.

Así que comencemos hablando del aplicativo a desarrollar. En este tutorial desarrollaremos una sencilla aplicación que tomará un DataFrame (o tabla de datos) de Pandas, creada previamente y nos permitirá interactuar con esta tabla de datos.

El resultado final será similar a este:

Ejemplo primera app con Streamlit
Ejemplo primera app con Streamlit

Esta aplicación tendrá las siguientes opciones de interacción:

  • Nos permitirá visualizar la tabla de datos (lado derecho de la imagen anterior) e interactuar con esta para, por ejemplo, ordenar cada columna simplemente dando click en su encabezado
  • Contará con una barra lateral (lado izquierdo de la imagen anterior) con un menú desplegable que nos permitirá visualizar del lado derecho la tabla, o generar un gráfico nativo de Streamlit o un gráfico interactivo con Plotly

Veremos que para realizar esta implementación se requerirán muy pocas líneas de código y que a pesar de lo sencillo que parece este tutorial nos permitirá aprender a usar las herramientas básicas de desarrollo de aplicativos que nos ofrece Streamlit.

Entonces comencemos viendo paso a paso cómo implementar esta aplicación.

Instalación de la librería

El primer paso consiste en instalar la librería. Como con cualquier proyecto, la primera sugerencia es crear un entorno virtual de Python (para evitar posibles conflictos entre diferentes librerías) y posteriormente vamos al Terminal de Mac o la Ventana de Comandos de Windows y, una vez activado el entorno virtual, ejecutamos el siguiente comando:

pip install streamlit

¡Y listo, ya tendremos instalada la librería en nuestro computador!

Además debemos instalar la librería Plotly, siguiendo exactamente el mismo procedimiento anterior:

pip install plotly

Con esto ya estamos listos para crear un primer prototipo de la aplicación.

Implementando la estructura básica de la aplicación

Ahora crearemos un archivo con extensión .py (primera_app_streamlit.py) que contendrá precisamente nuestro aplicativo.

Contenido exclusivo para suscriptores

Si eres suscriptor accede en este enlace ó suscríbete a la Academia Online y accede a todo el contenido (lecciones en video, código fuente, sets de datos y descargas) de todos los cursos, proyectos y tutoriales.

Veamos qué apariencia debería tener este punto la aplicación:

La barra lateral en nuestra primera app de Streamlit
Resultado de añadir la barra lateral a nuestra app de Streamlit

Muy bien, en este punto tenemos la estructura básica de nuestra app pero el aplicativo no tiene funcionalidad alguna. Es decir, podemos elegir cualquier opción del menú pero no se ejecutará ninguna acción.

Así que veamos cómo añadir funcionalidad a esta aplicación.

Añadiendo funcionalidad al aplicativo

En esta parte la idea es añadir funcionalidad a las opciones de visualización que se encuentran en la barra lateral («Tabla», «Gráfico Streamlit» e «Histograma Plotly»).

Contenido exclusivo para suscriptores

Si eres suscriptor accede en este enlace ó suscríbete a la Academia Online y accede a todo el contenido (lecciones en video, código fuente, sets de datos y descargas) de todos los cursos, proyectos y tutoriales.

Conclusión

Muy bien, con este sencillo tutorial hemos podido aprender la lógica de funcionamiento y algunas de las herramientas básicas para la creación de aplicativos web usando la librería Streamlit.

Como acabamos de ver, realmente resulta bastante fácil e intuitivo el uso de Streamlit al momento de construir este tipo de aplicaciones, pues la librería se encarga de «empaquetar» la mayor parte de los elementos gráficos que harán parte de la interfaz y tan sólo tendremos que saber cómo interconectar los diferentes elementos y cómo añadir funcionalidad a los mismos dependiendo de las características de la interfaz que estemos desarrollando.

Estos mismos principios que acabamos de ver en este tutorial se pueden aplicar para desarrollar aplicativos web más sofisticados y que podremos comenzar a incorporar en nuestros proyectos de Inteligencia Artificial y Ciencia de Datos.

Recuerda que si tienes alguna duda de este tutorial y estás suscrito a la Academia, me puedes contactar directamente a través de la Intranet (sección «Soporte»).

© Codificando Bits, LLC | Blog | Contacto | Servicios | Acerca de | Políticas

¿Has olvidado la contraseña?
¿Has perdido tu contraseña? Por favor, introduce tu nombre de usuario o dirección de correo electrónico. Recibirás por correo electrónico un enlace para crear una nueva contraseña.
body::-webkit-scrollbar { width: 7px; } body::-webkit-scrollbar-track { border-radius: 10px; background: #f0f0f0; } body::-webkit-scrollbar-thumb { border-radius: 50px; background: #dfdbdb }