Crea un'app di ricerca

Questa pagina descrive come creare un'app di ricerca.

Crea un'app

Console

Per utilizzare la console Google Cloud per creare un'app di ricerca, 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 Cerca il tuo sito web.

  4. Decidi se vuoi le funzionalità di Enterprise per questa app e poi fai clic sull'opzione per attivarle o disattivarle.

    L'attivazione delle funzionalità della versione Enterprise è obbligatoria per usufruire di funzionalità come la ricerca sul 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 saperne di più, consulta Funzionalità LLM avanzate.

  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. Non è necessario includere suffissi come Inc o LLC. Questo campo è utile per consentire all'LLM di 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.

    Esegui almeno una delle seguenti operazioni:

    • Seleziona un datastore esistente.

      Se colleghi un solo datastore, non potrai rimuoverlo o aggiungere altri datastore a questa app in un secondo momento. Se colleghi più datastore, puoi modificarli in un secondo momento, ma questa app deve sempre avere almeno due datastore collegati.

    • Crea un nuovo datastore e importavi i dati.

      A tal fine, fai clic su Crea datastore e segui i passaggi nel riquadro Crea un nuovo datastore che si apre. Quindi seleziona il nuovo datastore. Per ulteriori informazioni, consulta Creare un archivio dati di ricerca.

  11. (Facoltativo) Per visualizzare un elenco di datastore non disponibili, fai clic su Scopri perché.

    Viene visualizzata una tabella con un elenco di datastore e il motivo per cui non sono disponibili. Ecco alcuni motivi per cui un datastore potrebbe non essere disponibile:

    • Il tipo di datastore consente il collegamento a una sola app e il datastore è già collegato.
    • Il tuo datastore e la tua app si trovano in regioni diverse.
    • Il tuo datastore e la tua app sono di tipi diversi. Ad esempio, non puoi collegare un datastore di ricerca sanitaria a un'app di ricerca di siti web.
    • Il tuo datastore dispone della ricerca di siti web di base, mentre la tua app di ricerca di siti web richiede un datastore con indicizzazione avanzata dei siti web.
  12. Fai clic su Crea.

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

    Sostituisci quanto segue:

    • PROJECT_ID: l'ID del tuo progetto Google Cloud.
    • 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.
    • 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 riepiloghi della ricerca 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