MLSolution - グローバル
MLSolution API は、予測インテリジェンス予測を処理し、すべての機能 (類似性、分類、クラスタリング) のソリューションオブジェクトを取得するためのメソッドを提供します。
- すべてのソリューションオブジェクトに使用される一般的なメソッド:
- getCapability()
- getVersion()
- isActive()
- 予測()
- 分類および回帰ソリューションにのみ使用される方法:
- applyPrediction()
- ソリューションのクラスタリングにのみ使用される方法:
- getClusterAssignments()
- getClusterForRecord()
- getClusterInfo()
MLSolution API には 予測インテリジェンス プラグイン (com.glide.platform_ml) が必要で、 sn_ml 名前空間内で提供されます。
このオブジェクトのメソッドは、 MLSolutionFactory を使用してインスタンス化されます。
MLSolution - applyPrediction(GlideRecord now_GR)
分類ソリューションの予測結果を取得し、信頼性値がしきい値よりも高い場合は入力 GlideRecord に適用します。
| 名前 | タイプ | 説明 |
|---|---|---|
| now_GR | GlideRecord | 予測を実行し、結果を適用する値を含む GlideRecord オブジェクト。 |
| タイプ | 説明 |
|---|---|
| ブール | 予測が適用されたかどうかを示すフラグ:
|
var mlSolution = sn_ml.MLSolutionFactory.getSolution("ml_incident_categorization");
var inputGR = new GlideRecord("incident");
inputGR.get("0ef47232db801300864adfea5e961912");
mlSolution.applyPrediction(inputGR);
MLSolution:getCapability()
トレーニング済みソリューションの機能情報を取得します。
| 名前 | タイプ | 説明 |
|---|---|---|
| なし |
| タイプ | 説明 |
|---|---|
| 文字列 | トレーニング済みソリューションのタイプ。 可能な値:
|
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.group_by | 文字列 | オプション。クラスターメンバーシップを取得するセグメンテーションフィールド (assignment_group など) を識別します。 このフィールドは、クラスターリング定義フォームの [グループを使用 (Use Group By)] チェックボックスで提供されるオプションと同じグループ化を提供します。提供される情報は、[ テーブル] フィールドで選択したテーブルによって異なります。詳細については、「 クラスタリングソリューションの作成とトレーニング 」を参照してください。 |
| options.cluster_id | 文字列 | オプション。クラスターサマリー [ml_cluster_summary] テーブル内のトレーニング済みソリューションのクラスター ID。 |
| options.top_n_per_cluster | 番号 | 各クラスターについて受信する上位結果の数。 |
| タイプ | 説明 |
|---|---|
| オブジェクト | cluster_id別の昇順のクラスター情報を含む JSON アレイ:
|
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);
出力:
[{"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)
クラスタリングソリューションのクラスター情報を取得します。
| 名前 | タイプ | 説明 |
|---|---|---|
| now_GR | GlideRecord | 入力 GlideRecord の名前。 |
| タイプ | 説明 |
|---|---|
| 文字列 | レコードがクラスターに属している場合のクラスターサマリー [ml_cluster_summary] テーブルからのcluster_id。レコードがクラスターに属していない場合は空の文字列が返されます。 |
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.group_by | 文字列 | オプション。クラスターメンバーシップを取得するセグメンテーションフィールド (assignment_group など) を識別します。 このフィールドは、クラスターリング定義フォームの [グループを使用 (Use Group By)] チェックボックスで提供されるオプションと同じグループ化を提供します。提供される情報は、[ テーブル] フィールドで選択したテーブルによって異なります。詳細については、「 クラスタリングソリューションの作成とトレーニング 」を参照してください。 |
| options.cluster_id | 文字列 | オプション。クラスターサマリー [ml_cluster_summary] テーブル内のトレーニング済みソリューションのクラスター ID。 |
| タイプ | 説明 |
|---|---|
| オブジェクト | cluster_id別の昇順のクラスター情報を含む JSON アレイ:
|
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);
出力:
[ {"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()
アクティブなソリューションのバージョンを取得します。
| 名前 | タイプ | 説明 |
|---|---|---|
| なし |
| タイプ | 説明 |
|---|---|
| 文字列 | アクティブなソリューションのバージョン。 |
var mlSolution = sn_ml.MLSolutionFactory.getSolution("solution_name");
var solutionVersion = mlSolution.getVersion();
MLSolution - isActive()
ソリューションがアクティブかどうかを判別します。
| 名前 | タイプ | 説明 |
|---|---|---|
| なし |
| タイプ | 説明 |
|---|---|
| ブール | ソリューションがアクティブかどうかを示すフラグ。
|
var mlSolution = sn_ml.MLSolutionFactory.getSolution("solution_name");
var isActive = mlSolution.isActive();
MLSolution - predict(オブジェクト入力, オブジェクトオプション)
GlideRecord またはキーと値のペアのアレイを指定して、予測サーバーから予測結果を取得します。
GlideRecord は反復子であるため、このメソッドを使用して複数の入力レコードで予測を呼び出すことができます。
| 名前 | タイプ | 説明 |
|---|---|---|
| 入力 | オブジェクト | GlideRecord または、フィールド名と値をキーと値のペアとして含む JSON オブジェクトのアレイ。 |
| オプション | オブジェクト | オプション。次のプロパティを持つ JSON キーと値のペア:
|
| タイプ | 説明 |
|---|---|
| オブジェクト | sys_idまたはrecord_numberでソートされた予測結果を含む JSON オブジェクト。
|
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));
出力:
{
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));