Crea una app de búsqueda

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

Crea una app

Console

Para usar la consola de Google Cloud y crear una app de búsqueda, sigue estos pasos:

  1. En la consola de Google Cloud, ve a la página Agent Builder.

    Agent Builder

  2. En la página Apps, haz clic en Crear app.

  3. En la página Crear app, en Buscar tu sitio web, haz clic en Crear.

  4. Decide si quieres usar las funciones de Enterprise para esta app y, luego, haz clic en el botón de activación para activarlas o desactivarlas.

    Para obtener funciones como la búsqueda de sitios web y elegir una región para tu app, debes activar las funciones de la edición Enterprise. Estas funciones incurren en un costo adicional. Para obtener más información, consulta Funciones de la edición empresarial.

  5. Decide si quieres usar las funciones avanzadas de LLM para esta app y, luego, haz clic en el botón para activarlas o desactivarlas.

    Para obtener funciones como los resúmenes de búsqueda o la búsqueda con preguntas adicionales, debes activar las funciones avanzadas de LLM. Para obtener más información, consulta Funciones avanzadas de LLM.

  6. En el campo Nombre de tu app, ingresa un nombre para ella.

  7. En el campo Nombre externo de tu organización o empresa, ingresa el nombre común de tu organización o empresa. No es necesario que incluyas sufijos, como Inc. o LLC. Este campo es útil para que el LLM identifique la empresa a la que representa la app.

  8. Selecciona una ubicación para tu app. Las funciones empresariales deben estar activadas para elegir una ubicación. Google recomienda que uses la opción predeterminada, global, a menos que tengas un motivo para restringir tus datos a una ubicación geográfica en particular.

  9. Haga 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 nuevo.

    Realiza al menos una de las siguientes acciones:

    • Selecciona un almacén de datos existente.

      Si solo adjuntas un almacén de datos, no podrás quitarlo ni agregar otros a esta app más adelante. Si conectas varios almacenes de datos, podrás cambiarlos más adelante, pero esta app siempre debe tener al menos dos almacenes de datos conectados.

    • Crea un almacén de datos nuevo y transfiere datos a él.

      Para ello, haz clic en Crear almacén de datos y sigue los pasos que se indican en el panel Crear un almacén de datos que se abre. Luego, selecciona tu almacén de datos nuevo. Para obtener más información, consulta Cómo crear un almacén de datos de búsqueda.

  11. Opcional: Para ver una lista de los almacenes de datos no disponibles, haz clic en Más información.

    Se muestra una tabla con una lista de los almacenes de datos y el motivo por el que no están disponibles. Estos son algunos de los motivos por los que un almacén de datos podría no estar disponible:

    • Tu tipo de almacén de datos permite la conexión a una sola app y el almacén de datos ya está conectado.
    • Tu almacén de datos y tu app se encuentran en regiones diferentes.
    • Tu almacén de datos y tu app son de diferentes tipos. Por ejemplo, no puedes conectar un almacén de datos de búsqueda de atención médica a una app de búsqueda de sitios web.
    • Tu almacén de datos tiene una búsqueda básica de sitios web, mientras que tu app de búsqueda en sitios web requiere un almacén de datos con indexación avanzada de sitios web.
  12. Haz clic en Crear.

REST

Antes de usar la línea de comandos para crear una app, debes tener un almacén de datos existente. Si no tienes un almacén de datos, crea uno siguiendo los pasos que se indican en Crea un almacén de datos y transfiere datos a Vertex AI Search.

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

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

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

      Ve a la página Almacenes de datos.

    2. Haz clic en el nombre de tu almacén de datos.

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

  2. Crea una app de búsqueda y conéctala a un almacén de datos. Un almacén de datos se puede conectar a una sola app y no se puede quitar de la app 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",
      "searchEngineConfig": {
         "searchTier": "SEARCH_TIER",
         "searchAddOns": ["SEARCH_ADD_ON"]
       }
    }'
    

    Reemplaza lo siguiente:

    • PROJECT_ID: El ID del proyecto de Google Cloud.
    • APP_ID: El ID de la app de Vertex AI Search que deseas crear.
    • APP_DISPLAY_NAME: Es el nombre visible de la app de Vertex AI Search que deseas crear.
    • DATA_STORE_ID: Es el ID de un almacén de datos de Vertex AI Search existente que quieres agregar a la app de Vertex AI Search.
    • SEARCH_TIER: El nivel de búsqueda puede ser SEARCH_TIER_STANDARD o SEARCH_TIER_ENTERPRISE. Se requiere SEARCH_TIER_ENTERPRISE para obtener funciones como la búsqueda de sitios web y elegir una región para tu app. Las funciones de la edición de Enterprise incurren en un costo adicional. Para obtener más información, consulta Funciones de la edición para empresas.
    • SEARCH_ADD_ON: Si deseas usar funciones avanzadas de LLM para esta app, especifica SEARCH_ADD_ON_LLM. Las funciones avanzadas de LLM incluyen resúmenes de búsqueda y búsqueda con preguntas adicionales.

      Si no quieres usar las funciones avanzadas de LLM, especifica SEARCH_ADD_ON_UNSPECIFIED o quita 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 de Python del compilador de agentes de Vertex AI.

Para autenticarte en Vertex AI Agent Builder, configura las credenciales predeterminadas de la aplicación. Si deseas obtener más información, consulta Configura la autenticación para 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

Si deseas obtener más información para aplicar o quitar una configuración de Terraform, consulta los comandos básicos de Terraform. Para obtener más información, consulta la documentación de referencia del proveedor de Terraform.

Para crear una app de búsqueda con Terraform, consulta discovery_engine_search_engine.

¿Qué sigue?