PredictFromModel

Devuelve el valor predicho de un modelo de regresión entrenado para el vector de incrustación de texto especificado.

Formato 

PredictFromModel ( modelName ; v1 )

Parámetros 

modelName - cualquier expresión de texto que especifique el nombre de un modelo de regresión entrenado que se ha cargado en la memoria.

v1 - cualquier expresión de texto, campo o campo contenedor que contenga las características de entrada para la predicción. Se puede proporcionar como una matriz JSON (por ejemplo, [1.2, 3.4, 5.6]) o como datos de contenedores binarios que contienen vectores de incrustación.

Tipo de datos devuelto 

número

Se origina en 

22.0

Descripción 

PredictFromModel genera predicciones numéricas utilizando modelos de regresión que han sido entrenados y cargados con el paso de guión Configurar modelo de regresión. La función toma características de entrada (que pueden ser vectores incrustados) y devuelve una única predicción numérica basada en los patrones derivados durante el entrenamiento del modelo.

Antes de usar esta función, debe hacer lo siguiente:

  1. Entrene un modelo de regresión usando el paso de guión Configurar modelo de regresión.

  2. Asegúrese de que el modelo esté cargado en la memoria. Los modelos permanecen cargados hasta que se descargan explícitamente o finaliza la sesión de FileMaker.

  3. Proporcione características de entrada que coincidan con la misma estructura y dimensionalidad que los datos de entrenamiento utilizados para crear el modelo.

El parámetro v1 acepta características de entrada en dos formatos:

  • Texto que contiene una matriz JSON de valores numéricos, como [1.2, 3.4, 5.6, 7.8]. Este formato es legible por humanos y adecuado para casos de uso simples. La matriz JSON también puede consistir en un vector de incrustación generado por un modelo de IA.

  • Un vector de incrustación almacenado como datos de contenedor binario. Este formato generalmente proporciona un mejor rendimiento para operaciones a gran escala y es el formato preferido cuando se trabaja con un vector de incrustación generado por un modelo de IA.

Notas 

  • Las características de entrada en v1 deben tener el mismo número de dimensiones y estar en el mismo orden que los datos de entrenamiento utilizados para crear el modelo.

  • Para utilizar modelos de IA para generar vectores de incrustación que se utilizarán para v1, puede utilizar el paso de guión Insertar incrustación, el paso de guión Insertar incrustación en conjunto encontrado o la función GetEmbedding.

  • El uso de datos contenedores binarios para incrustar vectores generalmente proporciona un mejor rendimiento que las matrices JSON, especialmente para vectores de características de alta dimensión.

  • Los nombres de modelo distinguen entre mayúsculas y minúsculas y deben coincidir exactamente con el nombre del modelo cargado mediante el paso de guión Configurar modelo de regresión.

  • Los modelos permanecen en la memoria hasta que se eliminen explícitamente, por lo que se pueden hacer múltiples predicciones de manera eficiente sin recargar.

  • La función devuelve "?" en los siguientes casos:

    • El nombre de modelo especificado no existe o no está cargado actualmente en la memoria.

    • Las características de entrada tienen dimensiones o formato incorrectos en comparación con los datos de entrenamiento del modelo.

Ejemplo 1 

Una expresión que hace una predicción simple utilizando el modelo de precio de la casa entrenado en el Ejemplo 1 en Configurar modelo de regresión. Las características de entrada son los metros cuadrados, los dormitorios y la edad.

Copiar
PredictFromModel ( "HousePriceModel" ; "[1600, 3, 20]" )

Devuelve una predicción del precio de la vivienda basada en 1600 pies cuadrados, 3 dormitorios y 20 años de antigüedad. Un posible valor devuelto es 256.96153846153845279 (en las mismas unidades de precio que los valores objetivo utilizados en los datos de entrenamiento).

Ejemplo 2

Predice la calificación por estrellas de un cliente en función del texto de su revisión utilizando el modelo entrenado en el Ejemplo 2 en Configurar modelo de regresión. El guión le pide al usuario que introduzca una revisión ($reviewInput), configura una cuenta de IA y luego utiliza la cuenta para obtener vectores de incrustación de texto para $reviewInput. A continuación, carga el modelo de regresión almacenado en el campo global Valoraciones::ReviewModel, luego muestra la calificación prevista utilizando el modelo cargado "ReviewModel" y el vector de incrustación para la revisión del usuario ($reviewEmbedding). Cuando se hace, el guión descarga el modelo de la memoria.

Copiar
Mostrar cuadro de diálogo personalizado ["Introduzca su valoración"; $reviewInput ]

Configurar cuenta de IA [ Nombre de cuenta: "AI_Model_Server" ; Proveedor de modelo: Personalizado ; Punto de conexión: "https://myserver.example.com:8080/" ; Verificar certificados SSL ; Clave API: Global::API_Key ]

Insertar incrustación [ Nombre de cuenta: "AI_Model_Server" ; Modelo de incrustación: "all-MiniLM-L12-v2" ; Entrada: $reviewInput ; Objetivo: $reviewEmbedding ]

Configurar modelo de regresión [ Acción: Cargar modelo ; Nombre de modelo: "ReviewModel" ; Cargar modelo de: Valoraciones::ReviewModel ]

Mostrar cuadro de diálogo personalizado [ "Calificación prevista"; PredictFromModel ( "ReviewModel" ; $reviewEmbedding ) ]

Configurar modelo de regresión [ Acción: Descargar modelo ; Nombre de modelo: "ReviewModel" ]

Una posible valoración prevista para una crítica positiva es de 4,8700974666666665414 para valores objetivo utilizados en el entrenamiento que van de 1 a 5.