Introducción a las conexiones analíticas
Cree una conexión analítica para cargar y generar datos a partir de modelos implementados desde Qlik Cloud o desde varias herramientas de aprendizaje automático de terceros. Estos modelos suelen exponer puntos de conexión de API basados en REST. Antes de crear y utilizar la conexión, debe crear y desplegar, u obtener acceso, a los modelos de aprendizaje automático que desee.
Además de Qlik AutoML, existen varias plataformas de terceros en las que se pueden crear, entrenar e implementar modelos de aprendizaje automático, como:
-
Azure ML
-
Amazon SageMaker
Entrenamiento de un modelo de clasificación con AutoML sin código en Azure Machine Learning Studio
Introducción a Amazon SageMaker
Habilitar conexiones analíticas para puntos de conexión de aprendizaje automático
Los puntos de conexión de aprendizaje automático están deshabilitados de forma predeterminada.
Los administradores de un espacio empresarial inquilino pueden habilitar los puntos de conexión de aprendizaje automático (Machine Learning) en Control de funciones, en la ventana Configuración.
Utilizar las conexiones analíticas y la sintaxis para extensiones del lado del servidor
Las conexiones analíticas pueden enviar datos a Qlik AutoML o a puntos de conexión de aprendizaje automático expuestos externamente para realizar cálculos. Los datos devueltos desde estas conexiones se pueden cargar en una app de Qlik Sense.
Los scripts de carga de datos y las expresiones de gráfico son dos formas en las que se pueden agregar conexiones analíticas a una app de Qlik Sense. Tanto las funciones como los parámetros de extensiones del lado del servidor (SSE) se procesan en el interior de Qlik Sense y luego se convierten en solicitudes REST que se envían a modelos de aprendizaje automático. Los scripts de carga de SSE y las expresiones de gráficos deben respetar la sintaxis de SSE. Vea Sintaxis de las extensiones del lado del servidor.
Script de carga de datos
-
Puede devolver una tabla de la llamada SSE y cargar datos de conexiones analíticas utilizando la sentencia LOAD ... EXTENSION en el script de carga de datos de Qlik Sense. Puede enviar una única tabla al modelo y devuelve una única tabla de datos.
-
Cuando utiliza una función SSE en el script de carga de datos de Qlik Sense (excluida la sentencia LOAD ... EXTENSION), se conserva la cardinalidad y devuelve una sola columna.
-
Las llamadas a funciones SSE desde cualquier otra sentencia de carga, por ejemplo Load ... From ..., solo admiten tipos de funciones escalares y de agregación. Esto implica que los datos que contengan n filas darán como resultado n llamadas al modelo a menos que esté agregando los datos resultantes en una sola llamada.
-
Los tipos de datos se detectan automáticamente en las conexiones analíticas. Si los datos no tienen valores numéricos y al menos una cadena de texto no nula, el campo se considera texto. En cualquier otro caso, se considera numérico. Puede forzar el tipo de datos englobando un nombre de campo con String() o Mixed(). String() obliga al campo a ser de texto. Si el campo es numérico, se extrae la parte de texto del valor dual, no se realiza ninguna conversión. Mixed() obliga al campo a ser dual.
Expresiones de gráfico
-
Las expresiones de gráfico no pueden consumir una tabla devuelta por la llamada a la función SSE. Cuando usa una función SSE en una expresión de gráfico, la cardinalidad se conserva y solo la primera columna devuelta será utilizada por Qlik Sense.
Remitir al espacio de la conexión de datos
Si está publicando la aplicación o script en un espacio administrado, o si desea que sus peticiones SSE hagan referencia a una conexión en el espacio actual, utilice la sintaxis relativa. Como alternativa, configure la solicitud con una referencia a un nombre de espacio específico. Estos conceptos son importantes tanto en el script de carga como en las expresiones del gráfico.
Para obtener más información sobre el uso de la sintaxis espacial, consulte:
Ejemplo 1: Sintaxis de espacio relativo en script de carga
El siguiente ejemplo es una muestra de una conexión a una conexión analítica dentro de un script de carga. Se ha modificado el código para que apunte a una conexión en el espacio actual de la app o script. Esto se hace añadiendo dos puntos al principio del nombre de la conexión (en este caso, ":Amazon_Titan_(Amazon_Bedrock)"). Sin estos dos puntos, la referencia apuntaría a una conexión en el espacio personal del usuario que ejecuta la recarga (o del propietario del programa de recarga).
EXTENSION endpoints.ScriptEval('{"RequestType":"endpoint", "endpoint":{"connectionname":":Amazon_Titan_(Amazon_Bedrock)"}}', QuestionsTable{Question_ID,Question});
Esta sintaxis consciente del espacio podría utilizarse antes de publicar la aplicación o el script en un espacio administrado que también contenga la conexión analítica.
Ejemplo 2: Sintaxis de espacio relativo en una expresión de gráfico
El siguiente ejemplo es una expresión de gráfico que contiene una referencia a una conexión en el espacio actual. Esto se hace añadiendo dos puntos al principio del nombre de la conexión (en este caso, ":Amazon_Titan_(Amazon_Bedrock)"). Sin estos dos puntos, la referencia apuntaría a una conexión en el espacio personal del usuario que ejecuta la recarga (o del propietario del programa de recarga).
if(vQuestion <> '', endpoints.scriptAggrStr('{"RequestType":"endpoint", "endpoint":{"connectionname":":Amazon_Titan_(Amazon_Bedrock)","column":"outputText"}}',vQuestion))
Esta sintaxis consciente del espacio podría utilizarse antes de publicar la aplicación o el script en un espacio administrado que también contenga la conexión analítica.
Ejemplo 3: Sintaxis de espacio codificada en el script de carga
Si desea que la referencia a la conexión analítica solo funcione en un espacio específico, puede codificar la expresión para que contenga una referencia directa al espacio. Si no se incluye el nombre del espacio (y también se omiten los dos puntos que se añadieron a los ejemplos 1 y 2), la sintaxis está codificada para referirse a una conexión en el espacio personal del usuario que ejecuta la recarga (o del propietario del programa de recarga).
Si utiliza el asistente de selección de datos para añadir la sentencia load, ésta será la sintaxis utilizada automáticamente.
EXTENSION endpoints.ScriptEval('{"RequestType":"endpoint", "endpoint":{"connectionname":"My_Shared_Space:Amazon_Titan_(Amazon_Bedrock)"}}', QuestionsTable{Question_ID,Question});
En este caso, la referencia es a una conexión en un espacio denominado My_Shared_Space.
Ejemplo 4: Sintaxis de espacio codificada en una expresión de gráfico
Este ejemplo es similar al ejemplo 3. Si no se incluye el nombre del espacio (y también se omiten los dos puntos que se añadieron a los ejemplos 1 y 2), la sintaxis está codificada para referirse a una conexión en el espacio personal del usuario que ejecuta la recarga (o del propietario del programa de recarga).
if(vQuestion <> '', endpoints.scriptAggrStr('{"RequestType":"endpoint", "endpoint":{"connectionname":"My_Shared_Space:Amazon_Titan_(Amazon_Bedrock)","column":"outputText"}}',vQuestion))
En este caso, la referencia es a una conexión en un espacio denominado My_Shared_Space.