Créer une application de recherche

Cette page explique comment créer une application de recherche.

Créer une application

Console

Pour créer une application de recherche à l'aide de la console Google Cloud, procédez comme suit:

  1. Dans la console Google Cloud, accédez à la page Agent Builder.

    Agent Builder

  2. Sur la page Applications, cliquez sur Créer une application.

  3. Sur la page Créer une application, sous Rechercher votre site Web, cliquez sur Créer.

  4. Indiquez si vous souhaitez utiliser les fonctionnalités de l'édition Enterprise pour cette application, puis activez ou désactivez l'option. Vous devez activer les fonctionnalités de l'édition Enterprise pour bénéficier de fonctionnalités telles que la recherche sur le site Web et le choix d'une région pour votre application. Les fonctionnalités de l'édition Enterprise entraînent des frais supplémentaires. Pour en savoir plus, consultez la page Fonctionnalités de l'édition Enterprise.

  5. Indiquez si vous souhaitez utiliser les fonctionnalités LLM avancées pour cette application, puis activez ou désactivez l'option. Vous devez activer les fonctionnalités LLM avancées pour bénéficier de fonctionnalités telles que les résultats de recherche récapitulatifs ou la recherche avec questions complémentaires. Pour en savoir plus, consultez la section Fonctionnalités avancées de LLM.

  6. Dans le champ Nom de votre application, saisissez le nom de votre application.

  7. Dans le champ Nom externe de votre entreprise ou organisation, saisissez le nom commun de votre entreprise ou organisation. Évitez les suffixes tels que "Inc." ou "LLC". Ce champ aide le LLM à identifier l'entreprise représentée par l'application.

  8. Sélectionnez un emplacement pour votre application. Les fonctionnalités d'entreprise doivent être activées pour choisir un emplacement. Google vous recommande d'utiliser l'option par défaut, Monde (Global), sauf si vous avez une raison de limiter vos données à une zone géographique spécifique.

  9. Cliquez sur Continuer.

  10. Pour vous connecter à un data store, sur la page Data stores (Datastores), sélectionnez un data store que vous avez créé précédemment ou créez-en un.

    Choisissez l'une des options suivantes :

    • Sélectionnez un data store existant: si vous n'associez qu'un seul data store, vous ne pourrez pas le supprimer ni ajouter d'autres data stores à l'application par la suite. L'association de plusieurs data stores vous permet de les mettre à jour ultérieurement, mais l'application nécessite toujours au moins deux data stores.
    • Créez un data store et y insérez des données :
      1. Cliquez sur Créer un data store, puis suivez les étapes de la page Créer un data store.
      2. Choisissez votre nouveau data store, puis cliquez sur Sélectionner. Pour en savoir plus, consultez Créer un entrepôt de données de recherche.

REST

Avant d'utiliser la ligne de commande pour créer une application, vous devez disposer d'un magasin de données existant. Si vous ne disposez pas d'un data store, créez-en un en suivant la procédure décrite dans Créer un data store et ingérer des données pour Vertex AI Search.

Pour utiliser la méthode engines.create afin de créer une application de recherche à partir de la ligne de commande, procédez comme suit:

  1. Recherchez l'ID de votre data store. Si vous disposez déjà de l'ID de votre data store, passez à l'étape suivante.

    1. Dans la console Google Cloud, accédez à la page Agent Builder et cliquez sur Data Stores dans le menu de navigation.

      Accéder à la page "Datastores"

    2. Cliquez sur le nom de votre data store.

    3. Sur la page Données de votre data store, obtenez l'ID du data store.

  2. Créez une application de recherche et associez-la à un data store. Un data store ne peut être associé qu'à une seule application et ne peut pas être supprimé de l'application par la suite.

    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"]
       }
    }'
    

    Remplacez les éléments suivants :

    • PROJECT_ID: ID de votre Google Cloud projet.
    • APP_ID: ID de l'application Vertex AI Search que vous souhaitez créer.
    • APP_DISPLAY_NAME: nom à afficher de l'application Vertex AI Search que vous souhaitez créer.
    • DATA_STORE_ID: ID d'un data store Vertex AI Search existant que vous souhaitez ajouter à l'application Vertex AI Search.
    • INDUSTRY_VERTICAL: secteur d'activité auquel l'application est associée. Ce champ peut prendre les valeurs spécifiées dans IndustryVertical. Pour les applications de recherche avec plusieurs data stores, également appelées applications de recherche combiné, vous devez spécifier GENERIC pour ce champ.
    • SEARCH_TIER: le niveau de recherche peut être SEARCH_TIER_STANDARD ou SEARCH_TIER_ENTERPRISE. SEARCH_TIER_ENTERPRISE est nécessaire pour accéder à des fonctionnalités telles que la recherche dans un site Web et le choix d'une région pour votre application. Les fonctionnalités de l'édition Enterprise entraînent des coûts supplémentaires. Pour en savoir plus, consultez la section Fonctionnalités de l'édition Enterprise.
    • SEARCH_ADD_ON: si vous souhaitez utiliser les fonctionnalités LLM avancées pour cette application, spécifiez SEARCH_ADD_ON_LLM. Les fonctionnalités LLM avancées incluent les résultats de recherche résumés et la recherche avec questions complémentaires.

      Si vous ne souhaitez pas utiliser les fonctionnalités LLM avancées, spécifiez SEARCH_ADD_ON_UNSPECIFIED ou supprimez le champ searchAddOns.

      Pour en savoir plus, consultez la section Fonctionnalités LLM avancées.

Python

Pour en savoir plus, consultez la documentation de référence de l'API Python de Vertex AI Agent Builder.

Pour vous authentifier auprès de Vertex AI Agent Builder, configurez le service Identifiants par défaut de l'application. Pour en savoir plus, consultez Configurer l'authentification pour un environnement de développement 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

Pour savoir comment appliquer ou supprimer une configuration Terraform, consultez la page Commandes Terraform de base. Pour en savoir plus, consultez la documentation de référence du fournisseur Terraform.

Pour créer une application de recherche à l'aide de Terraform, consultez discovery_engine_search_engine.

Étape suivante