OpenAI
Для перекладу цієї сторінки виконано машинний переклад. Ви можете переглянути оригінальну статтю англійською.

Налаштування шаблону застосунку Snowflake у ChatGPT

Дізнайтеся, як адміністратори робочого простору можуть налаштувати шаблон застосунку Snowflake у ChatGPT за допомогою MCP-сервера, керованого Snowflake.

Оновлено: 8 days ago

Використовуйте цей посібник, якщо ви адміністратор робочого простору ChatGPT і налаштовуєте шаблон застосунку Snowflake для своєї організації. Шаблон — це не кінцевий застосунок, яким користуються учасники. Це процес налаштування, який створює чернетку застосунку для конкретного робочого простору після того, як ви надасте потрібну конфігурацію Snowflake.

Для Snowflake більша частина налаштування відбувається в Snowflake. Ви створюєте MCP-сервер, керований Snowflake, надаєте потрібній ролі доступ до MCP-сервера та базових об’єктів, а потім вводите URL керованого MCP-сервера або його складові поля в процесі налаштування шаблону ChatGPT. Після того як ChatGPT створить чернетку застосунку, ви можете опублікувати її та керувати нею, як іншими застосунками робочого простору.

Що ви налаштовуєте

Ви створюєте застосунок Snowflake у ChatGPT для конкретного робочого простору. Застосунок підключається до MCP-сервера, керованого Snowflake, який визначає:

  • Які дії може використовувати ChatGPT, що називаються інструментами.

  • До яких даних або об’єктів Snowflake ці інструменти можуть мати доступ.

  • З якою роллю Snowflake користувачі мають авторизуватися.

  • Які база даних, схема та ім’я MCP-сервера Snowflake ідентифікують кінцеву точку конектора.

ChatGPT може виявляти й використовувати лише інструменти, надані MCP-сервером і дозволені роллю Snowflake, з якою авторизується користувач.

Перш ніж почати

Вам потрібно:

  • Доступ адміністратора або власника робочого простору ChatGPT.

  • Доступ до Snowflake, який дає змогу створювати об’єкти MCP-сервера та надавати дозволи.

  • База даних і схема Snowflake, де буде розміщено MCP-сервер.

  • Рішення про те, що ChatGPT має бути дозволено робити, наприклад Cortex Search, Cortex Analyst, SQL лише для читання або певна процедура чи функція.

  • Роль Snowflake із мінімально необхідними привілеями, яку користувачі використовуватимуть під час авторизації застосунку.

  • Префікс хоста облікового запису Snowflake, включно з будь-яким суфіксом регіону або хмари.

Значення, які потрібно підготувати

  • Префікс хоста Snowflake: усе перед .snowflakecomputing.com в URL облікового запису Snowflake.

  • База даних: база даних, що містить MCP-сервер.

  • Схема: схема, що містить MCP-сервер.

  • Ім’я MCP-сервера: ім’я об’єкта MCP-сервера Snowflake.

  • Повний URL керованого MCP-сервера, якщо екран налаштування ChatGPT запитує URL.

  • Роль Snowflake: роль, яку користувачі мають використовувати під час авторизації застосунку.

  • Список інструментів: об’єкти й дії Snowflake, які має використовувати ChatGPT.

Визначте, що може робити ChatGPT

Виберіть лише ті можливості, які хочете відкрити. Поширені варіанти:

  • Пошук за допомогою Cortex Search, щоб знаходити відповіді в індексованих даних або вмісті Snowflake.

  • Запитання й відповіді з Cortex Analyst через затверджене семантичне подання.

  • SQL лише для читання для контрольованого доступу до запитів.

  • Агент Snowflake, збережена процедура або UDF для конкретних робочих процесів.

Якщо ви ввімкнете SQL, залиште його лише для читання, якщо ваша організація не переглянула й не схвалила доступ на запис.

Створення MCP-сервера Snowflake

У Snowflake увійдіть із роллю, яка може створювати MCP-сервер і надавати доступ. Відкрийте робочий аркуш у базі даних і схемі, де має бути створено MCP-сервер.

Створіть MCP-сервер, у якому перелічено лише інструменти, що має використовувати ChatGPT. Замініть імена об’єктів на власні назви бази даних, схеми, сервісів, подань, сховища та сервера Snowflake.

Приклад:

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

Імена інструментів мають бути стабільними й описовими, щоб ChatGPT міг вибрати правильний інструмент. Створення MCP-сервера не надає автоматично доступ до базових об’єктів Snowflake.

Надайте потрібні дозволи Snowflake

Виберіть роль Snowflake, з якою користувачі авторизуватимуться, а потім надайте цій ролі доступ до бази даних, схеми, MCP-сервера та кожного базового об’єкта, що використовується інструментами.

Приклад:

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;

Якщо MCP-сервер надає семантичне подання, UDF, збережену процедуру або Cortex Agent, також надайте потрібні дозволи для цих об’єктів.

Перевірте, що Snowflake готовий

Виконайте:

SHOW MCP SERVERS IN SCHEMA CHATGPT_APPS.TOOLS;

Потім виконайте:

DESCRIBE MCP SERVER CHATGPT_APPS.TOOLS.CHATGPT_SNOWFLAKE_MCP;

Підтвердьте:

  • Сервер існує в очікуваних базі даних і схемі.

  • Список інструментів відповідає вашим намірам.

  • Кожен ідентифікатор інструмента вказує на правильний об’єкт Snowflake.

  • Роль підключення має USAGE на MCP-сервері.

  • Роль підключення має потрібні дозволи на кожний базовий об’єкт.

Початок налаштування шаблону в ChatGPT

  1. У ChatGPT перейдіть до робочого простору, де застосунок має бути доступний.

  2. Відкрийте Налаштування робочого простору > Застосунки.

  3. Виберіть Каталог.

  4. Знайдіть Snowflake.

  5. Виберіть шаблон застосунку Snowflake і почніть налаштування.

  6. Введіть зрозумілі назву й опис застосунку, наприклад Snowflake або Snowflake — Аналітика.

  7. Введіть відомості про керований MCP-сервер, які запитує процес налаштування.

Якщо екран налаштування запитує повний URL керованого MCP-сервера, використовуйте такий формат:

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

Якщо екран налаштування запитує окремі поля, використовуйте ті самі значення з цього URL:

  • Префікс хоста Snowflake.

  • База даних.

  • Схема.

  • Ім’я MCP-сервера.

Створення та публікація чернетки застосунку

  1. Збережіть налаштування шаблону Snowflake у ChatGPT.

  2. Створіть чернетку застосунку.

  3. Перегляньте відомості чернетки застосунку, налаштування автентифікації та доступні дії.

  4. Опублікуйте чернетку застосунку, коли вона буде готова.

  5. Підтвердьте, що застосунок з’явився в Налаштування робочого простору > Застосунки > Увімкнено.

  6. Налаштуйте Доступ користувачів для ролей, які мають його використовувати.

  7. Перегляньте Керування діями для відкритих інструментів.

  8. Перегляньте Дозволи застосунку, щоб вибрати, коли ChatGPT запитує учасників перед використанням застосунку.

Ці дозволи застосунку застосовуються до розмов ChatGPT. Агенти робочого простору використовують елементи керування для кожного агента, задані його розробником, щоб визначати, які дії застосунку доступні та коли кінцевих користувачів просять їх схвалити. Про поведінку агентів див.: Агенти робочого простору ChatGPT для Enterprise і Business.

Тестування застосунку

  1. Запустіть процес підключення з ChatGPT як дозволений тестовий користувач.

  2. Увійдіть у Snowflake і виберіть потрібну роль, якщо з’явиться запит.

  3. Підтвердьте, що ChatGPT виявляє очікувані інструменти з MCP-сервера.

  4. Спочатку виконайте дію читання з низьким ризиком, наприклад пошук або запит лише для читання до затверджених даних.

  5. Підтвердьте, що дозволи Snowflake запобігають доступу поза межами затверджених ролі й об’єктів.

URL MCP-сервера та поведінка OAuth

ChatGPT підключається до повного URL MCP-сервера, керованого Snowflake. ChatGPT використовує префікс хоста Snowflake із цього URL, щоб визначати кінцеві точки Snowflake OAuth.

Не вставляйте URL Snowsight, кореневий URL облікового запису Snowflake сам по собі або будь-який URL із додатковими сегментами шляху. URL MCP має містити базу даних, схему та шлях MCP-сервера й точно відповідати вашим об’єктам Snowflake.

Усунення несправностей

  • MCP-сервер не знайдено: повторно перевірте повний URL MCP-сервера або окремі поля префікса хоста, бази даних, схеми та сервера.

  • У ChatGPT не з’являються інструменти: підтвердьте, що специфікація MCP-сервера містить інструменти, а роль має USAGE на MCP-сервері.

  • Інструмент з’являється, але не працює під час використання: підтвердьте, що роль має потрібний дозвіл на базовий об’єкт Snowflake.

  • Інструмент SQL не працює: підтвердьте, що ім’я сховища правильне, сховище доступне, роль має на нього USAGE, а read_only має значення true, якщо ви планували доступ лише для читання.

  • Авторизація не вдається: підтвердьте, що користувач може ввійти в Snowflake і використовувати потрібну роль.

  • Проблема з підключенням до імені хоста: використовуйте правильний префікс хоста Snowflake. Імена хостів Snowflake із підкресленнями можуть спричиняти проблеми; надавайте перевагу дефісам.

Чи була ця стаття корисною?