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 AI Applications.

    AI Applications

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

  3. Sur la page Créer une application, sous Recherche sur site avec le mode IA, cliquez sur Créer.

  4. Décidez si vous souhaitez utiliser les fonctionnalités Enterprise pour cette application, puis activez ou désactivez l'option. L'activation des fonctionnalités de l'édition Enterprise est nécessaire pour bénéficier de fonctionnalités telles que la recherche sur 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 Fonctionnalités de l'édition Enterprise.

  5. Décidez si vous souhaitez activer les fonctionnalités LLM avancées pour cette application, puis cliquez sur le bouton bascule pour les activer ou les désactiver. L'activation des fonctionnalités LLM avancées est requise pour obtenir des fonctionnalités telles que les résumés de recherche ou la recherche avec questions complémentaires. Pour en savoir plus, consultez Fonctionnalités LLM avancées.

  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 que représente l'application.

  8. Sélectionnez un emplacement pour votre application. Les fonctionnalités Enterprise doivent être activées pour choisir un emplacement. Google vous recommande d'utiliser la valeur par défaut, global (monde), 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 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 ultérieurement. Si vous associez plusieurs data stores, vous pourrez les mettre à jour ultérieurement, mais l'application nécessite toujours au moins deux data stores.
    • Créez un data store et ingérez des données :
      1. Cliquez sur Créer un data store, puis suivez les étapes décrites sur la page Créer un data store.
      2. Sélectionnez votre nouveau data store, puis cliquez sur Sélectionner. Pour en savoir plus, consultez Créer un data store de recherche.

REST

Avant d'utiliser la ligne de commande pour créer une application, vous devez disposer d'un data store existant. Si vous n'avez pas de data store, créez-en un en suivant les étapes décrites 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. Trouvez 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 Applications d'IA 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 datastore, obtenez l'ID du datastore.

  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 ultérieurement.

    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": "GENERIC",
      "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 de sites 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 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ésumés de recherche 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 Fonctionnalités LLM avancées.

Python

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

Pour vous authentifier auprès des applications d'IA, configurez les 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 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.

Étapes suivantes