Actualiser les pages Web

Si votre entrepôt de données utilise une recherche de base sur le site Web, la fraîcheur de l'index de votre magasin reflète la fraîcheur disponible dans la recherche Google.

Si l'indexation avancée de sites Web est activée dans votre data store, les pages Web de votre data store sont actualisées comme suit :

  • Actualisation automatique
  • Actualisation manuelle

Cette page décrit ces deux méthodes.

Actualisation automatique

Vertex AI Search effectue une actualisation automatique comme suit:

  • Une fois que vous avez créé un data store, il génère un indice initial pour les pages incluses.
  • Après l'indexation initiale, il indexe les nouvelles pages et les réexplore vos pages existantes du mieux possible.
  • Il actualise régulièrement les data stores qui rencontrent un taux de requêtes de 50 requêtes/30 jours.

Actualisation manuelle

Si vous souhaitez actualiser des pages Web spécifiques d'un data store avec activé l'indexation avancée de site Web, peut appeler la fonction recrawlUris. Vous utilisez le champ uris pour spécifier chacun que vous souhaitez explorer. La méthode recrawlUris est une méthode de longue durée qui s'exécute jusqu'à ce que les pages Web spécifiées soient explorée ou jusqu'à ce qu'elle expire au bout de 24 heures, selon la situation qui se présente en premier. Si la méthode recrawlUris expire, vous pouvez l'appeler à nouveau en spécifiant les pages Web qui restent à explorer. Vous pouvez interroger la méthode operations.get pour surveiller l'état de la réexploration.

Limites du réexploration

La fréquence d'exploration et le nombre de pages Web sont limités que vous pouvez explorer à la fois:

  • Appels par jour Nombre maximal d'appels à recrawlUris autorisée est de cinq par jour et par projet.
  • Pages Web par appel. Le nombre maximal de valeurs uris que vous pouvez spécifier avec un appel à la méthode recrawlUris est de 10 000.

Réexplorer les pages Web de votre data store

Vous pouvez explorer manuellement des pages Web spécifiques dans un datastore pour lequel l'indexation avancée de sites Web est activée.

REST

Pour utiliser la ligne de commande pour explorer des pages Web spécifiques dans votre datastore, procédez comme suit :

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

    1. Dans la console Google Cloud, accédez à la page Agent Builder. Dans le menu de navigation, cliquez sur Data stores (Magasins de données).

      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. Appelez la méthode recrawlUris, en utilisant le champ uris pour spécifier chaque page Web que vous souhaitez explorer. Chaque uri représente un seul même si elle contient des astérisques (*). Les caractères génériques ne sont pas compatibles.

    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/v1alpha/projects/PROJECT_ID/locations/global/collections/default_collection/dataStores/DATA_STORE_ID/siteSearchEngine:recrawlUris" \
    -d '{
      "uris": [URIS]
    }'
    

    Remplacez les éléments suivants :

    • PROJECT_ID : ID de votre projet Google Cloud
    • DATA_STORE_ID : ID du data store Vertex AI Search.
    • URIS : liste des pages Web que vous souhaitez explorer (par exemple, "https://example.com/page-1", "https://example.com/page-2", "https://example.com/page-3").

    Le résultat ressemble à ce qui suit :

    {
      "name": "projects/PROJECT_ID/locations/global/collections/default_collection/dataStores/DATA_STORE_ID/operations/recrawl-uris-0123456789012345678",
      "metadata": {
        "@type": "type.googleapis.com/google.cloud.discoveryengine.v1alpha.RecrawlUrisMetadata"
      }
    }
    
  3. Enregistrez la valeur name en tant qu'entrée pour l'opération operations.get lorsque surveiller l'état de votre nouvelle exploration.

Surveiller l'état de votre opération de réexploration

La méthode recrawlUris, que vous utilisez pour explorer des pages Web dans un entrepôt de données, est une opération de longue durée qui s'exécute jusqu'à ce que les pages Web spécifiées soient explorées ou jusqu'à ce que l'expiration soit atteinte au bout de 24 heures, selon la première éventualité. Vous pouvez surveiller l'état de cette opération de longue durée en interrogeant la méthode operations.get, en spécifiant la valeur name renvoyée par la méthode recrawlUris. Continuez à interroger l'API jusqu'à ce que la réponse indique que : (1) toutes vos pages Web ont été explorées ou (2) l'opération a expiré avant que toutes vos pages Web ne soient explorées. Si recrawlUris expire, vous pouvez l'appeler à nouveau en spécifiant les sites Web qui n'ont pas été explorés.

REST

Pour surveiller l'état d'une opération de réexploration à l'aide de la ligne de commande, procédez comme suit : procédez comme suit:

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

    1. Dans la console Google Cloud, accédez à la page Agent Builder. Dans le menu de navigation, cliquez sur Data stores (Magasins de données).

      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. Interrogez la méthode operations.get.

    curl -X GET \
    -H "Authorization: Bearer $(gcloud auth print-access-token)" \
    -H "Content-Type: application/json" \
    -H "X-Goog-User-Project: PROJECT_ID" \
    "https://discoveryengine.googleapis.com/v1alpha/OPERATION_NAME"
    

    Remplacez les éléments suivants :

  3. Évaluez chaque réponse.

    • Si une réponse indique qu'il existe des URI en attente et que l'opération de réexploration n'est pas terminée, vos pages Web sont toujours en cours d'exploration. Continuez l'interrogation.

      Exemple

        {
          "name": "projects/PROJECT_ID/locations/global/collections/default_collection/dataStores/DATA_STORE_ID/operations/recrawl-uris-0123456789012345678",
          "metadata": {
            "@type": "type.googleapis.com/google.cloud.discoveryengine.v1alpha.RecrawlUrisMetadata",
            "createTime": "2023-09-05T22:07:28.690950Z",
            "updateTime": "2023-09-05T22:22:10.978843Z",
            "validUrisCount": 4000,
            "successCount": 2215,
            "pendingCount": 1785
          },
          "done": false,
          "response": {
            "@type": "type.googleapis.com/google.cloud.discoveryengine.v1alpha.RecrawlUrisResponse",
          }
        }

      Les champs de réponse peuvent être décrits comme suit:

      • createTime: indique l'heure à laquelle l'opération de longue durée a démarré.
      • updateTime : indique la dernière fois que les métadonnées de l'opération de longue durée ont été mises à jour. indique les mises à jour des métadonnées toutes les cinq minutes jusqu'à la fin de l'opération.
      • validUrisCount: indique que vous avez spécifié 4 000 URI valides dans votre appel à la méthode recrawlUris.
      • successCount: indique que 2 215 URI ont bien été explorés.
      • pendingCount : indique que 1 785 URI n'ont pas encore été explorés.
      • done: la valeur false indique que l'opération de réexploration est toujours en cours.

    • Si une réponse indique qu'il n'y a pas d'URI en attente (pas de pendingCount est renvoyé) et que l'opération de réexploration est terminée, vos pages Web sont explorées. Arrêtez l'interrogation. Vous pouvez quitter cette procédure.

      Exemple

        {
          "name": "projects/PROJECT_ID/locations/global/collections/default_collection/dataStores/DATA_STORE_ID/operations/recrawl-uris-0123456789012345678",
          "metadata": {
            "@type": "type.googleapis.com/google.cloud.discoveryengine.v1alpha.RecrawlUrisMetadata",
            "createTime": "2023-09-05T22:07:28.690950Z",
            "updateTime": "2023-09-05T22:37:11.367998Z",
            "validUrisCount": 4000,
            "successCount": 4000
          },
          "done": true,
          "response": {
            "@type": "type.googleapis.com/google.cloud.discoveryengine.v1alpha.RecrawlUrisResponse"
          }
        }

      Les champs de réponse peuvent être décrits comme suit:

      • createTime: indique l'heure à laquelle l'opération de longue durée a démarré.
      • updateTime : indique la dernière fois que les métadonnées de l'opération de longue durée ont été mises à jour. indique les mises à jour des métadonnées toutes les cinq minutes jusqu'à la fin de l'opération.
      • validUrisCount: indique que vous avez spécifié 4 000 URI valides dans votre appel à la méthode recrawlUris.
      • successCount: indique que 4 000 URI ont bien été explorés.
      • done: la valeur true indique que l'opération de réexploration est terminé.
  4. Si une réponse indique que des URI sont en attente et que la réexploration est terminée, l'opération de réexploration a expiré (au bout de 24 heures). avant l'exploration de toutes vos pages Web. Recommencez à la page Réexplorer le pages Web de votre data store. Utilisez les valeurs failedUris dans la réponse operations.get pour les valeurs du champ uris dans votre nouvel appel à la méthode recrawlUris.

    Example.

    {
      "name": "projects/PROJECT_ID/locations/global/collections/default_collection/dataStores/DATA_STORE_ID/operations/recrawl-uris-8765432109876543210",
      "metadata": {
        "@type": "type.googleapis.com/google.cloud.discoveryengine.v1alpha.RecrawlUrisMetadata",
        "createTime": "2023-09-05T22:07:28.690950Z",
        "updateTime": "2023-09-06T22:09:10.613751Z",
        "validUrisCount": 10000,
        "successCount": 9988,
        "pendingCount": 12
      },
      "done": true,
      "response": {
        "@type": "type.googleapis.com/google.cloud.discoveryengine.v1alpha.RecrawlUrisResponse",
        "failedUris": [
          "https://example.com/page-9989",
          "https://example.com/page-9990",
          "https://example.com/page-9991",
          "https://example.com/page-9992",
          "https://example.com/page-9993",
          "https://example.com/page-9994",
          "https://example.com/page-9995",
          "https://example.com/page-9996",
          "https://example.com/page-9997",
          "https://example.com/page-9998",
          "https://example.com/page-9999",
          "https://example.com/page-10000"
        ],
        "failureSamples": [
          {
            "uri": "https://example.com/page-9989",
            "failureReasons": [
              {
                "corpusType": "DESKTOP",
                "errorMessage": "Page was crawled but was not indexed by UCS within 24 hours."
              },
              {
                "corpusType": "MOBILE",
                "errorMessage": "Page was crawled but was not indexed by UCS within 24 hours."
              }
            ]
          },
          {
            "uri": "https://example.com/page-9990",
            "failureReasons": [
              {
                "corpusType": "DESKTOP",
                "errorMessage": "Page was crawled but was not indexed by UCS within 24 hours."
              },
              {
                "corpusType": "MOBILE",
                "errorMessage": "Page was crawled but was not indexed by UCS within 24 hours."
              }
            ]
          },
          {
            "uri": "https://example.com/page-9991",
            "failureReasons": [
              {
                "corpusType": "DESKTOP",
                "errorMessage": "Page was crawled but was not indexed by UCS within 24 hours."
              },
              {
                "corpusType": "MOBILE",
                "errorMessage": "Page was crawled but was not indexed by UCS within 24 hours."
              }
            ]
          },
          {
            "uri": "https://example.com/page-9992",
            "failureReasons": [
              {
                "corpusType": "DESKTOP",
                "errorMessage": "Page was crawled but was not indexed by UCS within 24 hours."
              },
              {
                "corpusType": "MOBILE",
                "errorMessage": "Page was crawled but was not indexed by UCS within 24 hours."
              }
            ]
          },
          {
            "uri": "https://example.com/page-9993",
            "failureReasons": [
              {
                "corpusType": "DESKTOP",
                "errorMessage": "Page was crawled but was not indexed by UCS within 24 hours."
              },
              {
                "corpusType": "MOBILE",
                "errorMessage": "Page was crawled but was not indexed by UCS within 24 hours."
              }
            ]
          },
          {
            "uri": "https://example.com/page-9994",
            "failureReasons": [
              {
                "corpusType": "DESKTOP",
                "errorMessage": "Page was crawled but was not indexed by UCS within 24 hours."
              },
              {
                "corpusType": "MOBILE",
                "errorMessage": "Page was crawled but was not indexed by UCS within 24 hours."
              }
            ]
          },
          {
            "uri": "https://example.com/page-9995",
            "failureReasons": [
              {
                "corpusType": "DESKTOP",
                "errorMessage": "Page was crawled but was not indexed by UCS within 24 hours."
              },
              {
                "corpusType": "MOBILE",
                "errorMessage": "Page was crawled but was not indexed by UCS within 24 hours."
              }
            ]
          },
          {
            "uri": "https://example.com/page-9996",
            "failureReasons": [
              {
                "corpusType": "DESKTOP",
                "errorMessage": "Page was crawled but was not indexed by UCS within 24 hours."
              },
              {
                "corpusType": "MOBILE",
                "errorMessage": "Page was crawled but was not indexed by UCS within 24 hours."
              }
            ]
          },
          {
            "uri": "https://example.com/page-9997",
            "failureReasons": [
              {
                "corpusType": "DESKTOP",
                "errorMessage": "Page was crawled but was not indexed by UCS within 24 hours."
              },
              {
                "corpusType": "MOBILE",
                "errorMessage": "Page was crawled but was not indexed by UCS within 24 hours."
              }
            ]
          },
          {
            "uri": "https://example.com/page-9998",
            "failureReasons": [
              {
                "corpusType": "DESKTOP",
                "errorMessage": "Page was crawled but was not indexed by UCS within 24 hours."
              },
              {
                "corpusType": "MOBILE",
                "errorMessage": "Page was crawled but was not indexed by UCS within 24 hours."
              }
            ]
          }
        ]
      }
    }

    Voici quelques descriptions des champs de réponse :

    • createTime Heure à laquelle l'opération de longue durée a démarré.
    • updateTime Dernière fois que les métadonnées d'une opération de longue durée a été mis à jour. Les métadonnées sont mises à jour toutes les cinq minutes jusqu'à la fin de l'opération.
    • validUrisCount Indique que vous avez spécifié 10 000 URI valides dans votre appel à la méthode recrawlUris.
    • successCount Indique que 9 988 URI ont été explorés avec succès.
    • pendingCount. Indique que 12 URI n'ont pas encore été explorés.
    • done La valeur true indique que l'opération de réexploration terminé.
    • failedUris la liste des URI qui n'ont pas été explorés avant la réexploration ; L'opération a expiré.
    • failureInfo : informations sur les URI qui n'ont pas été explorés. Au plus, dix valeurs de tableau failureInfo sont renvoyées, même si l'exploration de plus de dix URI a échoué.
    • errorMessage Motif de l'échec de l'exploration d'un URI (corpusType). Pour en savoir plus, consultez la section Messages d'erreur.

Actualisation opportune

Google vous recommande d'effectuer l'actualisation manuelle sur vos pages nouvelles et mises à jour pour vous assurer de disposer de l'index le plus récent.

Messages d'erreur

Lorsque vous surveillez l'état de votre opération de réexploration, si l'opération de réexploration expire pendant que vous interrogez la méthode operations.get, operations.get renvoie des messages d'erreur pour les pages Web qui n'ont pas été explorées. Le tableau suivant répertorie les messages d'erreur, si l'erreur est temporaire (erreur temporaire qui se résout d'elle-même) et actions que vous pouvez effectuer avant de relancer la méthode recrawlUris. Vous pouvez réessayer immédiatement toutes les erreurs temporaires. Toutes les erreurs non persistantes peuvent être réessayées après avoir appliqué la solution.

Message d'erreur S'agit-il d'une erreur temporaire ? Action requise avant une nouvelle exploration
La page a été explorée, mais n'a pas été indexée par Vertex AI Search dans les 24 heures Oui Utilisez les valeurs failedUris de la réponse operations.get pour les valeurs du champ uris lorsque vous appelez la méthode recrawlUris.
L'exploration a été bloquée par le robots.txt du site Non Débloquez l'URI dans le fichier robots.txt de votre site Web et assurez-vous que le user-agent Googlebot est autorisé à explorer le site. puis réessayez. Pour en savoir plus, consultez Créer et envoyer un fichier robots.txt. Si vous ne parvenez pas à accéder au fichier robots.txt, contactez le propriétaire du domaine.
Page inaccessible Non Vérifiez l'URI que vous avez spécifié lorsque vous avez appelé la méthode recrawlUris. Assurez-vous de fournir l'URI littéral et non un modèle d'URI.
L'exploration a expiré Oui Utilisez les valeurs failedUris dans la réponse operations.get pour les valeurs du champ uris lorsque vous appelez la méthode recrawlUris.
La page a été refusée par le robot d'exploration Google Oui Utilisez les valeurs failedUris dans la réponse operations.get pour les valeurs du champ uris lorsque vous appelez la méthode recrawlUris.
L'URL n'a pas pu être suivie par le robot d'exploration de Google Non S'il existe plusieurs redirections, utilisez l'URI de la dernière redirection et réessayez.
Page introuvable (404) Non Vérifiez l'URI que vous avez spécifié lorsque vous avez appelé la méthode recrawlUris. Assurez-vous de fournir l'URI littéral et non un format d'URI.

Toute page qui répond avec un code d'erreur "4xx" est supprimée de l'index.

Authentification requise pour la page Non L'indexation avancée de site Web n'est pas compatible avec l'exploration de pages Web nécessitant une authentification.

Comment les pages supprimées sont-elles traitées ?

Lorsqu'une page est supprimée, Google vous recommande actualiser manuellement les URL supprimées.

Lorsque le data store de votre site Web est exploré au cours d'une opération automatique ou une actualisation manuelle, si une page Web répond par une erreur client 4xx ou le code d'erreur du serveur 5xx, la page Web qui ne répond pas est supprimée du de l'index.