Cómo obtener resultados de la búsqueda de apps de contenido multimedia

En esta página, se muestra cómo obtener una vista previa de los resultados de la búsqueda para apps de medios con la consola deGoogle Cloud y cómo obtener resultados de la búsqueda con la API.

Para implementar la app de búsqueda, puedes crear un widget de búsqueda para agregarlo a tu página web o puedes hacer llamadas a la API e integrarlas en tu página web o aplicación.

Acerca de los modos de búsqueda

Existen varios modos de búsqueda para las apps de contenido multimedia:

  • Búsquedas completas: Cuando los usuarios finales desean buscar todo su término o frase de búsqueda. Por ejemplo, en una app de streaming de música, los usuarios escriben el título completo de la canción y la buscan de una sola vez. Esta es la forma preferida de buscar cuando se usa una interfaz de entrada que permite a los usuarios buscar de una sola vez, como la entrada de audio o la entrada de teclado.

    En las búsquedas completas, si la entrada incluye un error ortográfico, los usuarios esperan que se corrija.

    Este es el mismo comportamiento que la búsqueda de apps que no son de medios (personalizadas). Consulta Cómo obtener resultados de la búsqueda para una app con datos estructurados o no estructurados.

  • Búsquedas parciales (o búsqueda mientras escribes): Cuando los usuarios finales reciben de forma dinámica un nuevo conjunto de resultados de la búsqueda a medida que escriben cada letra. Por ejemplo, en una app de streaming de música, los usuarios comienzan a ingresar el nombre de la canción que buscan y, con cada letra que escriben, los resultados de la búsqueda se actualizan y se reducen de forma dinámica.

  • Modo automático: El modo automático es una combinación de los modos completo y parcial. Con el modo automático, permites que la búsqueda de medios decida si devolverá los resultados de la búsqueda como parciales o completos.

    Para determinar la intención probable de los usuarios finales, la búsqueda de contenido multimedia analiza y pondera varios indicadores, como la cantidad de letras ingresadas, la velocidad de ingreso y si la entrada es una entidad reconocida (por ejemplo, el nombre de un actor o una película).

Qué modo usar

El modo predeterminado para las búsquedas de contenido multimedia es el modo automático. Sin embargo, hay situaciones en las que puedes anular el modo predeterminado y especificar el modo de búsqueda completo o parcial. Estos son algunos ejemplos de casos de uso:

Situación Modo
Tienes mucha confianza en que las búsquedas de tus usuarios finales son búsquedas completas. Por ejemplo, tienes un cuadro de búsqueda que incluye una función Intro para marcar la consulta como completa y el usuario presiona Intro. Búsquedas completas
Tienes mucha confianza en que las búsquedas de tus usuarios finales se realizan como búsquedas parciales, es decir, esperan que la lista de resultados se actualice después de cada letra ingresada. Búsquedas parciales
Ninguna de las situaciones anteriores se aplica. Permite que la búsqueda de medios decida si devolver los resultados de la búsqueda como parciales o completos. Automático

Puedes obtener una vista previa de los resultados de la búsqueda desde la consola de Google Cloud o con la API. Para obtener resultados de la búsqueda de una app de contenido multimedia, haz lo siguiente:

Console

Para usar la consola de Google Cloud para obtener una vista previa de la búsqueda de medios y configurar un widget, haz lo siguiente:

  1. En la consola de Google Cloud , ve a la página AI Applications.

    Aplicaciones basadas en IA

  2. Haz clic en el nombre de la app de búsqueda de contenido multimedia.

  3. Haz clic en Configuraciones.

  4. Haz clic en la pestaña IU.

  5. En la pestaña IU, establece las opciones de Configuración general y Visualización de datos.

  6. En el panel Vista previa, comienza a escribir una consulta.

  7. Para guardar la configuración y que esté disponible en la pestaña Integración, haz clic en Guardar y publicar.

REST

Usa el método engines.servingConfigs.search para obtener resultados de la búsqueda de una app de contenido multimedia:

  1. Busca el ID de tu app. Si ya tienes el ID de tu app, ve al siguiente paso.

    1. En la consola de Google Cloud , ve a la página AI Applications.

      Ve a Apps.

    2. En la página Apps, busca el nombre de tu app y obtén su ID en la columna ID.

  2. Ejecuta el siguiente comando de curl para obtener resultados de la función de búsqueda mientras escribes.

    Todos los campos, excepto contentSearchSpec, se pueden usar junto con el campo searchAsYouTypeSpec. Para mayor claridad, los campos opcionales se omitieron del comando curl. Para los campos opcionales, consulta Cómo obtener resultados de la búsqueda de una app con datos estructurados o no estructurados.

    curl -X POST -H "Authorization: Bearer $(gcloud auth print-access-token)" \
    -H "Content-Type: application/json" \
    "https://discoveryengine.googleapis.com/v1/projects/PROJECT_ID/locations/global/collections/default_collection/engines/APP_ID/servingConfigs/default_search:search" \
    -d '{
    "query": "QUERY",
    "searchAsYouTypeSpec": {"condition": "SPEC_CONDITION"}
    }'
    

    Reemplaza lo siguiente:

    • PROJECT_ID: Es el ID de tu proyecto de Google Cloud .
    • PROJECT_ID: Es el ID de tu proyecto de Google Cloud .
    • APP_ID: Es el ID de la app de Vertex AI Search que deseas consultar.
    • QUERY: Es el texto de la búsqueda.
    • SPEC_CONDITION: La especificación de búsqueda mientras escribes puede tener uno de los siguientes valores:

      • ENABLED: Para búsquedas parciales
      • DISABLED: Para búsquedas completas
      • AUTO: para parcial o completa, según se considere apropiado. Si dejas el campo SPEC_CONDITION vacío o no lo especificas, el modo de búsqueda predeterminado es AUTO.

    Ejemplo de comando y resultado parcial

    curl -X POST -H "Authorization: Bearer $(gcloud auth print-access-token)" \
    -H "Content-Type: application/json" \
    "https://discoveryengine.googleapis.com/v1/projects/my-project-123/locations/global/collections/default_collection/engines/my-app/servingConfigs/default_search:search" \
    -d '{
    "query": "Mission Impossible",
    "searchAsYouTypeSpec": {"condition": "DISABLED"}
    }'
    
    { "results": [ { "id": "189333", "document": { "name": "projects/123456/locations/global/collections/default_collection/dataStores/my-data-store/branches/0/documents/189333", "id": "189333", "structData": { "uri": "http://mytestdomain.movie/content/189333", "title": "Mission: Impossible - Fallout (2018)", "categories": [ "Action", "Adventure", "Thriller" ], "available_time": "2023-01-01T00:00:00Z", "media_type": "movie", "expire_time": "2033-01-01T00:00:00Z" } } }, { "id": "111781", "document": { "name": "projects/123456/locations/global/collections/default_collection/dataStores/my-data-store/branches/0/documents/111781", "id": "111781", "structData": { "media_type": "movie", "available_time": "2023-01-01T00:00:00Z", "uri": "http://mytestdomain.movie/content/111781", "title": "Mission: Impossible - Rogue Nation (2015)", "categories": [ "Action", "Adventure", "Thriller" ], "expire_time": "2033-01-01T00:00:00Z" } } }, ... { "id": "116507", "document": { "name": "projects/123456/locations/global/collections/default_collection/dataStores/my-data-store/branches/0/documents/116507", "id": "116507", "structData": { "uri": "http://mytestdomain.movie/content/116507", "categories": [ "Comedy" ], "media_type": "movie", "available_time": "2023-01-01T00:00:00Z", "title": "Mission London (2010)", "expire_time": "2033-01-01T00:00:00Z" } } } ], "totalSize": 5628, "attributionToken": "vgL0PQEKDAiZxMbCBhD2koiqAxIkNjg1MWM3OTUtMDAwMC0yOWVmLThhNzUtZDQzYTJjYzdiYmNmIgVNRURJQSpUtreMLa_WoTGs1qExwvCeFaOAlyKrtZwxxcvzF-7r6TGotZwxkPeyMI6RyTDPv-Iw1L_iMJvWty2Ovp0V1LKdFfHr6THs4K8tkvGsMJXxrDCY1rctMAFKEjB4OTYzYjdjNGE0ZGYwN2FhZlKUAXByb2plY3RzLzc1NjIwNjYwODQ3OS9sb2NhdGlvbnMvZ2xvYmFsL2NvbGxlY3Rpb25zL2RlZmF1bHRfY29sbGVjdGlvbi9lbmdpbmVzL3F1aWNrc3RhcnQtbWVkaWEtcmVjb21tZW5kXzE3NDUwMjUyMjYwNDMvc2VydmluZ0NvbmZpZ3MvZGVmYXVsdF9zZWFyY2g", "nextPageToken": "Y2YiJ2NjNmMhNDNk1SN3EGOtYWZ5ITLwADMw0CN5czYxUDO2QiGDI9kgzIEGIs1tmJCMIBM1IgC", "summary": {}, "queryExpansionInfo": {} }

Próximos pasos