Todos los productos
Search
Centro de documentos

OpenSearch:Uso de la función de predicción de categorías

Última actualización: Sep 04, 2026

La predicción de categorías utiliza un modelo entrenado para asociar una consulta de búsqueda con una categoría de producto y, posteriormente, prioriza los resultados de dicha categoría. Por ejemplo, una consulta como "tenis para correr" se asigna a "Deportes > Calzado", lo que posiciona el calzado deportivo por encima de resultados no relacionados. Una consulta como "mezclilla" se asigna a "Ropa > Pantalones", clasificando los jeans antes que los artículos para el hogar con temática de mezclilla.

Para habilitar la predicción de categorías, complete tres configuraciones: cree y entrene un modelo, configure una regla de análisis de consultas que haga referencia al modelo y agregue una expresión de ordenamiento que invoque a category_score.

image

Requisitos previos

Antes de empezar, asegúrese de contar con lo siguiente:

  • Campos de ID de categoría, título del producto y nombre de categoría configurados como campos de atributo en el esquema de su aplicación.

  • (Si usa Commodity Data) Datos de documentos que contengan los campos de ID de categoría, título del producto y nombre de categoría.

  • (Si usa Behavior Data) Datos de comportamiento de clics recopilados mediante data collection.

Creación y entrenamiento de un modelo de predicción de categorías

  1. En el panel de navegación izquierdo, seleccione Search Algorithm Center > Sort Configuration. En el árbol de navegación, haga clic en Category Prediction Model y luego en Create.

    image

  2. En la página Create Category Prediction, complete los detalles del modelo.

    Field

    Description

    Required

    Nombre del modelo

    Un nombre para identificar el modelo

    Sí

    Data Type

    Commodity Data: datos de documentos provenientes de su aplicación. Requiere los campos de ID de categoría, título del producto y nombre de categoría. Behavior Data: datos de comportamiento de clics recopilados.

    Sí

    Category ID

    Campo que representa el ID de categoría en los documentos de su aplicación. Admite el tipo de datos INT. Debe ser un entero positivo; un valor no positivo provoca un error en el servidor.

    Sí

    Commodity Title

    Campo que representa el título del producto. Admite los tipos de datos TEXT y LITERAL.

    Sí

    Category Name

    Campo que representa el nombre de la categoría. Admite los tipos de datos TEXT y LITERAL.

    Sí

    Filter Condition

    Condición para filtrar los datos de entrenamiento. Los nombres de los campos deben coincidir con los del esquema de la aplicación. Operadores compatibles: <, >, <=, >=, =, !=. Separe varias condiciones con comas (,); todas las condiciones utilizan lógica AND. No se admite la lógica OR. Ejemplo: is_onsale > 0

    No

    image

  3. Haga clic en Completed para ir a la página de detalles del modelo.

    image

  4. En la página Category Prediction Model, el estado del modelo será Pending Training. Haga clic en Train en la columna Actions para iniciar el entrenamiento.

    image

    El modelo pasa por los siguientes estados:

    State

    Meaning

    Pending Training

    Modelo creado, entrenamiento no iniciado

    Training

    El modelo se está entrenando

    Training Failed

    El entrenamiento falló debido a un error en los datos

    Not Applied

    Entrenamiento completado, aún no se ha referenciado para recuperación u ordenamiento

    Trained and Not Passed

    Entrenamiento completado, pero el modelo no pasó la validación del entrenamiento

    Si tiene dudas, envíe un ticket de soporte.

Configuración del análisis de consultas y las expresiones de ordenamiento

Creación de una regla de análisis de consultas

  1. En el panel de navegación izquierdo, seleccione Search Algorithm Center > Retrieval Configuration. En el árbol de navegación, haga clic en Query Analysis Rule Configuration y luego en Create.

    image

  2. Configure la regla de análisis de consultas y guárdela.

    image

Aplicación del modelo al ordenamiento preliminar

El ordenamiento preliminar es la primera ronda de clasificación.

  1. En el panel de navegación izquierdo, seleccione Search Algorithm Center > Sort Configuration. En la página Policy Management, haga clic en Create.

    image

  2. En la página Create Policy, introduzca un nombre para la política. Establezca Scope en Rough Sort y Type en Expression. La consola solo admite expresiones. Los complementos personalizados serán compatibles más adelante.

    image

  3. En el paso Sort Configuration, seleccione category_score() en la lista desplegable Scoring Characteristics.

    image

  4. Seleccione un campo, establezca el peso y guarde la configuración.

    image

Aplicación del modelo al ordenamiento fino

El ordenamiento fino es la segunda ronda de clasificación.

  1. En la página Create Policy, introduzca un nombre para la política. Establezca Scope en Fine Sort y Type en Expression. La consola solo admite expresiones. Los complementos personalizados serán compatibles más adelante.

    image

  2. En el paso Sort Configuration, seleccione category_score(cate_id_field) en la lista desplegable Built-in Functions.

    image

  3. Reemplace cate_id_field con el ID de categoría de su modelo y guarde la configuración.

    image

  4. Compruebe el estado del modelo después de que la política de ordenamiento lo referencie.

  5. Ejecute una prueba de búsqueda en la aplicación. Establezca el parámetro raw_query con una consulta de búsqueda para probar los resultados de la predicción de categorías.

    image

Activación de la predicción de categorías en llamadas de API y SDK

La predicción de categorías ordena los resultados de búsqueda únicamente cuando el parámetro raw_query está presente y su valor coincide con la consulta de búsqueda en el índice.

Establezca raw_query con la consulta de búsqueda introducida por el usuario:

raw_query=<search_query>
  • Al llamar mediante API: codifique el valor mediante URL_ENCODE.

  • Al llamar mediante SDK: no se requiere codificación.

Cuándo entra en vigor la predicción de categorías

La siguiente tabla muestra cuándo se aplica la predicción de categorías según la configuración del índice y el valor de raw_query.

Index configuration

raw_query in request

raw_query equals search query

Category prediction applies?

Deshabilitado

Sí

—

No

Deshabilitado

No

—

No

Habilitado

No

—

No

Habilitado

Sí

No

No

Habilitado

Sí

Sí

Sí

Comportamiento con múltiples índices: Si una solicitud abarca varios índices, la predicción de categorías se aplica a cada índice individualmente según las reglas anteriores.

# index3 prediction takes effect (query matches raw_query for index3 only)
query=index2:'index_query' AND index3:'search_query'&raw_query=search_query

# index2 prediction takes effect preferentially;
# if index2 config doesn't apply, index3 takes effect
query=index2:'search_query' AND index3:'search_query'&raw_query=search_query

Límites

  • Se pueden crear hasta cinco modelos de predicción de categorías por aplicación.

  • Los campos de datos utilizados para entrenar el modelo deben incluirse en los índices donde se aplique la regla de análisis de consultas.

  • Antes de crear un modelo, configure el ID de categoría y los campos relacionados como campos de atributo.

  • Si una regla de análisis de consultas hace referencia a un modelo de predicción de categorías y la solicitud contiene el parámetro category_prediction, se produce un error.

  • Para que la predicción de categorías surta efecto, deben configurarse estos tres elementos: una regla de análisis de consultas que referencie el modelo, una expresión de ordenamiento que contenga la función category_score y el parámetro raw_query en la solicitud.

  • Operaciones de API relacionadas: Algorithms

Solución de problemas de fallos en el entrenamiento del modelo

Si el entrenamiento de su modelo de predicción de categorías falla, siga estos pasos para solucionar el problema:

  1. Revise el informe de anomalías: En la página de detalles del modelo, consulte Latest Version Status. Si el estado indica un error de datos, abra Anomaly Report para identificar la causa del fallo.

  2. Verifique el nivel de integridad: Consulte Completeness Level y las Upgrade Conditions correspondientes. Ajuste sus datos según las condiciones de actualización para mejorar el nivel de integridad.

  3. Lógica de datos T-1: El entrenamiento del modelo utiliza datos estadísticos del día anterior (T-1). Cuando un modelo recién creado se entrena por primera vez, el proceso puede fallar con el error "Training field does not exist" porque no hay datos disponibles del día previo. Espere hasta el día siguiente, cuando los datos estén listos, y vuelva a entrenar el modelo.

  4. Requisito de volumen de datos: El entrenamiento requiere que el número de consultas únicas del día más reciente supere las 100. El conteo de consultas únicas se refiere al número de solicitudes de búsqueda exitosas que incluyen el parámetro raw_query.

  5. Formato de condición de filtro: Si se configuran condiciones de filtro, los nombres de los campos deben coincidir con los campos del esquema de la aplicación. Las condiciones múltiples usan lógica AND y deben separarse con comas (,). Un formato incorrecto puede provocar fallos en el entrenamiento. Ejemplo: is_onsale > 0.

Uso avanzado

Combinación con reconocimiento de entidades nombradas (NER)

Si configura NER junto con la predicción de categorías en una regla de análisis de consultas, se recuperarán más documentos. Los resultados de NER también se utilizan para la recuperación. Si ningún documento coincide con las categorías predichas, se ignoran selectivamente palabras de la consulta de búsqueda para ampliar los resultados; estos resultados más amplios se convierten en la salida final de la predicción de categorías. Para obtener más información, consulte Reconocimiento de entidades nombradas.

Intervención en los resultados de predicción

La intervención le permite anular las predicciones del modelo entrenado, de forma similar a la intervención en el análisis de consultas. Para obtener más información, consulte Intervention dictionaries for category prediction.