En muchos proyectos de automatización y análisis de datos, hay una necesidad común: procesar texto de forma inteligente. Extraer palabras clave, analizar sentimientos o traducir contenidos son tareas frecuentes, pero requieren lógica avanzada y eficiencia. Y no siempre conviene montar servicios grandes o complejos para resolverlas.
Aquí es donde Azure Functions ofrece una solución perfecta: una arquitectura ligera, escalable y económica, ideal para lógica desacoplada y reutilizable.

He desarrollado una Function App en Azure llamada funcion-, que contiene tres funciones independientes escritas en Python, accesibles por HTTP y pensadas para integrarse fácilmente con Power Automate, Power Apps o cualquier sistema que permita llamadas HTTP. Las funciones son:
– miFuncionPalabrasClave, que extrae automáticamente los conceptos principales de un texto, muy útil para análisis cualitativo.-miFuncionSentimiento, que determina si una respuesta tiene un tono positivo, neutro o negativo.
– miFuncionTraduccion, que traduce cualquier texto a más de 90 idiomas con solo indicar el idioma de destino.
Este enfoque tiene varias ventajas. La arquitectura es completamente modular, lo que me permite modificar o mejorar una función sin afectar a las demás. Además, al estar desplegadas en Azure, las funciones escalan automáticamente según el número de peticiones y no requieren gestionar servidores ni infraestructura adicional. Todo el código se mantiene y publica desde Visual Studio Code, y solo se paga por el uso real, lo que lo hace muy adecuado para soluciones internas o proyectos en fase inicial. La integración con Power Platform, Dataverse, SharePoint, SQL Server o cualquier API externa es directa y ya está en producción en varios flujos reales.
* Esta imagen muestra el panel de recursos de Azure Functions en Visual Studio Code. Desde aquí se pueden ver todas las aplicaciones de funciones (Function Apps) que tienes desplegadas en tu suscripción de Azure, junto con las funciones individuales que contiene cada una.

En un caso concreto de análisis de clima laboral, estas funciones permiten automatizar el procesamiento de respuestas abiertas en encuestas internas. Cada texto se analiza para extraer los temas clave mencionados, detectar el sentimiento general de la respuesta y traducirla si está escrita en otro idioma. Los resultados se almacenan en Dataverse y se visualizan directamente en Power BI, facilitando el análisis sin necesidad de intervención manual. Esta solución permite transformar datos no estructurados en información útil de forma automática y escalable.
Y ahora vamos a ver el ejemplo de flujo que muestra palabras clave y la app que traducen esto en una herramienta y en el resultado visible para el usuario. Por un lado, el flujo de Power Automate comienza con una entrada desde Power Apps (usando el conector Power Apps V2), que recoge el texto que el usuario ha introducido. Ese texto se envía mediante una petición HTTP tipo POST a la función desplegada en Azure (miFuncionPalabrasClave), pasando como cuerpo un objeto JSON con la clave texto.
* Para centrar el foco en el flujo Power Apps → Power Automate → Azure Functions, en este ejemplo coloco la clave en texto claro. Lo recomendado es que: en entornos reales utiliza Azure Key Vault, Managed Identity o variables de aplicación/entorno y aplica control de acceso y rotación de secretos. Aquí lo dejo explícito para que el lector pueda reproducir el caso sin capas adicionales.
Este sería el esquema del código que iría en la URI:
https://<NOMBRE-FUNCTION-APP>.azurewebsites.net/api/<NOMBRE-FUNCION>?code=<CLAVE-DE-ACCESO>

La función analiza ese texto en la nube y devuelve las palabras clave extraídas en formato JSON. El flujo captura la respuesta y expone el resultado mediante una salida llamada keywords, que se devuelve directamente a la app.
En Power Apps, la interfaz es mínima: un cuadro de texto donde se escribe el contenido que se desea analizar y un botón que lanza el flujo. Cuando este termina, el resultado (las palabras clave) se presenta automáticamente en pantalla. La app no necesita contener ninguna lógica de análisis; todo ocurre en segundo plano, gracias a Azure Functions y Power Automate.

Esta es el código que se ejecuta en el botón:
Set(resPalabrasClave; FlujoPalabrasClave.Run(txtTexto.Text))
Este mismo esquema permite aplicar la misma estrategia a otros análisis como sentimiento o traducción, manteniendo una arquitectura limpia y escalable. Todo el procesamiento pesado se realiza en la nube, y el usuario solo ve una app ligera, rápida y con respuesta inmediata.
En este ejemplo las funciones las realizamos desde VS Code, pero en el próximo post, lo haremos desde ChatGPT, para lo que no tendremos que utilizar VSCode.
