Les filtres vous aident à affiner une recherche et à vous assurer que le générateur d'assistance à la connaissance produit des suggestions utiles. Filtrez les documents dans un Datastore pour spécifier une catégorie de documents à utiliser comme référence dans l'assistance generative knowledge (GKA) et l'assistance proactive generative knowledge (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 vos besoins commerciaux.
Filtres de documents
Filtrez les documents d'assistance à la connaissance pour GKA et PGKA avec SearchConfig
.
Étape 1 : Configurez Datastore avec des métadonnées
Importer avec des métadonnées pour créer un Datastore pour GKA et PGKA. Vous devez fournir les 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.
- Suivez les étapes de la page des outils Datastore pour ajouter un Datastore à un agent.
- Sur la page Applications d'IA, cliquez sur Data stores > + Créer un data store.
- Accédez à Cloud Storage, puis cliquez sur Sélectionner.
- Cliquez sur Fichier, puis saisissez le chemin d'accès à votre fichier dans Cloud Storage ou cliquez sur Parcourir pour le sélectionner.
- Accédez à Quel type de données importez-vous ? et sélectionnez Documents non structurés liés (JSONL avec métadonnées).
- Accédez à Options d'importation de données et sélectionnez Complète.
- Cliquez sur Importer.
- Une fois votre datastore créé, consultez le tableau "Documents". Le tableau liste chacun de vos documents avec les informations suivantes.
- ID
- Lien URI
- État de l'index
- Actions
- Cliquez sur 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 champ SearchConfig
dans la requête, comme suit. Pour obtenir d'autres exemples d'expressions de filtre, consultez la documentation 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.
- Appelez
CreateConversation
>IngestContextReferences
. - La configuration s'applique automatiquement à toutes les requêtes PGKA et suggestions de réponses ultérieures 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
Accédez à la console Agent Assist, connectez-vous, puis sélectionnez votre projet.
Cliquez sur Simulator (Simulateur), puis sélectionnez votre profil de conversation.
Cliquez sur Démarrer > Injecter le contexte.
Saisissez votre clé et votre contenu, puis sélectionnez l'un des formats suivants.
- Texte brut
- JSON
Cliquez sur Enregistrer.
Voici un exemple de contexte pour le simulateur.
- Key (Clé) :
gka_search_config
- Format :
JSON
- 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 intègrent des filtres de sécurité 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 fournisseur de soins de santé peut avoir besoin de répondre à des questions légitimes sur des thèmes de santé sensibles que les filtres par défaut bloquent. Pour aligner le comportement du générateur sur vos besoins commerciaux et vos cas d'utilisation, vous pouvez personnaliser la sensibilité des filtres de sécurité pour la fonctionnalité PGKA.
Principes de base
Les filtres de sécurité comportent deux éléments clés :
- Catégorie de contenu à filtrer
- Niveau de sensibilité du filtre
Catégories de RAI
Vous pouvez définir un niveau de sensibilité pour les catégories de contenu suivantes :
- Contenu dangereux : contenu 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 pornographique.
- Harcèlement : contenu insultant, intimidant ou abusif.
- Incitation à la haine : contenu qui incite à la violence ou à la haine contre des individus ou des groupes en fonction de certaines caractéristiques.
Niveaux de sensibilité
Pour chaque catégorie de contenu inapproprié pour les enfants, 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 le contenu clairement identifié comme appartenant à la catégorie.BLOCK_FEW
: bloque uniquement les cas les plus graves de contenu 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 proactive basée sur les connaissances génératives utilise les niveaux de sensibilité par défaut suivants :
- Contenu 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 des caractéristiques pour KNOWLEDGE_ASSIST
. Vous trouverez les paramètres du filtre 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é pour une seule catégorie en fonction des besoins de votre entreprise.
Exemple 1 : Autoriser les requêtes sensibles liées à la santé
En tant que professionnel 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é pour 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 proactive basée sur les connaissances génératives 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 vigilante face au harcèlement, vous pouvez augmenter la sensibilité pour 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"
}
]
}