Filtres d'aide à la connaissance

Les filtres vous aident à affiner une recherche et à vous assurer que votre générateur d'assistance base de connaissances produit des suggestions utiles. Filtrez les documents dans un datastore pour spécifier une catégorie de documents à référencer dans l'assistance base de connaissances générative (GKA) et l'assistance base de connaissances générative proactive (PGKA). Personnalisez les filtres de sécurité sur le contenu généré pour vous assurer que les suggestions PGKA sont aussi utiles que possible et aussi peu nuisibles que possible pour les besoins de votre entreprise.

Filtres de documents

Filtrez les documents d'assistance base de connaissances pour GKA et PGKA avec SearchConfig.

Étape 1 : Configurez le datastore avec des métadonnées

Importez des métadonnées pour créer un datastore pour GKA et PGKA. Vous devez fournir des métadonnées sous la forme d'un ou de plusieurs fichiers JSONL, situés dans le dossier de niveau supérieur du contenu utilisé pour l'importation.

  1. Suivez les étapes de la page Outils du datastore pour ajouter un datastore à un agent.
  2. Sur la page AI Applications (Applications d'IA), cliquez sur Datastores > + Create Data Store (Datastores > + Créer un datastore).
  3. Accédez à Cloud Storage, puis cliquez sur Select (Sélectionner).
  4. Cliquez sur File (Fichier), puis saisissez le chemin d'accès à votre fichier dans Cloud Storage ou cliquez sur Browse (Parcourir) pour sélectionner votre fichier.
  5. Accédez à What kind of data are you importing? (Quel type de données importez-vous ?) et sélectionnez Linked unstructured documents (JSONL with metadata) (Documents non structurés liés (JSONL avec métadonnées)).
  6. Accédez à Data import options (Options d'importation de données) et sélectionnez Full (Complète).
  7. Cliquez sur Import (Importer).
  8. Une fois votre datastore créé, affichez le tableau Documents. Le tableau liste chacun de vos documents avec les informations suivantes.
    • ID
    • Lien URI
    • État de l'indexation
    • Actions
  9. Cliquez sur View Document (Afficher le document) pour examiner les propriétés d'un document.

Voici un exemple de fichier JSONL. Vous pouvez également spécifier des métadonnées dans le champ structData.

{ "id": "d001", "content": {"mimeType": "text/html", "uri": "gs://example-import/unstructured/first_doc.html"}, "structData": {"property0": "value0", "property1": "value1", "property2": "value2"} }
{ "id": "d002", "content": {"mimeType": "application/pdf", "uri": "gs://example-import/unstructured/second_doc.pdf"}, "structData": {"property0": "value0", "property1": "value3", "property2": "value4"} }

Étape 2 : Configurez les filtres

Pour appliquer directement des valeurs de filtre à une recherche GKA, appelez l'API SearchKnowledge. Vous pouvez également appliquer un SearchConfig champ dans la requête, comme suit. Pour obtenir d'autres exemples d'expressions de filtre, consultez la documentation sur Vertex AI Search.

{
  "query": {
     "text": "test query"
  },
  "conversationProfile": "projects/PROJECT_ID/locations/LOCATION_ID/conversationProfiles/CONVERSATION_PROFILE_ID",
  "sessionId": "SESSION_ID",
  "conversation": "projects/PROJECT_ID/locations/LOCATION_ID/conversations/CONVERSATION_ID",
  "querySource": "AGENT_QUERY",
  "searchConfig": 
    "filterSpecs": [{
      "dataStores": ["projects/PROJECT_NUMBER/locations/LOCATION_ID/collections/default_collection/dataStores/DATASTORE_ID"],
      "filter": "property1 : ANY(\"value1\")" 
      }]
    }
  }
}

Pour appliquer des valeurs de filtre à toutes les requêtes et suggestions de recherche de connaissances dans une même conversation, utilisez IngestContextReferences et associez l'ID de conversation à l'appel SearchKnowledge.

Filtres de documents PGKA

Appliquez un SearchConfig aux appels PGKA à l'aide de l'API IngestContextReferences ou du simulateur dans la console Agent Assist.

API

Appelez l'API IngestContextReferences pour appliquer un SearchConfig aux appels PGKA.

  1. Appelez CreateConversation > IngestContextReferences.
  2. La configuration s'applique automatiquement à toutes les requêtes PGKA et suggestions de réponses suivantes dans la même conversation.

L'exemple suivant montre comment utiliser l'API IngestContextReferences.

{
  "conversation": "projects/PROJECT_ID/locations/global/conversations/CONVERSATION_ID",
  "contextReferences": {
   "gka_search_config": {
      "contextContents": [{
"content": "{ \"filterSpecs\": [{ \"dataStores\": [\"projects/PROJECT_NUMBER/locations/LOCATION_ID/collections/default_collection/dataStores/DATASTORE_ID\"], \"filter\": \"property1: ANY    (\\\"value1\\\")\" }] }",
        "contentFormat": "JSON"
      }],
      "updateMode": "OVERWRITE",
      "languageCode": "en-US"
    }
  }
}

Console

  1. Accédez à la console Agent Assist, connectez-vous et sélectionnez votre projet.

    Accéder à la console

  2. Cliquez sur Simulator (Simulateur), puis sélectionnez votre profil de conversation.

  3. Cliquez sur Start (Démarrer) > Inject context (Injecter un contexte).

  4. Saisissez votre Key (Clé) et votre Content (Contenu), puis sélectionnez l'un des Formats suivants.

    • Texte brut
    • JSON
  5. Cliquez sur Save (Enregistrer).

Voici un exemple de contexte pour le simulateur.

  • Clé : gka_search_config
  • Format: JSON
  • Content (Contenu) :
{ "filterSpecs": [{"dataStores" : ["projects/PROJECT_NUMBER/locations/LOCATION_ID/collections/default_collection/dataStores/DATASTORE_ID"], "filter" : "property1 : ANY(\"value1\")" }] }

Filtres de sécurité

Les fonctionnalités génératives d'Agent Assist sont dotées de filtres de sécurité intégrés pour une IA responsable. Ces filtres sont essentiels pour empêcher la génération de contenus potentiellement dangereux ou inappropriés. Toutefois, les niveaux de sécurité par défaut peuvent être trop restrictifs pour certains secteurs. Par exemple, un prestataire de soins de santé peut avoir besoin de répondre à des requêtes légitimes sur des sujets de santé sensibles que les filtres par défaut bloquent. Pour aligner le comportement du générateur sur les besoins et les cas d'utilisation de votre entreprise, vous pouvez personnaliser la sensibilité des filtres de sécurité pour la fonctionnalité PGKA.

Principes de base

Les filtres de sécurité comportent deux composants clés :

  • La catégorie de contenu à filtrer
  • Le niveau de sensibilité du filtre

Catégories d'IA responsable

Vous pouvez définir un niveau de sensibilité pour les catégories de contenu suivantes :

  • Contenus dangereux : contenus faisant référence à l'automutilation ou à tout ce qui est illégal, réglementé ou dangereux.
  • Contenu à caractère sexuel explicite : contenu à caractère sexuel explicite ou contenant des contenus pornographiques.
  • Harcèlement : contenu insultant, intimidant ou abusif.
  • Incitation à la haine : contenu qui promeut la violence ou incite à la haine contre des personnes ou des groupes en fonction de certaines caractéristiques.

Niveaux de sensibilité

Pour chaque catégorie d'IA responsable, vous pouvez choisir l'un des seuils de sensibilité suivants :

  • BLOCK_MOST : bloque un large éventail de contenus susceptibles d'appartenir à la catégorie.
  • BLOCK_SOME : bloque les contenus clairement identifiés comme appartenant à la catégorie.
  • BLOCK_FEW : bloque uniquement les instances de contenu les plus graves pour la catégorie.
  • BLOCK_NONE : désactive tous les filtres pour la catégorie spécifiée.

Paramètres par défaut

Si vous ne fournissez pas de configuration personnalisée pour une catégorie, l'assistance à la connaissance générative proactive utilise les niveaux de sensibilité par défaut suivants :

  • Contenus dangereux : BLOCK_FEW
  • Contenu à caractère sexuel explicite : BLOCK_SOME
  • Harcèlement : BLOCK_SOME
  • Incitation à la haine : BLOCK_SOME

Configurer des filtres de sécurité

Configurez des filtres de sécurité dans votre profil de conversation. Vous pouvez spécifier un niveau de sensibilité pour une ou plusieurs catégories d'IA responsable en ajoutant un objet rai_settings à la configuration de la fonctionnalité pour KNOWLEDGE_ASSIST. Vous trouverez les paramètres des filtres de sécurité dans le tableau feature_configs de la fonctionnalité de suggestion KNOWLEDGE_ASSIST.

{
  "name": "projects/PROJECT_ID/locations/LOCATION/conversationProfiles/PROFILE_ID",
  "human_agent_assistant_config": {
    "human_agent_suggestion_config": {
      "feature_configs": [
        {
          "suggestion_feature": {
            "type": "KNOWLEDGE_ASSIST"
          },
          "rai_settings": {
            "rai_category_configs": [
              {
                "category": "DANGEROUS_CONTENT",
                "sensitivity_level": "BLOCK_FEW"
              },
              {
                "category": "HARASSMENT",
                "sensitivity_level": "BLOCK_MOST"
              }
            ]
          }
        }
      ]
    }
  }
}

Exemples de configuration

Les exemples suivants illustrent comment augmenter ou diminuer le niveau de sensibilité d'une seule catégorie en fonction des besoins de votre entreprise.

Exemple 1 : Autoriser les requêtes sensibles sur les soins de santé

En tant que prestataire de soins de santé, vous souhaitez vous assurer que les requêtes sur des sujets sensibles liés à la santé mentale ne sont pas bloquées. Vous pouvez réduire la sensibilité de la catégorie de contenu dangereux, comme suit.

"rai_settings": {
  "rai_category_configs": [
    {
      "category": "DANGEROUS_CONTENT",
      "sensitivity_level": "BLOCK_NONE"
    }
  ]
}

Avec ce paramètre, l'assistance base de connaissances générative proactive est plus susceptible de traiter et de fournir une réponse utile à une requête telle que Quels sont les signes avant-coureurs du suicide ?.

Exemple 2 : Augmenter la sévérité

Si votre entreprise souhaite être particulièrement prudente en matière de harcèlement, vous pouvez augmenter la sensibilité de cette catégorie tout en laissant les autres à leur niveau par défaut, comme suit.

"rai_settings": {
  "rai_category_configs": [
    {
      "category": "HARASSMENT",
      "sensitivity_level": "BLOCK_MOST"
    }
  ]
}