Megosztás a következőn keresztül:


Külső modellek a Mozaik AI-modell szolgáltatásban

Fontos

A cikkben szereplő kód példák a nyilvános előzetes verziójú MLflow deployments CRUD API használatát mutatják be.

Ez a cikk a Mozaik AI-modellkiszolgáló külső modelljeit ismerteti, beleértve a támogatott modellszolgáltatókat és korlátozásokat.

Mik azok a külső modellek?

A külső modellek a Databricksen kívül üzemeltetett külső modellek. A Model Serving által támogatott külső modellek lehetővé teszik a különböző nagy nyelvi modellek (LLM) szolgáltatók, például az OpenAI és az antropikus használatának és felügyeletének egyszerűsítését egy szervezeten belül. A Mozaik AI-modell szolgáltatóként is használható egyéni modellek kiszolgálására, amelyek sebességkorlátokat kínálnak ezekre a végpontokra. Ennek a támogatásnak a részeként a Modellszolgáltatás egy magas szintű felületet kínál, amely leegyszerűsíti a szolgáltatásokkal való interakciót azáltal, hogy egységes végpontot biztosít az adott LLM-hez kapcsolódó kérések kezeléséhez.

Emellett a külső modellek Azure Databricks-támogatása központosított hitelesítő adatok kezelését is biztosítja. Az API-kulcsok biztonságos helyen való tárolásával a szervezetek növelhetik a biztonsági helyzetüket azáltal, hogy minimalizálják a rendszer bizalmas API-kulcsainak kitettségét. Emellett segít megelőzni ezeknek a kulcsoknak a kódban való felfedését, vagy azt, hogy a végfelhasználók biztonságosan kezeljék a kulcsokat.

Tekintse meg az oktatóanyagot: Külső modellvégpontok létrehozása OpenAI-modellek lekérdezéséhez részletes útmutatást nyújt a külső modellvégpontok létrehozásához és a végpontok által az MLflow Deployments SDK használatával kiszolgált támogatott modellek lekérdezéséhez. A kiszolgáló felhasználói felület és a REST API használatára vonatkozó útmutatásért tekintse meg az alábbi útmutatókat:

Követelmények

Modellszolgáltatók

A Modellkiszolgáló külső modelljei számos modellszolgáltatót támogatnak. A szolgáltató képviseli a gépi tanulási modellek forrását, például az OpenAI-t, az antropikust stb. Minden szolgáltató rendelkezik a külső modell végpontkonfigurációjának mezőjébe ágyazott external_model sajátos tulajdonságokkal és konfigurációkkal.

A következő szolgáltatók támogatottak:

  • openai: Az OpenAI által kínált modellekhez, valamint az Azure OpenAI és az Azure OpenAI azure-integrációihoz az AAD-vel.
  • antropikus: Az antropikus által kínált modellekhez.
  • cohere: A Cohere által kínált modellekhez.
  • amazon-bedrock: Az Amazon Bedrock által kínált modellekhez.
  • ai21labs: Az AI21Labs által kínált modellekhez.
  • google-cloud-vertex-ai: A Google Cloud Vertex AI által kínált modellekhez.
  • databricks-model-service: A Mozaik AI-modellhez kompatibilis sémákkal rendelkező végpontok kiszolgálása. Lásd: Végpontkonfiguráció.

Ha támogatást szeretne kérni az itt nem szereplő szolgáltatóhoz, forduljon a Databricks-fiók csapatához.

Támogatott modellek

A választott modell közvetlenül befolyásolja az API-hívásokból kapott válaszok eredményeit. Ezért válasszon egy olyan modellt, amely megfelel a használati eset követelményeinek. A beszélgetési válaszok létrehozásához például kiválaszthatja a csevegési modellt. Ezzel szemben a szövegbeágyazások létrehozásához kiválaszthatja a beágyazási modellt.

Az alábbi táblázat a támogatott modellek és a kapcsolódó végponttípusok nem teljes listáját mutatja be. Az alább felsorolt modelltársítások hasznos útmutatóként használhatók az újonnan kiadott modelltípusok végpontjának konfigurálásához, amint elérhetővé válnak egy adott szolgáltatónál. Az ügyfelek felelősek az alkalmazandó modelllicencek megfelelőségének biztosításáért.

Feljegyzés

Az LLM-ek gyors fejlődésével nincs garancia arra, hogy ez a lista mindig naprakész.

Modellszolgáltató llm/v1/completions llm/v1/chat llm/v1/beágyazások
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
* text-embedding-3-large
* text-embedding-3-small
Azure OpenAI** * text-davinci-003
* gpt-35-turbo-instruct
* gpt-35-turbo
* gpt-35-turbo-16k
* gpt-4
* gpt-4-32k
* gpt-4o
* text-embedding-ada-002
* text-embedding-3-large
* text-embedding-3-small
Anthropic * claude-1
* claude-1.3-100k
* claude-2
* claude-2.1
* claude-2.0
* claude-instant-1.2
* claude-3-5-sonnet-20240620
* claude-3-haiku-20240307
* claude-3-opus-20240229
* claude-3-sonnet-20240229
* claude-2.1
* claude-2.0
* claude-instant-1.2
Cohere** *parancs
* parancs-light
* command-r-plus
* command-r
*parancs
* parancs-light-nightly
* parancs-light
* parancs-éjszakai
* beágyazás-angol-v2.0
* beágyazás-többnyelvű-v2.0
* embed-english-light-v2.0
* beágyazás-angol-v3.0
* embed-english-light-v3.0
* beágyazás-többnyelvű-v3.0
* beágyazás-többnyelvű-light-v3.0
Mozaik AI-modell kiszolgálása Végpontot kiszolgáló Databricks Végpontot kiszolgáló Databricks Végpontot kiszolgáló Databricks
Amazon Bedrock Antropikus:

* claude-instant-v1
* claude-v2

Közösen:

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

AI21 Labs:

* j2-grande-instruct
* j2-jumbo-utasítás
* j2-mid
* j2-mid-v1
* j2-ultra
* j2-ultra-v1
Antropikus:

* claude-v2
* claude-v2:1
* claude-3-sonnet-20240229-v1:0
* claude-3-5-sonnet-20240620-v1:0

Közösen:

* command-r-plus-v1:0
* command-r-v1:0
* command-text-v14
* command-light-text-v14
Amazon:

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

Közösen:

* beágyazás-angol-v3
* beágyazás-többnyelvű-v3
AI21 Labs† * j2-mid
* j2-light
* j2-ultra
Google Cloud Vertex AI text-bison * chat-bölény
* gemini-pro
textembedding-gecko

** A modellszolgáltató támogatja a finomhangolt befejezési és csevegési modelleket. Egy finomhangolt modell lekérdezéséhez töltse ki a name external model konfiguráció mezőjét a finomhangolt modell nevével.

† modellszolgáltató támogatja az egyéni befejezési modelleket.

Mozaik AI-modell-kiszolgáló végpontokon kiszolgált modellek használata

A Mozaik AI-modell a végpontokat szolgáltatóként szolgálja ki a , llm/v1/chatés llm/v1/embeddings végponttípusok llm/v1/completionsesetében. Ezeknek a végpontoknak el kell fogadniuk a kötelezőként megjelölt szabványos lekérdezési paramétereket, míg más paraméterek figyelmen kívül hagyhatók attól függően, hogy a Mozaik AI-modellszolgáltatás végpontja támogatja-e őket.

A szabványos lekérdezési paramétereket az API-referencia post /serving-endpoints/{name}/invocations című témakörében tekintheti meg.

Ezeknek a végpontoknak a következő OpenAI formátumban kell válaszokat előállítaniuk.

Befejezési feladatok esetén:

{
"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
  }
}

Csevegési feladatok esetén:

{
  "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
  }
}

Beágyazási feladatok esetén:

{
  "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
  }
}

Végpontkonfiguráció

Külső modellek kiszolgálásához és lekérdezéséhez konfigurálnia kell egy kiszolgálóvégpontot. Lásd: Végpontot kiszolgáló külső modell létrehozása

Végpontot kiszolgáló külső modell esetében a végpontkonfiguráció szakaszában meg kell adnia a external_model served_entities mezőt és annak paramétereit. Ha több külső modellt konfigurál egy kiszolgálóvégponton, meg kell adnia az traffic_config egyes külső modellek forgalomirányítási százalékos arányát.

A external_model mező határozza meg azt a modellt, amelyre a végpont továbbítja a kéréseket. A modell megadásakor kritikus fontosságú, hogy a szolgáltató támogatja a kért modellt. Például, openai mivel a szolgáltató támogatja az olyan modelleket, mint text-embedding-ada-002a , de más szolgáltatók nem. Ha a modellt a szolgáltató nem támogatja, a Databricks HTTP 4xx-es hibát ad vissza a kérések adott modellhez való átirányításakor.

Az alábbi táblázat összefoglalja a external_model mezőparamétereket. A végpontkonfigurációs paraméterekről lásd: POST /api/2.0/serving-endpoints.

Paraméter Leírások
name A használni kívánt modell neve. Például az gpt-3.5-turbo OpenAI GPT-3.5-Turbo modelljéhez.
provider Megadja a modell szolgáltatójának nevét. Ennek a sztringértéknek egy támogatott külső modellszolgáltatónak kell lennie. Például az openai OpenAI modelljeihez GPT-3.5 .
task A feladat megfelel a kívánt nyelvmodell-interakció típusának. A támogatott tevékenységek a következők: "llm/v1/completions", "llm/v1/chat", "llm/v1/embeddings".
<provider>_config A modellhez szükséges további konfigurációs adatokat tartalmazza. Ez magában foglalja az API-alap URL-címének és az API-kulcsnak a megadását. Lásd: A szolgáltató konfigurálása végponthoz.

Az alábbi példa egy külső modellvégpont API-val történő létrehozására create_endpoint() mutat be példát. Ebben a példában a rendszer a befejezési végpontnak küldött kérést továbbítja a claude-2 megadott modellnek 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}}"
                    }
                }
            }
        ]
    }
)

Több külső modell kiszolgálása egy végponton

Több külső modellt is konfigurálhat egy kiszolgálóvégponton, ha mindegyik azonos feladattípussal rendelkezik, és mindegyik modell egyedi name. Az alábbi példa létrehoz egy kiszolgáló végpontot, amely az OpenAI által biztosított forgalom gpt-4 50%-át, a fennmaradó 50%-ot claude-3-opus-20240229 pedig az antropikusok számára irányítja.

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}
            ]
        },
    }
)

A szolgáltató konfigurálása végponthoz

Végpont létrehozásakor meg kell adnia a megadott modellszolgáltatóhoz szükséges konfigurációkat. Az alábbi szakaszok összefoglalják az egyes modellszolgáltatókhoz elérhető végpontkonfigurációs paramétereket.

OpenAI

Konfigurációs paraméter Leírás Kötelező Alapértelmezett
openai_api_key Az OpenAI API-kulcs azure Databricks titkos kulcsának referenciája az OpenAI szolgáltatással. Ha közvetlenül szeretné beilleszteni az API-kulcsot, tekintse meg a következőt openai_api_key_plaintext: Az alábbi mezők egyikével kell megadnia egy API-kulcsot: openai_api_key vagy openai_api_key_plaintext.
openai_api_key_plaintext Az OpenAI API-kulcs egyszerű szöveges sztringként megadott OpenAI szolgáltatással. Ha inkább az Azure Databricks Titkos kulcsok használatával szeretné hivatkozni a kulcsára, tekintse meg a következőt openai_api_key: . Meg kell adnia egy API-kulcsot a következő mezők egyikével: openai_api_key vagy openai_api_key_plaintext meg kell adnia.
openai_api_type Nem kötelező mező a használni kívánt OpenAI API típusának megadásához. Nem
openai_api_base Az OpenAI API alap URL-címe. Nem https://api.openai.com/v1
openai_api_version Nem kötelező mező az OpenAI API-verzió megadásához. Nem
openai_organization Nem kötelező mező a szervezet OpenAI-ban való megadásához. Nem

Összetartó

Konfigurációs paraméter Leírás Kötelező Alapértelmezett
cohere_api_key A Cohere API-kulcs Azure Databricks titkos kulcsának referenciája. Ha közvetlenül szeretné beilleszteni az API-kulcsot, tekintse meg a következőt cohere_api_key_plaintext: Az alábbi mezők egyikével kell megadnia egy API-kulcsot: cohere_api_key vagy cohere_api_key_plaintext.
cohere_api_key_plaintext A Cohere API-kulcs egyszerű szöveges sztringként van megadva. Ha inkább az Azure Databricks Titkos kulcsok használatával szeretné hivatkozni a kulcsára, tekintse meg a következőt cohere_api_key: . Az alábbi mezők egyikével kell megadnia egy API-kulcsot: cohere_api_key vagy cohere_api_key_plaintext.
cohere_api_base A Cohere szolgáltatás alap URL-címe. Nem

Anthropic

Konfigurációs paraméter Leírás Kötelező Alapértelmezett
anthropic_api_key Az Azure Databricks titkos kulcsának referenciája egy antropikus API-kulcshoz. Ha közvetlenül szeretné beilleszteni az API-kulcsot, tekintse meg a következőt anthropic_api_key_plaintext: Az alábbi mezők egyikével kell megadnia egy API-kulcsot: anthropic_api_key vagy anthropic_api_key_plaintext.
anthropic_api_key_plaintext Az antropikus API-kulcs egyszerű szöveges sztringként van megadva. Ha inkább az Azure Databricks Titkos kulcsok használatával szeretné hivatkozni a kulcsára, tekintse meg a következőt anthropic_api_key: . Az alábbi mezők egyikével kell megadnia egy API-kulcsot: anthropic_api_key vagy anthropic_api_key_plaintext.

Azure OpenAI

Az Azure OpenAI a közvetlen OpenAI szolgáltatáshoz képest eltérő funkciókkal rendelkezik. Áttekintésért tekintse meg az összehasonlító dokumentációt.

Konfigurációs paraméter Leírás Kötelező Alapértelmezett
openai_api_key Az Azure Databricks titkos kulcsának referenciája egy OpenAI API-kulcshoz az Azure szolgáltatás használatával. Ha közvetlenül szeretné beilleszteni az API-kulcsot, tekintse meg a következőt openai_api_key_plaintext: Az alábbi mezők egyikével kell megadnia egy API-kulcsot: openai_api_key vagy openai_api_key_plaintext.
openai_api_key_plaintext Az OpenAI API-kulcs egyszerű szöveges sztringként megadott Azure-szolgáltatással. Ha inkább az Azure Databricks Titkos kulcsok használatával szeretné hivatkozni a kulcsára, tekintse meg a következőt openai_api_key: . Az alábbi mezők egyikével kell megadnia egy API-kulcsot: openai_api_key vagy openai_api_key_plaintext.
openai_api_type Hozzáférési jogkivonat érvényesítéséhez használható azure . Igen
openai_api_base Az Azure által biztosított Azure OpenAI API szolgáltatás alap URL-címe. Igen
openai_api_version Az Azure OpenAI szolgáltatás kihasználandó verziója, dátum szerint megadva. Igen
openai_deployment_name Az Azure OpenAI szolgáltatás üzembehelyezési erőforrásának neve. Igen
openai_organization Nem kötelező mező a szervezet OpenAI-ban való megadásához. Nem

Ha az Azure OpenAI-t Microsoft Entra-azonosítóval használja, használja az alábbi paramétereket a végpontkonfigurációban.

Konfigurációs paraméter Leírás Kötelező Alapértelmezett
microsoft_entra_tenant_id A Microsoft Entra ID-hitelesítés bérlőazonosítója. Igen
microsoft_entra_client_id A Microsoft Entra ID-hitelesítés ügyfélazonosítója. Igen
microsoft_entra_client_secret Az Azure Databricks titkos kulcsának referenciája a Microsoft Entra ID-hitelesítéshez használt ügyféltitkokhoz. Ha inkább közvetlenül szeretné beilleszteni az ügyfél titkos kódját, olvassa el a következőt microsoft_entra_client_secret_plaintext: . Az alábbi mezők egyikével kell megadnia egy API-kulcsot: microsoft_entra_client_secret vagy microsoft_entra_client_secret_plaintext.
microsoft_entra_client_secret_plaintext A Microsoft Entra ID-hitelesítéshez használt ügyfélkód egyszerű szöveges sztringként van megadva. Ha inkább az Azure Databricks Titkos kulcsok használatával szeretné hivatkozni a kulcsára, tekintse meg a következőt microsoft_entra_client_secret: . Az alábbi mezők egyikével kell megadnia egy API-kulcsot: microsoft_entra_client_secret vagy microsoft_entra_client_secret_plaintext.
openai_api_type Hitelesítéshez a azuread Microsoft Entra-azonosítóval. Igen
openai_api_base Az Azure által biztosított Azure OpenAI API szolgáltatás alap URL-címe. Igen
openai_api_version Az Azure OpenAI szolgáltatás kihasználandó verziója, dátum szerint megadva. Igen
openai_deployment_name Az Azure OpenAI szolgáltatás üzembehelyezési erőforrásának neve. Igen
openai_organization Nem kötelező mező a szervezet OpenAI-ban való megadásához. Nem

Az alábbi példa bemutatja, hogyan hozhat létre végpontot az Azure OpenAI-val:

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 AI

Konfigurációs paraméter Leírás Kötelező Alapértelmezett
private_key Az Azure Databricks titkos kulcsának referenciája a Google Cloud Vertex AI szolgáltatáshoz hozzáféréssel rendelkező szolgáltatásfiók titkos kulcsához. Tekintse meg a szolgáltatásfiókkulcsok kezelésének ajánlott eljárásait. Ha közvetlenül szeretné beilleszteni az API-kulcsot, tekintse meg a következőt private_key_plaintext: Az alábbi mezők egyikével kell megadnia egy API-kulcsot: private_key vagy private_key_plaintext.
private_key_plaintext A Google Cloud Vertex AI szolgáltatáshoz való hozzáféréssel rendelkező szolgáltatásfiók titkos kulcsa egyszerű szöveges titkos kódként. Tekintse meg a szolgáltatásfiókkulcsok kezelésének ajánlott eljárásait. Ha inkább az Azure Databricks Titkos kulcsok használatával szeretné hivatkozni a kulcsára, tekintse meg a következőt private_key: . Az alábbi mezők egyikével kell megadnia egy API-kulcsot: private_key vagy private_key_plaintext.
region Ez a Google Cloud Vertex AI szolgáltatás régiója. További részletekért tekintse meg a támogatott régiókat . Egyes modellek csak bizonyos régiókban érhetők el. Igen
project_id Ez a Google Cloud-projektazonosító, amelyhez a szolgáltatásfiók társítva van. Igen

Amazon Bedrock

Az Amazon Bedrock külső modellszolgáltatóként való használatához az ügyfeleknek meg kell győződni arról, hogy a Bedrock engedélyezve van a megadott AWS-régióban, és a megadott AWS-kulcspár megfelelő engedélyekkel rendelkezik a Bedrock-szolgáltatások használatához. További információ: AWS Identity and Access Management.

Konfigurációs paraméter Leírás Kötelező Alapértelmezett
aws_region A használni kívánt AWS-régió. A bedrockot ott kell engedélyezni. Igen
aws_access_key_id Az Azure Databricks titkoskulcs-referenciája egy AWS hozzáférési kulcsazonosítóhoz, amely engedélyekkel rendelkezik a Bedrock-szolgáltatásokkal való interakcióhoz. Ha közvetlenül szeretné beilleszteni az API-kulcsot, tekintse meg a következőt aws_access_key_id: Az alábbi mezők egyikével kell megadnia egy API-kulcsot: aws_access_key_id vagy aws_access_key_id_plaintext.
aws_access_key_id_plaintext Egy AWS hozzáférési kulcsazonosító, amely engedélyekkel rendelkezik a Bedrock-szolgáltatások egyszerű szöveges sztringként való használatához. Ha inkább az Azure Databricks Titkos kulcsok használatával szeretné hivatkozni a kulcsára, tekintse meg a következőt aws_access_key_id: . Az alábbi mezők egyikével kell megadnia egy API-kulcsot: aws_access_key_id vagy aws_access_key_id_plaintext.
aws_secret_access_key Az Azure Databricks titkoskulcs-referenciája egy AWS titkos hozzáférési kulcshoz a hozzáférési kulcs azonosítójával párosítva, a Bedrock-szolgáltatásokkal való interakcióhoz szükséges engedélyekkel. Ha közvetlenül szeretné beilleszteni az API-kulcsot, tekintse meg a következőt aws_secret_access_key_plaintext: Az alábbi mezők egyikével kell megadnia egy API-kulcsot: aws_secret_access_key vagy aws_secret_access_key_plaintext.
aws_secret_access_key_plaintext A hozzáférési kulcs azonosítójával párosított AWS titkos hozzáférési kulcs, amely egyszerű szöveges sztringként nyújtott Bedrock-szolgáltatásokkal való interakcióra vonatkozó engedélyekkel rendelkezik. Ha inkább az Azure Databricks Titkos kulcsok használatával szeretné hivatkozni a kulcsára, tekintse meg a következőt aws_secret_access_key: . Az alábbi mezők egyikével kell megadnia egy API-kulcsot: aws_secret_access_key vagy aws_secret_access_key_plaintext.
bedrock_provider Az Amazon Bedrock mögöttes szolgáltatója. Támogatott értékek (a kis- és nagybetűk nem érzékenyek) közé tartoznak: Antropikus, Cohere, AI21Labs, Amazon Igen

Az alábbi példa bemutatja, hogyan hozhat létre végpontot az Amazon Bedrock használatával.

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",
                    },
                }
            }
        ]
    },
)

Ha AWS-engedélyekkel kapcsolatos problémák merülnek fel, a Databricks azt javasolja, hogy közvetlenül az Amazon Bedrock API-val ellenőrizze a hitelesítő adatokat.

AI21 Labs

Konfigurációs paraméter Leírás Kötelező Alapértelmezett
ai21labs_api_key Az Azure Databricks titkos kulcsának referenciája egy AI21 Labs API-kulcshoz. Ha közvetlenül szeretné beilleszteni az API-kulcsot, tekintse meg a következőt ai21labs_api_key_plaintext: Az alábbi mezők egyikével kell megadnia egy API-kulcsot: ai21labs_api_key vagy ai21labs_api_key_plaintext.
ai21labs_api_key_plaintext Egyszerű szöveges sztringként megadott AI21 Labs API-kulcs. Ha inkább az Azure Databricks Titkos kulcsok használatával szeretné hivatkozni a kulcsára, tekintse meg a következőt ai21labs_api_key: . Az alábbi mezők egyikével kell megadnia egy API-kulcsot: ai21labs_api_key vagy ai21labs_api_key_plaintext.

Külső modellvégpont lekérdezése

Miután létrehozott egy külső modellvégpontot, készen áll a felhasználóktól érkező forgalom fogadására.

Pontozási kéréseket küldhet a végpontnak az OpenAI-ügyfél, a REST API vagy az MLflow Deployments SDK használatával.

Az alábbi példa lekérdezi az claude-2 Anthropic által üzemeltetett befejezési modellt az OpenAI-ügyfél használatával. Az OpenAI-ügyfél használatához töltse ki a model mezőt a lekérdezni kívánt modellt futtató végpontot kiszolgáló modell nevével.

Ez a példa egy korábban létrehozott végpontot használ, anthropic-completions-endpointamely az antropikus modellszolgáltatótól származó külső modellek eléréséhez van konfigurálva. Tekintse meg, hogyan hozhat létre külső modellvégpontokat.

További lekérdezhető modellek és azok szolgáltatóinak támogatott modelljei .

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)

Várt kimeneti válaszformátum:

{
"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
  }
}

További lekérdezési paraméterek

A lekérdezés részeként átadhat minden további paramétert, amelyet a végpont szolgáltatója támogat.

Példa:

  • logit_bias (az OpenAI és a Cohere támogatja).
  • top_k (támogatja az antropikus, Cohere).
  • frequency_penalty (az OpenAI és a Cohere támogatja).
  • presence_penalty (az OpenAI és a Cohere támogatja).
  • stream (támogatja: OpenAI, Anthropic, Cohere, Amazon Bedrock for Anthropic). Ez csak csevegési és befejezési kérelmek esetén érhető el.

Korlátozások

A választott külső modelltől függően előfordulhat, hogy a konfiguráció miatt az adatok feldolgozása azon a régión kívül történik, ahonnan az adatok származnak. Lásd: Modellmegjelenítési korlátok és régiók.

Ha több külső modellt konfigurál egy kiszolgálóvégponton, minden külső modellnek azonos feladattípussal kell rendelkeznie, és minden modellnek egyedire namevan szüksége. Nem rendelkezhet külső és nem külső modellekkel ugyanabban a kiszolgálóvégpontban.

További erőforrások