Externí modely ve službě Model Serving

Important

Příklady kódu v tomto článku ukazují použití rozhraní CRUD API pro nasazení MLflow ve verzi Public Preview .

Tento článek popisuje externí modely ve službě Model Serving, včetně podporovaných poskytovatelů modelů a omezení.

Co jsou externí modely?

Important

Nyní můžete nakonfigurovat AI Gateway na koncových bodech pro poskytování modelů, které obsluhují externí modely. AI Gateway přináší správu, monitorování a připravenost k produkčnímu nasazení pro tyto koncové body modelů. Viz zásady správného řízení AI pomocí brány Unity AI.

Externí modely jsou modely třetích stran hostované mimo Databricks. Podporované službou Model Obsluha, externí modely umožňují zjednodušit používání a správu různých poskytovatelů velkých jazykových modelů (LLM), jako jsou OpenAI a Anthropic, v rámci organizace. Model Serving můžete také použít jako poskytovatele pro nasazení vlastních modelů; pro tyto endpointy nabízí omezení rychlosti. V rámci této podpory nabízí služba Model Serving rozhraní vysoké úrovně, které zjednodušuje interakci s těmito službami tím, že poskytuje jednotný koncový bod pro zpracování konkrétních požadavků souvisejících s LLM.

Kromě toho podpora Azure Databricks pro externí modely poskytuje centralizovanou správu přihlašovacích údajů. Uložením klíčů rozhraní API do jednoho zabezpečeného umístění můžou organizace zlepšit stav zabezpečení minimalizací vystavení citlivých klíčů rozhraní API v celém systému. Pomáhá také zabránit zveřejnění těchto klíčů v kódu nebo vyžadovat, aby koncoví uživatelé mohli bezpečně spravovat klíče.

Viz kurz: Vytvoření koncových bodů externího modelu pro dotazování modelů OpenAI pro podrobné pokyny k vytvoření koncového bodu externího modelu a dotazování podporovaných modelů obsluhovaných těmito koncovými body pomocí sady SDK pro nasazení MLflow. Pokyny k používání uživatelského rozhraní obsluhy a rozhraní REST API najdete v následujících příručkách:

Požadavky

poskytovatelé modelu

Externí modely ve službě Model Serving jsou navržené tak, aby podporovaly různé poskytovatele modelů. Poskytovatel představuje zdroj modelů strojového učení, jako jsou OpenAI, Anthropic atd. Každý poskytovatel má své specifické vlastnosti a konfigurace, které jsou zapouzdřeny v external_model poli konfigurace koncového bodu externího modelu.

Podporují se následující poskytovatelé:

Pokud chcete požádat o podporu poskytovatele, který tu není uvedený, zkuste použít možnost vlastního poskytovatele nebo se obraťte na tým účtů Databricks.

Podporované modely

Model, který zvolíte, přímo ovlivňuje výsledky odpovědí, které získáte z volání rozhraní API. Proto zvolte model, který vyhovuje vašim požadavkům na případ použití. Například pro generování konverzačních odpovědí můžete zvolit model chatu. Naopak pro generování vkládání textu můžete zvolit model vkládání.

Podívejte se na podporované modely.

Používejte modely obsluhované na koncových bodech Model Serving

Koncové body pro poskytování modelů jako poskytovatel jsou podporovány pro typy koncových bodů llm/v1/completions, llm/v1/chat a llm/v1/embeddings. Tyto koncové body musí přijmout standardní parametry dotazu označené jako povinné, zatímco ostatní parametry se můžou ignorovat v závislosti na tom, jestli je koncový bod obsluhy modelu podporuje.

Informace o standardních parametrech dotazu najdete v tématu POST /serving-endpoints/{name}/invocations v referenčních informacích k rozhraní API.

Tyto koncové body musí vytvářet odpovědi v následujícím formátu OpenAI.

Úkoly k dokončení

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

Pro úkoly chatu:

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

Pro úlohy embedová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
  }
}

Konfigurace koncového bodu

Pokud chcete obsluhovat a dotazovat externí modely, musíte nakonfigurovat koncový bod obsluhy. Viz Vytvoření externího modelu obsluhující koncový bod

U externího modelu, který obsluhuje koncový bod, musíte zahrnout pole external_model a jeho parametry do served_entities části konfigurace koncového bodu. Pokud v koncovém bodu obsluhy nakonfigurujete více externích modelů , musíte zadat traffic_config procento směrování provozu pro každý externí model.

Pole external_model definuje model, do kterého tento koncový bod předává požadavky. Při zadávání modelu je důležité, aby poskytovatel podporoval požadovaný model. Například openai jako poskytovatel podporuje modely, jako je text-embedding-ada-002, ale jiní poskytovatelé nemusí. Pokud zprostředkovatel model nepodporuje, vrátí Databricks chybu HTTP 4xx při pokusu o směrování požadavků na tento model.

Následující tabulka shrnuje parametry pole external_model. Další informace o parametrech konfigurace koncového bodu naleznete v části POST /api/2.0/serving-endpoints.

Parameter Popisy
name Název modelu, který se má použít. Například gpt-3.5-turbo pro model OpenAI GPT-3.5-Turbo . Předává se jako součást textu požadavku s odpovídajícím klíčem: "model".
provider Určuje název zprostředkovatele pro tento model. Tato hodnota řetězce musí odpovídat podporovanému externímu modelu poskytovatele. Například openai pro modely OpenAI GPT-3.5 .
task Úkol odpovídá typu interakce jazykového modelu, kterou si přejete. Podporované úlohy jsou llm/v1/completions, llm/v1/chat, llm/v1/embeddings.
<provider>_config Obsahuje všechny další podrobnosti konfigurace potřebné pro model. To zahrnuje zadání základní adresy URL rozhraní API a klíče rozhraní API. Viz Konfigurace zprostředkovatele pro koncový bod.
Pokud používáte poskytovatele custom, zadejte tento parametr jako custom_provider_config.

Následuje příklad vytvoření koncového bodu externího modelu pomocí create_endpoint() rozhraní API. V tomto příkladu se požadavek odeslaný do koncového bodu dokončení předá modelu claude-2, který poskytuje 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}}"
                    }
                }
            }
        ]
    }
)

Konfigurace zprostředkovatele pro koncový bod

Při vytváření koncového bodu musíte zadat požadované konfigurace pro zadaného poskytovatele modelu. Následující části shrnují dostupné parametry konfigurace koncového bodu pro každého zprostředkovatele modelu.

Note

Databricks šifruje a bezpečně ukládá zadané přihlašovací údaje pro každého zprostředkovatele modelu. Tyto přihlašovací údaje se po odstranění přidružených koncových bodů automaticky odstraní.

OpenAI

Parametr konfigurace Description Povinné Default
openai_api_key Referenční údaj k tajnému klíči služby Azure Databricks pro klíč rozhraní API OpenAI využívající službu OpenAI. Pokud dáváte přednost přímému vložení klíče rozhraní API, podívejte se na openai_api_key_plaintext. Klíč rozhraní API musíte zadat pomocí jednoho z následujících polí: openai_api_key nebo openai_api_key_plaintext.
openai_api_key_plaintext Klíč API OpenAI je poskytován službou OpenAI jako řetězec prostého textu. Pokud chcete odkazovat na klíč pomocí Azure Databricks Secrets, viz openai_api_key. Klíč rozhraní API musíte zadat pomocí jednoho z následujících polí: openai_api_key nebo openai_api_key_plaintext musí být zadaný.
openai_api_type Volitelné pole pro zadání typu rozhraní OpenAI API, které se má použít. No openai
openai_api_base Základní adresa URL rozhraní OpenAI API. No https://api.openai.com/v1
openai_api_version Volitelné pole pro zadání verze rozhraní API OpenAI. No
openai_organization Volitelné pole pro zadání organizace v OpenAI. No

Cohere

Parametr konfigurace Description Povinné Default
cohere_api_key Odkaz na tajný klíč Azure Databricks pro klíč rozhraní Cohere API. Pokud dáváte přednost přímému vložení klíče rozhraní API, podívejte se na cohere_api_key_plaintext. Klíč rozhraní API musíte zadat pomocí jednoho z následujících polí: cohere_api_key nebo cohere_api_key_plaintext.
cohere_api_key_plaintext Klíč rozhraní API Cohere poskytnutý jako řetězec prostého textu. Pokud chcete odkazovat na klíč pomocí Azure Databricks Secrets, viz cohere_api_key. Klíč rozhraní API musíte zadat pomocí jednoho z následujících polí: cohere_api_key nebo cohere_api_key_plaintext.
cohere_api_base Základní adresa URL pro službu Cohere. No

Anthropic

Parametr konfigurace Description Povinné Default
anthropic_api_key Odkaz na tajný klíč Azure Databricks pro klíč API Anthropic. Pokud dáváte přednost přímému vložení klíče rozhraní API, podívejte se na anthropic_api_key_plaintext. Klíč rozhraní API musíte zadat pomocí jednoho z následujících polí: anthropic_api_key nebo anthropic_api_key_plaintext.
anthropic_api_key_plaintext Klíč rozhraní API Anthropic zadaný jako řetězec prostého textu. Pokud chcete odkazovat na klíč pomocí Azure Databricks Secrets, viz anthropic_api_key. Klíč rozhraní API musíte zadat pomocí jednoho z následujících polí: anthropic_api_key nebo anthropic_api_key_plaintext.

Azure OpenAI

Azure OpenAI má v porovnání s přímou službou OpenAI jedinečné funkce. Přehled najdete v dokumentaci k porovnání.

Parametr konfigurace Description Povinné Default
openai_api_key Odkaz na tajný klíč Azure Databricks pro klíč rozhraní API OpenAI pomocí služby Azure. Pokud dáváte přednost přímému vložení klíče rozhraní API, podívejte se na openai_api_key_plaintext. Klíč rozhraní API musíte zadat pomocí jednoho z následujících polí: openai_api_key nebo openai_api_key_plaintext.
openai_api_key_plaintext Klíč API OpenAI je pomocí služby Azure poskytován jako řetězec obyčejného textu. Pokud chcete odkazovat na klíč pomocí Azure Databricks Secrets, viz openai_api_key. Klíč rozhraní API musíte zadat pomocí jednoho z následujících polí: openai_api_key nebo openai_api_key_plaintext.
openai_api_type Slouží azure k ověření přístupového tokenu. Yes
openai_api_base Základní adresa URL služby Azure OpenAI API, kterou poskytuje Azure. Yes
openai_api_version Verze služby Azure OpenAI, která se má využít, určená datem. Yes
openai_deployment_name Název prostředku nasazení pro službu Azure OpenAI. Yes
openai_organization Volitelné pole pro zadání organizace v OpenAI. No

Pokud používáte Azure OpenAI s ID Microsoft Entra, použijte v konfiguraci koncového bodu následující parametry. Databricks předává https://cognitiveservices.azure.com/ jako výchozí rozsah tokenu ID Microsoft Entra.

Parametr konfigurace Description Povinné Default
microsoft_entra_tenant_id ID tenanta pro ověřování Microsoft Entra ID. Yes
microsoft_entra_client_id ID klienta pro ověřování Microsoft Entra ID. Yes
microsoft_entra_client_secret Referenční údaj tajného klíče Azure Databricks pro klientský tajný klíč používaný pro ověřování Microsoft Entra ID. Pokud dáváte přednost přímému vložení klientského klíče, podívejte se na microsoft_entra_client_secret_plaintext. Klíč rozhraní API musíte zadat pomocí jednoho z následujících polí: microsoft_entra_client_secret nebo microsoft_entra_client_secret_plaintext.
microsoft_entra_client_secret_plaintext Tajný klíč klienta používaný pro ověřování Microsoft Entra ID zadaný jako řetězec prostého textu. Pokud chcete odkazovat na klíč pomocí Azure Databricks Secrets, viz microsoft_entra_client_secret. Klíč rozhraní API musíte zadat pomocí jednoho z následujících polí: microsoft_entra_client_secret nebo microsoft_entra_client_secret_plaintext.
openai_api_type Použijte azuread k autentizaci s použitím ID Microsoft Entra. Yes
openai_api_base Základní adresa URL služby Azure OpenAI API, kterou poskytuje Azure. Yes
openai_api_version Verze služby Azure OpenAI, která se má využít, určená datem. Yes
openai_deployment_name Název prostředku nasazení pro službu Azure OpenAI. Yes
openai_organization Volitelné pole pro zadání organizace v OpenAI. No

Následující příklad ukazuje, jak vytvořit koncový bod pomocí 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 AI

Parametr konfigurace Description Povinné Default
private_key Referenční informace k tajným klíčům Azure Databricks pro soubor JSON klíče účtu úplné služby pro účet služby, který má přístup ke službě Google Cloud Vertex AI. Toto je celý obsah souboru klíče JSON staženého z Google Cloudu, nejen pole private_key . Přečtěte si osvědčené postupy pro správu klíčů účtu služby. Pokud dáváte přednost přímému vložení klíče, viz private_key_plaintext. Klíč musíte zadat pomocí jednoho z následujících polí: private_key nebo private_key_plaintext.
private_key_plaintext Úplný klíč JSON účtu služby pro účet služby, který má přístup ke službě Google Cloud Vertex AI, poskytnutý jako tajný údaj v prostém textu. Toto je celý obsah souboru klíče JSON staženého z Google Cloudu, nejen pole private_key . Přečtěte si osvědčené postupy pro správu klíčů účtu služby. Pokud chcete odkazovat na klíč pomocí Azure Databricks Secrets, viz private_key. Klíč musíte zadat pomocí jednoho z následujících polí: private_key nebo private_key_plaintext.
region Jedná se o oblast pro službu Google Cloud Vertex AI. Další podrobnosti najdete v podporovaných oblastech . Některé modely jsou dostupné jenom v konkrétních oblastech. Yes
project_id Toto je ID projektu Google Cloud, ke kterému je účet služby přidružený. Yes

Amazon Bedrock

Pokud chcete jako externího poskytovatele modelů použít Amazon Bedrock, musí zákazníci zajistit, aby byl v zadané oblasti AWS povolený bedrock a zadaný pár klíčů AWS má příslušná oprávnění pro interakci se službami Bedrock. Další informace najdete v tématu AWS Identity and Access Management.

Parametr konfigurace Description Povinné Default
aws_region Oblast AWS, která se má použít. Bedrock tam musí být povolen. Yes
aws_access_key_id Odkaz na tajný klíč Azure Databricks pro ID přístupového klíče AWS s oprávněními interagovat se službami Bedrock. Pokud dáváte přednost přímému vložení klíče rozhraní API, podívejte se na aws_access_key_id_plaintext. Klíč rozhraní API musíte zadat pomocí jednoho z následujících polí: aws_access_key_id nebo aws_access_key_id_plaintext.
aws_access_key_id_plaintext ID přístupového klíče AWS s oprávněními pro interakci se službami Bedrock poskytované jako řetězec prostého textu. Pokud chcete odkazovat na klíč pomocí Azure Databricks Secrets, viz aws_access_key_id. Klíč rozhraní API musíte zadat pomocí jednoho z následujících polí: aws_access_key_id nebo aws_access_key_id_plaintext.
aws_secret_access_key Referenční odkaz na tajný klíč Azure Databricks pro tajný přístupový klíč AWS spárovaný s ID přístupového klíče, který má oprávnění k interakci se službami Bedrock. Pokud dáváte přednost přímému vložení klíče rozhraní API, podívejte se na aws_secret_access_key_plaintext. Klíč rozhraní API musíte zadat pomocí jednoho z následujících polí: aws_secret_access_key nebo aws_secret_access_key_plaintext.
aws_secret_access_key_plaintext Tajný přístupový klíč AWS spárovaný s ID přístupového klíče s oprávněními pro interakci se službami Bedrock poskytnuté jako řetězec prostého textu. Pokud chcete odkazovat na klíč pomocí Azure Databricks Secrets, viz aws_secret_access_key. Klíč rozhraní API musíte zadat pomocí jednoho z následujících polí: aws_secret_access_key nebo aws_secret_access_key_plaintext.
bedrock_provider Poskytovatel základní služby v Amazon Bedrocku. Mezi podporované hodnoty (nerozlišující malá a velká písmena) patří: Anthropic, Cohere, AI21Labs, Amazon Yes

Následující příklad ukazuje, jak vytvořit koncový bod s Amazon Bedrock pomocí přístupových klíčů.

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

Note

Pokud chcete použít existující mantinely Amazon Bedrock s modely Amazon Bedrock prostřednictvím AI Gateway, můžete záhlaví nastavit X-Amzn-Bedrock-GuardrailIdentifier na ochranné mantinely ARN podle vašeho výběru a podle potřeby nastavit X-Amzn-Bedrock-GuardrailVersion . Tyto hlavičky se předávají na Amazon Bedrock.

Pokud dojde k problémům s oprávněními AWS, databricks doporučuje ověřit přihlašovací údaje přímo pomocí rozhraní AMAZON Bedrock API.

Testovací prostředí AI21

Parametr konfigurace Description Povinné Default
ai21labs_api_key Odkaz na tajný klíč Azure Databricks pro klíč rozhraní API AI21 Labs. Pokud dáváte přednost přímému vložení klíče rozhraní API, podívejte se na ai21labs_api_key_plaintext. Klíč rozhraní API musíte zadat pomocí jednoho z následujících polí: ai21labs_api_key nebo ai21labs_api_key_plaintext.
ai21labs_api_key_plaintext Klíč rozhraní API AI21 Labs poskytnutý jako řetězec prostého textu. Pokud chcete odkazovat na klíč pomocí Azure Databricks Secrets, viz ai21labs_api_key. Klíč rozhraní API musíte zadat pomocí jednoho z následujících polí: ai21labs_api_key nebo ai21labs_api_key_plaintext.

Vlastní poskytovatel

Important

Pokud chcete použít vlastní model zprostředkovatele, musí být kompatibilní s rozhraním API OpenAI.

Parametr konfigurace Description Povinné Default
custom_provider_url Adresa URL, kde se nachází model vlastního poskytovatele. Adresa URL musí odkazovat na konkrétní koncový bod rozhraní API; například https://api.provider.com/chat/completions. Yes
bearer_token_auth Pokud vlastní zprostředkovatel využívá ověřování pomocí nosiče tokenu, uveďte požadovaná pole. Metodu ověřování je nutné zadat pomocí jednoho z následujících polí: bearer_token_auth nebo api_key_auth.
token Referenční informace ke tajným klíčům Azure Databricks pro token pro ověřování nosných tokenů. Tento parametr musí být vnořený pod bearer_token_auth. Pokud dáváte přednost přímému vložení klíče rozhraní API, podívejte se na token_plaintext. Pokud používáte nosné ověřování, musíte zadat klíč rozhraní API pomocí jednoho z následujících polí: token nebo token_plaintext.
token_plaintext Token pro ověřování nositele poskytnutý jako nešifrovaný textový řetězec. Tento parametr musí být vnořený pod bearer_token_auth. Pokud chcete odkazovat na klíč pomocí tajných kódů Azure Databricks, přečtěte si token. Pokud používáte nosné ověřování, musíte zadat klíč rozhraní API pomocí jednoho z následujících polí: token nebo token_plaintext.
api_key_auth Pokud vlastní poskytovatel využívá ověřování pomocí API klíče, zadejte potřebná pole. Metodu ověřování je nutné zadat pomocí jednoho z následujících polí: bearer_token_auth nebo api_key_auth.
key Klíč pro ověřování klíčů rozhraní API. Tento parametr musí být vnořený pod api_key_auth Ano, pokud používáte ověřování pomocí klíče rozhraní API.
value Referenční informace k tajnému klíči služby Azure Databricks pro hodnotu potřebnou pro ověřování pomocí klíče API. Pokud dáváte přednost přímému vložení klíče rozhraní API, podívejte se na value_plaintext. Pokud používáte ověřování pomocí klíče rozhraní API, musíte klíč rozhraní API zadat pomocí jednoho z následujících polí: value nebo value_plaintext.
value_plaintext Hodnota pro ověřování pomocí klíče rozhraní API zadaná jako řetězec prostého textu. Pokud chcete odkazovat na klíč pomocí tajných kódů Azure Databricks, přečtěte si value. Pokud používáte ověřování pomocí klíče rozhraní API, musíte klíč rozhraní API zadat pomocí jednoho z následujících polí: value nebo value_plaintext.

Následující příklad ukazuje, jak vytvořit koncový bod s vlastním poskytovatelem pomocí ověřování nosiče :

client.create_endpoint(
    name="custom-provider-completions-endpoint",
    config={
        "served_entities": [
            {
                "external_model": {
                    "name": "custom-provider-model",
                    "provider": "custom",
                    "task": "llm/v1/chat",
                    "custom_provider_config": {
                        "custom_provider_url": "https://api.provider.com/chat/completions",
                        "bearer_token_auth": {
                            "token": "{{secrets/my_custom_provider_secret_scope/custom_provider_token}}"
                        }
                    }
                }
            }
        ]
    },
)

Následující příklad ukazuje, jak vytvořit koncový bod s vlastním poskytovatelem pomocí ověřování prostřednictvím klíče API :

client.create_endpoint(
    name="custom-provider-completions-endpoint",
    config={
        "served_entities": [
            {
                "external_model": {
                    "name": "custom-provider-model",
                    "provider": "custom",
                    "task": "llm/v1/chat",
                    "custom_provider_config": {
                        "custom_provider_url": "https://my-custom-provider.com",
                        "api_key_auth": {
                            "key": "X-API-KEY",
                            "value": "{{secrets/my_custom_provider_secret_scope/custom_provider_api_key}}"
                        }
                    }
                }
            }
        ]
    },
)

Konfigurace služby AI Gateway na koncovém bodu

Koncový bod můžete také nakonfigurovat tak, aby umožňoval funkce AI Gateway , jako jsou omezování rychlosti, sledování využití a mantinely.

Viz Konfigurujte AI bránu na koncových bodech pro obsluhu modelů.

Dotazování na koncový bod externího modelu

Po vytvoření koncového bodu externího modelu je připravený přijímat provoz od uživatelů.

Žádosti o bodování můžete do koncového bodu odesílat pomocí klienta OpenAI, rozhraní REST API nebo sady SDK pro nasazení MLflow.

Následující příklad dotazuje model claude-2 dokončení hostovaný společností Anthropic za použití klienta OpenAI. Pokud chcete použít klienta OpenAI, vyplňte model pole názvem koncového bodu obsluhujícího model, který je hostitelem modelu, který chcete dotazovat.

Tento příklad používá dříve vytvořený koncový bod nakonfigurovaný anthropic-completions-endpointpro přístup k externím modelům od poskytovatele modelu Anthropic. Podívejte se, jak vytvořit koncové body externího modelu.

Další modely, které můžete dotazovat a jejich poskytovatele, najdete v podporovaných modelů.

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)

Očekávaný formát výstupní odpovědi:

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

Další parametry dotazu

V rámci dotazu můžete předat jakékoli další parametry podporované poskytovatelem koncového bodu.

Příklad:

  • logit_bias (podporuje OpenAI, Cohere).
  • top_k (podporuje Anthropic, Cohere).
  • frequency_penalty (podporuje OpenAI, Cohere).
  • presence_penalty (podporuje OpenAI, Cohere).
  • stream (podporuje OpenAI, Anthropic, Cohere, Amazon Bedrock for Anthropic). Tato možnost je dostupná jenom pro žádosti o chat a dokončení.
  • tools (podporuje OpenAI, Anthropic, Amazon Bedrock for Anthropic). Tato možnost je dostupná jenom pro žádosti o chat a dokončení. Tento parametr umožňuje integraci externích funkcí, včetně Computer Use (beta) pro Anthropic a Amazon Bedrock for Anthropic. Podívejte se na volání funkcí na službě Azure Databricks.

Podpora konfigurací síťového připojení pro externí modely

Podpora konfigurací síťového připojení (NCCS) pro externí modely, včetně privátního propojení Azure, je ve verzi Public Preview. Pokud se chcete zúčastnit preview, obraťte se na tým zodpovědný za váš účet Databricks.

Limitations

V závislosti na zvoleném externím modelu může vaše konfigurace způsobit zpracování dat mimo oblast, odkud vaše data pocházejí. Viz Omezení a oblasti služby Model Serving.

Dodatečné zdroje