OpenAI
Tämä sivu on konekäännetty. Katso alkuperäinen englanninkielinen artikkeli.

Määritä Snowflake-sovellusmalli ChatGPT:ssä

Lue, miten ChatGPT-työtilan järjestelmänvalvojat sekä ChatGPT Plus- tai ChatGPT Pro -käyttäjät voivat yhdistää ChatGPT:n Snowflaken hallinnoimaan MCP-palvelimeen.

Päivitetty: 15 days ago

Käytä tätä opasta, jos olet ChatGPT-työtilan järjestelmänvalvoja tai ChatGPT Plus- tai ChatGPT Pro -käyttäjä ja haluat yhdistää ChatGPT:n Snowflakeen Snowflaken hallinnoiman MCP-palvelimen kautta.

Suurin osa määrityksistä tehdään Snowflakessa. Kun Snowflake on valmis, viimeistele Snowflake-mallin yhteys ChatGPT:ssä ja ota sitten käyttöön mallia käyttävä Snowflake-lisäosa.

Mitä olet määrittämässä

Luot Snowflaken hallinnoiman MCP-palvelimen, joka toimii ChatGPT-yhdistimen endpointina. MCP-palvelin määrittää seuraavat asiat:

  • Mitä toimintoja ChatGPT voi käyttää.

  • Mihin Snowflake-tietoihin tai -objekteihin nämä työkalut voivat päästä.

  • Millä Snowflake-roolilla kukin käyttäjä valtuuttaa yhteyden.

  • Mikä Snowflake-tietokanta, skeema ja MCP-palvelimen nimi yksilöivät endpointin.

Määritä sitten ChatGPT:ssä Snowflake – virallinen malli käyttämällä hallinnoidun MCP-palvelimen täydellistä URL-osoitetta. Mallin määritysnäytössä URL-osoite voidaan näyttää neljänä erillisenä kenttänä:

  • Snowflake-isännän etuliite.

  • Tietokanta.

  • Skeema.

  • MCP-palvelimen nimi.

ChatGPT voi löytää ja käyttää vain työkaluja, jotka MCP-palvelin tuo saataville ja jotka käyttäjän valtuuttama Snowflake-rooli sallii.

Ennen aloittamista

Tarvitset seuraavat:

  • ChatGPT-työtilan järjestelmänvalvojan tai omistajan käyttöoikeudet taikka ChatGPT Plus- tai ChatGPT Pro -käyttöoikeudet.

  • Snowflake-käyttöoikeudet, joilla voi luoda MCP-palvelinobjekteja ja myöntää oikeuksia.

  • Snowflake-tietokanta ja -skeema, joihin MCP-palvelin sijoitetaan.

  • Päätös siitä, mitä ChatGPT saa tehdä, kuten käyttää Cortex Searchia tai Cortex Analystia, suorittaa vain luku -SQL:ää tai käyttää tiettyä proseduuria tai funktiota.

  • Vähimpien oikeuksien periaatetta noudattava Snowflake-rooli, jota käyttäjät käyttävät sovelluksen valtuuttamiseen.

  • Snowflake-tilin isännän etuliite sekä mahdollinen alue- tai pilvipalveluliite.

Jos Snowflake-tilisi rajoittaa käyttöä verkkokäytännöllä tai sallittujen IP-osoitteiden luettelolla, pyydä Snowflake-järjestelmänvalvojaa sallimaan saapuvat yhteydet nykyisiltä ChatGPT-yhdistimen lähtevän liikenteen IP-alueilta. Luettelo muuttuu, joten se on pidettävä ajan tasalla.

Valmisteltavat arvot

  • Snowflake-isännän etuliite: kaikki Snowflake-tilin URL-osoitteessa ennen osaa .snowflakecomputing.com.

  • Tietokanta: MCP-palvelimen sisältävä tietokanta.

  • Skeema: MCP-palvelimen sisältävä skeema.

  • MCP-palvelimen nimi: Snowflaken MCP-palvelinobjektin nimi.

  • Hallinnoidun MCP-palvelimen täydellinen URL-osoite, jos ChatGPT:n määritysnäyttö pyytää URL-osoitetta.

  • Snowflake-rooli: rooli, jota käyttäjien tulee käyttää sovelluksen valtuuttamiseen.

  • Työkaluluettelo: Snowflake-objektit ja -toiminnot, joita haluat ChatGPT:n käyttävän.

Päätä, mitä ChatGPT voi tehdä

Tuo saataville vain haluamasi ominaisuudet. Yleisiä vaihtoehtoja ovat:

  • Haku Cortex Searchilla, jotta indeksoiduista Snowflake-tiedoista tai -sisällöstä voidaan etsiä vastauksia.

  • Kysymykset ja vastaukset Cortex Analystilla hyväksytyn semanttisen näkymän kautta.

  • Vain luku -SQL hallittuun kyselykäyttöön.

  • Snowflake-agentti, tallennettu proseduuri tai UDF tiettyä työnkulkua varten.

Jos otat SQL:n käyttöön, salli vain luku, ellei organisaatiosi ole tarkistanut ja hyväksynyt kirjoitusoikeutta.

Avaa Snowflake-laskentataulukko

  1. Kirjaudu Snowflake-sovellukseen.

  2. Vaihda rooliin, joka voi luoda MCP-palvelimen ja myöntää käyttöoikeuksia.

  3. Siirry kohtaan Työtilat.

    Snowflake navigation menu showing Workspaces selected during MCP server setup.
  4. Luo työtila, jossa on SQL-tiedosto.

    Snowflake workspace with a SQL file open for MCP server setup.
  5. Aseta työtilan kontekstiksi tietokanta ja skeema, joihin MCP-palvelin luodaan.

    Snowflake worksheet context picker showing the role, warehouse, database, and schema.

Luo Snowflake-MCP-palvelin

Kirjaudu Snowflakeen roolilla, joka voi luoda MCP-palvelimen ja myöntää käyttöoikeuksia. Avaa laskentataulukko siinä tietokannassa ja skeemassa, joihin MCP-palvelin on tarkoitus luoda.

Suorita seuraavan esimerkin kaltainen lause. Korvaa nimet omilla Snowflake-tietokannan, skeeman, palveluiden, näkymien, varaston ja palvelimen nimilläsi.

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: "revenue-analyst"
type: "CORTEX_ANALYST_MESSAGE"
identifier: "CHATGPT_APPS.TOOLS.REVENUE_SEMANTIC_VIEW"
title: "Revenue Analyst"
description: "Answer revenue questions using the approved semantic view."
- 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"
$$;

Snowflake result confirming that the MCP server was successfully created.

Tämän lauseen työkalujen nimet ja Snowflake-objektit ovat esimerkkejä:

  • support-search tuo määritetyn Cortex Search -palvelun saataville.

  • revenue-analyst tuo määritetyn semanttisen näkymän saataville. Lisää tarvittaessa työkaluja muita näkymiä varten.

  • sql-readonly tuo vain luku -SQL:n saataville määritetyllä varastolla.

Käytä vakaita ja kuvaavia työkalunimiä, jotta ChatGPT voi valita oikean työkalun. MCP-palvelimen luominen ei myönnä automaattisesti käyttöoikeuksia taustalla oleviin Snowflake-objekteihin.

Lisää määritysvaihtoehtoja on ohjeessa Snowflaken hallinnoiman MCP-palvelimen luominen.

Myönnä oikeat Snowflake-oikeudet

Valitse Snowflake-rooli, jolla käyttäjät valtuuttavat yhteyden, ja myönnä roolille käyttöoikeus seuraaviin:

  1. Tietokanta ja skeema.

  2. MCP-palvelin.

  3. Kaikki työkalujen käyttämät taustalla olevat objektit, kuten hakupalvelu, semanttinen näkymä tai varasto.

Esimerkki:

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 SELECT ON SEMANTIC VIEW CHATGPT_APPS.TOOLS.REVENUE_SEMANTIC_VIEW TO ROLE CHATGPT_CONNECTOR_ROLE;
GRANT USAGE ON WAREHOUSE CHATGPT_WH TO ROLE CHATGPT_CONNECTOR_ROLE;

Jos MCP-palvelin tuo saataville UDF:n, tallennetun proseduurin tai Cortex-agentin, myönnä myös kyseisen objektin edellyttämät oikeudet.

Varmista, että Snowflake on valmis

Suorita:

SHOW MCP SERVERS IN SCHEMA CHATGPT_APPS.TOOLS;

Suorita sitten:

DESCRIBE MCP SERVER CHATGPT_APPS.TOOLS.CHATGPT_SNOWFLAKE_MCP;

Varmista seuraavat asiat:

  • Palvelin on odotetussa tietokannassa ja skeemassa.

  • Työkaluluettelo vastaa suunnitelmaasi.

  • Kunkin työkalun identifier viittaa oikeaan Snowflake-objektiin.

  • Yhteyteen käytettävällä roolilla on MCP-palvelimen USAGE-oikeus.

  • Yhteyteen käytettävällä roolilla on tarvittavat oikeudet kuhunkin taustalla olevaan objektiin.

Anna Snowflake-palvelimen tiedot ChatGPT:ssä

  1. Vaihda ChatGPT:ssä tilille tai työtilaan, jossa sovelluksen halutaan olevan käytettävissä.

  2. Avaa Asetukset. Jos määrität koko työtilan, avaa järjestelmänvalvojana Työtilan asetukset.

  3. Siirry kohtaan Lisäosat.

  4. Hae nimellä Snowflake.

  5. Ota Snowflake – virallinen malli käyttöön.

  6. Avaa Snowflake – virallinen malli, anna yhteydelle selkeä nimi ja valitse Yhdistä.

  7. Anna hallinnoidun MCP-palvelimen täydellinen URL-osoite:

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

Esimerkki:

https://myorg-myaccount.azure.snowflakecomputing.com/api/v2/databases/CHATGPT_APPS/schemas/TOOLS/mcp-servers/CHATGPT_SNOWFLAKE_MCP

ChatGPT Snowflake Template connection form with name, managed MCP server URL, and OAuth settings.

Jos määritysnäyttö näyttää Snowflake-määrityksen erillisinä kenttinä, käytä samoja arvoja kuin URL-osoitteessa:

Snowflake-isännän etuliite

Käytä Snowflake-tilisi URL-osoitteesta kaikkea ennen osaa .snowflakecomputing.com, myös mahdollista alue- tai pilvipalveluliitettä.

Jos tilin URL-osoite alkaa esimerkiksi näin:

https://myorg-myaccount.azure.snowflakecomputing.com

Isännän etuliite on:

myorg-myaccount.azure

Tietokanta

Anna MCP-palvelimen sisältävä tietokanta, esimerkiksi:

CHATGPT_APPS

Skeema

Anna MCP-palvelimen sisältävä skeema, esimerkiksi:

TOOLS

MCP-palvelimen nimi

Anna Snowflaken MCP-palvelinobjektin nimi, esimerkiksi:

CHATGPT_SNOWFLAKE_MCP

Määritä OAuth-asiakasohjelma

Yhteyttä varten tarvitset Snowflakesta asiakastunnuksen ja asiakassalaisuuden.

Kun käytät arvoa session:role:all, Snowflake käyttää kunkin käyttäjän oletusroolia. Oletusroolin on oltava OAuth-integraation sallittujen roolien luettelossa, jos sellainen on määritetty, eikä rooli saa olla estetty. Toista hyväksyttyä roolia ei valita automaattisesti.

  1. Avaa ChatGPT:n määritysikkunassa OAuth-lisäasetukset, valitse Käyttäjän määrittämä OAuth-asiakasohjelma ja kopioi ChatGPT:ssä näkyvä Takaisinkutsu-URL.

  2. Luo mukautettu OAuth-suojausintegraatio, jonka OAUTH_CLIENT_TYPE = 'CONFIDENTIAL' ja jonka OAUTH_REDIRECT_URI-arvoksi asetetaan täsmälleen kyseinen takaisinkutsu-URL.

  3. Suorita Snowflakessa seuraava lause käyttäen integraation nimeä suuraakkosin:

    SELECT SYSTEM$SHOW_OAUTH_CLIENT_SECRETS('YOUR_INTEGRATION_NAME');

  4. Liitä JSON-tuloksen oauth_client_id ChatGPT:n OAuth-asiakastunnus-kenttään ja oauth_client_secret OAuth-asiakassalaisuus-kenttään.

  5. Aseta Token-endpointin todennusmenetelmä -arvoksi client_secret_basic.

Yhdistä Snowflake ja hallitse sitä

  1. Valitse samassa ChatGPT:n määritysikkunassa Jatka, kirjaudu Snowflakeen ja valtuuta yhteys.

  2. Jos määrität työtilaa, määritä lisäosan asennuskäytäntö sekä rooli- tai ryhmäkohtaiset käyttöoikeudet jäsenille, joiden tulee käyttää sitä. Varmista, että sekä Snowflake että Snowflake – virallinen malli ovat käytössä.

  3. Työtilan järjestelmänvalvojat vastaavat Käyttäjien käyttöoikeudet -asetuksen määrittämisestä rooleille, joiden tulee käyttää Snowflakea.

  4. Työtilan järjestelmänvalvojat vastaavat saataville tuotujen työkalujen Toimintojen hallinta -asetusten tarkistamisesta.

  5. Työtilan järjestelmänvalvojat vastaavat Sovelluksen käyttöoikeudet -asetusten tarkistamisesta ja päättävät, milloin ChatGPT pyytää jäseniltä luvan ennen sovelluksen käyttöä.

Nämä sovelluksen käyttöoikeudet koskevat ChatGPT-keskusteluja. Työtilan agentit määrittävät käytettävissä olevat sovellustoiminnot ja loppukäyttäjiltä pyydettävät hyväksynnät agentin luojan asettamilla agenttikohtaisilla hallinta-asetuksilla. Lisätietoja agentin toiminnasta: ChatGPT-työtilan agentit Enterprise- ja Business-tilauksissa.

Testaa sovellus

  1. Avaa keskustelu, valitse Snowflake ja testaa yhteys.

  2. Varmista, että ChatGPT löytää määrittämäsi työkalut.

  3. Suorita ensin vähäriskinen lukutoiminto, kuten haku tai vain luku -kysely hyväksyttyihin tietoihin.

  4. Varmista, että Snowflake-oikeudet estävät hyväksytyn roolin ja hyväksyttyjen objektien ulkopuolisen käytön.

  5. Jos määrität työtilaa, testaa yhteyttä sallituilla jäsenillä, jotka eivät ole järjestelmänvalvojia ja joilla on eri Snowflake-oletusrooleja. Järjestelmänvalvojan onnistunut yhteys ei takaa, että kaikki jäsenet voivat muodostaa yhteyden.

Työtilan järjestelmänvalvojille ei riitä, että vain Snowflake otetaan käyttöön. Jos Snowflake – virallinen malli ei ole käytössä ja yhdistetty, lisäosa voi näkyä jäsenille poistettuna käytöstä.

MCP-palvelimen URL-osoite ja OAuthin toiminta

ChatGPT muodostaa yhteyden Snowflaken hallinnoiman MCP-palvelimen täydelliseen URL-osoitteeseen:

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

ChatGPT käyttää kyseisen URL-osoitteen Snowflake-isännän etuliitettä seuraavien Snowflake OAuth -endpointien selvittämiseen:

  • Valtuutus: https://<snowflake_host_prefix>.snowflakecomputing.com/oauth/authorize

  • Token: https://<snowflake_host_prefix>.snowflakecomputing.com/oauth/token-request

Älä liitä Snowsight-URL-osoitetta, pelkkää Snowflake-tilin juuri-URL-osoitetta tai URL-osoitetta, jossa on ylimääräisiä polkuosia. MCP-URL-osoitteen on sisällettävä /api/v2/databases/{database}/schemas/{schema}/mcp-servers/{server}, ja sen on vastattava Snowflake-objektejasi täsmälleen.

Vianmääritys

Snowflake on käytössä järjestelmänvalvojalla mutta ei jäsenellä

  • Varmista, että sekä Snowflake että Snowflake – virallinen malli ovat käytössä kohdassa Työtilan asetukset > Lisäosat.

  • Avaa Snowflake – virallinen malli ja suorita sen Yhdistä-prosessi loppuun. Pelkkä mallin käyttöönotto ilman yhdistämistä ei riitä.

  • Avaa Snowflake ja varmista, että malli näkyy sen edellyttämänä sovelluksena.

  • Varmista, että lisäosan asennuskäytäntö sallii ongelmasta kärsivän jäsenen roolin tai ryhmän.

MCP-palvelinta ei löydy

  • Tarkista MCP-palvelimen täydellinen URL-osoite tai mallin neljä kenttää, jos määritysnäyttö pyytää niitä.

  • Varmista, että MCP-palvelin on juuri kyseisessä tietokannassa ja skeemassa.

ChatGPT:ssä ei näy työkaluja

  • Varmista, että MCP-palvelimen määritys sisältää työkaluja.

  • Varmista, että roolilla on MCP-palvelimen USAGE-oikeus.

Työkalu näkyy, mutta sen käyttö epäonnistuu

  • Varmista, että roolilla on tarvittava oikeus taustalla olevaan Snowflake-objektiin, kuten hakupalveluun, semanttiseen näkymään, varastoon, proseduuriin tai UDF:ään.

SQL-työkalu ei toimi

  • Varmista, että varaston nimi on oikein ja että varasto on käynnissä.

  • Varmista, että roolilla on varaston USAGE-oikeus.

  • Jos tarkoitit sallia vain luku -käytön, varmista, että read_only: true on asetettu.

Pyydetty ALL-rooli on estetty nimenomaisesti

Pyydä Snowflake-järjestelmänvalvojaa vertaamaan oletusrooliasi OAuth-integraation sallittuihin ja estettyihin rooleihin. Toista sallittua roolia ei valita automaattisesti. Vaihda tarvittaessa oletusrooliksi hyväksytty rooli ja muodosta yhteys uudelleen. Oletusroolin vaihtaminen vaikuttaa myös ChatGPT:n ulkopuolisiin Snowflake-istuntoihisi.

Valtuutus epäonnistuu

  • Varmista, että käyttäjä voi kirjautua Snowflakeen.

  • Kun käytät arvoa session:role:all, varmista, että OAuth-integraatio sallii käyttäjän oletusroolin.

  • Varmista, että määritys käyttää Snowflaken hallinnoiman MCP:n OAuth-prosessia.

  • Varmista, että asiakastunnus ja asiakassalaisuus vastaavat Snowflake OAuth -integraatiota ja että sen uudelleenohjauksen URI vastaa ChatGPT:ssä näkyvää Takaisinkutsu-URL-osoitetta.

Snowflaken verkkokäytäntö tai sallittujen IP-osoitteiden luettelo estää yhdistimen

  • Pyydä Snowflake-järjestelmänvalvojaa päivittämään Snowflaken verkkokäytäntö tai käyttösäännöt.

  • Salli saapuvat yhteydet nykyisiltä ChatGPT-yhdistimen lähtevän liikenteen IP-alueilta.

  • Määritä sallittujen osoitteiden luettelo Snowflakessa. Se on erillinen ChatGPT-työtilan sallittujen IP-osoitteiden luettelosta.

  • Automatisoi päivitykset julkaistusta JSON-tiedostosta mahdollisuuksien mukaan, sillä alueet voivat muuttua.

Yhteysongelma isäntänimessä

Käytä oikeaa Snowflake-isännän etuliitettä. Alaviivoja sisältävät Snowflake-isäntänimet voivat aiheuttaa ongelmia. Käytä mieluummin yhdysmerkkejä.

Viitteet

Oliko tästä artikkelista apua?