Skip to content
ClickHouse Docs
ClickHouse DocsClickHouse Docs

كيفية بناء وكيل ذكاء اصطناعي باستخدام Chainlit وخادم ClickHouse MCP

يستعرض هذا الدليل كيفية الجمع بين إطار العمل القوي لواجهات الدردشة في Chainlit وخادم ClickHouse لبروتوكول Model Context Protocol ‏(MCP) لإنشاء تطبيقات بيانات تفاعلية. يتيح لك Chainlit بناء واجهات محادثة لتطبيقات الذكاء الاصطناعي بأقل قدر من الشيفرة، بينما يوفّر خادم ClickHouse MCP تكاملًا سلسًا مع قاعدة البيانات العمودية عالية الأداء من ClickHouse.

المتطلبات الأساسية

  • ستحتاج إلى مفتاح API من Anthropic
  • ستحتاج إلى تثبيت uv

تطبيق Chainlit بسيط

يمكنك الاطلاع على مثال لتطبيق دردشة بسيط بتشغيل ما يلي:

uv run --with anthropic --with chainlit chainlit run chat_basic.py -w -h

ثم انتقل إلى http://localhost:8000

إضافة خادم ClickHouse MCP

تصبح الأمور أكثر تشويقًا إذا أضفنا خادم ClickHouse MCP. ستحتاج إلى تحديث ملف .chainlit/config.toml للسماح باستخدام الأمر uv:

[features.mcp.stdio]
    enabled = true
    # Only the executables in the allow list can be used for MCP stdio server.
    # Only need the base name of the executable, e.g. "npx", not "/usr/bin/npx".
    # Please don't comment this line for now, we need it to parse the executable name.
    allowed_executables = [ "npx", "uvx", "uv" ]

هناك بعض الشيفرات الوسيطة اللازمة لجعل خوادم MCP تعمل مع Chainlit، لذا سنحتاج إلى تشغيل هذا الأمر لتشغيل Chainlit بدلًا من ذلك:

uv run --with anthropic --with chainlit chainlit run chat_mcp.py -w -h

لإضافة خادم MCP، انقر على أيقونة التوصيل في واجهة الدردشة، ثم أضِف الأمر التالي للاتصال بـ ClickHouse SQL Playground واستخدامه:

CLICKHOUSE_HOST=sql-clickhouse.clickhouse.com CLICKHOUSE_USER=demo CLICKHOUSE_PASSWORD= CLICKHOUSE_SECURE=true uv run --with mcp-clickhouse --python 3.13 mcp-clickhouse

إذا كنت تريد استخدام مثيل ClickHouse الخاص بك، يمكنك تعديل قيم متغيرات البيئة.

بعد ذلك، يمكنك أن تطرح عليه أسئلة مثل:

  • أخبرني عن الجداول المتاحة للاستعلام
  • ما الأمر المثير للاهتمام بشأن سيارات الأجرة في نيويورك؟
Navigation