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


Erőforrásokhoz való hozzáférés konfigurálása végpontokat kiszolgáló modellből

Ez a cikk azt ismerteti, hogyan konfigurálhatja a külső és a privát erőforrásokhoz való hozzáférést a végpontokat kiszolgáló modellből. A Modellkiszolgáló támogatja az egyszerű szöveges környezeti változókat és a titkos kódokon alapuló környezeti változókat a Databricks titkos kulcsok használatával.

Követelmények

Titkos kódokon alapuló környezeti változók esetén:

  • A végpont létrehozójának olvasási hozzáféréssel kell rendelkeznie a konfigurációkban hivatkozott Databricks-titkos kódokhoz.
  • A hitelesítő adatokat, például az API-kulcsot vagy más jogkivonatokat Databricks-titkos kódként kell tárolnia.

Egyszerű szöveges környezeti változók hozzáadása

Egyszerű szöveges környezeti változókkal olyan változókat állíthat be, amelyeknek nem kell rejtve lenniük. Végpont létrehozásakor vagy frissítésekor változókat állíthat be a kiszolgáló felhasználói felületén vagy a REST API-ban.

A Kiszolgáló felhasználói felületén hozzáadhat egy környezeti változót a Speciális konfigurációkban:

Végpontot kiszolgáló modell létrehozása

Az alábbiakban egy példa szolgál ki végpontot a REST API és a POST /api/2.0/serving-endpointsenvironment_vars mező használatával a környezeti változó konfigurálásához.


{
  "name": "endpoint-name",
  "config":{
   "served_entities": [{
     "entity_name": "model-name",
     "entity_version": "1",
     "workload_size": "Small",
     "scale_to_zero_enabled": "true",
     "environment_vars":{
        "TEXT_ENV_VAR_NAME": "plain-text-env-value"
      }
    }]
  }
}

Titkos kódokon alapuló környezeti változók hozzáadása

Biztonságosan tárolhatja a hitelesítő adatokat a Databricks titkos kulcsainak használatával, és hivatkozhat ezekre a titkos kulcsokra a titkos kódokon alapuló környezeti változókat használó modellben. Ez lehetővé teszi a hitelesítő adatok lekérését a végpontokat kiszolgáló modellből a szolgáltatás ideje alatt.

Például hitelesítő adatokat adhat át az OpenAI és más külső modellvégpontok meghívásához, vagy a külső adattárolási helyekhez való hozzáféréshez közvetlenül a modellkiszolálásból.

A Databricks ezt a funkciót az OpenAI és a LangChain MLflow modell ízeinek kiszolgálására javasolja. Más, hitelesítő adatokat igénylő SaaS-modellekre is alkalmazható, azzal a megértéssel, hogy a hozzáférési minta környezeti változókon, API-kulcsokon és jogkivonatokon alapul.

1. lépés: Titkos kulcs hatókörének létrehozása

A modell kiszolgálása során a titkos kulcsokat a titkos kulcs hatóköre és kulcsa kéri le a Databricks-titkos kódokból. Ezek a titkos környezeti változók neveihez lesznek hozzárendelve, amelyek a modellen belül használhatók.

Először hozzon létre egy titkos hatókört. Lásd: Titkos kulcsok hatókörei.

A parancssori felület parancsai a következők:


databricks secrets create-scope my_secret_scope

Ezután hozzáadhatja a titkos kulcsot a kívánt titkos kulcs hatóköréhez és kulcsához az alábbiak szerint:


databricks secrets put-secret my_secret_scope my_secret_key

A titkos információk és a környezeti változó neve ezután átadható a végpont konfigurációjának a végpont létrehozásakor vagy egy meglévő végpont konfigurációjának frissítéseként.

2. lépés: Titkos kulcs hatóköreinek hozzáadása a végpontkonfigurációhoz

A titkos kulcs hatókörét hozzáadhatja egy környezeti változóhoz, és átadhatja a változót a végpontnak a végpont létrehozása vagy konfigurációfrissítései során. Lásd: Végpontokat kiszolgáló egyéni modell létrehozása.

A Kiszolgáló felhasználói felületén hozzáadhat egy környezeti változót a Speciális konfigurációkban. A titkos kódokon alapuló környezeti változót a következő szintaxissal kell megadni: {{secrets/scope/key}}. Ellenkező esetben a környezeti változó egyszerű szöveges környezeti változónak minősül.

Végpontot kiszolgáló modell létrehozása

Az alábbiakban egy példa szolgál ki végpontot a REST API használatával. A végpontlétrehozási és konfigurációs frissítéseket kiszolgáló modell során megadhatja a titkos környezeti változók specifikációinak listáját az API-kérelemben a mező használatával environment_vars .

Az alábbi példa a megadott kódban létrehozott titkos kódból származó értéket rendeli hozzá a környezeti változóhoz OPENAI_API_KEY.

{
  "name": "endpoint-name",
  "config":{
   "served_entities": [{
     "entity_name": "model-name",
     "entity_version": "1",
     "workload_size": "Small",
     "scale_to_zero_enabled": "true",
     "environment_vars":{
        "OPENAI_API_KEY": "{{secrets/my_secret_scope/my_secret_key}}"
      }
    }]
   }
}

Egy kiszolgálóvégpontot is frissíthet, ahogyan az alábbi PUT /api/2.0/serving-endpoints/{name}/config REST API-példában is látható:


{
  "served_entities": [{
    "entity_name": "model-name",
    "entity_version": "2",
    "workload_size": "Small",
    "scale_to_zero_enabled": "true",
    "environment_vars":{
      "OPENAI_API_KEY": "{{secrets/my_secret_scope/my_secret_key}}"
     }
   }]
}

A végpont létrehozása vagy frissítése után a kiszolgáló modell automatikusan lekéri a titkos kulcsot a Databricks titkos kulcs hatóköréből, és feltölti a modell következtetési kódjának környezeti változóját.

Példa jegyzetfüzetre

Az alábbi jegyzetfüzetből megtudhatja, hogyan konfigurálhat OpenAI API-kulcsot egy LangChain-lekéréses minőségbiztosítási lánchoz a végpontokat titkos környezeti változókkal kiszolgáló modell mögött.

Erőforrásokhoz való hozzáférés konfigurálása végpontokat kiszolgáló modell jegyzetfüzetéből

Jegyzetfüzet beszerzése