Paramétrer le connecteur Openflow pour Google Drive¶
Note
Le connecteur est soumis aux conditions d’utilisation du connecteur.
Cette rubrique décrit les paramètres de l’ensemble du connecteur Openflow pour Google Drive.
Conditions préalables¶
Assurez-vous d’avoir consulté Connecteur Openflow pour Google Drive.
Assurez-vous que vous avez paramétré Openflow.
Obtenir les identifiants de connexion¶
La configuration du connecteur nécessite des autorisations et des paramètres de compte spécifiques pour que les processeurs Snowflake Openflow puissent lire les données de Google. Cet accès est fourni en partie par la mise en place d’un compte de service et d’une clé permettant à Openflow de s’authentifier en tant que ce compte de service. Pour plus d’informations, voir :
En tant qu’administrateur de Google Drive, effectuez les performances suivantes :
Conditions préalables¶
Assurez-vous que vous répondez aux exigences suivantes :
Vous avez un utilisateur Google avec les autorisations Super Admin
Vous avez un projet Google Cloud avec les rôles suivants :
Administrateur de la politique de l’organisation
Administrateur de l’organisation
Activer la création de clés de compte de service¶
Par défaut, Google désactive la création de clés de compte de service. Pour qu’Openflow utilise le compte de service JSON, cette politique de création de clés doit être désactivée.
Connectez-vous à Google Cloud Console avec un compte de super administrateur qui a le rôle d’administrateur des politiques d’organisation.
Assurez-vous que vous êtes dans le projet associé à votre organisation, et non dans le projet de votre organisation.
Cliquez sur Organization Policies.
Sélectionnez la politique Disable service account key creation.
Cliquez sur Manage Policy et désactivez l’application.
Cliquez sur Set Policy.
Créez un compte et une clé de service¶
Ouvrez Google Cloud Console et authentifiez-vous à l’aide d’un utilisateur auquel l’accès à la création de comptes de service a été accordé.
Assurez-vous que vous participez à un projet de votre organisation.
Dans la navigation de gauche, sous IAM & Admin, sélectionnez l’onglet Service Accounts.
Cliquez sur Create Service Account.
Saisissez le nom du compte de service et cliquez sur Create and Continue.
Cliquez sur Done. Dans la table avec les comptes de service annoncés, trouvez la colonne OAuth 2 Client ID. Copiez l’ID client, car vous en aurez besoin plus tard pour configurer la délégation à l’échelle du domaine dans la section suivante.
Sur le compte de service nouvellement créé, cliquez sur le menu situé sous la table avec les comptes de service listés pour ce compte de service et sélectionnez Manage keys.
Sélectionnez Add key, puis Create new key.
Laissez la sélection par défaut de JSON et cliquez sur Create.
La clé est téléchargée dans le répertoire Téléchargements de votre navigateur sous la forme d’un fichier .json.
Autoriser la délégation du compte de service pour les champs d’application listés¶
Connectez-vous à votre compte Google Admin.
Sélectionnez Admin depuis Google Apps selector.
Dans la navigation de gauche, développez Security puis Access et sélectionnez Data control puis cliquez sur API Controls.
Sur l’écran Controls de l’API, sélectionnez Manage domain wild delegation.
Cliquez sur Add new.
Saisissez l’ID client OAuth 2 ID extrait de la section Create Service Account and Key (Créer un compte et une clé de service) et les champs d’application suivants :
Cliquez sur Authorize.
Paramétrage du compte Snowflake¶
En tant qu’administrateur de compte Snowflake, effectuez les tâches suivantes manuellement ou à l’aide du script inclus ci-dessous :
Créez un nouveau rôle ou utilisez un rôle existant et accordez le Privilèges de base de données.
Créez un nouvel utilisateur du service Snowflake avec le type SERVICE.
Autorisez l’utilisateur du service Snowflake le rôle que vous avez créé dans les étapes précédentes.
Configurez avec l’authentification par paire de clés pour l’utilisateur de Snowflake SERVICE de l’étape 2.
Snowflake recommande vivement cette étape. Configurez un gestionnaire de secrets pris en charge par Openflow, par exemple AWS, Azure et Hashicorp, et stockez les clés publiques et privées dans le magasin de secrets.
Note
Si, pour une raison quelconque, vous ne souhaitez pas utiliser un gestionnaire de secrets, il vous incombe de protéger les fichiers de clés publiques et privées utilisés pour l’authentification par paires de clés conformément aux politiques de sécurité de votre organisation.
Une fois le gestionnaire de secrets configuré, déterminez comment vous vous y authentifierez. Sur AWS, il est recommandé d’utiliser le rôle de l’instance EC2 associée à Openflow, car de cette manière, aucun autre secret ne doit être conservé.
Dans Openflow, configurez un fournisseur de paramètres associé à ce gestionnaire de secrets, à partir du menu hamburger en haut à droite. Naviguez vers Controller Settings » Parameter Provider et récupérez les valeurs de vos paramètres.
À ce stade, tous les identifiants peuvent être référencés avec les chemins de paramètres associés et aucune valeur sensible ne doit être conservée dans Openflow.
Si d’autres utilisateurs de Snowflake ont besoin d’accéder aux documents bruts ingérés et aux tables ingérées par le connecteur (par exemple, pour un traitement personnalisé dans Snowflake), accordez à ces utilisateurs le rôle créé à l’étape 1.
Désignez un entrepôt à utiliser par le connecteur. Commencez par la taille d’entrepôt la plus petite, puis faites des essais en fonction du nombre de tables répliquées et de la quantité de données transférées. Les tables de grande taille s’adaptent généralement mieux aux entrepôts multi-clusters, plutôt qu’aux entrepôts de grande taille.
Exemple de configuration¶
--The following script assumes you'll need to create all required roles, users, and objects. --However, you may want to reuse some that are already in existence. --Create a Snowflake service user to manage the connector USE ROLE USERADMIN; CREATE USER <openflow_service_user> TYPE=SERVICE COMMENT='Service user for Openflow automation'; --Create a pair of secure keys (public and private). For more information, see --key-pair authentication. Store the private key for the user in a file to supply --to the connector’s configuration. Assign the public key to the Snowflake service user: ALTER USER <openflow_service_user> SET RSA_PUBLIC_KEY = '<pubkey>'; --Create a role to manage the connector and the associated data and --grant it to that user USE ROLE SECURITYADMIN; CREATE ROLE <openflow_connector_admin_role>; GRANT ROLE <openflow_connector_admin_role> TO USER <openflow_service_user>; --The following block is for USE CASE 2 (Cortex connect) ONLY --Create a role for read access to the cortex search service created by this connector. --This role should be granted to any role that will use the service CREATE ROLE <cortex_search_service_read_only_role>; GRANT ROLE <cortex_search_service_read_only_role> TO ROLE <whatever_roles_will_access_search_service>; --Create the database the data will be stored in and grant usage to the roles created USE ROLE ACCOUNTADMIN; --use whatever role you want to own your DB CREATE DATABASE IF NOT EXISTS <destination_database>; GRANT USAGE ON DATABASE <destination_database> TO ROLE <openflow_connector_admin_role>; --Create the schema the data will be stored in and grant the necessary privileges --on that schema to the connector admin role: USE DATABASE <destination_database>; CREATE SCHEMA IF NOT EXISTS <destination_schema>; GRANT USAGE ON SCHEMA <destination_schema> TO ROLE <openflow_connector_admin_role>; GRANT CREATE TABLE, CREATE DYNAMIC TABLE, CREATE STAGE, CREATE SEQUENCE, CREATE CORTEX SEARCH SERVICE ON SCHEMA <destination_schema> TO ROLE <openflow_connector_admin_role>; --The following block is for CASE 2 (Cortex connect) ONLY --Grant the Cortex read-only role access to the database and schema GRANT USAGE ON DATABASE <destination_database> TO ROLE <cortex_search_service_read_only_role>; GRANT USAGE ON SCHEMA <destination_schema> TO ROLE <cortex_search_service_read_only_role>; --Create the warehouse this connector will use if it doesn't already exist. Grant the --appropriate privileges to the connector admin role. Adjust the size according to your needs. CREATE WAREHOUSE <openflow_warehouse> WITH WAREHOUSE_SIZE = 'MEDIUM' AUTO_SUSPEND = 300 AUTO_RESUME = TRUE; GRANT USAGE, OPERATE ON WAREHOUSE <openflow_warehouse> TO ROLE <openflow_connector_admin_role>;
Cas d’utilisation 1 : Utilisez la définition du connecteur pour ingérer uniquement des fichiers¶
Utilisez la définition du connecteur pour :
Exécuter un traitement personnalisé sur les fichiers ingérés
Ingérer les fichiers et les autorisations de Google Drive et les maintenir à jour
Définir le connecteur¶
En tant qu’ingénieur des données, effectuez les tâches suivantes pour installer et configurer le connecteur :
Installer le connecteur¶
Naviguez jusqu’à la page d’aperçu d’Openflow. Dans la section Featured connectors, sélectionnez View more connectors.
Sur la page des connecteurs Openflow, trouvez le connecteur et sélectionnez Add to runtime.
Dans la boîte de dialogue Select runtime, sélectionnez votre environnement d’exécution dans la liste déroulante Available runtimes.
Sélectionnez Add.
Note
Avant d’installer le connecteur, assurez-vous que vous avez créé une base de données et un schéma dans Snowflake pour que le connecteur puisse stocker les données ingérées.
Authentifiez-vous au déploiement avec les identifiants de votre compte Snowflake et sélectionnez Allow lorsque vous êtes invité à autoriser l’application d’exécution à accéder à votre compte Snowflake. Le processus d’installation du connecteur prend quelques minutes.
Authentifiez-vous auprès de l’environnement d’exécution avec les identifiants de votre compte Snowflake.
Le canevas Openflow apparaît avec le groupe de processus du connecteur ajouté.
Configuration du connecteur¶
Cliquez avec le bouton droit de la souris sur le groupe de processus importé et sélectionnez Paramètres.
Saisissez les valeurs des paramètres requises comme indiqué dans Paramètres de la source Google Drive, Paramètres de la destination Google Drive et Paramètres de l’ingestion Google Drive.
Paramètres de la source Google Drive¶
Paramètre |
Description |
---|---|
Utilisateur de la délégation de Google |
L’utilisateur utilisé par le compte du service |
GCP Compte de service JSON |
Le compte de service JSON téléchargé depuis Google Cloud Console pour autoriser l’accès aux APIs Google dans le connecteur |
Paramètres de destination de Google Drive¶
Paramètre |
Description |
---|---|
Base de données de destination |
La base de données dans laquelle les données seront conservées. Elle doit déjà exister dans Snowflake |
Schéma de destination |
Le schéma dans lequel les données seront conservées. Elle doit déjà exister dans Snowflake |
Identificateur de compte Snowflake |
Nom du compte Snowflake formaté comme suit : [[nom de l’organisation] -[[nom du compte] où les données seront conservées |
Stratégie d’authentification Snowflake |
Stratégie d’authentification auprès de Snowflake. Valeurs possibles : SNOWFLAKE_SESSION_TOKEN - lorsque nous exécutons le flux sur SPCS, KEY_PAIR lorsque nous voulons configurer l’accès à l’aide d’une clé privée |
Clé privée de Snowflake |
La clé privée RSA utilisée pour l’authentification. La clé RSA doit être formatée selon les normes PKCS8 et comporter les en-têtes et pieds de page standard PEM. Notez que vous devez définir soit le fichier de clé privée de Snowflake, soit la clé privée de Snowflake |
Fichier de clé privée de Snowflake |
Le fichier qui contient la clé privée RSA utilisée pour l’authentification à Snowflake, formaté selon les normes PKCS8 et comportant les en-têtes et pieds de page standard PEM. La ligne d’en-tête commence par |
Mot de passe de la clé privée de Snowflake |
Le mot de passe associé au fichier de la clé privée de Snowflake |
Rôle Snowflake |
Rôle Snowflake utilisé lors de l’exécution de la requête |
Nom d’utilisateur Snowflake |
Nom d’utilisateur utilisé pour se connecter à l’instance de Snowflake |
Entrepôt Snowflake |
L’entrepôt de Snowflake est utilisé pour exécuter des requêtes |
Paramètres d’ingestion de Google Drive¶
Paramètre |
Description |
---|---|
ID Google Drive |
Le drive partagé de Google à surveiller pour le contenu et les mises à jour |
Nom du dossier Google |
En option, l’identificateur de dossier Google Drive (nom de dossier lisible par l’homme) peut être paramétré pour filtrer les fichiers entrants. Si tous les types de fichiers sont souhaités, sélectionnez Set Empty String. Si ce paramètre est défini, seuls les fichiers se trouvant dans le dossier ou le sous-dossier fourni seront récupérés. Lorsque cette option est vide ou non définie, aucun filtre de dossier n’est appliqué et tous les fichiers se trouvant sous le lecteur sont récupérés. |
Domaine Google |
Le domaine de l’espace de travail Google dans lequel résident les groupes Google et Drive. |
Extensions de fichiers à ingérer |
Une liste séparée par des virgules qui spécifie les extensions de fichiers à ingérer. Le connecteur essaie d’abord de convertir les fichiers au format PDF, si possible. Néanmoins, la vérification de l’extension est effectuée sur l’extension du fichier d’origine. Si certaines des extensions de fichiers spécifiées ne sont pas prises en charge par Cortex Parse Document, le connecteur ignore ces fichiers, connecte un message d’avertissement dans un journal d’événements et poursuit le traitement des autres fichiers. |
Nom de la table de hachage du fichier Snowflake |
Table interne utilisée pour stocker les hachages du contenu des fichiers afin d’empêcher les mises à jour du contenu lorsqu’il n’a pas été modifié. |
Cliquez avec le bouton droit de la souris sur l’avion et sélectionnez Enable all Controller Services.
Cliquez avec le bouton droit de la souris sur le groupe de processus importé et sélectionnez Start. Le connecteur démarre l’ingestion des données.
Cas d’utilisation 2 : Utiliser la définition du connecteur pour ingérer des fichiers et effectuer des performances avec Cortex¶
Utilisez la définition de flux prédéfinie pour :
Créez des assistants AI pour les documents publics dans le Google Drive de votre organisation.
Permettez à vos assistants AI d’adhérer aux contrôles d’accès spécifiés dans le Google Drive de votre organisation.
Définir le connecteur¶
En tant qu’ingénieur des données, effectuez les tâches suivantes pour installer et configurer le connecteur :
Installer le connecteur¶
Naviguez jusqu’à la page d’aperçu d’Openflow. Dans la section Featured connectors, sélectionnez View more connectors.
Sur la page des connecteurs Openflow, trouvez le connecteur et sélectionnez Add to runtime.
Dans la boîte de dialogue Select runtime, sélectionnez votre environnement d’exécution dans la liste déroulante Available runtimes.
Sélectionnez Add.
Note
Avant d’installer le connecteur, assurez-vous que vous avez créé une base de données et un schéma dans Snowflake pour que le connecteur puisse stocker les données ingérées.
Authentifiez-vous au déploiement avec les identifiants de votre compte Snowflake et sélectionnez Allow lorsque vous êtes invité à autoriser l’application d’exécution à accéder à votre compte Snowflake. Le processus d’installation du connecteur prend quelques minutes.
Authentifiez-vous auprès de l’environnement d’exécution avec les identifiants de votre compte Snowflake.
Le canevas Openflow apparaît avec le groupe de processus du connecteur ajouté.
Configuration du connecteur¶
Cliquez avec le bouton droit de la souris sur le groupe de processus importé et sélectionnez Paramètres.
Saisissez les valeurs de paramètre requises comme décrit dans Google Drive Cortex Connect Source Parameters, Google Drive Cortex Connect Destination Parameters et Google Drive Cortex Connect Ingestion Parameters.
Paramètres de la source Google Drive Cortex Connect¶
Paramètre |
Description |
---|---|
Utilisateur de la délégation de Google |
L’utilisateur utilisé par le compte du service |
GCP Compte de service JSON |
Le compte de service JSON téléchargé depuis Google Cloud Console pour autoriser l’accès aux APIs Google dans le connecteur |
Paramètres de destination de Google Drive Cortex Connect¶
Paramètre |
Description |
---|---|
Base de données de destination |
La base de données dans laquelle les données seront conservées. Elle doit déjà exister dans Snowflake |
Schéma de destination |
Le schéma dans lequel les données seront conservées. Elle doit déjà exister dans Snowflake |
Identificateur de compte Snowflake |
Nom du compte Snowflake formaté comme suit : [[nom de l’organisation] -[[nom du compte] où les données seront conservées |
Stratégie d’authentification Snowflake |
Stratégie d’authentification auprès de Snowflake. Valeurs possibles : SNOWFLAKE_SESSION_TOKEN - lorsque nous exécutons le flux sur SPCS, KEY_PAIR lorsque nous voulons configurer l’accès à l’aide d’une clé privée |
Clé privée de Snowflake |
La clé privée RSA utilisée pour l’authentification. La clé RSA doit être formatée selon les normes PKCS8 et comporter les en-têtes et pieds de page standard PEM. Notez que vous devez définir soit le fichier de clé privée de Snowflake, soit la clé privée de Snowflake |
Fichier de clé privée de Snowflake |
Le fichier qui contient la clé privée RSA utilisée pour l’authentification à Snowflake, formaté selon les normes PKCS8 et comportant les en-têtes et pieds de page standard PEM. La ligne d’en-tête commence par |
Mot de passe de la clé privée de Snowflake |
Le mot de passe associé au fichier de la clé privée de Snowflake |
Rôle Snowflake |
Rôle Snowflake utilisé lors de l’exécution de la requête |
Nom d’utilisateur Snowflake |
Nom d’utilisateur utilisé pour se connecter à l’instance de Snowflake |
Entrepôt Snowflake |
L’entrepôt de Snowflake est utilisé pour exécuter des requêtes |
Paramètres d’ingestion de Google Drive Cortex Connect¶
Paramètre |
Description |
---|---|
ID Google Drive |
Le drive partagé de Google à surveiller pour le contenu et les mises à jour |
Nom du dossier Google |
|
Domaine Google |
Le domaine de l’espace de travail Google dans lequel résident les groupes Google et Drive. |
Mode OCR |
Le mode OCR à utiliser lors de l’analyse des fichiers avec la fonction Cortex PARSE_DOCUMENT. La valeur peut être |
Extensions de fichiers à ingérer |
Une liste séparée par des virgules qui spécifie les extensions de fichiers à ingérer. Le connecteur essaie d’abord de convertir les fichiers au format PDF, si possible. Néanmoins, la vérification de l’extension est effectuée sur l’extension du fichier d’origine. Si certaines des extensions de fichiers spécifiées ne sont pas prises en charge par Cortex Parse Document, le connecteur ignore ces fichiers, connecte un message d’avertissement dans un journal d’événements et poursuit le traitement des autres fichiers. |
Nom de la table de hachage du fichier Snowflake |
Table interne utilisée pour stocker les hachages du contenu des fichiers afin d’empêcher les mises à jour du contenu lorsqu’il n’a pas été modifié. |
Rôle de l’utilisateur Snowflake Cortex Search Service |
Identificateur d’un rôle auquel sont attribuées des autorisations d’utilisation du service Cortex Search. |
Cliquez avec le bouton droit de la souris sur l’avion et sélectionnez Enable all Controller Services.
Cliquez avec le bouton droit de la souris sur le groupe de processus importé et sélectionnez Start. Le connecteur démarre l’ingestion des données.
Cas d’utilisation 3 : Personnaliser la définition du connecteur¶
Personnalisez la définition du connecteur pour :
Traiter les fichiers ingérés avec Document AI.
Effectuer des performances personnalisées sur les fichiers ingérés.
Définir le connecteur¶
En tant qu’ingénieur des données, effectuez les tâches suivantes pour installer et configurer le connecteur :
Installer le connecteur¶
Naviguez jusqu’à la page d’aperçu d’Openflow. Dans la section Featured connectors, sélectionnez View more connectors.
Sur la page des connecteurs Openflow, trouvez le connecteur et sélectionnez Add to runtime.
Dans la boîte de dialogue Select runtime, sélectionnez votre environnement d’exécution dans la liste déroulante Available runtimes.
Sélectionnez Add.
Note
Avant d’installer le connecteur, assurez-vous que vous avez créé une base de données et un schéma dans Snowflake pour que le connecteur puisse stocker les données ingérées.
Authentifiez-vous au déploiement avec les identifiants de votre compte Snowflake et sélectionnez Allow lorsque vous êtes invité à autoriser l’application d’exécution à accéder à votre compte Snowflake. Le processus d’installation du connecteur prend quelques minutes.
Authentifiez-vous auprès de l’environnement d’exécution avec les identifiants de votre compte Snowflake.
Le canevas Openflow apparaît avec le groupe de processus du connecteur ajouté.
Configuration du connecteur¶
Personnaliser la définition du connecteur.
Supprimer les groupes de processus suivants :
Vérifier si le contenu est dupliqué
Zone de préparation et d’analyse du PDF Snowflake
Mise à jour du Snowflake Cortex
Attachez tout traitement client à la sortie du groupe de processus Traiter les métadonnées Google Drive. Chaque fichier de flux représente une seule modification de fichier Google Drive. Les attributs des fichiers de flux peuvent être consultés dans la documentation
Fetch Google Drive Metadata
.
Renseignez les paramètres du groupe de processus. Suivez le même processus que pour Cas d’utilisation 1 : Utilisez la définition du connecteur pour ingérer uniquement des fichiers. Notez qu’après avoir modifié la définition du connecteur, il se peut que tous les paramètres ne soient pas nécessaires.
Exécutez le flux¶
Exécutez le flux.
Démarrez le groupe de processus. Le flux créera tous les objets requis à l’intérieur de Snowflake.
Cliquez avec le bouton droit de la souris sur le groupe de processus importé et sélectionnez Start.
Requête auprès du service Cortex Search Service¶
Vous pouvez utiliser le service Cortex Search pour créer des applications de chat et de recherche permettant de dialoguer avec vos documents dans Google Drive ou d’y effectuer des requêtes.
Une fois que vous avez installé et configuré le connecteur et qu’il commence à ingérer du contenu depuis Google Drive, vous pouvez lancer une requête auprès du service Cortex Search. Pour plus d’informations sur l’utilisation de Cortex Search, voir Requête à un service de Cortex Search.
Réponses des filtres
Pour limiter les réponses du service Cortex Search aux documents auxquels un utilisateur spécifique a accès dans Google Drive, vous pouvez spécifier un filtre contenant l’ID ou l’adresse e-mail de l’utilisateur lorsque vous effectuez une requête sur Cortex Search. Par exemple, filter.@contains.user_ids
ou filter.@contains.user_emails
. Le nom du service Cortex Search créé par le connecteur est search_service
dans le schéma Cortex
.
Exécutez le code SQL suivant dans une feuille de calcul SQL pour interroger le service Cortex Search avec des fichiers ingérés depuis votre Google Drive.
Remplacez les éléments suivants :
application_instance_name
: Nom de votre base de données et de votre instance d’application connecteur.user_emailID
: ID d’email de l’utilisateur pour lequel vous souhaitez filtrer les réponses.your_question
: La question pour laquelle vous souhaitez obtenir des réponses.number_of_results
: Nombre maximal de résultats à renvoyer dans la réponse. La valeur maximale est de 1000 et la valeur par défaut est de 10.
SELECT PARSE_JSON(
SNOWFLAKE.CORTEX.SEARCH_PREVIEW(
'<application_instance_name>.cortex.search_service',
'{
"query": "<your_question>",
"columns": ["chunk", "web_url"],
"filter": {"@contains": {"user_emails": "<user_emailID>"} },
"limit": <number_of_results>
}'
)
)['results'] AS results
Voici la liste complète des valeurs que vous pouvez saisir pour columns
:
Nom de la colonne |
Type |
Description |
---|---|---|
|
Chaîne |
Un chemin complet vers le fichier à partir de la racine des documents de Google Drive. Exemple : |
|
Chaîne |
Une URL qui affiche un fichier original de Google Drive dans un navigateur. |
|
Chaîne |
Date et heure de la dernière modification de l’élément. |
|
Chaîne |
Un morceau de texte du document qui correspond à la requête de Cortex Search. |
|
Tableau |
Un tableau des IDs des utilisateurs de Microsoft 365 qui ont accès à la documentation. Il inclut également les IDs utilisateurs de tous les groupes Microsoft 365 qui sont affectés au document. Pour trouver un ID d’utilisateur spécifique, voir `Obtenir un <https://learn.microsoft.com/en-us/graph/api/user-get?view=graph-rest-1.0&tabs=http>d’utilisateur`_. |
|
Tableau |
Un tableau d’IDs de courriels d’utilisateurs Microsoft 365 qui ont accès à la documentation. Il inclut également les IDs de courriels utilisateurs de tous les groupes Microsoft 365 qui sont affectés au document. |
Exemple : Requête auprès d’un assistant AI pour obtenir des informations sur les ressources humaines (HR)
Vous pouvez utiliser Cortex Search pour interroger un assistant AI à l’intention des employés afin d’obtenir les dernières versions des informations HR, telles que l’onboarding, le code de conduite, les processus d’équipe et les politiques de l’organisation. À l’aide de filtres de réponse, vous pouvez également autoriser les membres de l’équipe HR à effectuer des requêtes sur les contrats des employés tout en respectant les contrôles d’accès configurés dans Google Drive.
Exécutez la procédure suivante dans une feuille de calculSQL pour interroger le service Cortex Search avec des fichiers ingérés depuis Google Drive. Sélectionnez la base de données comme nom d’instance de votre application et le schéma comme Cortex.
Remplacez les éléments suivants :
application_instance_name
: Nom de votre base de données et de votre instance d’application connecteur.user_emailID
: ID d’email de l’utilisateur pour lequel vous souhaitez filtrer les réponses.
SELECT PARSE_JSON(
SNOWFLAKE.CORTEX.SEARCH_PREVIEW(
'<application_instance_name>.cortex.search_service',
'{
"query": "What is my vacation carry over policy?",
"columns": ["chunk", "web_url"],
"filter": {"@contains": {"user_emails": "<user_emailID>"} },
"limit": 1
}'
)
)['results'] AS results
Exécutez le code suivant dans une feuille de calcul Python pour interroger le service Cortex Search avec des fichiers ingérés depuis Google Drive. Veillez à ajouter le paquet snowflake.core
à votre base de données.
Remplacez les éléments suivants :
application_instance_name
: Nom de votre base de données et de votre instance d’application connecteur.user_emailID
: ID d’email de l’utilisateur pour lequel vous souhaitez filtrer les réponses.
import snowflake.snowpark as snowpark
from snowflake.snowpark import Session
from snowflake.core import Root
def main(session: snowpark.Session):
root = Root(session)
# fetch service
my_service = (root
.databases["<application_instance_name>"]
.schemas["cortex"]
.cortex_search_services["search_service"]
)
# query service
resp = my_service.search(
query="What is my vacation carry over policy?",
columns = ["chunk", "web_url"],
filter = {"@contains": {"user_emails": "<user_emailID>"} },
limit=1
)
return (resp.to_json())
Exécutez le code suivant dans une interface de ligne de commande pour interroger le service Cortex Search avec des fichiers ingérés depuis votre Google Drive. Vous devrez vous authentifier à l’aide d’une paire de clés et de OAuth pour accéder aux APIs REST de Snowflake. Pour plus d’informations, voir Rest API et Authentification d”Snowflake REST APIs avec Snowflake.
Remplacez les éléments suivants :
application_instance_name
: Nom de votre base de données et de votre instance d’application connecteur.account_url
: Votre URL de compte Snowflake . Pour obtenir des instructions sur la façon de trouver l’URL de votre compte, voir Recherche de l’organisation et du nom de compte pour un compte.
curl --location "https://<account_url>/api/v2/databases/<application_instance_name>/schemas/cortex/cortex-search-services/search_service" \
--header 'Content-Type: application/json' \
--header 'Accept: application/json' \
--header "Authorization: Bearer <CORTEX_SEARCH_JWT>" \
--data '{
"query": "What is my vacation carry over policy?",
"columns": ["chunk", "web_url"],
"limit": 1
}'