Parte 4: Despliegue y API

En esta cuarta parte del curso, aprenderemos a desplegar nuestros proyectos de Flowise tanto localmente como en la nube. También exploraremos las diferentes maneras de interactuar con nuestros proyectos, ya sea en forma de chatbot en una página web o como una API integrada en una aplicación.

Contenidos

¿Qué es el Despliegue?

El despliegue es el proceso de hacer que nuestro chatbot o proyecto esté disponible para ser usado. Es como "publicar" nuestro proyecto para que otros puedan interactuar con él. Hay dos maneras principales de hacer esto:

Despliegue Local

El despliegue local significa que nuestro chatbot funciona en nuestra propia computadora. Es ideal para:

  • Desarrollo y pruebas

  • Uso personal o en una red local

  • Proyectos que no necesitan estar disponibles 24/7

Para comenzar a desplegar cualquiera de nuestros proyectos, debemos seleccionar el botón que se encuentra en la esquina superior derecha con un símbolo de embed.

Botón Para Desplegar

Una vez seleccionado nos encontraremos con un menú con todas las opciones que tenemos para desplegar nuestro proyecto. Todas funcionarán localmente en nuestra máquina.

Opciones de Despliegue

Despliegue en la Nube

El despliegue en la nube significa que nuestro chatbot está alojado en servidores de internet. Es ideal para:

  • Proyectos que necesitan estar disponibles 24/7

  • Chatbots que serán usados por muchas personas

  • Aplicaciones que necesitan alta disponibilidad

Puedes desplegar Flowise desde varios proveedores en la nube:

Proveedores modernos

Las proveedores modernos priorizan la amutomatización y se enfocan en developer workflows, simplificando el cloud management y el mantenimiento.

Esto reduce la dificultad para el uso, pero puede limitar el nivel de personalización que tienes sobre la infrastructura.

Proveedores establecidos

Los proveedores establecidos, por otro lado, requieren un mayor nivel de expertise técnico para tus necesidades específicas.

Esta complejidad, sin embargo, también te da una mayor flexibilidad y control sobre tu cloud environment.

Los Proveedores que Recomiendo

He provado personalmente todas las alternativas, y tengo dos recomendaciones dependiendo de si preferís un cloud provider más moderno y sencillo de usar o uno más establecido y complejo de usar.

Proveedores Modernos Recomendados

Dentro de los proveedores modernos que podemos escoger, en mi opinión las dos mejores opciones son Railway y Render porque combinan buenos precios, sencillez y a la vez de los niveles más altos de libertad para configurar de entre las opciones de proveedores modernos.

Render vs Railway

En la imagen superior tenemos una comparación entre Render y Railway, y como podemos observar, nos llevamos más por lo que pagamos con Railway, que a la vez es más barato y sencillo de usar, siendo una opción excelente para comenzar a desplegar nuestros proyectos en la nube antes de migrarlos a proveedores más establecidos como AWS.

Por lo que mi recomendación es: Railway.

Proveedores Establecidos Recomendados

Si ya habéis desplegado alguno de vuestros proyectos en Railway, lo habéis estado probando, lo habéis lanzado al público, y queréis dar el siguiente paso, mi recomendación es AWS.

AWS nos permite tener una escalabilidad elástica, es decir, ajustar los recursos computacionales dependiendo de la demanda, tiene buenos precios, y es altamente confiable.

AWS es la opción que recomiendo si queréis dar un paso más allá de Railway.

Interfaz de usuario de AWS

Cómo Empezar a Usar Railway

Para desplegar un proyecto en Railway haz click en el siguiente link: https://railway.app/template/nEGbjRarrow-up-right

Pasos:

  1. Haz click en Deploy Now

  2. Haz Login con tu cuenta de Github

  3. Configura las environment variables de la siguiente manera:

  • PORT - 3000

  • LOG_PATH - /opt/railway/.flowise/logs

  • PASSPHRASE - MYPASSPHRASE

  • APIKEY_PATH - /opt/railway/.flowise

  • DATABASE_PATH - /opt/railway/.flowise

  • SECRETKEY_PATH - /opt/railway/.flowise

  • FLOWISE_USERNAME - user

  • FLOWISE_PASSWORD - 1234

  1. Haz click en Deploy

¿Qué es una API?

Piensa en una API como un camarero en un restaurante. Cuando vas a un restaurante, no vas directamente a la cocina a preparar tu comida - hablas con el camarero. El camarero es la interfaz (application programming interface) entre tú (el cliente) y la cocina (donde suceden todas las cosas complejas). Así es como funciona:

Tú (el cliente) miras el menú (la documentación de la API) que te dice qué puedes pedir Le dices al camarero (la API) lo que quieres usando sus reglas - como decir "Quiero la sopa de pollo, por favor" (haciendo una solicitud a la API) El camarero lleva tu pedido a la cocina (el sistema backend) La cocina prepara tu comida (procesa tu solicitud) El camarero trae de vuelta tu comida (la respuesta de la API)

Analogía de API

Acceder a proyectos a través de API

Una API (Interfaz de Programación de Aplicaciones) es como un "menú de servicios" que permite que otros programas interactúen con nuestro chatbot.

Ventajas de usar la API:

  • Integración con otras aplicaciones

  • Automatización de procesos

  • Personalización completa de la interfaz

Para usar la API de Flowise, necesitarás:

  1. Tu API Key

  2. El ID de tu chatflow

  3. El endpoint correcto

Documentación oficial de la API

Configuración Avanzada de Chatbots

La configuración avanzada te permite personalizar cómo funciona tu chatbot:

  • Estilos y apariencia

  • Comportamiento del chat

  • Manejo de errores

  • Límites y restricciones

Configuración Avanzada

Personalizar Nuestro Chatbot

CURL

CURL es una herramienta que permite hacer peticiones HTTP desde la línea de comandos. Es útil para:

  • Probar tu API rápidamente

  • Automatizar tareas

  • Debuggear problemas

Ejemplo básico:

Recomiendo usar Postman para probar a hacer requests a través de la API.

Link para descargar Postman: https://www.postman.com/downloads/

Ejemplo de uso de Postman

Share

La función Share permite compartir tu chatbot con otros de forma fácil:

  • Genera un link público

  • Permite embeber el chat en otras páginas

  • Controla quién puede acceder

Documentación de Share

Ejemplo de Share

Implementación en JavaScript

JavaScript es uno de los lenguajes más comunes para implementar el chatbot en una página web:

Guía de implementación en JavaScript

Implementación en Python

Python es ideal para integrar el chatbot en aplicaciones backend o scripts:

Ejemplo de implementación básica:

Ejemplo de conversación básica:

Last updated