Crea un'app di ricerca

Questa pagina descrive come creare un'app di ricerca.

Crea un'app

Console

Per creare un'app di ricerca utilizzando la console Google Cloud, segui questi passaggi:

  1. Nella console Google Cloud, vai alla pagina Agent Builder.

    Agent Builder

  2. Nella pagina App, fai clic su Crea app.

  3. Nella pagina Crea app, fai clic su Crea in Ricerca nel tuo sito web.

  4. Decidi se vuoi le funzionalità Enterprise per questa app e poi fai clic sul pulsante di attivazione/disattivazione. L'attivazione delle funzionalità della versione Enterprise è necessaria per ottenere funzionalità come la ricerca nel sito web e la scelta di una regione per la tua app. Le funzionalità della versione Enterprise comportano un costo aggiuntivo. Per saperne di più, consulta Funzionalità della versione Enterprise.

  5. Decidi se vuoi le funzionalità LLM avanzate per questa app, quindi fai clic sul pulsante di attivazione/disattivazione. L'attivazione delle funzionalità LLM avanzate è necessaria per ottenere funzionalità come i riepiloghi della ricerca o la ricerca con domande aggiuntive. Per ulteriori informazioni, consulta la sezione Funzionalità avanzate di LLM.

  6. Nel campo Nome app, inserisci un nome per l'app.

  7. Nel campo Nome esterno della tua azienda o organizzazione, inserisci il nome comune della tua azienda o organizzazione. Evita suffissi come S.p.A. o S.r.l. Questo campo aiuta l'LLM a identificare la società rappresentata dall'app.

  8. Seleziona una località per la tua app. Per scegliere una località, le funzionalità di Enterprise devono essere attive. Google consiglia di utilizzare l'opzione predefinita globale (Globale), a meno che tu non abbia motivi per limitare i dati a una determinata area geografica.

  9. Fai clic su Continua.

  10. Per connetterti a un datastore, nella pagina Datastore seleziona un datastore che hai creato in precedenza o creane uno nuovo.

    Scegli una delle seguenti opzioni:

    • Seleziona un datastore esistente: se colleghi un solo datastore, non potrai rimuoverlo o aggiungere altri datastore all'app in un secondo momento. L'attacco di più datastore ti consente di aggiornarli in un secondo momento, ma l'app richiede sempre almeno due datastore.
    • Crea un nuovo datastore e importavi i dati:
      1. Fai clic su Crea data store e segui i passaggi descritti nella pagina Creare un nuovo datastore.
      2. Scegli il nuovo datastore e fai clic su Seleziona. Per ulteriori informazioni, consulta Creare un archivio dati di ricerca.

REST

Prima di utilizzare la riga di comando per creare un'app, devi avere un datastore esistente. Se non hai un datastore, creane uno seguendo i passaggi descritti in Creare un datastore e importare i dati per Vertex AI Search.

Per utilizzare il metodo engines.create per creare un'app di ricerca dalla riga di comando, segui questi passaggi:

  1. Trova l'ID del tuo datastore. Se hai già l'ID del tuo data store, vai al passaggio successivo.

    1. Nella console Google Cloud, vai alla pagina Agent Builder e nel menu di navigazione fai clic su Data Store.

      Vai alla pagina Datastore

    2. Fai clic sul nome del tuo datastore.

    3. Nella pagina Dati del tuo datastore, ottieni l'ID datastore.

  2. Crea un'app di ricerca e collegala a un datastore. Un data store può essere collegato a una sola app e non può essere rimosso dall'app in un secondo momento.

    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": "INDUSTRY_VERTICAL",
      "searchEngineConfig": {
         "searchTier": "SEARCH_TIER",
         "searchAddOns": ["SEARCH_ADD_ON"]
       }
    }'
    

    Sostituisci quanto segue:

    • PROJECT_ID: l'ID del tuo Google Cloud progetto.
    • APP_ID: l'ID dell'app Vertex AI Search che vuoi creare.
    • APP_DISPLAY_NAME: il nome visualizzato dell'app Vertex AI Search che vuoi creare.
    • DATA_STORE_ID: l'ID di un datastore Vertex AI Search esistente che vuoi aggiungere all'app Vertex AI Search.
    • INDUSTRY_VERTICAL: il verticale di settore associato all'app. Questo campo può assumere i valori specificati in IndustryVertical. Per le app di ricerca con più datastore, chiamate anche app di ricerca combinate, devi specificare questo campo come GENERIC.
    • SEARCH_TIER: il livello di ricerca può essere SEARCH_TIER_STANDARD o SEARCH_TIER_ENTERPRISE. SEARCH_TIER_ENTERPRISE è necessario per usufruire di funzionalità come la ricerca sui siti web e la scelta di una regione per la tua app. Le funzionalità della versione Enterprise comportano un costo aggiuntivo. Per ulteriori informazioni, consulta le funzionalità della versione Enterprise.
    • SEARCH_ADD_ON: se vuoi le funzionalità LLM avanzate per questa app, specifica SEARCH_ADD_ON_LLM. Le funzionalità LLM avanzate includono risultati di ricerca con riepilogo e ricerca con domande aggiuntive.

      Se non vuoi le funzionalità LLM avanzate, specifica SEARCH_ADD_ON_UNSPECIFIED o rimuovi il campo searchAddOns.

      Per saperne di più, consulta Funzionalità LLM avanzate.

Python

Per ulteriori informazioni, consulta la documentazione di riferimento dell'API Python Vertex AI Agent Builder.

Per autenticarti in Vertex AI Agent Builder, configura le credenziali predefinite dell'applicazione. Per ulteriori informazioni, consulta Configurare l'autenticazione per un ambiente di sviluppo locale.

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

Per scoprire come applicare o rimuovere una configurazione Terraform, consulta Comandi Terraform di base. Per ulteriori informazioni, consulta la Terraform documentazione di riferimento del provider.

Per creare un'app di ricerca utilizzando Terraform, consulta discovery_engine_search_engine.

Passaggi successivi