Het Azure Machine Learning-schema onderzoeken
Met het azure_ml schema van de azure_ai-extensie kan uw database communiceren met de mogelijkheden van aangepaste machine learning-modellen. Door gebruik te maken van het azure_ml schema, kunt u uw PostgreSQL-database naadloos integreren met Azure Machine Learning-services. Met deze integratie kunt u machine learning-modellen rechtstreeks vanuit uw database implementeren en bedienen, waardoor realtime deductie efficiënt en schaalbaar wordt.
Realtime deductie met het azure_ml schema
Azure Machine Learning- is een cloudplatform dat end-to-end machine learning-werkstromen stroomlijnt. In Azure Machine Learning worden modellen ontwikkeld met behulp van populaire frameworks zoals PyTorch en TensorFlow. Zodra deze modellen zijn getraind, worden deze modellen geïmplementeerd als eindpunten, stabiele URL's waar voorspellingen kunnen worden aangevraagd.
Met de online-eindpunten die realtime deductie bieden, is Azure Machine Learning geïntegreerd met de azure_ai-extensie, zodat u rechtstreeks vanuit uw database nauwkeurige voorspellingen kunt doen. De inference functie in dit schema is ontworpen om voorspellingen te doen of uitvoer te genereren met behulp van een getraind model van Azure Machine Learning. Wanneer u een model implementeert, kunt u met de deductiefunctie het model aanroepen en voorspellingen over nieuwe gegevens verkrijgen.
azure_ml.inference(jsonb,integer,boolean,text)
De functie inference() verwacht de volgende invoerparameters:
| Kenmerk | Typologie | Verstek | Beschrijving |
|---|---|---|---|
| invoergegevens | jsonb |
Een JSON-object met het input_data-object dat is vereist voor interactie met Azure Machine Learning-modellen. |
|
| deployement_naam | text |
NULL::text |
(Optioneel) De naam van de modelimplementatie die moet worden gericht op het opgegeven Azure Machine Learning-eindpunt. |
| timeout_ms (milliseconden) | integer |
NULL::integer |
Hiermee stelt u de maximale tijd (in milliseconden) in om te wachten op een deductiebewerking voordat er een time-out optreedt. |
| gooi_bij_fout | boolean |
true |
Bepaalt of er een fout wordt gegenereerd als de deductiebewerking een probleem ondervindt. |
| max_pogingen | integer |
1 |
Aantal keren dat de aanroep naar de Azure OpenAI-service opnieuw moet worden uitgevoerd in het geval van een fout. |
| retry_delay_ms | integer |
1000 |
Hoeveelheid tijd, in milliseconden, om te wachten voordat u het Azure OpenAI-service-eindpunt opnieuw probeert aan te roepen. |
Azure Machine Learning-deductie-eindpunten verwachten een JSON-object (JavaScript Object Notation) als invoer. De structuur van dit object is echter afhankelijk van het onderliggende model. Een regressiemodel dat is getraind om de dagelijkse huurprijzen te voorspellen voor huurwoningen op korte termijn in het gebied Seattle, Washington, opgegeven specifieke invoer zoals de buurt, postcode, aantal slaapkamers, het aantal badkamers en meer, heeft de volgende vorm:
{
"input_data": {
"columns": [
"host_is_superhost",
"host_has_profile_pic",
"host_identity_verified",
"neighbourhood_group_cleansed",
"zipcode",
"property_type",
"room_type",
"accommodates",
"bathrooms",
"bedrooms",
"beds"
],
"index": [0],
"data": [["False", "False", "False", "Central Area", "98122", "House", "Entire home/apt", 4, 1.5, 3, 3]]
}
}
De verwachte structuur van het invoerobject kan worden opgehaald door de Swagger-definitie te onderzoeken die is gekoppeld aan uw geïmplementeerde eindpunt. Deze definitie geeft de ServiceInput en ServiceOutput structuren op, die u kunt gebruiken om uw invoer en uitvoer te bepalen.
Een verbinding met Azure Machine Learning configureren
Voordat u de azure_ml.inference()-functie gebruikt om realtime deductie uit te voeren, moet u de extensie configureren met uw Azure Machine Learning-score-eindpunt en -sleutel. De waarde voor azure_ml.scoring_endpoint is het REST-eindpunt voor uw geïmplementeerde model. De waarde voor azure_ml.endpoint_key kan de primaire of de secundaire sleutel voor dit eindpunt zijn.
SELECT azure_ai.set_setting('azure_ml.scoring_endpoint', '{endpoint}');
SELECT azure_ai.set_setting('azure_ml.endpoint_key', '{api-key}');