MLSolution - Global
L’API MLSolution fournit des méthodes de gestion Intelligence prédictive des prédictions et de récupération des objets de solution pour toutes les options : similarité, classification et mise en grappe.
- Méthodes courantes 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 nécessite 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.
| Nom | Type | Description |
|---|---|---|
| now_GR | GlideRecord | Objet GlideRecord contenant des valeurs sur lesquelles exécuter une prédiction et appliquer les résultats. |
| Type | Description |
|---|---|
| Booléen | Marqueur indiquant si la prédiction a été appliqué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 sur l’aptitude d’une solution formée.
| Nom | Type | Description |
|---|---|---|
| Aucun |
| Type | Description |
|---|---|
| Chaîne | Type de solution formée. Valeurs possibles :
|
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 d’objet)
Obtient les affectations pour une solution de mise en grappe.
| 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 à 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 Grouper par du formulaire de définition de mise en grappe . 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. |
| Type | Description |
|---|---|
| Objet | Tableau JSON contenant des informations sur les grappes par ordre croissant par cluster_id :
|
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.
| Nom | Type | Description |
|---|---|---|
| now_GR | GlideRecord | Nom de l’entrée GlideRecord. |
| Type | Description |
|---|---|
| Chaîne | Le cluster_id de la table Récapitulatif de la grappe [ml_cluster_summary] si l’enregistrement appartient à une grappe. La chaîne vide renvoie 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 d’objet)
Obtient des informations pour une solution de mise en grappe spécifiée.
| Nom | Type | Description |
|---|---|---|
| options | Objet | Facultatif. Réduit les résultats renvoyés par groupe et par niveau dans une solution de mise en grappe. Par défaut : renvoie les appartenances à 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 Grouper par du formulaire de définition de mise en grappe . 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]. |
| Type | Description |
|---|---|
| Objet | Tableau JSON contenant des informations sur les grappes par ordre croissant par cluster_id :
|
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.
| Nom | Type | Description |
|---|---|---|
| Aucun |
| 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.
| Nom | Type | Description |
|---|---|---|
| Aucun |
| Type | Description |
|---|---|
| Booléen | Marqueur indiquant si la solution est active.
|
var mlSolution = sn_ml.MLSolutionFactory.getSolution("solution_name");
var isActive = mlSolution.isActive();
MLSolution : predict(entrée d’objet, options d’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.
| Nom | Type | Description |
|---|---|---|
| entrée | Objet | GlideRecord 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 :
|
| Type | Description |
|---|---|
| Objet | Objet JSON contenant les résultats de prédiction triés par sys_id ou par record_number.
|
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
},
{
predictedValue : yyy,
predictedSysId : xx1,
confidence : xxx,
threshold : xxx
}
],
input_gr_sys_id2 : [
{
predictedValue : xxx,
predictedSysId : xx0,
confidence : xxx,
threshold : xxx
},
...
]
}
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));