Vai al contenuto

Definizione Manuale del Metamodello del Service

In Asset -> Service abbiamo visto come definire delle Service Property per il Service utilizzando l'interfaccia grafica. Dietro le quinte, ALIDA converte quanto inserito interattivamente in un metamodello JSON. Tale JSON può essere anche definito manualmente e caricato da UI.

Per accedere all'editor JSON del metamodello, raggiungere il pannello di registrazione Service e cliccare su Service Definition

service-registration-form-with-json-service-definition-button-highlighted

Registrazione service - Service definition

Si aprirà l'editor per l'inserimento del metamodello:

service-registration-json-service-definition-editor

Editor inserimento metamodel

Attributo Descrizione
name Nome univoco del Service
version Versione del Service
description Breve descrizione testuale del Service
url L'URL dell’immagine Docker del Service, con prefisso docker:// e tag di versione.
Esempio: docker://dockerhub.alidalab.it/alida/restricted/services/great-expectations:1.1.0
accessLevel Livello di visibilità del Service
properties Array di property (l’elenco di parametri e porte I/O del Service)
markdown Documentazione testuale in formato markdown associata al Service e mostrata nella UI

Per il generico property, elemento dell'array properties, gli attributi sono:

Attributo Descrizione
key Identificatore univoco della property. Usato come riferimento nel codice e in UI
description Testo descrittivo mostrato in UI
type Tipologia della property (application, resource, static). Determina il comportamento della property
mandatory Indica se è obbligatoria (true | false)
defaultValue Valore di default. Sempre stringa/numero; JSON serializzati come stringa
valueType Tipo del valore atteso (string | int | json)
invisible Se per mostrare o meno la property in UI (true | false ). true per le porte input/output
model Info aggiuntive se la property è key = input-model { "format": "sklearn" }

Per model, l'unico attributo è:

Attributo Descrizione
format sklearn, huggingface, etc ..

Sintassi generale del JSON per il metamodello

metamodel-in-ebnf