MLSolution : globale

  • Rversion finale: Washingtondc
  • Mis à jour 1 févr. 2024
  • 6 minutes de lecture
  • Fournit des méthodes pour gérer Intelligence prédictive les prédictions et récupérer les objets de solution pour toutes les options : similarité, classification et mise en grappe.

    L’API MLSolution fournit des méthodes couramment utilisées parmi toutes les options de solution et des méthodes uniques aux solutions de classification et de mise en grappe.
    • Méthodes communes utilisées pour tous les objets de solution :
      • getCapability()
      • getVersion()
      • isActive()
      • prédire()
    • Méthodes utilisées uniquement pour les solutions de classification et de régression :
      • applyPrediction()
    • Méthodes utilisées uniquement pour les solutions de mise en grappe :
      • getClusterAssignments()
      • getClusterForRecord()
      • getClusterInfo()

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

    Les méthodes de cet objet sont instanciées à l’aide de MLSolutionFactory.

    MLSolution : applyPrediction(GlideRecord now_GR)

    Obtient le résultat de prédiction pour une solution de classification et l’applique à l’entrée GlideRecord si la valeur de confiance est supérieure au seuil.

    Tableau 1. Paramètres
    Nom Type Description
    now_GR GlideRecord Objet GlideRecord contenant des valeurs sur lesquelles exécuter une prédiction et appliquer les résultats.
    Tableau 2. Renvoie
    Type Description
    Booléen

    Marqueur indiquant si la prédiction a été appliquée :

    • true : prédiction appliquée
    • false : prédiction rejetée
    var mlSolution = sn_ml.MLSolutionFactory.getSolution("ml_incident_categorization");
    
    var inputGR = new GlideRecord("incident");
    inputGR.get("0ef47232db801300864adfea5e961912");
    
    mlSolution.applyPrediction(inputGR);

    MLSolution : getCapability()

    Obtient les informations d’aptitude d’une solution formée.

    Tableau 3. Paramètres
    Nom Type Description
    Aucun
    Tableau 4. Renvoie
    Type Description
    Chaîne Type de solution formée.
    Valeurs possibles :
    • Similarité
    • Classification
    • Mise en grappe
    var mlSolution = sn_ml.MLSolutionFactory.getSolution("ml_x_global_clustering");
    
    // configure optional parameters
    var options = {};
    options.group_by = 'network';
    options.cluster_id = 1;
    options.top_n_per_cluster = 3;
    
    if (mlSolution.getCapability() == 'clustering') {
    	var results = mlSolution.getClusterAssignments(options);
    	// pretty print JSON results
    	gs.print(JSON.stringify(JSON.parse(results), null, 2));
    }

    MLSolution : getClusterAssignments(options de l’objet)

    Obtient des affectations pour une solution de mise en grappe.

    Tableau 5. Paramètres
    Nom Type Description
    options Objet Facultatif. Valeurs à utiliser pour affiner les résultats renvoyés par groupe et par niveau au sein d’une solution de mise en grappe.

    Par défaut : renvoie les appartenances à des grappes pour toutes les grappes.

    options.group_by Chaîne Facultatif. Identifie le champ de segmentation pour lequel récupérer les appartenances à des grappes, par exemple assignment_group.

    Ce champ fournit le même regroupement que les options fournies dans la case à cocher Utiliser le groupe par du formulaire Définition de regroupement . Les informations fournies varient en fonction de la table sélectionnée dans le champ Table . Pour plus d’informations, consultez Créer et former une solution de mise en grappe .

    options.cluster_id Chaîne Facultatif. ID de grappe d’une solution formée dans la table Récapitulatif de la grappe [ml_cluster_summary].
    options.top_n_per_cluster Numéro Nombre des meilleurs résultats à recevoir pour chaque grappe.
    Tableau 6. Renvoie
    Type Description
    Objet Tableau JSON contenant des informations de grappe dans l’ordre croissant de cluster_id :
    • cluster_id : chaîne de caractères. Numéro de grappe unique au sein d’une solution de grappes.
    • rec_display_id : chaîne de caractères. Type et numéro d’enregistrement.
    • rec_sys_id : chaîne de caractères. Enregistrer sys_id.
    • group_by : si groupé, nom du champ de segmentation associé à cette grappe.
    var mlSolution = sn_ml.MLSolutionFactory.getSolution("ml_x_global_clustering");
    
    // configure optional parameters
    var options = {};
    options.group_by = 'network';
    options.cluster_id = '1';
    // returns top 3 results per cluster
    options.top_n_per_cluster = 3;
    
    var results = mlSolution.getClusterAssignments(options);
    
    

    Sortie :

    [{"cluster_id":"1","rec_display_id":"Incident: INC0014483","rec_sys_id":"04e33e7adb401300864adfea5e961900","group_by":"network"},
     {"cluster_id":"1","rec_display_id":"Incident: INC0011133","rec_sys_id":"5bd23af2db401300864adfea5e96194d","group_by":"network"}]

    MLSolution : getClusterForRecord(GlideRecord now_GR)

    Obtient les informations de grappe pour une solution de mise en grappe.

    Tableau 7. Paramètres
    Nom Type Description
    now_GR GlideRecord Nom de l’entrée GlideRecord.
    Tableau 8. Renvoie
    Type Description
    Chaîne L’cluster_id de la table Récapitulatif de la grappe [ml_cluster_summary] si l’enregistrement appartient à une grappe. La chaîne vide est renvoyée si l’enregistrement n’appartient à aucune grappe.
    var mlSolution = sn_ml.MLSolutionFactory.getSolution("solution_name");
    var now_GR = new GlideRecord('incident');
    if (mlSolution.getCapability() == 'clustering') {
    var clusterId = mlSolution.getClusterForRecord(now_GR);
    }

    MLSolution : getClusterInfo (options de l’objet)

    Obtient des informations pour une solution de mise en grappe spécifiée.

    Tableau 9. Paramètres
    Nom Type Description
    options Objet Facultatif. Réduit les résultats renvoyés par groupe et par niveau au sein d’une solution de mise en grappe.

    Par défaut : renvoie les appartenances à des grappes pour toutes les grappes.

    options.group_by Chaîne Facultatif. Identifie le champ de segmentation pour lequel récupérer les appartenances à des grappes, par exemple assignment_group.

    Ce champ fournit le même regroupement que les options fournies dans la case à cocher Utiliser le groupe par du formulaire Définition de regroupement . Les informations fournies varient en fonction de la table sélectionnée dans le champ Table . Pour plus d’informations, consultez Créer et former une solution de mise en grappe .

    options.cluster_id Chaîne Facultatif. ID de grappe d’une solution formée dans la table Récapitulatif de la grappe [ml_cluster_summary].
    Tableau 10. Renvoie
    Type Description
    Objet Tableau JSON contenant des informations de grappe dans l’ordre croissant de cluster_id :
    • cluster_id : chaîne de caractères. Numéro de grappe unique au sein d’une solution de grappes.
    • cluster_quality : chaîne de caractères. Nombre compris entre 0 et 100. Des valeurs plus élevées indiquent une densité d’agrégats plus élevée.
    • cluster_size : chaîne de caractères. Nombre d’enregistrements dans une grappe.
    • group_by : si groupé, nom du champ de segmentation associé à cette grappe.
    • cluster_concept : chaîne de caractères. Ensemble de mots qui décrivent la grappe par ordre décroissant de fréquence.
    var mlSolution = sn_ml.MLSolutionFactory.getSolution("ml_x_global_clustering");
    
    // configure optional parameters
    var options = {};
    options.group_by = 'network';
    options.cluster_id = 1;
    
    var results = mlSolution.getClusterInfo(options);

    Sortie :

    [ {"cluster_id":"1","cluster_quality":"56.6","cluster_size":"46","group_by":"SLA","cluster_concept":"issue occur capacity ..."},
      {"cluster_id":"2","cluster_quality":"55.47","cluster_size":"75","group_by":"SLA","cluster_concept":"clone instance request ..."},
    ... ]

    MLSolution : getVersion()

    Obtient la version de la solution active.

    Tableau 11. Paramètres
    Nom Type Description
    Aucun
    Tableau 12. Renvoie
    Type Description
    Chaîne Version de la solution active.
    var mlSolution = sn_ml.MLSolutionFactory.getSolution("solution_name");
    
    var solutionVersion = mlSolution.getVersion();

    MLSolution : isActive()

    Détermine si une solution est active.

    Tableau 13. Paramètres
    Nom Type Description
    Aucun
    Tableau 14. Renvoie
    Type Description
    Booléen Marqueur indiquant si la solution est active.
    • true : solution active
    • false : solution inactive
    var mlSolution = sn_ml.MLSolutionFactory.getSolution("solution_name");
    
    var isActive = mlSolution.isActive();

    MLSolution - predict(Entrée d’objet, Options de l’objet)

    Obtient les résultats de prédiction du serveur de prédiction en fonction d’un GlideRecord ou d’un tableau de paires clé-valeur.

    Vous pouvez utiliser cette méthode pour appeler la prédiction avec plusieurs enregistrements d’entrée, car GlideRecord est un itérateur.

    Tableau 15. 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 Facultatif. Paire clé-valeur JSON avec les propriétés suivantes :
    • top_n : Nombre. Si fourni, renvoie les meilleurs résultats, jusqu’au nombre spécifié de prédictions.
    • apply_threshold : booléen. Vérifie la valeur de seuil de la solution et l’applique à l’ensemble de résultats. La valeur de seuil est le seuil de la solution pour la similarité ou le seuil de classe pour la classification. La valeur par défaut est true.
    • custom_results_filter : chaîne de caractères. Solutions de similarité uniquement. Spécifie l’ensemble autorisé à partir duquel les résultats sont renvoyés à l’aide d’une requête codée.
    Tableau 16. Renvoie
    Type Description
    Objet Objet JSON contenant les résultats de prédiction triés par sys_id ou record_number.
    • predictedValue : chaîne. Valeur représentant le résultat de prédiction.
    • predictedSysId : chaîne. sys_id de la valeur prédite. Les résultats peuvent provenir de n’importe quelle table sur laquelle les informations sont prévues.
    • confiance : Nombre. Valeur de confiance associée à la prédiction. Par exemple, 53,84.
    • seuil : nombre. Valeur du seuil configuré associé à la prédiction.
    • detailedResults : objet. Solutions de similarité uniquement. Paire clé-valeur JSON contenant des détails sur les index de texte correspondants.
    var mlSolution = sn_ml.MLSolutionFactory.getSolution("ml_incident_categorization");
    
    // single GlideRecord input
    var input = new GlideRecord("incident");
    input.get("0ef47232db801300864adfea5e961912");
    
    // 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));
    var mlSolution = sn_ml.MLSolutionFactory.getSolution("ml_incident_categorization");
    
    // multiple GlideRecord input
    var input = new GlideRecord("incident");
    input.addQuery("sys_created_onONLast week@javascript:gs.beginningOfLastWeek()@javascript:gs.endOfLastWeek()");
    input.query();
    
    // 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));

    Sortie :

    {
        input_gr_sys_id1: [
                    {
                        predictedValue : xxx,
                        predictedSysId : xx0,
                        confidence : xxx,
                        threshold : xxx,
                        detailedResults : [.....]
    
                    }, 
                    {
                        predictedValue : yyy,
                        predictedSysId : xx1,
                        confidence : xxx,
                        threshold : xxx,
                        detailedResults : [.....]
                    }
            ],
        input_gr_sys_id2 : [
                    {
                        predictedValue : xxx,
                        predictedSysId : xx0,
                        confidence : xxx,
                        threshold : xxx,
                        detailedResults : [.....]
    
                    }, 
                ...
            ]
    }
    var mlSolution = sn_ml.MLSolutionFactory.getSolution("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));