OpenAI
هذه الصفحة مترجمة باستخدام الترجمة الآلية. تفضل بالاطّلاع على المقال الأصلي بالإنجليزية.

إعداد قالب تطبيق Snowflake في ChatGPT

تعرّف على كيفية تمكين مسؤولي مساحة العمل المشتركة من تكوين قالب تطبيق Snowflake في ChatGPT باستخدام خادم MCP مُدار من Snowflake.

تم التحديث: 27 days ago

استخدم هذا الدليل إذا كنت مسؤول مساحة عمل مشتركة في ChatGPT وتُعدّ قالب تطبيق Snowflake لمؤسستك. القالب ليس التطبيق النهائي الذي يستخدمه الأعضاء. إنه مسار إعداد ينشئ تطبيقًا مسودة خاصًا بمساحة العمل المشتركة بعد أن تقدّم تكوين Snowflake المطلوب.

بالنسبة إلى Snowflake، تتم معظم خطوات الإعداد داخل Snowflake. تنشئ خادم MCP مُدارًا من Snowflake، وتمنح الدور المناسب حق الوصول إلى خادم MCP والكائنات الأساسية التابعة له، ثم تُدخل عنوان URL لخادم MCP المُدار أو حقول مكوّناته في مسار إعداد القالب في ChatGPT. بعد أن ينشئ ChatGPT التطبيق المسودة، يمكنك نشره وإدارته مثل تطبيقات مساحة العمل المشتركة الأخرى.

ما الذي تُعدّه

أنت تنشئ تطبيق Snowflake خاصًا بمساحة العمل المشتركة في ChatGPT. يتصل التطبيق بخادم MCP مُدار من Snowflake يحدد ما يلي:

  • الإجراءات التي يمكن أن يستخدمها ChatGPT، وتُسمى الأدوات.

  • بيانات أو كائنات Snowflake التي يمكن لتلك الأدوات الوصول إليها.

  • دور Snowflake الذي ينبغي للمستخدمين التفويض باستخدامه.

  • قاعدة بيانات Snowflake ومخططه واسم خادم MCP التي تحدد نقطة نهاية الموصل.

لا يمكن لـ ChatGPT اكتشاف واستخدام إلا الأدوات التي يتيحها خادم MCP والتي يسمح بها دور Snowflake الذي يفوّض المستخدم باستخدامه.

قبل أن تبدأ

تحتاج إلى:

  • وصول مسؤول أو مالك مساحة عمل مشتركة في ChatGPT.

  • وصول إلى Snowflake يمكنه إنشاء كائنات خادم MCP ومنح الأذونات.

  • قاعدة بيانات Snowflake والمخطط اللذان سيُستضاف فيهما خادم MCP.

  • قرار بشأن ما ينبغي السماح لـ ChatGPT بفعله، مثل Cortex Search أو Cortex Analyst أو SQL للقراءة فقط أو إجراء أو دالة محددة.

  • دور Snowflake بأقل امتيازات سيستخدمه المستخدمون عند تفويض التطبيق.

  • بادئة مضيف حساب Snowflake، بما في ذلك أي لاحقة منطقة أو سحابة.

القيم المطلوب إعدادها

  • بادئة مضيف Snowflake: كل ما يسبق .snowflakecomputing.com في عنوان URL لحساب Snowflake.

  • قاعدة البيانات: قاعدة البيانات التي تحتوي على خادم MCP.

  • المخطط: المخطط الذي يحتوي على خادم MCP.

  • اسم خادم MCP: اسم كائن خادم Snowflake MCP.

  • عنوان URL الكامل لخادم MCP المُدار، إذا طلبت شاشة إعداد ChatGPT عنوان URL.

  • دور Snowflake: الدور الذي ينبغي للمستخدمين استخدامه عند تفويض التطبيق.

  • قائمة الأدوات: كائنات Snowflake والإجراءات التي تريد من ChatGPT استخدامها.

حدد ما يمكن لـ ChatGPT فعله

اختر فقط القدرات التي تريد إتاحتها. تشمل الخيارات الشائعة ما يلي:

  • البحث باستخدام Cortex Search للعثور على إجابات في بيانات أو محتوى Snowflake المفهرس.

  • الأسئلة والأجوبة باستخدام Cortex Analyst من خلال عرض دلالي معتمد.

  • SQL للقراءة فقط من أجل وصول مضبوط إلى الاستعلامات.

  • وكيل Snowflake أو إجراء مخزن أو UDF لمهام سير عمل محددة.

إذا فعّلت SQL، فأبقِه للقراءة فقط ما لم تكن مؤسستك قد راجعت الوصول للكتابة ووافقت عليه.

إنشاء خادم Snowflake MCP

في 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، فامنح الأذونات المطلوبة لتلك الكائنات أيضًا.

التحقق من جاهزية 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 - Analytics.

  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 للمؤسسات والأعمال.

اختبار التطبيق

  1. ابدأ مسار الاتصال من ChatGPT كمستخدم اختبار مسموح له.

  2. سجّل الدخول إلى Snowflake وحدد الدور المقصود إذا طُلب منك ذلك.

  3. تأكد من أن ChatGPT يكتشف الأدوات المتوقعة من خادم MCP.

  4. شغّل أولًا إجراء قراءة منخفض المخاطر، مثل بحث أو استعلام للقراءة فقط على بيانات معتمدة.

  5. تأكد من أن أذونات Snowflake تمنع الوصول خارج الدور والكائنات المعتمدة.

عنوان URL لخادم MCP وسلوك OAuth

يتصل ChatGPT بعنوان URL الكامل لخادم MCP المُدار من Snowflake. يستخدم ChatGPT بادئة مضيف Snowflake من ذلك العنوان URL لحل نقاط نهاية OAuth في Snowflake.

لا تلصق عنوان URL من Snowsight أو عنوان URL الجذر لحساب Snowflake وحده أو أي عنوان URL يحتوي على مقاطع مسار إضافية. يجب أن يتضمن عنوان MCP URL مسار قاعدة البيانات والمخطط وخادم MCP وأن يطابق كائنات Snowflake لديك بدقة.

استكشاف الأخطاء وإصلاحها

  • لم يتم العثور على خادم MCP: أعد التحقق من عنوان URL الكامل لخادم MCP أو من حقول بادئة المضيف وقاعدة البيانات والمخطط والخادم المنفصلة.

  • لا تظهر أي أدوات في ChatGPT: تأكد من أن مواصفات خادم MCP تتضمن أدوات وأن الدور لديه USAGE على خادم MCP.

  • تظهر أداة لكنها تفشل عند استخدامها: تأكد من أن الدور لديه الإذن المناسب على كائن Snowflake الأساسي.

  • تفشل أداة SQL: تأكد من صحة اسم المستودع، وأن المستودع متاح، وأن الدور لديه USAGE عليه، وأن read_only تساوي true إذا كنت تقصد الوصول للقراءة فقط.

  • يفشل التفويض: تأكد من أن المستخدم يمكنه تسجيل الدخول إلى Snowflake واستخدام الدور المقصود.

  • مشكلة اتصال باسم المضيف: استخدم بادئة مضيف Snowflake الصحيحة. يمكن أن تسبب أسماء مضيفي Snowflake التي تحتوي على شرطات سفلية مشكلات؛ يُفضّل استخدام الشرطات.

هل كانت هذه المقالة مفيدة؟