OpenAI
Cette page a été traduite automatiquement. Afficher l’article original en anglais.

Configurer le modèle d’application Snowflake dans ChatGPT

Découvrez comment les admins d’espace de travail peuvent configurer le modèle d’application Snowflake dans ChatGPT avec un serveur MCP géré par Snowflake.

Mise à jour : 6 days ago

Utilisez ce guide si vous êtes admin d’un espace de travail ChatGPT et configurez le modèle d’application Snowflake pour votre organisation. Un modèle n’est pas l’application finale utilisée par les membres. Il s’agit d’un flux de configuration qui crée une application brouillon propre à l’espace de travail après que vous avez fourni la configuration Snowflake requise.

Pour Snowflake, la majeure partie de la configuration se fait dans Snowflake. Vous créez un serveur MCP géré par Snowflake, accordez au rôle approprié l’accès au serveur MCP et à ses objets sous-jacents, puis entrez l’URL du serveur MCP géré ou ses champs de composant dans le flux de configuration du modèle ChatGPT. Après que ChatGPT a créé l’application brouillon, vous pouvez la publier et la gérer comme les autres applications de l’espace de travail.

Ce que vous configurez

Vous créez une application Snowflake propre à l’espace de travail dans ChatGPT. L’application se connecte à un serveur MCP géré par Snowflake qui définit :

  • Les actions que ChatGPT peut utiliser, appelées outils.

  • Les données ou objets Snowflake auxquels ces outils peuvent accéder.

  • Le rôle Snowflake avec lequel les utilisateurs doivent s’autoriser.

  • La base de données, le schéma et le nom du serveur MCP Snowflake qui identifient l’endpoint du connecteur.

ChatGPT peut seulement découvrir et utiliser les outils exposés par le serveur MCP et autorisés par le rôle Snowflake avec lequel l’utilisateur s’autorise.

Avant de commencer

Vous avez besoin de ce qui suit :

  • Un accès d’admin ou de propriétaire à l’espace de travail ChatGPT.

  • Un accès Snowflake permettant de créer des objets de serveur MCP et d’accorder des autorisations.

  • La base de données et le schéma Snowflake où résidera le serveur MCP.

  • Une décision sur ce que ChatGPT devrait être autorisé à faire, par exemple Cortex Search, Cortex Analyst, du SQL en lecture seule, ou une procédure ou fonction précise.

  • Un rôle Snowflake de moindre privilège que les utilisateurs utiliseront lors de l’autorisation de l’application.

  • Le préfixe d’hôte du compte Snowflake, y compris tout suffixe de région ou de nuage.

Valeurs à préparer

  • Préfixe d’hôte Snowflake : tout ce qui précède .snowflakecomputing.com dans l’URL du compte Snowflake.

  • Base de données : la base de données contenant le serveur MCP.

  • Schéma : le schéma contenant le serveur MCP.

  • Nom du serveur MCP : le nom de l’objet de serveur MCP Snowflake.

  • URL complète du serveur MCP géré, si l’écran de configuration de ChatGPT demande une URL.

  • Rôle Snowflake : le rôle que les utilisateurs doivent utiliser lors de l’autorisation de l’application.

  • Liste d’outils : les objets et actions Snowflake que vous voulez que ChatGPT utilise.

Déterminer ce que ChatGPT peut faire

Choisissez seulement les fonctionnalités que vous voulez exposer. Les options courantes comprennent :

  • Recherche avec Cortex Search pour trouver des réponses dans les données ou le contenu Snowflake indexés.

  • Questions-réponses avec Cortex Analyst au moyen d’une vue sémantique approuvée.

  • SQL en lecture seule pour un accès contrôlé aux requêtes.

  • Un agent Snowflake, une procédure stockée ou une UDF pour des flux de travail précis.

Si vous activez SQL, gardez-le en lecture seule, sauf si votre organisation a examiné et approuvé l’accès en écriture.

Créer le serveur MCP Snowflake

Dans Snowflake, connectez-vous avec un rôle qui peut créer le serveur MCP et accorder l’accès. Ouvrez une feuille de calcul dans la base de données et le schéma où le serveur MCP doit être créé.

Créez un serveur MCP qui répertorie seulement les outils que ChatGPT doit utiliser. Remplacez les noms d’objets par vos propres noms de base de données, schéma, services, vues, entrepôt et serveur Snowflake.

Exemple :

CREATE MCP SERVER CHATGPT_SNOWFLAKE_MCP
FROM SPECIFICATION $$
tools:
- name: "support-search"
type: "CORTEX_SEARCH_SERVICE_QUERY"
identifier: "CHATGPT_APPS.TOOLS.SUPPORT_SEARCH_SERVICE"
title: "Support Search"
description: "Search support content for relevant customer issues."
- name: "sql-readonly"
type: "SYSTEM_EXECUTE_SQL"
title: "Read-only SQL"
description: "Run read-only SQL queries against approved Snowflake data."
config:
read_only: true
query_timeout: 600
warehouse: "CHATGPT_WH"
$$;

Les noms d’outils doivent être stables et descriptifs afin que ChatGPT puisse choisir le bon outil. La création du serveur MCP n’accorde pas automatiquement l’accès aux objets Snowflake sous-jacents.

Accorder les bonnes autorisations Snowflake

Choisissez le rôle Snowflake avec lequel les utilisateurs s’autoriseront, puis accordez à ce rôle l’accès à la base de données, au schéma, au serveur MCP et à chaque objet sous-jacent utilisé par les outils.

Exemple :

GRANT USAGE ON DATABASE CHATGPT_APPS TO ROLE CHATGPT_CONNECTOR_ROLE;
GRANT USAGE ON SCHEMA CHATGPT_APPS.TOOLS TO ROLE CHATGPT_CONNECTOR_ROLE;
GRANT USAGE ON MCP SERVER CHATGPT_APPS.TOOLS.CHATGPT_SNOWFLAKE_MCP TO ROLE CHATGPT_CONNECTOR_ROLE;
GRANT USAGE ON CORTEX SEARCH SERVICE CHATGPT_APPS.TOOLS.SUPPORT_SEARCH_SERVICE TO ROLE CHATGPT_CONNECTOR_ROLE;
GRANT USAGE ON WAREHOUSE CHATGPT_WH TO ROLE CHATGPT_CONNECTOR_ROLE;

Si le serveur MCP expose une vue sémantique, une UDF, une procédure stockée ou un Cortex Agent, accordez aussi les autorisations requises pour ces objets.

Vérifier que Snowflake est prêt

Exécutez :

SHOW MCP SERVERS IN SCHEMA CHATGPT_APPS.TOOLS;

Exécutez ensuite :

DESCRIBE MCP SERVER CHATGPT_APPS.TOOLS.CHATGPT_SNOWFLAKE_MCP;

Confirmez ce qui suit :

  • Le serveur existe dans la base de données et le schéma attendus.

  • La liste d’outils correspond à ce que vous aviez prévu.

  • Chaque identifiant d’outil pointe vers le bon objet Snowflake.

  • Le rôle de connexion dispose de USAGE sur le serveur MCP.

  • Le rôle de connexion dispose des autorisations nécessaires sur chaque objet sous-jacent.

Démarrer la configuration du modèle dans ChatGPT

  1. Dans ChatGPT, passez à l’espace de travail où l’application doit être disponible.

  2. Ouvrez Paramètres de l’espace de travail > Applications.

  3. Sélectionnez Répertoire.

  4. Recherchez Snowflake.

  5. Sélectionnez le modèle d’application Snowflake et démarrez la configuration.

  6. Entrez un nom et une description d’application clairs, comme Snowflake ou Snowflake - Analytique.

  7. Entrez les détails du serveur MCP géré demandés par le flux de configuration.

Si l’écran de configuration demande l’URL complète du serveur MCP géré, utilisez ce format :

https://<snowflake_host_prefix>.snowflakecomputing.com/api/v2/databases/{database}/schemas/{schema}/mcp-servers/{server}

Si l’écran de configuration demande des champs distincts, utilisez les mêmes valeurs que dans cette URL :

  • Préfixe d’hôte Snowflake.

  • Base de données.

  • Schéma.

  • Nom du serveur MCP.

Créer et publier l’application brouillon

  1. Enregistrez la configuration du modèle Snowflake dans ChatGPT.

  2. Créez l’application brouillon.

  3. Passez en revue les détails de l’application brouillon, les paramètres d’authentification et les actions disponibles.

  4. Publiez l’application brouillon lorsqu’elle est prête.

  5. Confirmez que l’application apparaît dans Paramètres de l’espace de travail > Applications > Activées.

  6. Configurez Accès utilisateur pour les rôles qui doivent l’utiliser.

  7. Passez en revue Contrôle des actions pour les outils exposés.

  8. Passez en revue Autorisations de l’application pour choisir quand ChatGPT demande aux membres avant d’utiliser l’application.

Ces autorisations d’application s’appliquent aux conversations ChatGPT. Les agents de l’espace de travail utilisent des contrôles par agent définis par le créateur de l’agent pour déterminer quelles actions d’application sont disponibles et quand les utilisateurs finaux doivent les approuver. Pour le comportement des agents, consultez : Agents de l’espace de travail ChatGPT pour Enterprise et Business.

Tester l’application

  1. Démarrez le flux de connexion à partir de ChatGPT en tant qu’utilisateur de test autorisé.

  2. Connectez-vous à Snowflake et sélectionnez le rôle prévu si on vous le demande.

  3. Confirmez que ChatGPT découvre les outils attendus à partir du serveur MCP.

  4. Exécutez d’abord une action de lecture à faible risque, comme une recherche ou une requête en lecture seule sur des données approuvées.

  5. Confirmez que les autorisations Snowflake empêchent l’accès en dehors du rôle et des objets approuvés.

URL du serveur MCP et comportement OAuth

ChatGPT se connecte à l’URL complète du serveur MCP géré par Snowflake. ChatGPT utilise le préfixe d’hôte Snowflake de cette URL pour résoudre les endpoints OAuth Snowflake.

Ne collez pas une URL Snowsight, l’URL racine du compte Snowflake seule, ni une URL contenant des segments de chemin supplémentaires. L’URL MCP doit inclure le chemin de la base de données, du schéma et du serveur MCP, et doit correspondre exactement à vos objets Snowflake.

Dépannage

  • Serveur MCP introuvable : vérifiez de nouveau l’URL complète du serveur MCP ou les champs distincts de préfixe d’hôte, de base de données, de schéma et de serveur.

  • Aucun outil n’apparaît dans ChatGPT : confirmez que la spécification du serveur MCP inclut des outils et que le rôle dispose de USAGE sur le serveur MCP.

  • Un outil apparaît, mais échoue lorsqu’il est utilisé : confirmez que le rôle dispose de la bonne autorisation sur l’objet Snowflake sous-jacent.

  • L’outil SQL échoue : confirmez que le nom de l’entrepôt est correct, que l’entrepôt est disponible, que le rôle dispose de USAGE sur celui-ci et que read_only est true si vous vouliez un accès en lecture seule.

  • L’autorisation échoue : confirmez que l’utilisateur peut se connecter à Snowflake et utiliser le rôle prévu.

  • Problème de connexion au nom d’hôte : utilisez le bon préfixe d’hôte Snowflake. Les noms d’hôte Snowflake contenant des traits de soulignement peuvent causer des problèmes; privilégiez les traits d’union.

Cet article vous a-t-il été utile?