Crear una aplicación de búsqueda

En esta página se describe cómo crear una aplicación de búsqueda.

Crear una aplicación

Consola

Para crear una aplicación de búsqueda con la consola Google Cloud , sigue estos pasos:

  1. En la Google Cloud consola, ve a la página Aplicaciones de IA.

    Aplicaciones de IA

  2. En la página Aplicaciones, haz clic en Crear aplicación.

  3. En la página Crear aplicación, en Búsqueda en el sitio con el modo IA, haz clic en Crear.

  4. Decide si quieres usar las funciones de la edición Enterprise en esta aplicación y, a continuación, activa o desactiva el interruptor. Para acceder a funciones como la búsqueda en el sitio web y la elección de una región para tu aplicación, debes activar las funciones de la edición Enterprise. Estas funciones tienen un coste adicional. Para obtener más información, consulta las funciones de la edición Enterprise.

  5. Decide si quieres usar las funciones avanzadas del LLM en esta aplicación y, a continuación, activa o desactiva el interruptor. Para usar funciones como los resúmenes de búsqueda o la búsqueda con seguimiento, debes activar las funciones avanzadas del LLM. Para obtener más información, consulta Funciones avanzadas de LLM.

  6. En el campo Nombre de tu aplicación, escribe el nombre de tu aplicación.

  7. En el campo Nombre externo de tu empresa u organización, introduce el nombre común de tu empresa u organización. Evite los sufijos (por ejemplo, "Inc." o "LLC"). Este campo ayuda al LLM a identificar la empresa que representa la aplicación.

  8. Selecciona una ubicación para tu aplicación. Las funciones de empresa deben estar activadas para elegir una ubicación. En Google te recomendamos que uses la opción predeterminada, Global, a menos que tengas un motivo para restringir tus datos a una zona geográfica concreta.

  9. Haz clic en Continuar.

  10. Para conectarte a un almacén de datos, en la página Almacenes de datos, selecciona un almacén de datos que hayas creado anteriormente o crea uno.

    Elige una de estas opciones:

    • Seleccione un almacén de datos: si solo adjunta un almacén de datos, no podrá quitarlo ni añadir otros almacenes de datos a la aplicación más adelante. Si adjuntas varios almacenes de datos, podrás actualizarlos más adelante, pero la aplicación siempre requiere al menos dos almacenes de datos.
    • Crea un almacén de datos e ingiere datos en él:
      1. Haz clic en Crear almacén de datos y sigue los pasos que se indican en la página Crear un almacén de datos.
      2. Elige el nuevo almacén de datos y haz clic en Seleccionar. Para obtener más información, consulta Crear un almacén de datos de búsqueda.

REST

Antes de usar la línea de comandos para crear una aplicación, debes tener un almacén de datos. Si no tienes ningún almacén de datos, crea uno siguiendo los pasos que se indican en el artículo Crear un almacén de datos e ingerir datos para Vertex AI Search.

Para usar el método engines.create y crear una aplicación de búsqueda desde la línea de comandos, sigue estos pasos:

  1. Busca el ID de tu almacén de datos. Si ya tiene el ID del almacén de datos, vaya al siguiente paso.

    1. En la Google Cloud consola, ve a la página Aplicaciones de IA y, en el menú de navegación, haz clic en Almacenes de datos.

      Ir a la página Almacenes de datos

    2. Haga clic en el nombre de su almacén de datos.

    3. En la página Datos de su almacén de datos, obtenga el ID del almacén de datos.

  2. Crea una aplicación de búsqueda y conéctala a un almacén de datos. Un almacén de datos solo se puede adjuntar a una aplicación y no se puede quitar de la aplicación más adelante.

    curl -X POST \
    -H "Authorization: Bearer $(gcloud auth print-access-token)" \
    -H "Content-Type: application/json" \
    -H "X-Goog-User-Project: PROJECT_ID" \
    "https://discoveryengine.googleapis.com/v1/projects/PROJECT_ID/locations/global/collections/default_collection/engines?engineId=APP_ID" \
    -d '{
      "displayName": "APP_DISPLAY_NAME",
      "dataStoreIds": ["DATA_STORE_ID"],
      "solutionType": "SOLUTION_TYPE_SEARCH",
      "industryVertical": "GENERIC",
      "searchEngineConfig": {
         "searchTier": "SEARCH_TIER",
         "searchAddOns": ["SEARCH_ADD_ON"]
       }
    }'
    

    Haz los cambios siguientes:

    • PROJECT_ID: el ID de tu proyecto de Google Cloud .
    • APP_ID: el ID de la aplicación de Vertex AI Search que quieres crear.
    • APP_DISPLAY_NAME: el nombre visible de la aplicación de Vertex AI Search que quieres crear.
    • DATA_STORE_ID: el ID de un almacén de datos de Vertex AI Search que quieras añadir a la aplicación de Vertex AI Search.
    • SEARCH_TIER: el nivel de búsqueda puede ser SEARCH_TIER_STANDARD o SEARCH_TIER_ENTERPRISE. SEARCH_TIER_ENTERPRISE es necesario para obtener funciones como la búsqueda en sitios web y elegir una región para tu aplicación. Las funciones de la edición Enterprise tienen un coste adicional. Para obtener más información, consulta las funciones de la edición Enterprise.
    • SEARCH_ADD_ON: si quieres usar las funciones avanzadas de LLM en esta aplicación, especifica SEARCH_ADD_ON_LLM. Las funciones avanzadas de LLM incluyen resúmenes de búsqueda y búsquedas con seguimiento.

      Si no quieres usar las funciones de LLM avanzado, especifica SEARCH_ADD_ON_UNSPECIFIED o elimina el campo searchAddOns.

      Para obtener más información, consulta Funciones avanzadas de LLM.

Python

Para obtener más información, consulta la documentación de referencia de la API AI Applications Python.

Para autenticarte en las aplicaciones de IA, configura las credenciales predeterminadas de la aplicación. Para obtener más información, consulta el artículo Configurar la autenticación en un entorno de desarrollo local.

from typing import List

from google.api_core.client_options import ClientOptions
from google.cloud import discoveryengine_v1 as discoveryengine

# TODO(developer): Uncomment these variables before running the sample.
# project_id = "YOUR_PROJECT_ID"
# location = "YOUR_LOCATION" # Values: "global"
# engine_id = "YOUR_ENGINE_ID"
# data_store_ids = ["YOUR_DATA_STORE_ID"]


def create_engine_sample(
    project_id: str, location: str, engine_id: str, data_store_ids: List[str]
) -> str:
    #  For more information, refer to:
    # https://cloud.google.com/generative-ai-app-builder/docs/locations#specify_a_multi-region_for_your_data_store
    client_options = (
        ClientOptions(api_endpoint=f"{location}-discoveryengine.googleapis.com")
        if location != "global"
        else None
    )

    # Create a client
    client = discoveryengine.EngineServiceClient(client_options=client_options)

    # The full resource name of the collection
    # e.g. projects/{project}/locations/{location}/collections/default_collection
    parent = client.collection_path(
        project=project_id,
        location=location,
        collection="default_collection",
    )

    engine = discoveryengine.Engine(
        display_name="Test Engine",
        # Options: GENERIC, MEDIA, HEALTHCARE_FHIR
        industry_vertical=discoveryengine.IndustryVertical.GENERIC,
        # Options: SOLUTION_TYPE_RECOMMENDATION, SOLUTION_TYPE_SEARCH, SOLUTION_TYPE_CHAT, SOLUTION_TYPE_GENERATIVE_CHAT
        solution_type=discoveryengine.SolutionType.SOLUTION_TYPE_SEARCH,
        # For search apps only
        search_engine_config=discoveryengine.Engine.SearchEngineConfig(
            # Options: SEARCH_TIER_STANDARD, SEARCH_TIER_ENTERPRISE
            search_tier=discoveryengine.SearchTier.SEARCH_TIER_ENTERPRISE,
            # Options: SEARCH_ADD_ON_LLM, SEARCH_ADD_ON_UNSPECIFIED
            search_add_ons=[discoveryengine.SearchAddOn.SEARCH_ADD_ON_LLM],
        ),
        # For generic recommendation apps only
        # similar_documents_config=discoveryengine.Engine.SimilarDocumentsEngineConfig,
        data_store_ids=data_store_ids,
    )

    request = discoveryengine.CreateEngineRequest(
        parent=parent,
        engine=engine,
        engine_id=engine_id,
    )

    # Make the request
    operation = client.create_engine(request=request)

    print(f"Waiting for operation to complete: {operation.operation.name}")
    response = operation.result()

    # After the operation is complete,
    # get information from operation metadata
    metadata = discoveryengine.CreateEngineMetadata(operation.metadata)

    # Handle the response
    print(response)
    print(metadata)

    return operation.operation.name

Terraform

Para saber cómo aplicar o quitar una configuración de Terraform, consulta Comandos básicos de Terraform. Para obtener más información, consulta la documentación de referencia del proveedor Terraform.

Para crear una aplicación de búsqueda con Terraform, consulta discovery_engine_search_engine.

Siguientes pasos