GetModelAttributes

Returnerar metadata i JSON-format om en namngiven modell som för närvarande är inläst.

Format 

GetModelAttributes ( modellnamn )

Parametrar 

modellnamn – namnet på den modell som utvärderas. Det här värdet måste överensstämma med namnet på en tidigare inläst modell.

Returnerad datatyp 

text

Ursprungsversion 

19.3.1

Beskrivning 

Du måste först använda Scriptsteget Konfigurera maskininlärningsmodell för att läsa in en Core ML-modell innan du använder GetModelAttributes.

Följande är ett exempel på vad som returneras för en modell med namnet Testmodell som arbetar med bilder.

Kopiera
{
    "APIVers": 1,
    "configuration"
    {
        "computeUnits" : "All"
    },
    "modelDescription"
    {
        "classLabels"
        [
            "Brittisk korthårig",
            "tabby, tabbymönstrad katt",
            . . .
            "Siberian Husky",
            "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" : "Hund- och kattklassificering",
            "license" : "",
            "version" : "1.0"
        },
        "outputDescriptions"
        [
            {
                "featureName" : "classLabel",
                "isOptional" : 0,
                "type" : "unknown"
            },
            {
                "featureName" : "classLabelProbs",
                "isOptional" : 0,
                "type" : "unknown"
            }
        ]
    },
    "modelName" : "Testmodell"
}

Vilka attribut som returneras i JSON-objektet beror på vad modellen innehåller. I allmänhet innehåller JSON-objektets högsta nivå följande JSON-objekt.

JSON-element

Beskrivning

APIVers

Numeriskt värde för versionen av det här JSON-objektets struktur. Om strukturen för det här JSON-objektet ändras i en senare version ändras det här numret.

configuration

Kan endast innehålla nyckeln computeUnits, som har ett av följande värden och som anger vilken bearbetningsenhet modellen använder under utvärderingen:

  • "CPU only"

  • "CPU and GPU"

  • "All"

modelDescription

Kan innehålla följande:

  • classLabels – En matris av de namn på det en bildmodell kan känna igen.

  • inputDescription – En matris av objekt som vart och ett beskriver en inmatning som modellen förväntar sig för en egenskap. För modeller som behandlar bilder finns det ofta endast en inmatning som kan innehålla nycklar som dessa:

    • featureName – För bildmodeller är värdet ofta "image." Observera att dessa värden motsvarar de namngivna parametrar som skickas till Funktionen ComputeModel.

    • isOptional – Anger om funktionen är valfri.

    • type – För bildmodeller är värdet ofta "image." För generella modeller kan värdena vara "Int64," "Double" eller "String."

    • Andra attribut som beskriver begränsningarna för en inmatad bild.

  • metadata object – Ett objekt som innehåller författare, beskrivning, licens, version och anpassade metadata som definierats av modellskaparen.

  • outputDescription – En matris av objekt som vart och ett beskriver en utmatning som modellen tillhandahåller för en egenskap. Den här matrisen liknar inputDescription men ger oftast mindre information.

  • paramDescriptions – En matris av objekt som vart och ett tillhandahåller namn och omfattning för modellens parametrar.

  • trainingInputDescriptions – Huruvida modellen kan uppdateras med ytterligare träning och information om modellens parametrar.

modelName

Namn som scriptsteget Konfigurera maskininlärningsmodell använde för att läsa in modellen.

Kommentarer 

  • Den här funktionen stöds endast i iOS, iPadOS och macOS.

Exempel 1 

Det här scriptet läser in en modell och visar dess attribut som formaterade JSON-data enligt ovan.

Kopiera
Konfigurera maskininlärningsmodell [ Operation: Vision ; Name: "Testmodell" ; From: Table::ModelContainerField ]
Ange variabel [ $modelAttributes ; Value: 
    JSONFormatElements ( GetModelAttributes ( "Testmodell" ) ) ]
Visa anpassad dialogruta [ $modelAttributes ]

Exempel 2 

För en inläst modell med namnet Testmodell returneras 1 om modellens första inmatningsbeskrivning innehåller nyckeln sizeRange.

Kopiera
Let([
    modelAttributes = GetModelAttributes ( "Testmodell" ) ;
    firstInput = "modelDescription.inputDescriptions.[0]" ;
    inputKeys = JSONListKeys ( $modelAttributes ; firstInput ) ;
    keyCount = PatternCount ( inputKeys ; "sizeRange" )
] ; 
    If ( keyCount > 0 ; 1 ; 0 )
)