نماذج خارجية في خدمة نموذج الذكاء الاصطناعي الفسيفساء

هام

توضح أمثلة التعليمات البرمجية في هذه المقالة استخدام واجهة برمجة تطبيقات CRUD الخاصة بنشر MLflow للمعاينة العامة.

توضح هذه المقالة النماذج الخارجية في الفسيفساء الذكاء الاصطناعي Model Serving بما في ذلك موفري النماذج المدعومين والقيود.

ما هي النماذج الخارجية؟

هام

يمكنك الآن تكوين الفسيفساء الذكاء الاصطناعي Gateway على نموذج يخدم نقاط النهاية التي تخدم نماذج خارجية. الذكاء الاصطناعي Gateway يجلب الحوكمة والمراقبة والاستعداد للإنتاج إلى نقاط النهاية التي تخدم هذا النموذج. راجع بوابة الذكاء الاصطناعي الفسيفساء.

النماذج الخارجية هي نماذج تابعة لجهة خارجية مستضافة خارج Databricks. تدعم النماذج الخارجية خدمة النموذج، وتسمح لك بتبسيط استخدام وإدارة مختلف موفري نموذج اللغة الكبيرة (LLM)، مثل OpenAI و Anthropic، داخل المؤسسة. يمكنك أيضا استخدام موزاييك الذكاء الاصطناعي Model الذي يعمل كموفر لخدمة النماذج المخصصة، والتي توفر حدودا لمعدل نقاط النهاية هذه. كجزء من هذا الدعم، تقدم خدمة النموذج واجهة عالية المستوى تبسط التفاعل مع هذه الخدمات من خلال توفير نقطة نهاية موحدة للتعامل مع طلبات محددة متعلقة ب LLM.

بالإضافة إلى ذلك، يوفر دعم Azure Databricks للنماذج الخارجية إدارة مركزية لبيانات الاعتماد. من خلال تخزين مفاتيح واجهة برمجة التطبيقات في موقع آمن واحد، يمكن للمؤسسات تحسين وضعها الأمني عن طريق تقليل تعرض مفاتيح واجهة برمجة التطبيقات الحساسة في جميع أنحاء النظام. كما أنه يساعد على منع الكشف عن هذه المفاتيح داخل التعليمات البرمجية أو مطالبة المستخدمين النهائيين بإدارة المفاتيح بأمان.

راجع البرنامج التعليمي: إنشاء نقاط نهاية نموذج خارجي للاستعلام عن نماذج OpenAI للحصول على إرشادات خطوة بخطوة حول إنشاء نقطة نهاية النموذج الخارجي والاستعلام عن النماذج المدعومة التي تقدمها نقاط النهاية هذه باستخدام MLflow Deployments SDK. راجع الإرشادات التالية للحصول على إرشادات حول كيفية استخدام واجهة مستخدم العرض وواجهة برمجة تطبيقات REST:

المتطلبات

  • مفتاح API أو حقول المصادقة لموفر النموذج.
  • مساحة عمل Databricks في المناطق المدعومة من النماذج الخارجية.

موفرو النماذج

تم تصميم النماذج الخارجية في خدمة النموذج لدعم مجموعة متنوعة من موفري النماذج. يمثل الموفر مصدر نماذج التعلم الآلي، مثل OpenAI و Anthropic وما إلى ذلك. لكل موفر خصائصه وتكويناته المحددة التي يتم تغليفها داخل external_model حقل تكوين نقطة نهاية النموذج الخارجي.

يتم دعم الموفرين التاليين:

لطلب الدعم لموفر غير مدرج هنا، تواصل مع فريق حساب Databricks.

النماذج المدعومة

يؤثر النموذج الذي تختاره مباشرة على نتائج الاستجابات التي تحصل عليها من استدعاءات واجهة برمجة التطبيقات. لذلك، اختر نموذجا يناسب متطلبات حالة الاستخدام الخاصة بك. على سبيل المثال، لإنشاء استجابات المحادثة، يمكنك اختيار نموذج دردشة. وعلى العكس من ذلك، لإنشاء تضمينات للنص، يمكنك اختيار نموذج تضمين.

يقدم الجدول أدناه قائمة غير شاملة بالنماذج المدعومة وأنواع نقاط النهاية المقابلة. يمكن استخدام اقترانات النموذج المذكورة أدناه كدليل مفيد عند تكوين نقطة نهاية لأي أنواع نماذج تم إصدارها حديثا عند توفرها مع موفر معين. يتحمل العملاء مسؤولية ضمان الامتثال لتراخيص النموذج المعمول بها.

إشعار

مع التطور السريع ل LLMs، ليس هناك ما يضمن أن هذه القائمة محدثة في جميع الأوقات.

موفر النموذج llm/v1/completions llm/v1/chat llm/v1/embeddings
OpenAI** * gpt-3.5-turbo-instruct
* babbage-002
* davinci-002
* gpt-3.5-turbo
* gpt-4
* gpt-4o
* gpt-4o-2024-05-13
* gpt-4o-mini
* gpt-3.5-turbo-0125
* gpt-3.5-turbo-1106
* gpt-4-0125-preview
* gpt-4-turbo-preview
* gpt-4-1106-preview
* gpt-4-vision-preview
* gpt-4-1106-vision-preview
* text-embedding-ada-002
* تضمين النص-3-كبير
* تضمين النص -3-صغير
Azure OpenAI** * text-davinci-003
* gpt-35-turbo-instruct
* gpt-35-turbo
* gpt-35-turbo-16k
* gpt-4
* gpt-4-32k
* gpt-4o
* gpt-4o-mini
* text-embedding-ada-002
* تضمين النص-3-كبير
* تضمين النص -3-صغير
قطرات ضوئية * كلود -1
* كلود-1.3-100k
* كلود -2
* كلود -2.1
* كلود -2.0
* claude-instant-1.2
* كلود-3-5-sonnet-20240620
* claude-3-haiku-20240307
* claude-3-opus-20240229
* claude-3-sonnet-20240229
* كلود -2.1
* كلود -2.0
* claude-instant-1.2
Cohere** *أمر
* ضوء الأوامر
* command-r-plus
* command-r
*أمر
* command-light-nightly
* ضوء الأوامر
* الأوامر ليلا
* embed-english-v2.0
* تضمين متعدد اللغات-v2.0
* embed-english-light-v2.0
* embed-english-v3.0
* embed-english-light-v3.0
* تضمين متعدد اللغات-v3.0
* تضمين متعددة اللغات الخفيفة v3.0
خدمة نموذج الذكاء الاصطناعي الفسيفساء نقطة نهاية خدمة Databricks نقطة نهاية خدمة Databricks نقطة نهاية خدمة Databricks
Amazon Bedrock thropic:

* claude-instant-v1
* كلود v2

Cohere:

* command-text-v14
* command-light-text-v14

AI21 Labs:

* j2-grande-instruct
* j2-jumbo-instruct
* j2-mid
* j2-mid-v1
* j2-ultra
* j2-ultra-v1
thropic:

* كلود v2
* كلود v2:1
* claude-3-sonnet-20240229-v1:0
* claude-3-5-sonnet-20240620-v1:0

Cohere:

* command-r-plus-v1:0
* command-r-v1:0
* command-text-v14
* command-light-text-v14
الامازون:

* titan-embed-text-v1
* titan-embed-g1-text-02

Cohere:

* embed-english-v3
* تضمين متعدد اللغات-v3
AI21 Labs† * j2-mid
* j2-light
* j2-ultra
google Cloud Vertex الذكاء الاصطناعي text-bison * الدردشة bison
* gemini-pro
* gemini-1.0-pro
* gemini-1.5-pro
* الجوزاء -1.5 فلاش
textembedding-gecko

** يدعم موفر النموذج نماذج الإكمال والدردشة الدقيقة. للاستعلام عن نموذج مضبوط، قم بتعبئة name حقل external model التكوين باسم النموذج الذي تم ضبطه بدقة.

يدعم موفر نموذج † نماذج الإكمال المخصصة.

استخدام النماذج المقدمة على نقاط نهاية خدمة النموذج الذكاء الاصطناعي الفسيفساء

يتم دعم الفسيفساء الذكاء الاصطناعي نقاط نهاية خدمة النموذج كموفر لأنواع llm/v1/completionsllm/v1/chatنقاط النهاية و وllm/v1/embeddings. يجب أن تقبل نقاط النهاية هذه معلمات الاستعلام القياسية التي تم وضع علامة عليها على أنها مطلوبة، بينما قد يتم تجاهل المعلمات الأخرى اعتمادا على ما إذا كانت نقطة نهاية موزاييك الذكاء الاصطناعي Model Serving تدعمها أم لا.

راجع POST /serving-endpoints/{name}/invocations في مرجع واجهة برمجة التطبيقات لمعلمات الاستعلام القياسية.

يجب أن تنتج نقاط النهاية هذه استجابات بتنسيق OpenAI التالي.

لمهام الإكمال:

{
"id": "123", # Not Required
"model": "test_databricks_model",
"choices": [
  {
    "text": "Hello World!",
    "index": 0,
    "logprobs": null, # Not Required
    "finish_reason": "length" # Not Required
  }
],
"usage": {
  "prompt_tokens": 8,
  "total_tokens": 8
  }
}

لمهام الدردشة:

{
  "id": "123", # Not Required
  "model": "test_chat_model",
  "choices": [{
    "index": 0,
    "message": {
      "role": "assistant",
      "content": "\n\nHello there, how may I assist you today?",
    },
    "finish_reason": "stop"
  },
  {
    "index": 1,
    "message": {
      "role": "human",
      "content": "\n\nWhat is the weather in San Francisco?",
    },
    "finish_reason": "stop"
  }],
  "usage": {
    "prompt_tokens": 8,
    "total_tokens": 8
  }
}

لتضمين المهام:

{
  "data": [
    {
      "embedding": [
       0.0023064255,
        -0.009327292,
        .... # (1536 floats total for ada-002)
        -0.0028842222,
      ],
      "index": 0
    },
    {
      "embedding": [
        0.0023064255,
        -0.009327292,
        .... #(1536 floats total for ada-002)
        -0.0028842222,
      ],
      "index": 0
    }
  ],
  "model": "test_embedding_model",
  "usage": {
    "prompt_tokens": 8,
    "total_tokens": 8
  }
}

تكوين نقطة النهاية

لخدمة النماذج الخارجية والاستعلام عنها، تحتاج إلى تكوين نقطة نهاية خدمة. راجع إنشاء نقطة نهاية لخدمة نموذج خارجي

بالنسبة لنقطة نهاية خدمة نموذج خارجي، يجب تضمين external_model الحقل ومعلماته في served_entities قسم تكوين نقطة النهاية. إذا قمت بتكوين نماذج خارجية متعددة في نقطة نهاية خدمة، يجب توفير traffic_config لتعريف نسبة توجيه نسبة استخدام الشبكة لكل نموذج خارجي.

external_model يعرف الحقل النموذج الذي تقوم نقطة النهاية هذه بإعادة توجيه الطلبات إليه. عند تحديد نموذج، من المهم أن يدعم الموفر النموذج الذي تطلبه. على سبيل المثال، openai كموفر يدعم نماذج مثل text-embedding-ada-002، ولكن قد لا يدعم الموفرون الآخرون. إذا لم يكن النموذج مدعوما من قبل الموفر، فإن Databricks ترجع خطأ HTTP 4xx عند محاولة توجيه الطلبات إلى هذا النموذج.

يلخص external_model الجدول أدناه معلمات الحقل. راجع POST /api/2.0/serving-endpoints لمعلمات تكوين نقطة النهاية.

المعلمة‬ الأوصاف
name اسم النموذج المراد استخدامه. على سبيل المثال، gpt-3.5-turbo لنموذج OpenAI GPT-3.5-Turbo .
provider يحدد اسم الموفر لهذا النموذج. يجب أن تتوافق قيمة السلسلة هذه مع موفر نموذج خارجي معتمد. على سبيل المثال، openai لنماذج OpenAI GPT-3.5 .
task تتوافق المهمة مع نوع تفاعل نموذج اللغة الذي تريده. المهام المدعومة هي "llm/v1/completions" و"llm/v1/chat" و"llm/v1/embeddings".
<provider>_config يحتوي على أي تفاصيل تكوين إضافية مطلوبة للنموذج. يتضمن ذلك تحديد عنوان URL الأساسي لواجهة برمجة التطبيقات ومفتاح واجهة برمجة التطبيقات. راجع تكوين الموفر لنقطة نهاية.

فيما يلي مثال على إنشاء نقطة نهاية نموذج خارجي باستخدام create_endpoint() واجهة برمجة التطبيقات. في هذا المثال، تتم إعادة توجيه طلب تم إرساله إلى نقطة نهاية الإكمال إلى النموذج الذي claude-2 يوفره anthropic.

import mlflow.deployments

client = mlflow.deployments.get_deploy_client("databricks")

client.create_endpoint(
    name="anthropic-completions-endpoint",
    config={
        "served_entities": [
            {
                "name": "test",
                "external_model": {
                    "name": "claude-2",
                    "provider": "anthropic",
                    "task": "llm/v1/completions",
                    "anthropic_config": {
                        "anthropic_api_key": "{{secrets/my_anthropic_secret_scope/anthropic_api_key}}"
                    }
                }
            }
        ]
    }
)

تقديم نماذج خارجية متعددة إلى نقطة نهاية

يمكنك أيضا تكوين نماذج خارجية متعددة في نقطة نهاية خدمة طالما أن جميعها لها نفس نوع المهمة ولكل نموذج فريد name. ينشئ المثال أدناه نقطة نهاية خدمة توجه 50٪ من نسبة استخدام الشبكة التي gpt-4 يوفرها OpenAI وال 50٪ المتبقية التي claude-3-opus-20240229 تقدمها Anthropic.

import mlflow.deployments

client = mlflow.deployments.get_deploy_client("databricks")

client.create_endpoint(
    name="mix-chat-endpoint",
    config={
        "served_entities": [
            {
                "name": "served_model_name_1",
                "external_model": {
                    "name": "gpt-4",
                    "provider": "openai",
                    "task": "llm/v1/chat",
                    "openai_config": {
                        "openai_api_key": "{{secrets/my_openai_secret_scope/openai_api_key}}"
                    }
                }
            },
            {
                "name": "served_model_name_2",
                "external_model": {
                    "name": "claude-3-opus-20240229",
                    "provider": "anthropic",
                    "task": "llm/v1/chat",
                    "anthropic_config": {
                        "anthropic_api_key": "{{secrets/my_anthropic_secret_scope/anthropic_api_key}}"
                    }
                }
            }
        ],
        "traffic_config": {
            "routes": [
                {"served_model_name": "served_model_name_1", "traffic_percentage": 50},
                {"served_model_name": "served_model_name_2", "traffic_percentage": 50}
            ]
        },
    }
)

تكوين الموفر لنقطة نهاية

عند إنشاء نقطة نهاية، يجب توفير التكوينات المطلوبة لموفر النموذج المحدد. تلخص الأقسام التالية معلمات تكوين نقطة النهاية المتوفرة لكل موفر نموذج.

إشعار

تقوم Databricks بتشفير وتخزين بيانات الاعتماد المتوفرة لكل موفر نموذج بشكل آمن. يتم حذف بيانات الاعتماد هذه تلقائيا عند حذف نقاط النهاية المقترنة بها.

OpenAI

معلمة التكوين ‏‏الوصف مطلوبة افتراضي
openai_api_key مرجع المفتاح السري ل Azure Databricks لمفتاح OpenAI API باستخدام خدمة OpenAI. إذا كنت تفضل لصق مفتاح API مباشرة، فشاهد openai_api_key_plaintext. يجب توفير مفتاح API باستخدام أحد الحقول التالية: openai_api_key أو openai_api_key_plaintext.
openai_api_key_plaintext مفتاح OpenAI API باستخدام خدمة OpenAI المتوفرة كسلسلة نص عادي. إذا كنت تفضل الرجوع إلى مفتاحك باستخدام أسرار Azure Databricks، فراجع openai_api_key. يجب توفير مفتاح API باستخدام أحد الحقول التالية: openai_api_key أو openai_api_key_plaintext يجب توفيره.
openai_api_type حقل اختياري لتحديد نوع OpenAI API المراد استخدامه. لا openai
openai_api_base عنوان URL الأساسي لواجهة برمجة تطبيقات OpenAI. لا https://api.openai.com/v1
openai_api_version حقل اختياري لتحديد إصدار OpenAI API. لا
openai_organization حقل اختياري لتحديد المؤسسة في OpenAI. لا

قنينة

معلمة التكوين ‏‏الوصف مطلوبة افتراضي
cohere_api_key مرجع المفتاح السري ل Azure Databricks لمفتاح Cohere API. إذا كنت تفضل لصق مفتاح API مباشرة، فشاهد cohere_api_key_plaintext. يجب توفير مفتاح API باستخدام أحد الحقول التالية: cohere_api_key أو cohere_api_key_plaintext.
cohere_api_key_plaintext تم توفير مفتاح Cohere API كسلسلة نص عادي. إذا كنت تفضل الرجوع إلى مفتاحك باستخدام أسرار Azure Databricks، فراجع cohere_api_key. يجب توفير مفتاح API باستخدام أحد الحقول التالية: cohere_api_key أو cohere_api_key_plaintext.
cohere_api_base عنوان URL الأساسي لخدمة Cohere. لا

قطرات ضوئية

معلمة التكوين ‏‏الوصف مطلوبة افتراضي
anthropic_api_key مرجع المفتاح السري ل Azure Databricks لمفتاح API Anthropic. إذا كنت تفضل لصق مفتاح API مباشرة، فشاهد anthropic_api_key_plaintext. يجب توفير مفتاح API باستخدام أحد الحقول التالية: anthropic_api_key أو anthropic_api_key_plaintext.
anthropic_api_key_plaintext تم توفير مفتاح Anthropic API كسلسلة نص عادي. إذا كنت تفضل الرجوع إلى مفتاحك باستخدام أسرار Azure Databricks، فراجع anthropic_api_key. يجب توفير مفتاح API باستخدام أحد الحقول التالية: anthropic_api_key أو anthropic_api_key_plaintext.

Azure OpenAI

يحتوي Azure OpenAI على ميزات مميزة مقارنة بخدمة OpenAI المباشرة. للحصول على نظرة عامة، يرجى الاطلاع على وثائق المقارنة.

معلمة التكوين ‏‏الوصف مطلوبة افتراضي
openai_api_key مرجع المفتاح السري ل Azure Databricks لمفتاح OpenAI API باستخدام خدمة Azure. إذا كنت تفضل لصق مفتاح API مباشرة، فشاهد openai_api_key_plaintext. يجب توفير مفتاح API باستخدام أحد الحقول التالية: openai_api_key أو openai_api_key_plaintext.
openai_api_key_plaintext مفتاح OpenAI API باستخدام خدمة Azure المتوفرة كسلسلة نص عادي. إذا كنت تفضل الرجوع إلى مفتاحك باستخدام أسرار Azure Databricks، فراجع openai_api_key. يجب توفير مفتاح API باستخدام أحد الحقول التالية: openai_api_key أو openai_api_key_plaintext.
openai_api_type استخدم azure للتحقق من صحة الرمز المميز للوصول. ‏‏نعم‬
openai_api_base عنوان URL الأساسي لخدمة Azure OpenAI API التي يوفرها Azure. ‏‏نعم‬
openai_api_version إصدار خدمة Azure OpenAI المراد استخدامه، المحدد بواسطة تاريخ. ‏‏نعم‬
openai_deployment_name اسم مورد النشر لخدمة Azure OpenAI. ‏‏نعم‬
openai_organization حقل اختياري لتحديد المؤسسة في OpenAI. لا

إذا كنت تستخدم Azure OpenAI مع معرف Microsoft Entra، فاستخدم المعلمات التالية في تكوين نقطة النهاية.

معلمة التكوين ‏‏الوصف مطلوبة افتراضي
microsoft_entra_tenant_id معرف المستأجر لمصادقة معرف Microsoft Entra. ‏‏نعم‬
microsoft_entra_client_id معرف العميل لمصادقة معرف Microsoft Entra. ‏‏نعم‬
microsoft_entra_client_secret مرجع المفتاح السري Azure Databricks لسر العميل المستخدم لمصادقة معرف Microsoft Entra. إذا كنت تفضل لصق سر العميل مباشرة، فشاهد microsoft_entra_client_secret_plaintext. يجب توفير مفتاح API باستخدام أحد الحقول التالية: microsoft_entra_client_secret أو microsoft_entra_client_secret_plaintext.
microsoft_entra_client_secret_plaintext سر العميل المستخدم لمصادقة معرف Microsoft Entra المقدم كسلسلة نص عادي. إذا كنت تفضل الرجوع إلى مفتاحك باستخدام أسرار Azure Databricks، فراجع microsoft_entra_client_secret. يجب توفير مفتاح API باستخدام أحد الحقول التالية: microsoft_entra_client_secret أو microsoft_entra_client_secret_plaintext.
openai_api_type استخدم azuread للمصادقة باستخدام معرف Microsoft Entra. ‏‏نعم‬
openai_api_base عنوان URL الأساسي لخدمة Azure OpenAI API التي يوفرها Azure. ‏‏نعم‬
openai_api_version إصدار خدمة Azure OpenAI المراد استخدامه، المحدد بواسطة تاريخ. ‏‏نعم‬
openai_deployment_name اسم مورد النشر لخدمة Azure OpenAI. ‏‏نعم‬
openai_organization حقل اختياري لتحديد المؤسسة في OpenAI. لا

يوضح المثال التالي كيفية إنشاء نقطة نهاية باستخدام Azure OpenAI:

client.create_endpoint(
    name="openai-chat-endpoint",
    config={
        "served_entities": [{
            "external_model": {
                "name": "gpt-3.5-turbo",
                "provider": "openai",
                "task": "llm/v1/chat",
                "openai_config": {
                    "openai_api_type": "azure",
                    "openai_api_key": "{{secrets/my_openai_secret_scope/openai_api_key}}",
                    "openai_api_base": "https://my-azure-openai-endpoint.openai.azure.com",
                    "openai_deployment_name": "my-gpt-35-turbo-deployment",
                    "openai_api_version": "2023-05-15"
                }
            }
        }]
    }
)

google Cloud Vertex الذكاء الاصطناعي

معلمة التكوين ‏‏الوصف مطلوبة افتراضي
private_key مرجع المفتاح السري Azure Databricks لمفتاح خاص لحساب الخدمة الذي لديه حق الوصول إلى Google Cloud Vertex الذكاء الاصطناعي Service. راجع أفضل الممارسات لإدارة مفاتيح حساب الخدمة. إذا كنت تفضل لصق مفتاح API مباشرة، فشاهد private_key_plaintext. يجب توفير مفتاح API باستخدام أحد الحقول التالية: private_key أو private_key_plaintext.
private_key_plaintext المفتاح الخاص لحساب الخدمة الذي لديه حق الوصول إلى خدمة Google Cloud Vertex الذكاء الاصطناعي المقدمة كبيانات سرية لنص عادي. راجع أفضل الممارسات لإدارة مفاتيح حساب الخدمة. إذا كنت تفضل الرجوع إلى مفتاحك باستخدام أسرار Azure Databricks، فراجع private_key. يجب توفير مفتاح API باستخدام أحد الحقول التالية: private_key أو private_key_plaintext.
region هذه هي منطقة خدمة Google Cloud Vertex الذكاء الاصطناعي. راجع المناطق المدعومة لمزيد من التفاصيل. تتوفر بعض النماذج فقط في مناطق محددة. ‏‏نعم‬
project_id هذا هو معرف مشروع Google Cloud الذي يرتبط به حساب الخدمة. ‏‏نعم‬

Amazon Bedrock

لاستخدام Amazon Bedrock كموفر نموذج خارجي، يحتاج العملاء إلى التأكد من تمكين Bedrock في منطقة AWS المحددة، وأن زوج مفاتيح AWS المحدد لديه الأذونات المناسبة للتفاعل مع خدمات Bedrock. لمزيد من المعلومات، راجع AWS Identity and Access Management.

معلمة التكوين ‏‏الوصف مطلوبة افتراضي
aws_region منطقة AWS المراد استخدامها. يجب تمكين بيدروك هناك. ‏‏نعم‬
aws_access_key_id مرجع المفتاح السري ل Azure Databricks لمعرف مفتاح وصول AWS مع أذونات للتفاعل مع خدمات Bedrock. إذا كنت تفضل لصق مفتاح API مباشرة، فشاهد aws_access_key_id_plaintext. يجب توفير مفتاح API باستخدام أحد الحقول التالية: aws_access_key_id أو aws_access_key_id_plaintext.
aws_access_key_id_plaintext معرف مفتاح وصول AWS مع أذونات للتفاعل مع خدمات Bedrock المقدمة كسلسلة نص عادي. إذا كنت تفضل الرجوع إلى مفتاحك باستخدام أسرار Azure Databricks، فراجع aws_access_key_id. يجب توفير مفتاح API باستخدام أحد الحقول التالية: aws_access_key_id أو aws_access_key_id_plaintext.
aws_secret_access_key مرجع المفتاح السري Azure Databricks لمفتاح الوصول السري AWS المقترن بمعرف مفتاح الوصول، مع أذونات للتفاعل مع خدمات Bedrock. إذا كنت تفضل لصق مفتاح API مباشرة، فشاهد aws_secret_access_key_plaintext. يجب توفير مفتاح API باستخدام أحد الحقول التالية: aws_secret_access_key أو aws_secret_access_key_plaintext.
aws_secret_access_key_plaintext مفتاح وصول سري AWS مقترن بمعرف مفتاح الوصول، مع أذونات للتفاعل مع خدمات Bedrock المقدمة كسلسلة نص عادي. إذا كنت تفضل الرجوع إلى مفتاحك باستخدام أسرار Azure Databricks، فراجع aws_secret_access_key. يجب توفير مفتاح API باستخدام أحد الحقول التالية: aws_secret_access_key أو aws_secret_access_key_plaintext.
bedrock_provider الموفر الأساسي في Amazon Bedrock. تتضمن القيم المدعومة (غير حساسة لحالة الأحرف) ما يلي: Anthropic، Cohere، AI21Labs، Amazon ‏‏نعم‬

يوضح المثال التالي كيفية إنشاء نقطة نهاية باستخدام Amazon Bedrock.

client.create_endpoint(
    name="bedrock-anthropic-completions-endpoint",
    config={
        "served_entities": [
            {
                "external_model": {
                    "name": "claude-v2",
                    "provider": "amazon-bedrock",
                    "task": "llm/v1/completions",
                    "amazon_bedrock_config": {
                        "aws_region": "<YOUR_AWS_REGION>",
                        "aws_access_key_id": "{{secrets/my_amazon_bedrock_secret_scope/aws_access_key_id}}",
                        "aws_secret_access_key": "{{secrets/my_amazon_bedrock_secret_scope/aws_secret_access_key}}",
                        "bedrock_provider": "anthropic",
                    },
                }
            }
        ]
    },
)

إذا كانت هناك مشكلات في أذونات AWS، توصي Databricks بالتحقق من بيانات الاعتماد مباشرة باستخدام واجهة برمجة تطبيقات Amazon Bedrock.

AI21 Labs

معلمة التكوين ‏‏الوصف مطلوبة افتراضي
ai21labs_api_key مرجع المفتاح السري Azure Databricks لمفتاح API AI21 Labs. إذا كنت تفضل لصق مفتاح API مباشرة، فشاهد ai21labs_api_key_plaintext. يجب توفير مفتاح API باستخدام أحد الحقول التالية: ai21labs_api_key أو ai21labs_api_key_plaintext.
ai21labs_api_key_plaintext مفتاح AI21 Labs API المقدم كسلسلة نص عادي. إذا كنت تفضل الرجوع إلى مفتاحك باستخدام أسرار Azure Databricks، فراجع ai21labs_api_key. يجب توفير مفتاح API باستخدام أحد الحقول التالية: ai21labs_api_key أو ai21labs_api_key_plaintext.

تكوين بوابة الذكاء الاصطناعي على نقطة نهاية

يمكنك أيضا تكوين نقطة النهاية لتمكين ميزات Gateway الذكاء الاصطناعي الفسيفساء، مثل تحديد المعدل وتعقب الاستخدام وعلامات الحماية.

راجع تكوين بوابة الذكاء الاصطناعي على نقاط نهاية خدمة النموذج.

الاستعلام عن نقطة نهاية نموذج خارجي

بعد إنشاء نقطة نهاية نموذج خارجي، تكون جاهزة لتلقي نسبة استخدام الشبكة من المستخدمين.

يمكنك إرسال طلبات تسجيل النقاط إلى نقطة النهاية باستخدام عميل OpenAI أو واجهة برمجة تطبيقات REST أو MLflow Deployments SDK.

يستعلم المثال التالي عن claude-2 نموذج الإكمال الذي تستضيفه Anthropic باستخدام عميل OpenAI. لاستخدام عميل OpenAI، قم بتعبئة model الحقل باسم نقطة نهاية خدمة النموذج الذي يستضيف النموذج الذي تريد الاستعلام عليه.

يستخدم هذا المثال نقطة نهاية تم إنشاؤها مسبقا، anthropic-completions-endpoint، تم تكوينها للوصول إلى النماذج الخارجية من موفر نموذج Anthropic. تعرف على كيفية إنشاء نقاط نهاية نموذج خارجي.

راجع النماذج المدعومة للحصول على نماذج إضافية يمكنك الاستعلام عن موفريها.

import os
import openai
from openai import OpenAI

client = OpenAI(
    api_key="dapi-your-databricks-token",
    base_url="https://example.staging.cloud.databricks.com/serving-endpoints"
)

completion = client.completions.create(
  model="anthropic-completions-endpoint",
  prompt="what is databricks",
  temperature=1.0
)
print(completion)

تنسيق استجابة الإخراج المتوقع:

{
"id": "123", # Not Required
"model": "anthropic-completions-endpoint",
"choices": [
  {
    "text": "Hello World!",
    "index": 0,
    "logprobs": null, # Not Required
    "finish_reason": "length" # Not Required
  }
],
"usage": {
  "prompt_tokens": 8,
  "total_tokens": 8
  }
}

معلمات استعلام إضافية

يمكنك تمرير أي معلمات إضافية يدعمها موفر نقطة النهاية كجزء من الاستعلام الخاص بك.

على سبيل المثال:

  • logit_bias (مدعوم من قبل OpenAI، Cohere).
  • top_k (مدعوم من قبل Anthropic، Cohere).
  • frequency_penalty (مدعوم من قبل OpenAI، Cohere).
  • presence_penalty (مدعوم من قبل OpenAI، Cohere).
  • stream (بدعم من OpenAI، Anthropic، Cohere، Amazon Bedrock for Anthropic). يتوفر هذا فقط لطلبات الدردشة والإكمال.

القيود

اعتمادا على النموذج الخارجي الذي تختاره، قد يتسبب التكوين الخاص بك في معالجة بياناتك خارج المنطقة التي نشأت فيها بياناتك. راجع حدود ومناطق خدمة النموذج.

إذا اخترت تكوين نماذج خارجية متعددة في نقطة نهاية خدمة، يجب أن يكون لجميع النماذج الخارجية نفس نوع المهمة ويحتاج كل نموذج إلى نموذج فريد name. لا يمكن أن يكون لديك كل من النماذج الخارجية والنماذج غير الخارجية في نفس نقطة نهاية الخدمة.

الموارد الإضافية