SimilaritySolutionVersion : globale

  • Rversion finale: Washingtondc
  • Mis à jour 1 févr. 2024
  • 8 minutes de lecture
  • L’API SimilaritySolutionVersion est un objet pouvant contenir des scripts utilisé dans les Intelligence prédictive magasins.

    Ce L’API requiert le module d’extension Intelligence prédictive (com.glide.platform_ml) et est fournie dans l’espace de noms sn_ml .

    Cette API est utilisée pour travailler avec les versions de solutions basées sur les objets d’API SimilaritySolution dans le magasin SimilaritySolution.

    Le système crée une version de solution chaque fois que vous formez une définition de solution. La plupart des versions sont créées pendant la formation planifiée sur la solution.

    Les méthodes de cette API sont accessibles à l’aide des méthodes SimilaritySolution suivantes :

    SimilaritySolutionVersion : getProperties()

    Obtient les propriétés de l’objet de solution et le numéro de version.

    Tableau 1. Paramètres
    Nom Type Description
    Aucun
    Tableau 2. Renvoie
    Type Description
    Objet Contenu du jeu de données et détails de la version de SimilaritySolution . Les résultats varient selon la configuration des propriétés de l’objet.
    {
      "domainName": "String",
      "encoder": {Object},  
      "isActive": "String",
      "label": "String",
      "lookupDatasetProperties": {Object},
      "name": "String",
      "predictedFieldName": "String",
      "processingLanguage": "String",
      "scope": "String",
      "stopwords": [Array],
      "testDatasetProperties": {Object},
      "trainingFrequency": "String",
      "updateFrequency": "String",
      "versionNumber": "String"
    }
    <Object>.Domainname Nom de domaine associé à cet ensemble de données. Reportez-vous aux sections Domain separation et Intelligence prédictive.

    Type de données : chaîne.

    <Object>.Encodeur Objet codeur affecté à cette solution. Reportez-vous à Encodeur - Encodeur (configuration d’objet).

    Type de données : objet.

    <Object>.Isactive Marqueur indiquant si cette version est active.
    Valeurs valides :
    • true : la version est active.
    • false : la version n’est pas active.

    Type de données : chaîne

    <Object>.Étiquette Identifie la tâche de prédiction.
    {
      "label": "my first prediction"
    }

    Type de données : chaîne.

    <Object>.lookupDatasetProperties Détails de DatasetDefinition() Objet utilisé comme jeu de recherche.
    {
      "encodedQuery": "String",
      "fieldDetails": [Array],
      "fieldNames": [Array],
      "tableName": "String"
    }

    Type de données : objet.

    <Object>.lookupDatasetProperties.tableName Nom de la table pour le jeu de données. Par exemple, « tableName » : « Incident ».

    Type de données : chaîne.

    <Object>.lookupDatasetProperties.fieldNames Liste de noms de champs de la table spécifiée en tant que chaînes. Par exemple, « fieldNames » : [&quot;short_description », « priority&quot;].

    Type de données : tableau.

    <Object>.lookupDatasetProperties.fieldNames.fieldDetails Liste des objets JavaScript qui spécifient les propriétés des champs.
    [
      {
        "name": "String",
        "type": "String"
      }
    ]

    Type de données : tableau.

    <Object>.lookupDatasetProperties.fieldNames.fieldDetails.<object>. Nom Nom du champ définissant le type d’informations auquel restreindre cet ensemble de données.

    Type de données : chaîne.

    <Object>.lookupDatasetProperties.fieldDetails.<object>. Type Type de champ d’apprentissage machine.

    Type de données : chaîne.

    <Object>.lookupDatasetProperties.fieldDetails.encodedQuery Chaîne de requête codée au format Glide standard. Reportez-vous à la section Chaînes de requêtes codées.

    Type de données : chaîne.

    <Object>.Nom Nom affecté par le système.

    Type de données : chaîne.

    <Object>.predictedFieldName Identifie un champ à former pour la prévisibilité.

    Type de données : chaîne.

    <Object>.processingLanguage Langue de traitement au format de code de langue ISO 639-1 à deux lettres.

    Type de données : chaîne.

    <Object>.Portée Périmètre de l’objet. Actuellement, la seule valeur valide est globale.

    Type de données : chaîne

    <Object>.mots vides Facultatif. Liste prédéfinie de chaînes que le système génère automatiquement en fonction du language paramètre de propriété. Pour plus d’informations, consultez Créer une liste de mots vides personnalisés.

    Type de données : tableau.

    <Object>.testDatasetProperties Détails de DatasetDefinition() Objet utilisé pour récupérer les similarités entre les résultats recherchés dans ce modèle et les résultats trouvés dans le lookupDataset.
    {
      "encodedQuery": "String",
      "fieldDetails": [Array],
      "fieldNames": [Array],
      "tableName": "String"
    }

    Type de données : objet.

    <Object>.testDatasetProperties.tableName Nom de la table pour le jeu de données. Par exemple, « tableName » : « Incident ».

    Type de données : chaîne.

    <Object>.testDatasetProperties.fieldNames Liste de noms de champs de la table spécifiée en tant que chaînes. Par exemple, « fieldNames » : [&quot;short_description », « priority&quot;].

    Type de données : tableau.

    <Object>.testDatasetProperties.fieldNames.fieldDetails Liste des objets JavaScript qui spécifient les propriétés des champs.
    [
      {
        "name": "String",
        "type": "String"
      }
    ]

    Type de données : tableau.

    <Object>.testDatasetProperties.fieldNames.fieldDetails.<object>. Nom Nom du champ définissant le type d’informations auquel restreindre cet ensemble de données.

    Type de données : chaîne.

    <Object>.testDatasetProperties.fieldDetails.<object>. Type Type de champ d’apprentissage machine.

    Type de données : chaîne.

    <Object>.testDatasetProperties.fieldDetails.encodedQuery Chaîne de requête codée au format Glide standard. Reportez-vous à la section Chaînes de requêtes codées.

    Type de données : chaîne.

    <Object>.trainingFrequency Fréquence de reformation du modèle.
    Valeurs possibles :
    • every_30_days
    • every_60_days
    • every_90_days
    • every_120_days
    • every_180_days
    • run_once
    Valeur par défaut : run_once

    Type de données : chaîne.

    <Object>.updateFrequency (en anglais seulement) Fréquence à laquelle le modèle de la définition de solution doit être reconstruit.
    Valeurs possibles :
    • do_not_update
    • every_1_day
    • every_1_hour
    • every_6_hours
    • every_12_hours
    • every_1_minute
    • every_15_minutes
    • every_30_minutes
    Valeur par défaut : do_not_update

    Type de données : chaîne

    <Object>.versionNumber Numéro de version du SimilaritySolution.

    Type de données : chaîne.

    L’exemple suivant obtient les propriétés de la version de l’objet actif dans le magasin.

    // Get properties
    var mlSolution = sn_ml.SimilaritySolutionStore.get('ml_incident_categorization');
    
    gs.print(JSON.stringify(JSON.parse(mlSolution.getActiveVersion().getProperties()), null, 2));

    Sortie :

    *** Script: {
      "domainName": "global",
      "encoderProperties": {
        "datasetsProperties": [],
        "name": "wordCorpusA"
      },
      "isActive": "true",
      "label": "similarity",
      "lookupDatasetProperties": {
        "encodedQuery": "",
        "fieldNames": [
          "short_description"
        ],
        "tableName": "incident"
      },
      "name": "ml_x_snc_global_global_similarity",
      "processingLanguage": "en",
      "stopwords": [
        "Default English Stopwords"
      ],
      "testDatasetProperties": {
        "fieldNames": [
          "short_description"
        ],
        "tableName": "incident"
      },
      "versionNumber": "3"
    }

    SimilaritySolutionVersion : getStatus(Boolean includeDetails)

    Obtient l’état d’achèvement de la formation.

    Tableau 3. Paramètres
    Nom Type Description
    includeDetails (en anglais seulement) Booléen

    Marqueur indiquant si l’état detailsdoit être renvoyé.

    Valeurs valides :
    • true : renvoie des détails supplémentaires.
    • false : ne renvoie pas de détails supplémentaires.

    Valeur par défaut : false

    Tableau 4. Renvoie
    Type Description
    Objet Objet JavaScript contenant des informations sur l’état de la formation pour un objet SimilaritySolution .
    {
      "state": "String",
      "percentComplete": "Number as a String",
      "hasJobEnded": "Boolean value as a String",
      "details": {Object}
    }
    <Object>.État État d’achèvement de la formation. Si la tâche de formation atteint un état final, la tâche ne quitte pas cet état. Si l’état est Terminal, la hasJobEnded propriété est définie sur true.
    Valeurs possibles :
    • fetching_files_for_training
    • preparing_data
    • retry
    • solution_cancelled (terminal)
    • solution_complete (terminal)
    • solution_error (terminal)
    • solution_incomplete
    • training_request_received
    • training_request_timed_out (terminal)
    • training_solution
    • uploading_solution
    • waiting_for_training

    Type de données : chaîne

    <Object>.hasJobEnded

    Marqueur indiquant si la formation est terminée.

    Valeurs valides :
    • true : l’entraînement est terminé.
    • false : la formation est incomplète.

    Type de données : valeur booléenne sous forme de chaîne

    <Object>.percentComplete Nombre compris entre zéro et 100 représentant le pourcentage d’achèvement de la formation. Si le pourcentage d’achèvement est inférieur à 100, la tâche peut être dans un état terminal. Par exemple, si la formation expire.

    Type de données : nombre sous forme de chaîne

    <Object>.Détails Objet contenant une liste de détails supplémentaires sur la formation.

    Type de données : objet

    L’exemple suivant montre un résultat correct avec la formation terminée.

    // Get status
    var mlSolution = sn_ml.SimilaritySolutionStore.get('ml_incident_categorization');
    
    gs.print(JSON.stringify(JSON.parse(mlSolution.getActiveVersion().getStatus(true), null, 2)));

    Sortie :

    {
     "state":"solution_complete",
     "percentComplete":"100",
     "hasJobEnded":"true",
     "details":{"stepLabel":"Solution Complete"} // This information is only returned if getStatus(true);
    }

    L’exemple suivant montre un échec alors que la formation est terminée.

    // Get status
    var solutionName = 'ml_x_snc_global_global_similarity_solution';
    var mlSolution = sn_ml.SimilaritySolutionStore.get(solutionName);
    var trainingStatus = JSON.parse(mlSolution.getLatestVersion().getStatus());
    
    gs.print(JSON.stringify(JSON.parse(trainingStatus), null, 2));

    Sortie :

    {
     "state":"solution_error",
     "percentComplete":"100",
     "hasJobEnded":"true"
    }

    SimilaritySolutionVersion : getVersionNumber()

    Obtient le numéro de version de un objet de solution.

    Tableau 5. Paramètres
    Nom Type Description
    Aucun
    Tableau 6. Renvoie
    Type Description
    Chaîne Numéro de version.

    L’exemple suivant montre comment obtenir un numéro de version.

    // Get version number
    var mlSolution = sn_ml.SimilaritySolutionStore.get('ml_incident_categorization');
    
    gs.print("Version number: "+JSON.stringify(JSON.parse(mlSolution.getActiveVersion().getVersionNumber()), null, 2));

    Sortie :

    Version number: 1

    SimilaritySolutionVersion : predict(entrée d’objet, options de l’objet)

    Obtient les données d’entrée pour une prédiction.

    Tableau 7. Paramètres
    Nom Type Description
    entrée Objet Enregistrement Glide ou tableau d’objets JSON contenant des noms de champs et des valeurs sous forme de paires clé-valeur.
    options Objet Valeurs facultatives pour filtrer les résultats de prédiction.
    {
      "apply_threshold": Boolean,
      "top_n": Number
    }
    options.apply_threshold Booléen Marqueur indiquant s’il faut vérifier la valeur de seuil de la solution et l’appliquer à l’ensemble de résultats.
    Valeurs valides :
    • true : renvoie des résultats dans lesquels la confiance est supérieure au seuil.
    • false : renvoie tous les résultats.

    Valeur par défaut : vrai

    options.top_n Numéro Si fourni, renvoie les meilleurs résultats, jusqu’au nombre spécifié de prédictions.
    Tableau 8. Renvoie
    Type Description
    Objet Objet JSON contenant les résultats de prédiction triés par sys_id ou record_number.
    {
        <identifier>: [Array]
    }
    <Object>.&lt;identifier> Liste d’objets avec des détails pour chaque résultat de prédiction.
    <identifier>: [
      {
        "confidence": Number,
        "predictedSysId": "String",
        "predictedValue": "String", 
        "threshold": Number
      }
    ]

    Type de données : tableau

    <Object>.&lt;identifier>.<object>. Confiance Valeur de confiance associée à la prédiction. Par exemple, 53,84.

    Type de données : nombre

    <Object>.&lt;identifier>.<object>. predictedSysId sys_id de la valeur prédite. Les résultats peuvent provenir de n’importe quelle table sur laquelle les informations sont prévues.

    Type de données : chaîne

    <Object>.&lt;identifier>.<object>. valeur prédictive Valeur représentant le résultat de prédiction.

    Type de données : chaîne

    <Object>.&lt;identifier>.<object>. Seuil Valeur du seuil configuré associé à la prédiction.

    Type de données : nombre

    L’exemple suivant montre comment afficher les résultats de prédiction pour une méthode predict() qui utilise un GlideRecord par sys_id pour l’entrée et inclut des paramètres facultatifs pour se limiter aux trois premiers résultats et exclure la valeur de seuil.

    var mlSolution = sn_ml.SimilaritySolutionStore.get('ml_incident_categorization');
    
    // single GlideRecord input
    var input = new GlideRecord("incident");
    input.get("<sys_id>");
    
    // configure optional parameters
    var options = {};
    options.top_n = 3;
    options.apply_threshold = false;
    
    var results = mlSolution.getVersion(1).predict(input, options);
    // pretty print JSON results
    gs.print(JSON.stringify(JSON.parse(results), null, 2));
    {
            "<sys_id/now_GR>": [
        {
          "confidence": 62.10782320780268,
          "threshold": 20.36,
          "predictedValue": "Clone Issues",
          "predictedSysId": ""
        },
        {
          "confidence": 6.945237375770391,
          "threshold": 16.63,
          "predictedValue": "Instance Administration",
          "predictedSysId": ""
        },
        {
          "confidence": 5.321061076300759,
          "threshold": 23.7,
          "predictedValue": "Administration",
          "predictedSysId": ""
        }
      ]
    }

    L’exemple suivant montre comment afficher les résultats de prédiction pour une méthode predict() qui prend un tableau de noms de champs comme paires clé-valeur pour l’entrée et inclut des paramètres facultatifs pour se limiter aux trois premiers résultats et exclure la valeur de seuil.

    var mlSolution = sn_ml.SimilaritySolutionStore.get("ml_incident_categorization");
    // key-value pairs input
    var input = [{"short_description":"my email is not working"}, {short_description:"need help with password"}];
    // configure optional parameters
    var options = {};
    options.top_n = 3;
    options.apply_threshold = false;
    var results = mlSolution.predict(input, options);
    // pretty print JSON results
    gs.print(JSON.stringify(JSON.parse(results), null, 2));
    {
      "1": [
        {
          "confidence": 37.5023032262591,
          "threshold": 10.72,
          "predictedValue": "Authentication",
          "predictedSysId": ""
        },
        {
          "confidence": 24.439964862166583,
          "threshold": 23.7,
          "predictedValue": "Administration",
          "predictedSysId": ""
        },
        {
          "confidence": 11.736320486031047,
          "threshold": 100,
          "predictedValue": "Security",
          "predictedSysId": ""
        }
      ],
      "2": [
        {
          "confidence": 99,
          "threshold": 17.77,
          "predictedValue": "Email",
          "predictedSysId": ""
        },
        {
          "confidence": 3.182137005157543,
          "threshold": 10.72,
          "predictedValue": "Authentication",
          "predictedSysId": ""
        },
        {
          "confidence": 2.8773826570713514,
          "threshold": -1,
          "predictedValue": "Email (I/f)",
          "predictedSysId": ""
        }
      ]
    }