دع خوادمك تطلب إكمالًا من نماذج اللغة الكبيرة (LLMs)تعد المعاينة (Sampling) ميزة قوية في Model Context Protocol (MCP) تسمح للخوادم بطلب إكمالات من نماذج اللغة الكبيرة (LLMs) من خلال العميل، مما يتيح سلوكيات وكيلية متطورة مع الحفاظ على الأمان والخصوصية.هذه الميزة في Model Context Protocol (MCP) غير مدعومة بعد في عميل Claude Desktop.يتبع تدفق المعاينة هذه الخطوات:1.
يرسل الخادم طلب sampling/createMessage
إلى العميل
2.
يراجع العميل الطلب ويمكنه تعديله
3.
يقوم العميل بالمعاينة من نموذج لغة كبير (LLM)
5.
يعيد العميل النتيجة إلى الخادم
يضمن هذا التصميم الذي يضع الإنسان في الحلقة سيطرة المستخدمين على ما يراه نموذج اللغة الكبيرة (LLM) وينشئه.تستخدم طلبات المعاينة تنسيق رسالة موحد:تحتوي مصفوفة messages
على سجل المحادثة المراد إرساله إلى نموذج اللغة الكبيرة (LLM). تحتوي كل رسالة على:role
: إما "user" أو "assistant"
: محتوى الرسالة، والذي يمكن أن يكون:محتوى صورة مع حقول data
(base64) و mimeType
يسمح كائن modelPreferences
للخوادم بتحديد تفضيلات اختيار النموذج الخاص بها:hints
: مصفوفة من اقتراحات اسم النموذج التي يمكن للعملاء استخدامها لتحديد نموذج مناسب:name
: سلسلة يمكن أن تطابق أسماء النماذج الكاملة أو الجزئية (مثل "claude-3"، "sonnet")
قد يقوم العملاء بتعيين تلميحات لنماذج مكافئة من موفري خدمات مختلفين
يتم تقييم التلميحات المتعددة بترتيب الأفضلية
قيم الأولوية (0-1 مُعيرة):costPriority
: أهمية تقليل التكاليف
speedPriority
: أهمية الاستجابة بزمن انتقال منخفض
intelligencePriority
: أهمية القدرات النموذجية المتقدمة
يتخذ العملاء القرار النهائي بشأن اختيار النموذج بناءً على هذه التفضيلات والنماذج المتاحة لديهم.يسمح حقل systemPrompt
الاختياري للخوادم بطلب موجه نظام محدد. قد يقوم العميل بتعديل هذا أو تجاهله.تحدد المعلمة includeContext
سياق Model Context Protocol (MCP) المراد تضمينه:"none"
: لا يوجد سياق إضافي
"thisServer"
: تضمين السياق من الخادم الطالب
"allServers"
: تضمين السياق من جميع خوادم Model Context Protocol (MCP) المتصلة
يتحكم العميل في السياق الذي يتم تضمينه بالفعل.اضبط معاينة نموذج اللغة الكبيرة (LLM) باستخدام:temperature
: يتحكم في العشوائية (0.0 إلى 1.0)
maxTokens
: الحد الأقصى للرموز المميزة التي سيتم إنشاؤها
stopSequences
: مصفوفة من التسلسلات التي توقف الإنشاء
metadata
: معلمات إضافية خاصة بموفر الخدمة
يعيد العميل نتيجة الإكمال:إليك مثال على طلب المعاينة من عميل:{
"method": "sampling/createMessage",
"params": {
"messages": [
{
"role": "user",
"content": {
"type": "text",
"text": "What files are in the current directory?"
}
}
],
"systemPrompt": "You are a helpful file system assistant.",
"includeContext": "thisServer",
"maxTokens": 100
}
}
1.
قدم دائمًا مطالبات واضحة ومنظمة جيدًا
2.
تعامل مع كل من محتوى النص والصورة بشكل مناسب
3.
ضع حدودًا معقولة للرموز المميزة
4.
قم بتضمين السياق ذي الصلة من خلال includeContext
5.
تحقق من صحة الردود قبل استخدامها
7.
ضع في اعتبارك تقييد معدل طلبات المعاينة
8.
وثق سلوك المعاينة المتوقع
9.
اختبر مع معلمات نموذجية مختلفة
تم تصميم المعاينة مع وضع الإشراف البشري في الاعتبار:يجب على العملاء عرض المطالبة المقترحة للمستخدمين
يجب أن يكون المستخدمون قادرين على تعديل المطالبات أو رفضها
يمكن تصفية أو تعديل مطالبات النظام
يتم التحكم في تضمين السياق بواسطة العميل
يجب على العملاء عرض الإكمال للمستخدمين
يجب أن يكون المستخدمون قادرين على تعديل عمليات الإكمال أو رفضها
يمكن للعملاء تصفية عمليات الإكمال أو تعديلها
يتحكم المستخدمون في النموذج المستخدم
تحقق من صحة جميع محتويات الرسالة
قم بتطهير المعلومات الحساسة
قم بتنفيذ حدود المعدل المناسبة
قم بتشفير البيانات أثناء النقل
تعامل مع خصوصية بيانات المستخدم
السيطرة على التعرض للتكاليف
تعامل مع أخطاء النموذج بأمان
تمكن المعاينة الأنماط الوكيلية مثل:اتخاذ القرارات بناءً على السياق
التعامل مع المهام متعددة الخطوات
طلب الحد الأدنى من السياق الضروري
التعامل مع حدود حجم السياق
يجب أن تعالج معالجة الأخطاء القوية ما يلي:اكتشاف حالات فشل المعاينة
تعتمد المعاينة على قدرات العميل
يتحكم المستخدمون في سلوك المعاينة
لا يتم دعم جميع أنواع المحتوى
Modified at 2025-03-12 10:41:28