Uso de Cognitive Services en aplicaciones de lienzo

En este artículo se muestra cómo compilar una aplicación de lienzo básica que use Text Analytics API de Azure Cognitive Services para analizar texto. Le mostraremos cómo configurar Text Analytics API y cómo conectarse a ella con el conector de Text Analytics. Luego se muestra cómo crear una aplicación de lienzo que llama a la API.

Nota

Si no está familiarizado con la compilación de aplicaciones en Power Apps, es aconsejable que lea Creación de una aplicación desde cero antes de profundizar en este artículo.

Introducción a Azure Cognitive Services

Azure Cognitive Services es un conjunto de API, SDK y servicios disponibles para hacer que sus aplicaciones sean más inteligentes, atractivas y detectables. Estos servicios permiten agregar fácilmente a sus aplicaciones características inteligentes tales como detección de emociones y vídeo; reconocimiento facial, visual y de voz; y comprensión de narración y lenguaje.

Nos centraremos en la "comprensión del lenguaje" en este artículo, y trabajaremos con la API Text Analytics. La API permite detectar la opinión, las frases clave, los temas y el idioma del texto. Para empezar, vamos a probar una demostración de la API.

Requisitos previos

Antes de empezar a crear una aplicación de lienzo con la API de análisis de textos, debe preparar el recurso de análisis de textos. Para obtener más detalles, vaya a los Requisitos previos de la API de análisis de textos.

Creación de la aplicación y adición de una conexión

Sugerencia

Con este tutorial aprenderá a crear una aplicación de demostración a partir de unas pocas propiedades y valores de la salida mediante las acciones de la API de análisis de textos. Puede utilizar un método similar para crear su propia aplicación a fin de mostrar más propiedades y valores (o todos ellos) de las operaciones de la API de análisis de textos.

Cree una aplicación en blanco y agregue una conexión con el conector de Análisis de textos.

  1. Comience por crear una aplicación de lienzo en blanco con diseño Tableta y un nombre como "Aplicación de demostración con API de análisis de texto".

  2. Seleccione Datos en el panel izquierdo.

  3. Busque la conexión Análisis de textos.

    Agregar la conexión de análisis de textos.

  4. Introduzca los valores de Clave de cuenta y Dirección URL del sitio.

    Clave de cuenta y dirección URL del sitio para la API de análisis de textos en Power Apps.

    Encontrará la Clave de cuenta y la Dirección URL del sitio en los valores CLAVE y Punto de conexión a través de Azure Portal.

    CLAVe y Punto de conexión en Azure Portal.

  5. Seleccione Conectar.

Ahora su aplicación está conectada al recurso de Cognitive Services de tipo API de análisis de textos en Azure.

Diseñar la aplicación

En esta sección va diseñar la aplicación de demostración con los controles necesarios para trabajar con la API de análisis de textos. Cuando haya completado el diseño de la aplicación, tendrá este aspecto:

Aplicación de demostración.

Nota

  • La aplicación de este tutorial demuestra cómo empezar a utilizar la API de análisis de textos con Power Apps. Si desea diseñar la aplicación desde cero o cumplir con requisitos comerciales específicos, puede personalizar esta aplicación de demostración o agregarla directamente, configurar controles y usar en su lugar las acciones de la API de análisis de textos.
  • En este tutorial se sugieren valores para las propiedades de los componentes, como la alineación, el tamaño, el color o la posición (X, Y). Los valores reales pueden variar en función del diseño de aplicación que seleccione. También puede cambiar estos valores sugeridos para diseñar la aplicación según sus requisitos.
  1. Seleccione Insertar. en el panel izquierdo.

  2. Seleccione Etiqueta de texto.

  3. Cambie las propiedades de la etiqueta con la siguiente configuración.

    Nombre de la propiedad valor
    Texto "Análisis de textos"
    Tamaño 36
    Color RGBA(255, 255, 255, 1)
    Rellenar RGBA(56, 96, 178, 1)
    Alinear Alinear.Centro
    X 0
    Y 0
    Ancho 1366
    Altura 98
  4. Inserte Etiqueta de texto.

  5. Cambie las propiedades de la etiqueta con la siguiente configuración.

    Nombre de la propiedad valor
    Texto "Escriba el texto, seleccione las opciones y, a continuación, seleccione 'Analizar texto'"
    Tamaño 16
    Alinear Alinear.Izquierda
    X 24
    Y 135
    Ancho 601
    Altura 60
  6. Inserte Casilla.

  7. Cambie las propiedades de la casilla con la siguiente configuración.

    Nombre de la propiedad valor
    Nombre chkLanguage
    Texto "Language"
    Tamaño 16
    X 24
    Y 228
  8. Inserte Casilla.

  9. Cambie las propiedades de la casilla con la siguiente configuración.

    Nombre de la propiedad valor
    Nombre chkSentiment
    Texto "Opinión"
    Tamaño 16
    X 230
    Y 228
  10. Inserte Casilla.

  11. Cambie las propiedades de la casilla con la siguiente configuración.

    Nombre de la propiedad valor
    Nombre chkEL
    Texto "Vinculación de entidades"
    Tamaño 16
    X 403
    Y 228
    Ancho 200
    Altura 50
  12. Inserte Casilla.

  13. Cambie las propiedades de la casilla con la siguiente configuración.

    Nombre de la propiedad valor
    Nombre chkPhrases
    Texto "Frases clave"
    Tamaño 16
    X 24
    Y 286
    Ancho 193
    Altura 50
  14. Inserte Casilla.

  15. Cambie las propiedades de la casilla con la siguiente configuración.

    Nombre de la propiedad valor
    Nombre chkNER
    Texto "Reconocimiento de entidades con nombre"
    Tamaño 16
    X 230
    Y 286
    Ancho 318
    Altura 50
  16. Inserte Entrada de texto.

  17. Cambie las propiedades de la entrada de texto con la siguiente configuración.

    Nombre de la propiedad valor
    Nombre tiTextToAnalyze
    Texto "Escribir texto"
    Modo Multilínea
    Tamaño 14
    Altura 256
    Ancho 557
    X 24
    Y 390
  18. Inserte un botón.

  19. Cambie las propiedades del botón con la siguiente configuración.

    Nombre de la propiedad valor
    Nombre analyzeText
    Texto "Analizar texto"
    X 189
    Y 684
    Ancho 196
    Altura 53
    Tamaño 16
  20. Inserte Etiqueta de texto.

  21. Cambie las propiedades de la etiqueta con la siguiente configuración.

    Nombre de la propiedad valor
    Nombre dLanguage
    Texto "Idioma detectado:"
    Tamaño 16
    X 633
    Y 135
    Ancho 665
    Altura 48
  22. Inserte Etiqueta de texto.

  23. Cambie las propiedades de la etiqueta con la siguiente configuración.

    Nombre de la propiedad valor
    Nombre sScore
    Texto "Puntuación de opinión:"
    Tamaño 16
    X 633
    Y 196
    Ancho 656
    Altura 48
  24. Seleccione Insertar -> Galería -> Vertical en blanco.

  25. Cambie las propiedades de la galería con la siguiente configuración.

    Nombre de la propiedad valor
    Nombre gallerySS
    Diseño Puesto
    X 826
    Y 196
    Ancho 503
    Altura 62
  26. Seleccione el icono de flecha dentro de la galería y elimínelo.

  27. Cambie las siguientes propiedades para la primera fila dentro de la galería.

    Nombre de la propiedad valor
    X 16
    Altura 63
  28. Inserte Etiqueta de texto.

  29. Cambie las propiedades de la etiqueta con la siguiente configuración.

    Nombre de la propiedad valor
    Texto "Entidades vinculadas:"
    Tamaño 16
    X 633
    Y 258
    Ancho 206
    Altura 48
  30. Seleccione Insertar -> Galería -> Vertical en blanco.

  31. Cambie las propiedades de la galería con la siguiente configuración.

    Nombre de la propiedad valor
    Nombre galleryLE
    Diseño Título y subtítulo
    X 633
    Y 318
    Ancho 696
    Altura 87
  32. Seleccione el icono de flecha dentro de la galería y elimínelo.

  33. Inserte Etiqueta de texto.

  34. Cambie las propiedades de la etiqueta con la siguiente configuración.

    Nombre de la propiedad valor
    Texto "Frases clave:"
    Tamaño 16
    X 633
    Y 429
    Ancho 150
    Altura 48
  35. Seleccione Insertar -> Galería -> Vertical en blanco.

  36. Cambie las propiedades de la galería con la siguiente configuración.

    Nombre de la propiedad valor
    Nombre galleryKP
    Diseño Puesto
    X 633
    Y 489
    Ancho 696
    Altura 87
  37. Seleccione el icono de flecha dentro de la galería y elimínelo.

  38. Cambie las siguientes propiedades para la primera fila dentro de la galería.

    Nombre de la propiedad valor
    X 16
    Altura 87
  39. Inserte Etiqueta de texto.

  40. Cambie las propiedades de la etiqueta con la siguiente configuración.

    Nombre de la propiedad valor
    Texto "Entidades con nombre:"
    Tamaño 16
    X 633
    Y 589
    Ancho 193
    Altura 48
  41. Seleccione Insertar -> Galería -> Vertical en blanco.

  42. Cambie las propiedades de la galería con la siguiente configuración.

    Nombre de la propiedad valor
    Nombre galleryNER
    Diseño Puesto
    X 633
    Y 670
    Ancho 696
    Altura 87
  43. Seleccione el icono de flecha dentro de la galería y elimínelo.

  44. Cambie las siguientes propiedades para la primera fila dentro de la galería.

    Nombre de la propiedad valor
    X 16
    Altura 87

Así es como debería verse la aplicación después de seguir los pasos anteriores.

Diseño de la aplicación.

Agregar lógica a la aplicación

Ahora que ha creado una estructura básica de la aplicación con el diseño previsto, vamos a agregar lógica a la aplicación para poder usar Cognitive Services en Power Apps.

Nota

En este tutorial, la aplicación de demostración utiliza fórmulas de ejemplo con una combinación de distintas funciones en función del control que se utilice. Distintos diseños de aplicaciones o personalizaciones pueden usar fórmulas y funciones diferentes. Puede rediseñar la aplicación y las fórmulas para una personalización adicional o para cumplir sus requisitos de negocio.

  1. Copie y pegue la siguiente fórmula como el valor de la propiedad OnSelect para el botón analyzeText.

    ClearCollect( languageInfo, { id: "E393CEB2-56A8-4668-A5EB-A1254E9758F0", countryHint: "US", text: tiTextToAnalyze.Text } );
    TextAnalytics.LanguagesV3(languageInfo);
    If( chkLanguage.Value=true,
        ClearCollect( languageCollect,
            TextAnalytics.LanguagesV3(languageInfo).documents.detectedLanguage
        )
    );
    ClearCollect( phrasesInfo, { id: "E393CEB2-56A8-4668-A5EB-A1254E9758F0", language: "en", text: tiTextToAnalyze.Text } );
    If( chkPhrases.Value = true,
        ClearCollect( phrasesCollect,
            TextAnalytics.KeyPhraseV3(phrasesInfo).documents.keyPhrases
        )
    );
    ClearCollect( sentimentInfo, { id: "E393CEB2-56A8-4668-A5EB-A1254E9758F0", language: "en", text: tiTextToAnalyze.Text } );
    If( chkSentiment.Value = true,
        ClearCollect( sentimentCollect,
            TextAnalytics.SentimentV3(sentimentInfo).documents.confidenceScores
        )
    );      
    ClearCollect( nerinfo, { id: "E393CEB2-56A8-4668-A5EB-A1254E9758F0", language: "en", text: tiTextToAnalyze.Text } );
    If( chkNER.Value = true,
        ClearCollect( nerCollect,
            TextAnalytics.EntitiesRecognitionGeneralV3(nerinfo).documents.entities
        )
    );
    ClearCollect( elinfo, { id: "E393CEB2-56A8-4668-A5EB-A1254E9758F0", language: "en", text: tiTextToAnalyze.Text } );
    If( chkEL.Value = true,
        ClearCollect( elCollect,
            TextAnalytics.EntitiesLinkingV3(elinfo).documents.entities
        )
    ); 
    

    En este paso, la fórmula utiliza las siguientes funciones.

  2. Copie y pegue la siguiente fórmula como el valor de la propiedad Text para la etiqueta dLanguage.

    "Detected language: " & First(languageCollect.detectedLanguage).detectedLanguage.name
    

    En este paso, la fórmula usa la función First para devolver y mostrar el idioma identificado por la API de análisis de textos.

  3. Seleccione un origen de datos para analyzeText como sentimentCollect.

  4. Seleccione la primera fila dentro de la galería gallerySS. A continuación, copie y pegue la siguiente fórmula para la propiedad Text.

    "Positive: " & ThisItem.confidenceScores.positive &" Neutral: " & ThisItem.confidenceScores.neutral & " Negative: " & ThisItem.confidenceScores.negative
    

    En este paso, la fórmula utiliza puntuaciones de confianza analizadas por la API de análisis de textos para que se muestren en la galería.

  5. Seleccione un origen de datos para galleryLE como elCollect.

  6. Seleccione la segunda fila dentro de la galería galleryLE. A continuación, copie y pegue la siguiente fórmula para la propiedad Text.

    Concat(ThisItem.entities.url,url,", ")
    

    En este paso, la función Concat se utiliza para devolver una única cadena separada por comas con direcciones URL para las entidades que se muestran, identificadas por la API de análisis de textos.

  7. Seleccione la primera fila dentro de la galería galleryLE. A continuación, copie y pegue la siguiente fórmula para la propiedad Text.

    Concat(ThisItem.entities.name,name,", ")
    

    En este paso, la función Concat se utiliza para devolver una única cadena separada por comas con nombres de las entidades que se muestran, identificadas por la API de análisis de textos.

  8. Seleccione un origen de datos para galleryKP como phrasesCollect.

  9. Seleccione la primera fila dentro de la galería galleryKP. A continuación, copie y pegue la siguiente fórmula para la propiedad Text.

    Concat(ThisItem.keyPhrases.Value, Value, ", ")
    

    En este paso, la función Concat se utiliza para devolver una única cadena separada por comas con frases clave identificadas por la API de análisis de textos.

  10. Seleccione un origen de datos para galleryNER como nerCollect.

  11. Seleccione la primera fila dentro de la galería galleryNER. A continuación, copie y pegue la siguiente fórmula para la propiedad Text.

    Concat(ThisItem.entities.text,text,", ")
    

    En este paso, la función Concat se utiliza para devolver una única cadena separada por comas con las entidades identificadas por la API de análisis de textos.

  12. Guarde y publique la aplicación.

Ejecutar y probar la aplicación

  1. Obtenga una vista previa de la aplicación o presione F5 en el teclado.

  2. Introduzca un texto de ejemplo, como el siguiente.

    Cognitive Services brings AI within reach of every developer—without requiring machine-learning expertise. All it takes is an API call to embed the ability to see, hear, speak, search, understand, and accelerate decision-making into your apps. Enable developers of all skill levels to easily add AI capabilities to their apps with modern application development.

  3. Active las cinco casillas.

  4. Seleccione Analizar texto.

  5. Revise la salida.

    Salida de texto de ejemplo analizada.

Ahora que ha usado Azure Cognitive Services en Power Apps creando una aplicación de demostración, puede personalizar la interfaz de la aplicación y agregar más características.

Pasos siguientes

Adición y configuración de controles

Consultar también

Controles y propiedades en Power Apps
Documentación de la API de análisis de textos
Inicio rápido: use la biblioteca cliente y la API REST de análisis de textos
Referencia de conector - Análisis de textos