GetModelAttributes

Renvoie les métadonnées au format JSON d’un modèle nommé actuellement chargé.

Format 

GetModelAttributes ( nomModèle )

Paramètres 

nomModèle : nom du modèle à évaluer. Cette valeur doit correspondre au nom d'un modèle précédemment chargé.

Résultat 

texte

Provient de la version 

19.3.1

Description 

Vous devez d'abord exécuter l'Configurer le modèle de Machine Learning action de script pour charger un modèle Core ML avant d'utiliser la fonction GetModelAttributes.

Voici un exemple des données renvoyée pour un modèle nommé ModèleTest qui fonctionne avec des images.

Copier
{
    "APIVers": 1,
    "configuration"
    {
        "computeUnits" : "Tout"
    },
    "modelDescription"
    {
        "classLabels"
        [
            "British Shorthair",
            "tabby, tabby marbré",
            . . .
            "husky sibérien",
            "beagle"
        ],
        "inputDescriptions"
        [
            {
                "featureName" : "image",
                "isOptional" : 0,
                "pixelFormat" : 1111970369,
                "pixelsHigh" : 299,
                "pixelsWide" : 299,
                "sizeRange"
                {
                    "heightMax" : 9223372036854775808,
                    "heightMin" : 299,
                    "widthMax" : 9223372036854775808,
                    "widthMin" : 299
                },
                "type" : "image"
            }
        ],
        "metadata"
        {
            "author" : "Tenete Jantelli",
            "creatorDefined"
            {
                "com.apple.coreml.model.preview.type" : "imageClassifier",
                "com.apple.createml.app.tag" : "47",
                "com.apple.createml.app.version" : "2.0",
                "com.apple.createml.version" : "10.15.5"
            },
            "description" : "Classificateur de chiens et chats",
            "license" : "",
            "version" : "1.0"
        },
        "outputDescriptions"
        [
            {
                "featureName" : "classLabel",
                "isOptional" : 0,
                "type" : "inconnu"
            },
            {
                "featureName" : "classLabelProbs",
                "isOptional" : 0,
                "type" : "inconnu"
            }
        ]
    },
    "modelName" : "ModèleTest"
}

Les attributs renvoyés dans l'objet JSON dépendent des données contenues dans le modèle. En général, le premier niveau de l'objet JSON contient les objets JSON suivants.

Élément JSON

Description

APIVers

Valeur numérique correspondant à la version de la structure de cet objet JSON. Si la structure de cet objet JSON change dans une version ultérieure, ce numéro changera également.

configuration

Il se peut qu'il contienne uniquement la clé computeUnits, qui a l'une des valeurs suivantes spécifiant les unités de traitement utilisées par le modèle lors de l'évaluation :

  • "Processeur uniquement"

  • "Processeur et processeur graphique"

  • "Tout"

modelDescription

Peut contenir :

  • classLabels : un tableau des noms qu'un modèle d'image peut reconnaître.

  • inputDescription : un tableau d'objets, chacun décrivant une entrée attendue par le modèle pour une fonction. Pour les modèles qui traitent des images, une seule entrée est généralement présente, qui peut contenir les clés suivantes :

    • featureName : pour les modèles d'image, la valeur est généralement "image". Notez que ces valeurs correspondent aux paramètres nommés transmis à la ComputeModel fonction.

    • isOptional : indique si cette fonction est facultative.

    • type : pour les modèles d'image, la valeur est généralement "image". Pour les modèles généraux, les valeurs peuvent être "Int64," "Double"ou "Chaîne".

    • Autres attributs qui décrivent les contraintes d'une image d'entrée.

  • metadata : un objet contenant l'auteur, la description, la licence, la version et des métadonnées personnalisées définies par le créateur du modèle.

  • outputDescription : un tableau d'objets, chacun décrivant une sortie fournie par le modèle pour une fonction. Ce tableau est similaire à inputDescription mais fournit généralement moins d'informations.

  • paramDescriptions : un tableau d'objets, chacun fournissant le nom et la portée des paramètres du modèle.

  • trainingInputDescriptions : indique si le modèle peut être mis à jour avec des informations d'apprentissage supplémentaires sur les paramètres du modèle.

modelName

Nom utilisé par l'action de script Configurer le modèle de Machine Learning pour charger le modèle.

Remarques 

  • Cette fonction est prise en charge uniquement sous iOS, iPadOS et macOS.

Exemple 1 

Ce script charge un modèle et affiche ses attributs sous forme de données JSON indiquées ci-dessus.

Copier
Configurer le modèle de Machine Learning [ Opération: Recherche visuelle ; Nom: "ModèleTest" ; Depuis: Table::RubriqueConteneurModèle ]
Définir variable [ $modelAttributes ; Valeur: 
    JSONFormatElements ( GetModelAttributes ( "ModèleTest" ) ) ]
Ouvrir boîte dial. person. [ $modelAttributes ]

Exemple 2 

Pour un modèle nommé ModèleTest chargé, renvoie 1 si la première description d'entrée du modèle contient une clé sizeRange.

Copier
Definir ( [
    modelAttributes = GetModelAttributes ( "ModèleTest" ) ;
    firstInput = "modelDescription.inputDescriptions.[0]" ;
    inputKeys = JSONListKeys ( $modelAttributes ; firstInput ) ;
    keyCount = Occurrences ( inputKeys ; "sizeRange" )
] ; 
    If ( keyCount > 0 ; 1 ; 0 )
)