OpenAI
See leht on masintõlgitud. Vaadake algset ingliskeelset artiklit.

Snowflake’i rakenduse malli seadistamine ChatGPT-s

Vaadake, kuidas ChatGPT tööjaama administraatorid ning ChatGPT Plus või ChatGPT Pro kasutajad saavad ühendada ChatGPT Snowflake’i hallatava MCP-serveriga.

Värskendatud: 7 days ago

See juhend on mõeldud ChatGPT tööjaama administraatorile või ChatGPT Plus või Pro kasutajale, kes soovib ühendada ChatGPT Snowflake’iga Snowflake’i hallatava MCP-serveri kaudu.

Suurem osa seadistamisest toimub Snowflake’is. Kui Snowflake on valmis, seadista ChatGPT-s Snowflake’i malli ühendus ja luba seejärel seda malli kasutav Snowflake’i plugin.

  • Sisseehitatud OAutent: kui see on sinu Snowflake’i kontol ja ChatGPT-s saadaval, kasuta Snowflake’i administraatori lubatud ChatGPT partnerrakendust. Logi Snowflake’i sisse, kasutades oma organisatsiooni SSO-d, kui see on seadistatud. ChatGPT-s ei ole vaja sisestada kliendi ID-d ega kliendisaladust. Järgi allpool jaotise „Sisseehitatud OAutent“ juhiseid.

  • Kohandatud OAutendi klient: kasuta seda varianti, kui sinu organisatsioon nõuab oma OAutendi klienti või sisseehitatud OAutent pole saadaval. Järgi allpool jaotise „Kohandatud OAutendi klient“ juhiseid.

Mõlemad OAutendi variandid nõuavad allpool kirjeldatud ühist MCP-serveri seadistust, aluseks olevate objektide õigusi ja võrgujuurdepääsu. Enne OAutendi seadistamist tee läbi ühine seadistus kuni jaotiseni „Sisesta Snowflake’i serveri andmed ChatGPT-sse“ (kaasa arvatud).

Mida sa seadistad

Lood Snowflake’i hallatava MCP-serveri, mis toimib ChatGPT konnektori lõpp-punktina. MCP-server määrab:

  • Milliseid toiminguid ChatGPT saab kasutada.

  • Millistele Snowflake’i andmetele või objektidele need tööriistad juurde pääsevad.

  • Millise Snowflake’i rolliga iga kasutaja ühenduse autoriseerib.

  • Milline Snowflake’i andmebaas, skeem ja MCP-serveri nimi lõpp-punkti määratlevad.

Seejärel seadistad ChatGPT-s malli Snowflake - ametlik mall, kasutades hallatava MCP-serveri täielikku URL-i. Malli seadistuskuval võidakse URL kuvada nelja eraldi väljana:

  • Snowflake’i hosti prefiks.

  • Andmebaas.

  • Skeem.

  • MCP-serveri nimi.

ChatGPT saab leida ja kasutada ainult neid tööriistu, mille MCP-server teeb kättesaadavaks ja mida lubab Snowflake’i roll, millega kasutaja ühenduse autoriseerib.

Enne alustamist

Sul on vaja järgmist:

  • ChatGPT tööjaama administraatori või omaniku õigused või juurdepääs ChatGPT Plus või Pro paketile.

  • Snowflake’i juurdepääs, mis võimaldab luua MCP-serveri objekte ja anda õigusi.

  • Snowflake’i andmebaas ja skeem, kus MCP-server hakkab asuma.

  • Otsus selle kohta, mida ChatGPT-l lubada kasutada: näiteks Cortex Searchi, Cortex Analysti, kirjutuskaitstud SQL-i või kindlat protseduuri või funktsiooni.

  • Minimaalsete vajalike õigustega Snowflake’i roll, mida kasutajad rakenduse autoriseerimisel kasutavad.

  • Snowflake’i konto hosti prefiks koos võimaliku piirkonna- või pilveteenuse sufiksiga.

Kui sinu Snowflake’i konto piirab juurdepääsu võrgupoliitika või lubatud IP-aadresside loendi abil, palu Snowflake’i administraatoril lubada sissetulevad ühendused praegustest ChatGPT konnektori väljuva liikluse IP-vahemikest. Loend muutub ja seda tuleb ajakohasena hoida.

Vajalikud väärtused

  • Snowflake’i hosti prefiks: kõik, mis on Snowflake’i konto URL-is enne osa .snowflakecomputing.com.

  • Andmebaas: MCP-serverit sisaldav andmebaas.

  • Skeem: MCP-serverit sisaldav skeem.

  • MCP-serveri nimi: Snowflake’i MCP-serveri objekti nimi.

  • Hallatava MCP-serveri täielik URL, kui ChatGPT seadistuskuva küsib URL-i.

  • Snowflake’i roll: roll, mida kasutajad peaksid rakenduse autoriseerimisel kasutama.

  • Tööriistade loend: Snowflake’i objektid ja toimingud, mida soovid ChatGPT-l kasutada lasta.

Otsusta, mida ChatGPT teha saab

Vali ainult need võimalused, mille soovid kättesaadavaks teha. Levinud valikud on järgmised:

  • Otsing Cortex Searchiga, et leida vastuseid indekseeritud Snowflake’i andmetest või sisust.

  • Küsimustele vastamine Cortex Analystiga heakskiidetud semantilise vaate kaudu.

  • Kirjutuskaitstud SQL päringute tegemiseks kontrollitud juurdepääsuga.

  • Snowflake’i agent, salvestatud protseduur või UDF kindla töövoo jaoks.

Kui lubad SQL-i, jäta see kirjutuskaitstuks, välja arvatud juhul, kui sinu organisatsioon on kirjutusõiguse läbi vaadanud ja heaks kiitnud.

Ava Snowflake’i tööleht

  1. Logi sisse Snowflake’i rakendusse.

  2. Vali roll, millel on õigus luua MCP-server ja anda juurdepääsu.

  3. Ava Tööruumid.

    Snowflake navigation menu showing Workspaces selected during MCP server setup.
  4. Loo SQL-failiga tööruum.

    Snowflake workspace with a SQL file open for MCP server setup.
  5. Määra tööruumi kontekstiks andmebaas ja skeem, kuhu MCP-server luuakse.

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

Loo Snowflake’i MCP-server

Logi Snowflake’i sisse rolliga, millel on õigus luua MCP-server ja anda juurdepääsu. Ava tööleht andmebaasis ja skeemis, kuhu MCP-server tuleb luua.

Käivita järgmise näitega sarnane lause. Asenda nimed oma Snowflake’i andmebaasi, skeemi, teenuste, vaadete, andmelao ja serveri nimedega.

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.

Selles lauses olevad tööriistade nimed ja Snowflake’i objektid on näited:

  • support-search teeb määratud Cortex Searchi teenuse kättesaadavaks.

  • revenue-analyst teeb määratud semantilise vaate kättesaadavaks. Lisa vajaduse korral tööriistu teiste vaadete jaoks.

  • sql-readonly võimaldab kasutada määratud andmelaoga kirjutuskaitstud SQL-i.

Kasuta püsivaid ja kirjeldavaid tööriistanimesid, et ChatGPT saaks valida õige tööriista. MCP-serveri loomine ei anna automaatselt juurdepääsu aluseks olevatele Snowflake’i objektidele.

Täiendavaid spetsifikatsioonivalikuid leiad juhendist Snowflake’i hallatava MCP-serveri loomine.

Anna Snowflake’is vajalikud õigused

Vali Snowflake’i roll, millega kasutajad ühenduse autoriseerivad, ja anna sellele juurdepääs järgmisele:

  1. Andmebaas ja skeem.

  2. MCP-server.

  3. Kõik tööriistade kasutatavad alusobjektid, näiteks otsinguteenus, semantiline vaade või andmeladu.

Näide:

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;

Kui MCP-server teeb kättesaadavaks UDF-i, salvestatud protseduuri või Cortexi agendi, anna vajalikud õigused ka selle objekti suhtes.

Kontrolli, kas Snowflake on valmis

Käivita:

SHOW MCP SERVERS IN SCHEMA CHATGPT_APPS.TOOLS;

Seejärel käivita:

DESCRIBE MCP SERVER CHATGPT_APPS.TOOLS.CHATGPT_SNOWFLAKE_MCP;

Kontrolli järgmist:

  • Server asub eeldatud andmebaasis ja skeemis.

  • Tööriistade loend vastab sinu soovile.

  • Iga tööriista identifier osutab õigele Snowflake’i objektile.

  • Ühenduse loomiseks kasutataval rollil on MCP-serveri suhtes õigus USAGE.

  • Ühenduse loomiseks kasutataval rollil on vajalikud õigused iga aluseks oleva objekti suhtes.

Sisesta Snowflake’i serveri andmed ChatGPT-sse

Tööjaama seadistamiseks ava admin.openai.com, vali soovitud ChatGPT tööjaam ja ava jaotis „Pluginad“. Tööjaamas navigeerimise ja pärandrakendustele juurdepääsu kohta vaata artiklit Pluginate ja rakenduste haldus, turvalisus ja nõuetele vastavus.

  1. Vali ChatGPT-s konto või tööjaam, kus rakendus peaks saadaval olema.

  2. Isiklikuks seadistamiseks ava Seaded > Pluginad. Tööjaama administraatorina ava tööjaama seadistamiseks Halduskonsool > Pluginad.

  3. Otsi nime Snowflake.

  4. Luba Snowflake - ametlik mall.

  5. Ava Snowflake - ametlik mall, sisesta ühendusele selge nimi ja vali Ühenda.

  6. Sisesta hallatava MCP-serveri täielik URL:

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

Näide:

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.

Kui seadistuskuval on Snowflake’i konfiguratsioon eraldi väljadena, kasuta samu väärtusi mis URL-is:

Snowflake’i hosti prefiks

Kasuta kõike, mis on sinu Snowflake’i konto URL-is enne osa .snowflakecomputing.com, sealhulgas võimalikku piirkonna- või pilveteenuse sufiksit.

Näiteks kui konto URL algab järgmiselt:

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

Siis on hosti prefiks:

myorg-myaccount.azure

Andmebaas

Sisesta MCP-serverit sisaldav andmebaas, näiteks:

CHATGPT_APPS

Skeem

Sisesta MCP-serverit sisaldav skeem, näiteks:

TOOLS

MCP-serveri nimi

Sisesta Snowflake’i MCP-serveri objekti nimi, näiteks:

CHATGPT_SNOWFLAKE_MCP

Seadista OAutent

Vali OAutendi variant, mis on sinu kontol saadaval ja vastab sinu organisatsiooni nõuetele. Mõlemad variandid kasutavad ülal kirjeldatud ühist MCP-serveri seadistust ning allpool kirjeldatud ühenduse teste ja juurdepääsusätteid.

Mõlema OAutendi variandi puhul kasutab Snowflake iga kasutaja vaikerolli, kui määrad väärtuse session:role:all. Vaikeroll peab olema OAutendi integratsiooni lubatud rollide loendis, kui see on seadistatud, ega tohi olla blokeeritud. Teist heakskiidetud rolli ei valita automaatselt pelgalt selle olemasolu tõttu.

Sisseehitatud OAutent

Enne jätkamist järgi ülaltoodud ühiste jaotiste juhiseid, et luua MCP-server, anda õigused, kontrollida serverit ja sisestada selle andmed ChatGPT-sse. See on vajalik ka siis, kui tulid otse sellesse jaotisse.

Kasuta seda varianti ainult siis, kui ChatGPT partnerrakendus on sinu Snowflake’i kontol saadaval ja sisseehitatud OAutent on ChatGPT seadistusaknas saadaval.

  1. Palu Snowflake’i administraatoril lubada ChatGPT partnerintegratsioon samal Snowflake’i kontol, mis majutab MCP-serverit. Kasuta olemasolevat lubatud ChatGPT partnerintegratsiooni.

  2. Kasuta ChatGPT seadistusaknas sisseehitatud OAutenti. Sul pole vaja sisestada kliendi ID-d ega kliendisaladust ega registreerida tagasikutse URL-i.

  3. Jätka allpool jaotisega „Ühenda ja halda Snowflake’i“, et sisse logida, nõusolek anda ja juurdepääs seadistada. Seejärel järgi jaotise „Testi rakendust“ juhiseid, sealhulgas testi juurdepääsuõigusega liikmetega, kes pole administraatorid.

Ülal kirjeldatud vaikerolli, lubatud rollide loendi ja blokeeritud rollide toimimispõhimõtted kehtivad ka selle variandi puhul.

Kohandatud OAutendi klient

Enne jätkamist järgi ülaltoodud ühiste jaotiste juhiseid, et luua MCP-server, anda õigused, kontrollida serverit ja sisestada selle andmed ChatGPT-sse. See on vajalik ka siis, kui tulid otse sellesse jaotisse.

Kohandatud OAutendi kliendi jaoks vajad Snowflake’ist kliendi ID-d ja kliendisaladust. Ülal kirjeldatud vaikerolli, lubatud rollide loendi ja blokeeritud rollide toimimispõhimõtted kehtivad ka selle variandi puhul.

  1. Vali ChatGPT seadistusaknas OAutendi täpsemad seaded > Kasutaja määratud OAutendi klient ja kopeeri täpselt ChatGPT-s kuvatav Tagasikutse URL.

  2. Loo kohandatud OAutendi turbeintegratsioon, määrates OAUTH_CLIENT_TYPE = 'CONFIDENTIAL' ja parameetri OAUTH_REDIRECT_URI väärtuseks täpselt selle tagasikutse URL-i.

  3. Käivita Snowflake’is järgmine lause, kasutades integratsiooni nime suurtähtedega:

    SELECT SYSTEM$SHOW_OAUTH_CLIENT_SECRETS('YOUR_INTEGRATION_NAME');

  4. Kleebi JSON-tulemusest väärtus oauth_client_id ChatGPT väljale OAutendi kliendi ID ja väärtus oauth_client_secret väljale OAutendi kliendisaladus.

  5. Määra sätte Pääsutõendi lõpp-punkti autentimismeetod väärtuseks client_secret_basic.

Pärast kohandatud kliendi identimisteabe sisestamist jätka allpool jaotistega „Ühenda ja halda Snowflake’i“ ning „Testi rakendust“.

Ühenda ja halda Snowflake’i

  1. Mõlema OAutendi variandi puhul vali samas ChatGPT seadistusaknas Jätka, logi Snowflake’i sisse ja autoriseeri ühendus. Võid kasutada oma organisatsiooni SSO-d, kui see on seadistatud.

  2. Tööjaama seadistamisel määra plugina paigalduspoliitika ning juurdepääs rolli või rühma alusel liikmetele, kes peaksid seda kasutama. Kontrolli, kas nii Snowflake kui ka Snowflake - ametlik mall on lubatud.

  3. Tööjaama administraatorid vastutavad sätte Kasutajate juurdepääs seadistamise eest rollidele, mis peaksid Snowflake’i kasutama.

  4. Tööjaama administraatorid vastutavad kättesaadavaks tehtud tööriistade sätete ülevaatamise eest jaotises Toimingute haldus.

  5. Tööjaama administraatorid vastutavad sätete ülevaatamise eest jaotises Rakenduse õigused, et määrata, millal ChatGPT enne rakenduse kasutamist liikmetelt luba küsib.

Need rakenduse õigused kehtivad ChatGPT vestlustes. Tööjaama agendid kasutavad agendi looja määratud agendipõhiseid sätteid, et otsustada, millised rakenduse toimingud on saadaval ja millal lõppkasutajatelt nende heakskiitu küsitakse. Agentide toimimise kohta vaata artiklit ChatGPT tööjaama agendid Enterprise’i ja Businessi jaoks.

Testi rakendust

  1. Ava vestlus, vali Snowflake ja testi ühendust.

  2. Kontrolli, kas ChatGPT leiab sinu seadistatud tööriistad.

  3. Tee esmalt väikese riskiga lugemistoiming, näiteks otsing või kirjutuskaitstud päring heakskiidetud andmetes.

  4. Kontrolli, kas Snowflake’i õigused takistavad juurdepääsu väljaspool heakskiidetud rolli ja objekte.

  5. Tööjaama seadistamisel testi ühendust juurdepääsuõigusega liikmetega, kes pole administraatorid ja kellel on erinevad Snowflake’i vaikerollid. Administraatori edukas ühendus ei kinnita, et iga liige saab ühenduse luua.

Tööjaama administraatoritel ei piisa ainult Snowflake’i lubamisest. Kui Snowflake - ametlik mall pole lubatud ja ühendatud, võidakse pluginat liikmetele kuvada keelatuna.

MCP-serveri URL ja OAutendi toimimine

ChatGPT loob ühenduse Snowflake’i hallatava MCP-serveri täieliku URL-iga:

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

ChatGPT kasutab selle URL-i Snowflake’i hosti prefiksit järgmiste Snowflake’i OAutendi lõpp-punktide määramiseks:

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

  • Pääsutõend: https://<snowflake_host_prefix>.snowflakecomputing.com/oauth/token-request

Ära kleebi Snowsighti URL-i, ainult Snowflake’i konto juur-URL-i ega täiendavate teesegmentidega URL-i. MCP URL peab sisaldama teed /api/v2/databases/{database}/schemas/{schema}/mcp-servers/{server} ja vastama täpselt sinu Snowflake’i objektidele.

Tõrkeotsing

Snowflake on administraatorile lubatud, kuid liikmele keelatud

  • Kontrolli, kas nii Snowflake kui ka Snowflake - ametlik mall on jaotises Halduskonsool > Pluginad lubatud.

  • Ava Snowflake - ametlik mall ja tee läbi toimingu Ühenda kõik sammud. Malli lubamisest ilma ühendust loomata ei piisa.

  • Ava Snowflake ja kontrolli, kas mall kuvatakse selle nõutava rakendusena.

  • Kontrolli, kas plugina paigalduspoliitika lubab selle liikme rolli või rühma, kellel probleem esineb.

MCP-serverit ei leitud

  • Kontrolli uuesti MCP-serveri täielikku URL-i või malli nelja välja, kui seadistuskuva neid küsib.

  • Kontrolli, kas MCP-server on olemas just selles andmebaasis ja skeemis.

ChatGPT-s ei kuvata ühtegi tööriista

  • Kontrolli, kas MCP-serveri spetsifikatsioon sisaldab tööriistu.

  • Kontrolli, kas rollil on MCP-serveri suhtes õigus USAGE.

Tööriist on nähtav, kuid selle kasutamine ebaõnnestub

  • Kontrolli, kas rollil on vajalik õigus aluseks oleva Snowflake’i objekti suhtes, näiteks otsinguteenuse, semantilise vaate, andmelao, protseduuri või UDF-i suhtes.

SQL-tööriist ei tööta

  • Kontrolli, kas andmelao nimi on õige ja andmeladu töötab.

  • Kontrolli, kas rollil on andmelao suhtes õigus USAGE.

  • Kui soovisid ainult lugemisõigust, kontrolli, kas on määratud read_only: true.

Taotletud roll ALL on sõnaselgelt blokeeritud

Palu oma Snowflake’i administraatoril võrrelda sinu vaikerolli OAutendi integratsiooni lubatud ja blokeeritud rollidega. Teist lubatud rolli ei valita automaatselt pelgalt selle olemasolu tõttu. Kui see on asjakohane, määra vaikerolliks heakskiidetud roll ja loo ühendus uuesti. Vaikerolli muutmine mõjutab sinu Snowflake’i seansse ka väljaspool ChatGPT-d.

Autoriseerimine ebaõnnestub

  • Kontrolli, kas kasutaja saab Snowflake’i sisse logida.

  • Kui kasutad väärtust session:role:all, kontrolli, kas OAutendi integratsioon lubab kasutaja vaikerolli.

  • Kontrolli, kas seadistus kasutab Snowflake’i hallatava MCP OAutendi voogu.

  • Kui kasutad kohandatud OAutendi klienti, kontrolli, kas Kliendi ID ja Kliendisaladus vastavad Snowflake’i OAutendi integratsioonile ning kas selle ümbersuunamise URI vastab täpselt ChatGPT-s kuvatavale väljale Tagasikutse URL.

    Kui kasutad sisseehitatud OAutenti, palu Snowflake’i administraatoril kontrollida, kas ChatGPT partnerintegratsioon on MCP-serverit majutaval kontol saadaval ja lubatud.

Snowflake’i võrgupoliitika või lubatud IP-aadresside loend blokeerib konnektori

  • Palu Snowflake’i administraatoril uuendada Snowflake’i võrgupoliitikat või juurdepääsureegleid.

  • Luba sissetulevad ühendused praegustest ChatGPT konnektori väljuva liikluse IP-vahemikest.

  • Seadista see lubatud aadresside loend Snowflake’is. See on ChatGPT tööjaama lubatud IP-aadresside loendist eraldi.

  • Võimaluse korral automatiseeri uuendamine avaldatud JSON-i alusel, sest vahemikud võivad muutuda.

Hostinimega seotud ühendusprobleem

Kasuta õiget Snowflake’i hosti prefiksit. Alakriipsudega Snowflake’i hostinimed võivad põhjustada probleeme; eelista sidekriipse.

Kas sellest artiklist oli abi?