Integrare il Database di Azure per PostgreSQL con servizi di Azure Machine Learning
L'estensione Azure per intelligenza artificiale consente di richiamare tutti i modelli di Machine Learning distribuiti in endpoint online di Azure Machine Learning dall'interno di SQL. Questi modelli possono provenire dal catalogo di Azure Machine Learning o dai modelli personalizzati sottoposti a training e distribuiti.
Prerequisiti
- Abilitare e configurare l'
azure_ai
estensione. - Creare un'area di lavoro di Machine Learning e distribuire un modello con un endpoint online usando l'interfaccia della riga di comando, Python o studio di Azure Machine Learning o distribuire un modello mlflow in un endpoint online.
- Verificare lo stato della distribuzione per assicurarsi che il modello sia stato distribuito correttamente e testare il modello richiamando l'endpoint per garantire che venga eseguito correttamente.
- Ottenere l'URI e la chiave, necessari per configurare l'estensione per comunicare con Azure Machine Learning.
Nota
È possibile visualizzare alcuni esempi di Azure Machine Learning.
Configurare l'endpoint di Azure Machine Learning
In studio di Azure Machine Learning, in Endpoint>Seleziona l'endpoint>Usa è possibile trovare l'URI dell'endpoint e la chiave per l'endpoint online. Usare questi valori per configurare l'estensione azure_ai
per usare l'endpoint di inferenza online.
select azure_ai.set_setting('azure_ml.scoring_endpoint','<URI>');
select azure_ai.set_setting('azure_ml.endpoint_key', '<Key>');
azure_ml.invoke
Assegna punteggi ai dati di input richiamando una distribuzione di un modello di Azure Machine Learning in un endpoint online.
azure_ml.invoke(input_data jsonb, timeout_ms integer DEFAULT NULL, throw_on_error boolean DEFAULT true, deployment_name text DEFAULT NULL)
Argomenti
input_data
jsonb
json contenente il payload della richiesta per il modello.
deployment_name
text
nome della distribuzione corrispondente al modello distribuito nell'endpoint di inferenza online di Azure Machine Learning
timeout_ms
integer DEFAULT NULL
timeout in millisecondi dopo il quale l'operazione viene arrestata. La distribuzione di un modello stesso può avere un timeout specificato, corrispondente a un valore inferiore rispetto al parametro di timeout nella funzione definita dall'utente. Se questo timeout viene superato, l'operazione di assegnazione dei punteggi avrà esito negativo.
throw_on_error
boolean DEFAULT true
in caso di errore, la funzione genera un'eccezione che genera un rollback delle transazioni di wrapping.
max_attempts
integer DEFAULT 1
numero di tentativi dell'estensione che chiamano l'endpoint di Azure Machine Learning in caso di errore irreversibile.
retry_delay_ms
integer DEFAULT 1000
periodo di tempo (millisecondi) di attesa dell'estensione prima di chiamare l'endpoint di Azure Machine Learning, in qula caso avrà esito negativo con qualsiasi errore ripetibile.
Tipo restituito
jsonb
output di assegnazione dei punteggi per il modello richiamato in JSONB.
Esempi
Richiamare il modello di Machine Learning
Viene chiamato il modello con input_data e viene restituito un payload jsonb.
-- Invoke model, input data depends on the model.
SELECT * FROM azure_ml.invoke('
{
"input_data": [
[1,2,3,4,5,6,7,8],
[-1,-2,-3,-4,-5,-6,-7,-8]
],
"params": {}
}', deployment_name=>'Housingprediction' )
-- Get JSON elements from model output
SELECT jsonb_array_elements(invoke.invoke) as MedianHousePrediction
FROM azure_ml.invoke('
{
"input_data": [
[1,2,3,4,5,6,7,8],
[-1,-2,-3,-4,-5,-6,-7,-8]
],
"params": {}
}', deployment_name=>'Housingprediction' )
Contenuto correlato
- Integrare Database di Azure per PostgreSQL - Server flessibile con Servizi cognitivi di Azure.
- Generare incorporamenti vettoriali in Database di Azure per PostgreSQL - Server flessibile con LLM (anteprima) distribuito localmente.
- Generare incorporamenti vettoriali con Azure OpenAI in Database di Azure per PostgreSQL - Server flessibile.
- Estensione azure per intelligenza artificiale in Database di Azure per PostgreSQL - Server flessibile.
- Intelligenza artificiale generativa con Database di Azure per PostgreSQL - Server flessibile.
- Sistema di raccomandazione con Database di Azure per PostgreSQL - Server flessibile e OpenAI di Azure.
- Ricerca semantica con Database di Azure per PostgreSQL - Server flessibile e OpenAI di Azure.
- Abilitare e usare pgvector in Database di Azure per PostgreSQL - Server flessibile.