Configurare l’ottimizzazione della route per la gestione degli endpoint
Questo articolo descrive come configurare l’ottimizzazione della route per la gestione del modello o la gestione delle funzionalità degli endpoint e come eseguire query su di essi. Indirizzare gli endpoint ottimizzati per gestire in modo significativo la latenza di overhead e consentire miglioramenti sostanziali della velocità effettiva supportata dall'endpoint.
L’ottimizzazione della route è consigliata per carichi di lavoro sensibili alla velocità effettiva o alla latenza elevata.
Requisiti
- Per l’ottimizzazione della route in un endpoint di gestione del modello, vedere Requisiti.
- Per l’ottimizzazione della route in un endpoint di gestione delle funzionalità, vedere Requisiti.
Abilitare l’ottimizzazione della route in un endpoint di gestione del modello
Specificare il parametro durante la route_optimized
creazione dell’endpoint di gestione del modello per configurare l’endpoint per l’ottimizzazione della route. È possibile specificare questo parametro solo durante la creazione dell’endpoint, non è possibile aggiornare gli endpoint esistenti per l’ottimizzazione della route.
POST /api/2.0/serving-endpoints
{
"name": "my-endpoint",
"config":{
"served_entities": [{
"entity_name": "ads1",
"entity_version": "1",
"workload_type": "CPU",
"workload_size": "Small",
"scale_to_zero_enabled": true,
}],
},
"route_optimized": true
}
È possibile abilitare l’ottimizzazione della route per un endpoint nell’interfaccia utente di gestione. Se si usa Python, è possibile usare il notebook seguente per creare un endpoint di gestione ottimizzato per la route.
Creare un endpoint di gestione ottimizzato per la route usando il notebook Python
Abilitare l’ottimizzazione della route in un endpoint di gestione delle funzionalità
Per usare l’ottimizzazione della route per Funzionalità e Gestione funzioni, specificare il nome completo della specifica di funzionalità nel entity_name
campo per la gestione delle richieste di creazione degli endpoint. Non entity_version
è necessario per FeatureSpecs
.
POST /api/2.0/serving-endpoints
{
"name": "my-endpoint",
"config": {
"served_entities": [
{
"entity_name": "catalog_name.schema_name.feature_spec_name",
"workload_type": "CPU",
"workload_size": "Small",
"scale_to_zero_enabled": true
}
]
},
"route_optimized": true
}
Eseguire query sui modelli ottimizzati per la gestione degli endpoint
I passaggi seguenti illustrano come testare una query su un endpoint di gestione del modello ottimizzato per la route.
Per l’uso di produzione, ad esempio usando l’endpoint ottimizzato per la route in un’applicazione, è necessario creare un token OAuth. I passaggi seguenti mostrano come recuperare un token nell’interfaccia utente di servizio. Per i flussi di lavoro a livello di codice, consultare la sezione Recuperare un token OAuth a livello di codice.
- Recuperare un token OAuth dall'interfaccia utente Di servizio dell’area di lavoro.
- Fare clic su Serve nella barra laterale per visualizzare l'interfaccia utente di servizio.
- Nella pagina Gestione degli endpoint selezionare l’endpoint ottimizzato per la route per visualizzare i dettagli dell’endpoint.
- Nella pagina dei dettagli dell’endpoint fare clic sul pulsante Endpoint query.
- Selezionare la scheda Fetch Token.
- Selezionare il pulsante Fetch OAuth Token. Questo token è valido solo per un’ora. Recuperare un nuovo token se il token corrente scade.
- Ottenere l’URL dell'endpoint di gestione del modello dalla pagina dei dettagli dell’endpoint dall'interfaccia utente di servizio.
- Usare il token OAuth del passaggio 1 e l'URL dell’endpoint del passaggio 2 per popolare il codice di esempio seguente che esegue una query sull’endpoint ottimizzato per la route.
url="your-endpoint-url"
OAUTH_TOKEN=xxxxxxx
curl -X POST -H 'Content-Type: application/json' -H "Authorization: Bearer $OAUTH_TOKEN" -d@data.json $url
Per un SDK Python per eseguire query su un endpoint ottimizzato per la route, contattare il team dell’account Databricks.
Recuperare un token OAuth a livello di codice
Accesso autenticato ad Azure Databricks con un'entità servizio usando OAuth (OAuth M2M) fornisce indicazioni su come recuperare un token OAuth a livello di codice. Oltre a questi passaggi, è necessario specificare authorization_details
nella richiesta.
- Sostituire
<token-endpoint-URL>
con l’URL dell’endpoint del token precedente. - Sostituire
<client-id>
con l’ID client dell’entità servizio, noto anche come ID applicazione. - Sostituire
<client-secret>
con il segreto OAuth dell’entità servizio creato. - Sostituire
<endpoint-id>
con l’ID endpoint dell’endpoint ottimizzato per la route. È possibile recuperarlo da hostName nell’URL dell’endpoint. - Sostituire
<action>
con l’autorizzazione assegnata all’entità servizio. L’azione può esserequery_inference_endpoint
omanage_inference_endpoint
.
Ad esempio:
export CLIENT_ID=<client-id>
export CLIENT_SECRET=<client-secret>
export ENDPOINT_ID=<endpoint-id>
export ACTION=<action>
curl --request POST \
--url <token-endpoint-URL> \
--user "$CLIENT_ID:$CLIENT_SECRET" \
--data 'grant_type=client_credentials&scope=all-apis'
--data-urlencode 'authorization_details=[{"type":"workspace_permission","object_type":"serving-endpoints","object_path":"'"/serving-endpoints/$ENDPOINT_ID"'","actions": ["'"$ACTION"'"]}]'
Limiti
- L’ottimizzazione della route è disponibile solo per gli endpoint personalizzati che servono endpoint e funzionalità di gestione delle funzionalità. Le API del modello di base e i modelli esterni non sono supportati.
- I token OAuth interni di Databricks sono l’unica autenticazione supportata per l’ottimizzazione della route. I token di accesso personali non sono supportati.
- L’ottimizzazione della route non applica alcuna restrizione di rete collegamento privato configurata nell'area di lavoro di Azure Databricks. Se è necessario che il modello che gestisce il traffico sia associato da tali controlli, non abilitare l’ottimizzazione della route. Se si hanno questi requisiti di rete e si vuole comunque provare a indirizzare la gestione dei modelli ottimizzati, contattare il team dell’account Databricks.
- L’ottimizzazione della route non è disponibile in determinate aree. Se non viene visualizzata l’opzione per abilitare l’ottimizzazione della route nell’interfaccia utente di gestione, contattare il team dell’account databricks.