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, sélectionnez Recherche.

  4. Si vous avez le choix entre un contenu générique ou multimédia, cliquez sur Générique.

  5. Choisissez si vous souhaitez activer les fonctionnalités d'entreprise pour cette application, puis cliquez sur l'icône activer ou désactiver.

    Vous devez activer les fonctionnalités de l'édition Enterprise pour bénéficier de fonctionnalités telles que la recherche sur votre site Web et de choisir une région pour votre application. Édition Enterprise fonctionnalités entraînent des frais supplémentaires. Pour en savoir plus, consultez la page Fonctionnalités de l'édition Enterprise.

  6. 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 obtenir des fonctionnalités telles que récapitulatifs de recherche ou avec des questions complémentaires. Pour en savoir plus, consultez la section Fonctionnalités LLM avancées.

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

  8. Dans le champ Nom externe de votre entreprise ou organisation, saisissez le nom commun de votre entreprise ou organisation. Vous n'avez pas besoin d'inclure de suffixes tels que "Inc." ou "LLC". Ce champ permet au LLM d'identifier l'entreprise que l'application représente.

  9. Sélectionnez un emplacement pour votre application. Les fonctionnalités Enterprise doivent être activées choisissez 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.

  10. Cliquez sur Continuer.

  11. Pour vous connecter à un data store, sélectionnez un data store sur la page Data stores ou un data store existant.

    Effectuez au moins l'une des opérations 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 à cette application par la suite. Si vous associez plusieurs datastores, vous pourrez modifier ultérieurement les data stores associés, mais cette application devra sont toujours associés à au moins deux data stores.

    • Créez un data store et y insérez des données.

      Pour ce faire, cliquez sur Créer un data store et en suivant les étapes de la section Créer un data store qui s'ouvre. Sélectionnez ensuite votre nouveau data store. Pour en savoir plus, consultez Créer un entrepôt de données de recherche.

  12. Facultatif: Pour afficher la liste des datastores indisponibles, cliquez sur Découvrez pourquoi.

    Une table s'affiche avec la liste des datastores et la raison pour laquelle ils sont indisponible. Voici quelques-unes des raisons pour lesquelles un data store non disponible:

    • Votre type de data store vous permet de vous connecter à une seule application et aux données magasin est déjà associé.
    • Votre data store et votre application se trouvent dans des régions différentes.
    • Votre data store et votre application sont de types différents. Par exemple, vous ne pouvez pas associer un data store de recherche dans le secteur de la santé à une application de recherche sur un site Web.
    • Votre datastore dispose d'une recherche de site Web de base, tandis que votre application de recherche de site Web nécessite un datastore avec indexation avancée de site Web.
  13. Cliquez sur Créer.

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 "Data stores"

    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 peut être associé à 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",
      "searchEngineConfig": {
         "searchTier": "SEARCH_TIER",
         "searchAddOns": ["SEARCH_ADD_ON"]
       }
    }'
    

    Remplacez les éléments suivants :

    • PROJECT_ID : ID de votre projet Google Cloud
    • 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.
    • 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 page Enterprise édition Google Workspace.
    • SEARCH_ADD_ON: si vous souhaitez utiliser les fonctionnalités LLM avancées pour cette application, puis spécifiez SEARCH_ADD_ON_LLM. Les fonctionnalités LLM avancées incluent récapitulatifs des recherches avec des 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 Fonctionnalités LLM avancées

Python

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

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