OpenAI
Questa pagina è stata tradotta automaticamente. Visualizza l'articolo originale in inglese.

Configurare il modello di app Snowflake in ChatGPT

Scopri come gli amministratori dell’area di lavoro possono configurare il modello di app Snowflake in ChatGPT usando un server MCP gestito da Snowflake.

Aggiornato: 7 days ago

Usa questa guida se sei un amministratore dell’area di lavoro ChatGPT e stai configurando il modello di app Snowflake per la tua organizzazione. Un modello non è l’app finale usata dai membri. È un flusso di configurazione che crea una bozza di app specifica per l’area di lavoro dopo che hai fornito la configurazione Snowflake richiesta.

Per Snowflake, la maggior parte della configurazione avviene in Snowflake. Crei un server MCP gestito da Snowflake, concedi al ruolo corretto l’accesso al server MCP e ai relativi oggetti sottostanti, quindi inserisci l’URL del server MCP gestito o i suoi campi componente nel flusso di configurazione del modello ChatGPT. Dopo che ChatGPT ha creato la bozza di app, puoi pubblicarla e gestirla come le altre app dell’area di lavoro.

Cosa stai configurando

Stai creando in ChatGPT un’app Snowflake specifica per l’area di lavoro. L’app si connette a un server MCP gestito da Snowflake che definisce:

  • Quali azioni può usare ChatGPT, chiamate strumenti.

  • A quali dati o oggetti Snowflake possono accedere quegli strumenti.

  • Con quale ruolo Snowflake gli utenti devono autorizzare l’accesso.

  • Quali database, schema e nome del server MCP Snowflake identificano l’endpoint del connettore.

ChatGPT può rilevare e usare solo gli strumenti esposti dal server MCP e consentiti dal ruolo Snowflake con cui l’utente autorizza l’accesso.

Prima di iniziare

Ti servono:

  • Accesso come amministratore o proprietario dell’area di lavoro ChatGPT.

  • Accesso a Snowflake che consenta di creare oggetti server MCP e concedere autorizzazioni.

  • Il database e lo schema Snowflake in cui risiederà il server MCP.

  • Una decisione su ciò che ChatGPT deve essere autorizzato a fare, ad esempio Cortex Search, Cortex Analyst, SQL in sola lettura o una procedura o funzione specifica.

  • Un ruolo Snowflake con privilegi minimi che gli utenti useranno quando autorizzano l’app.

  • Il prefisso host dell’account Snowflake, inclusi eventuali suffissi di regione o cloud.

Valori da preparare

  • Prefisso host Snowflake: tutto ciò che precede .snowflakecomputing.com nell’URL dell’account Snowflake.

  • Database: il database contenente il server MCP.

  • Schema: lo schema contenente il server MCP.

  • Nome server MCP: il nome dell’oggetto server MCP Snowflake.

  • URL completo del server MCP gestito, se la schermata di configurazione di ChatGPT richiede un URL.

  • Ruolo Snowflake: il ruolo che gli utenti devono usare quando autorizzano l’app.

  • Elenco strumenti: gli oggetti e le azioni Snowflake che vuoi far usare a ChatGPT.

Decidi cosa può fare ChatGPT

Scegli solo le funzionalità che vuoi esporre. Le opzioni comuni includono:

  • Ricerca con Cortex Search per trovare risposte in dati o contenuti Snowflake indicizzati.

  • Domande e risposte con Cortex Analyst tramite una vista semantica approvata.

  • SQL in sola lettura per un accesso controllato alle query.

  • Un agente Snowflake, una stored procedure o una UDF per flussi di lavoro specifici.

Se abiliti SQL, mantienilo in sola lettura a meno che la tua organizzazione non abbia esaminato e approvato l’accesso in scrittura.

Creare il server MCP Snowflake

In Snowflake, accedi con un ruolo che possa creare il server MCP e concedere l’accesso. Apri un worksheet nel database e nello schema in cui deve essere creato il server MCP.

Crea un server MCP che elenchi solo gli strumenti che ChatGPT deve usare. Sostituisci i nomi degli oggetti con il tuo database, schema, servizi, viste, warehouse e nome server Snowflake.

Esempio:

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"
$$;

I nomi degli strumenti devono essere stabili e descrittivi, così ChatGPT può scegliere lo strumento giusto. La creazione del server MCP non concede automaticamente l’accesso agli oggetti Snowflake sottostanti.

Concedere le autorizzazioni Snowflake corrette

Scegli il ruolo Snowflake con cui gli utenti autorizzeranno l’accesso, quindi concedi a quel ruolo l’accesso al database, allo schema, al server MCP e a ogni oggetto sottostante usato dagli strumenti.

Esempio:

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;

Se il server MCP espone una vista semantica, una UDF, una stored procedure o un agente Cortex, concedi anche le autorizzazioni richieste per quegli oggetti.

Verificare che Snowflake sia pronto

Esegui:

SHOW MCP SERVERS IN SCHEMA CHATGPT_APPS.TOOLS;

Quindi esegui:

DESCRIBE MCP SERVER CHATGPT_APPS.TOOLS.CHATGPT_SNOWFLAKE_MCP;

Conferma:

  • Il server esiste nel database e nello schema previsti.

  • L’elenco degli strumenti corrisponde a quanto previsto.

  • Ogni identificatore di strumento punta all’oggetto Snowflake corretto.

  • Il ruolo di connessione dispone di USAGE sul server MCP.

  • Il ruolo di connessione dispone delle autorizzazioni necessarie su ciascun oggetto sottostante.

Avviare la configurazione del modello in ChatGPT

  1. In ChatGPT, passa all’area di lavoro in cui l’app deve essere disponibile.

  2. Apri Impostazioni area di lavoro > App.

  3. Seleziona Directory.

  4. Cerca Snowflake.

  5. Seleziona il modello di app Snowflake e avvia la configurazione.

  6. Inserisci un nome e una descrizione chiari per l’app, ad esempio Snowflake o Snowflake - Analytics.

  7. Inserisci i dettagli del server MCP gestito richiesti dal flusso di configurazione.

Se la schermata di configurazione richiede l’URL completo del server MCP gestito, usa questo formato:

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

Se la schermata di configurazione richiede campi separati, usa gli stessi valori di quell’URL:

  • Prefisso host Snowflake.

  • Database.

  • Schema.

  • Nome server MCP.

Creare e pubblicare la bozza di app

  1. Salva la configurazione del modello Snowflake in ChatGPT.

  2. Crea la bozza di app.

  3. Esamina i dettagli della bozza di app, le impostazioni di autenticazione e le azioni disponibili.

  4. Pubblica la bozza di app quando è pronta.

  5. Conferma che l’app appaia in Impostazioni area di lavoro > App > Abilitate.

  6. Configura Accesso utenti per i ruoli che devono usarla.

  7. Esamina Controllo azioni per gli strumenti esposti.

  8. Esamina Autorizzazioni app per scegliere quando ChatGPT chiede ai membri prima di usare l’app.

Queste autorizzazioni dell’app si applicano alle conversazioni ChatGPT. Gli agenti dell’area di lavoro usano controlli per agente impostati dal creatore dell’agente per determinare quali azioni dell’app sono disponibili e quando agli utenti finali viene chiesto di approvarle. Per il comportamento degli agenti, consulta: Agenti dell’area di lavoro ChatGPT per Enterprise e Business.

Testare l’app

  1. Avvia il flusso di connessione da ChatGPT come utente di test autorizzato.

  2. Accedi a Snowflake e seleziona il ruolo previsto se richiesto.

  3. Conferma che ChatGPT rilevi gli strumenti previsti dal server MCP.

  4. Esegui prima un’azione di lettura a basso rischio, come una ricerca o una query in sola lettura su dati approvati.

  5. Conferma che le autorizzazioni Snowflake impediscano l’accesso al di fuori del ruolo e degli oggetti approvati.

URL del server MCP e comportamento OAuth

ChatGPT si connette all’URL completo del server MCP gestito da Snowflake. ChatGPT usa il prefisso host Snowflake di quell’URL per risolvere gli endpoint OAuth Snowflake.

Non incollare un URL Snowsight, il solo URL radice dell’account Snowflake o qualsiasi URL con segmenti di percorso aggiuntivi. L’URL MCP deve includere il percorso di database, schema e server MCP e deve corrispondere esattamente ai tuoi oggetti Snowflake.

Risoluzione dei problemi

  • Server MCP non trovato: ricontrolla l’URL completo del server MCP oppure i campi separati per prefisso host, database, schema e server.

  • Nessuno strumento appare in ChatGPT: conferma che la specifica del server MCP includa strumenti e che il ruolo disponga di USAGE sul server MCP.

  • Uno strumento appare ma non funziona quando viene usato: conferma che il ruolo disponga dell’autorizzazione corretta sull’oggetto Snowflake sottostante.

  • Lo strumento SQL non funziona: conferma che il nome del warehouse sia corretto, che il warehouse sia disponibile, che il ruolo disponga di USAGE su di esso e che read_only sia true se intendevi un accesso in sola lettura.

  • Autorizzazione non riuscita: conferma che l’utente possa accedere a Snowflake e usare il ruolo previsto.

  • Problema di connessione al nome host: usa il prefisso host Snowflake corretto. I nomi host Snowflake con caratteri di sottolineatura possono causare problemi; preferisci i trattini.

Questo articolo è stato utile?