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:
Az alábbiakban egy példa szolgál ki végpontot a REST API és a POST /api/2.0/serving-endpoints
environment_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.
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
Visszajelzés
https://aka.ms/ContentUserFeedback.
Hamarosan elérhető: 2024-ben fokozatosan kivezetjük a GitHub-problémákat a tartalom visszajelzési mechanizmusaként, és lecseréljük egy új visszajelzési rendszerre. További információ:Visszajelzés küldése és megtekintése a következőhöz: