Cómo obtener resultados de la búsqueda para 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 contenido multimedia con la Google Cloud consola 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 realizar llamadas a la API e integrar esas llamadas a tu página web o aplicación.

Acerca de los modos de búsqueda

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

  • Consultas completas: Cuando los usuarios finales quieren que se busque todo el término o la 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 consultas completas, si la entrada incluye un error ortográfico, los usuarios esperan que se corrija ese error.

    Este es el mismo comportamiento que la búsqueda de apps que no son de contenido multimedia (personalizadas). Consulta Obtén resultados de la búsqueda para una app con datos estructurados o no estructurados datos.

  • Consultas parciales (o de 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 acotan 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 contenido multimedia decida si mostrará los resultados de la consulta como parciales o completos.

    Para determinar la intención probable de los usuarios finales, la búsqueda de contenido multimedia analiza y pondera varias señales, como la cantidad de letras ingresadas, la velocidad de entrada 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 consultas de búsqueda 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 consulta completo o parcial. Estos son algunos ejemplos de casos de uso:

Situación Modo
Estás muy seguro de que las consultas de tus usuarios finales son consultas completas consultas. Por ejemplo, tienes un cuadro de búsqueda que incluye una función Enter para marcar la consulta como completa y el usuario presiona Enter. Consultas completas
Estás muy seguro de que las consultas de tus usuarios finales están destinadas a ser consultas parciales, es decir, esperan que la lista de resultados se actualice después de cada letra ingresada. Consultas parciales
No se aplica ninguna de las situaciones anteriores. Permite que la búsqueda de contenido multimedia decida si mostrará los resultados de la consulta como parciales o completos. Automático

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

Console

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

  1. En la Google Cloud consola de, 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, configura las opciones Configuraciones generales y Visualización de datos.

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

  7. Para guardar las configuraciones y que estén disponibles 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 para una app de contenido multimedia:

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

    1. En la Google Cloud consola de, 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 de la columna ID.

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

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

    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: el ID de tu Google Cloud proyecto.
    • PROJECT_ID: el ID de tu Google Cloud proyecto.
    • APP_ID: el ID de la app de Agent Search que deseas consultar.
    • QUERY: el texto de la consulta para buscar.
    • SPEC_CONDITION: la especificación de búsqueda mientras escribes puede tener uno de los siguientes valores:

      • ENABLED: para consultas parciales
      • DISABLED: para consultas completas
      • AUTO: para parcial o completo 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