SimilaritySolutionVersion - グローバル

  • リリースバージョン: Yokohama
  • 更新日 2025年01月30日
  • 所要時間:19分
  • SimilaritySolutionVersion API は、予測インテリジェンスストアで使用されるスクリプト可能オブジェクトです。

    この API には 予測インテリジェンス プラグイン (com.glide.platform_ml) が必要です。この API は sn_ml 名前空間内で提供されます。

    この API は、SimilaritySolution ストア内の SimilaritySolution API オブジェクトに基づいてソリューションバージョンを操作するために使用されます。

    ソリューション定義をトレーニングするたびに、ソリューションのバージョンが作成されます。ほとんどのバージョンは、スケジュール設定済みのソリューショントレーニング中に作成されます。

    この API のメソッドは、次の SimilaritySolution メソッドを使用してアクセスできます。

    SimilaritySolutionVersion - getProperties()

    ソリューションオブジェクトプロパティを取得します バージョン番号

    表 : 1. パラメーター
    名前 タイプ 説明
    なし
    表 : 2. 返される内容
    タイプ 説明
    オブジェクト データセットのコンテンツと SimilaritySolution のバージョンの詳細。結果はオブジェクトプロパティのセットアップによって異なります。
    {
      "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 このデータセットに関連付けられたドメイン名。ドメインセパレーションおよび予測インテリジェンスを参照してください。

    データタイプ:文字列。

    <Object>.encoder このソリューションに割り当てられるエンコーダーオブジェクト。Encoder - Encoder(オブジェクト config)」を参照してください。

    データタイプ:オブジェクト。

    <Object>.isActive このバージョンがアクティブかどうかを示すフラグ。
    有効な値:
    • true:バージョンはアクティブです。
    • false:バージョンはアクティブではありません。

    データタイプ:文字列

    <Object>.label 予測タスクを識別します。
    {
      "label": "my first prediction"
    }

    データタイプ:文字列。

    <Object>.lookupDatasetProperties DatasetDefinition() ルックアップセットとして使用されるオブジェクト。の詳細
    {
      "encodedQuery": "String",
      "fieldDetails": [Array],
      "fieldNames": [Array],
      "tableName": "String"
    }

    データタイプ:オブジェクト。

    <Object>.lookupDatasetProperties.tableName データセットのテーブルの名前。例:"tableName" : "Incident"

    データタイプ:文字列。

    <Object>.lookupDatasetProperties.fieldNames 指定されたテーブルからの文字列としてのフィールド名のリスト。例:"fieldNames" : ["short_description", "priority"]

    データタイプ:アレイ。

    <Object>.lookupDatasetProperties.fieldNames.fieldDetails フィールドプロパティを指定する JavaScript オブジェクトのリスト。
    [
      {
        "name": "String",
        "type": "String"
      }
    ]

    データタイプ:アレイ。

    <Object>.lookupDatasetProperties.fieldNames.fieldDetails.<object>.name このデータセットを制限する情報のタイプを定義するフィールドの名前。

    データタイプ:文字列。

    <Object>.lookupDatasetProperties.fieldDetails.<object>.type 機械学習フィールドタイプ。

    データタイプ:文字列。

    <Object>.lookupDatasetProperties.fieldDetails.encodedQuery 標準の Glide 形式のエンコードされたクエリ文字列。「エンコードされたクエリ文字列」を参照してください。

    データタイプ:文字列。

    <Object>.name システムによって割り当てられた名前。

    データタイプ:文字列。

    <Object>.predictedFieldName 予測可能性についてトレーニングするフィールドを識別します。

    データタイプ:文字列。

    <Object>.processingLanguage 2 文字の ISO 639-1 言語コード形式の処理言語。

    データタイプ:文字列。

    <Object>.scope オブジェクトスコープ。現在、有効な値は global のみです。

    データタイプ:文字列

    <Object>.stopwords オプション。language プロパティ設定に基づいて自動的に生成される文字列のプリセットリスト。詳細については、「 カスタム ストップワード リストを作成する」を参照してください。

    データタイプ:アレイ。

    <Object>.testDatasetProperties DatasetDefinition() このモデルで検索された結果と lookupDataset で見つかった結果の間の類似性を取得するために使用されるオブジェクト。の詳細
    {
      "encodedQuery": "String",
      "fieldDetails": [Array],
      "fieldNames": [Array],
      "tableName": "String"
    }

    データタイプ:オブジェクト。

    <Object>.testDatasetProperties.tableName データセットのテーブルの名前。例:"tableName" : "Incident"

    データタイプ:文字列。

    <Object>.testDatasetProperties.fieldNames 指定されたテーブルからの文字列としてのフィールド名のリスト。例:"fieldNames" : ["short_description", "priority"]

    データタイプ:アレイ。

    <Object>.testDatasetProperties.fieldNames.fieldDetails フィールドプロパティを指定する JavaScript オブジェクトのリスト。
    [
      {
        "name": "String",
        "type": "String"
      }
    ]

    データタイプ:アレイ。

    <Object>.testDatasetProperties.fieldNames.fieldDetails.<object>.name このデータセットを制限する情報のタイプを定義するフィールドの名前。

    データタイプ:文字列。

    <Object>.testDatasetProperties.fieldDetails.<object>.type 機械学習フィールドタイプ。

    データタイプ:文字列。

    <Object>.testDatasetProperties.fieldDetails.encodedQuery 標準の Glide 形式のエンコードされたクエリ文字列。「エンコードされたクエリ文字列」を参照してください。

    データタイプ:文字列。

    <Object>.trainingFrequency モデルを再トレーニングする頻度。
    可能な値:
    • every_30_days
    • every_60_days
    • every_90_days
    • every_120_days
    • every_180_days
    • run_once
    デフォルト:run_once

    データタイプ:文字列。

    <Object>.updateFrequency ソリューション定義のモデルを再構築する必要がある頻度。
    可能な値:
    • do_not_update
    • every_1_day
    • every_1_hour
    • every_6_hours
    • every_12_hours
    • every_1_minute
    • every_15_minutes
    • every_30_minutes
    デフォルト:do_not_update

    データタイプ:文字列

    <Object>.versionNumber のバージョン番号 SimilaritySolution オブジェクト。

    データタイプ:文字列。

    次の例では、ストア内のアクティブなオブジェクトバージョンのプロパティを取得します。

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

    出力:

    *** 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(ブーリアン includeDetails)

    トレーニング完了ステータスを取得します。

    表 : 3. パラメーター
    名前 タイプ 説明
    includeDetails ブーリアン ステータス details を返すかどうかを示すフラグ。
    有効な値:
    • true:追加の詳細を返します。
    • false:追加の詳細を返しません。

    デフォルト値:False

    表 : 4. 返される内容
    タイプ 説明
    オブジェクト SimilaritySolution オブジェクト のトレーニングステータス情報を含む JavaScript オブジェクト
    {
      "state": "String",
      "percentComplete": "Number as a String",
      "hasJobEnded": "Boolean value as a String",
      "details": {Object}
    }
    <Object>.state トレーニング完了ステータス。トレーニングジョブがターミナルステータスに達した場合、ジョブはそのステータスを終了しません。ステータスがターミナルの場合、hasJobEnded プロパティは true に設定されます。
    可能な値:
    • fetching_files_for_training
    • preparing_data
    • 再試行
    • 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

    データタイプ:文字列

    <Object>.hasJobEnded トレーニングが完了したかどうかを示すフラグ。
    有効な値:
    • true:トレーニングは完了しました。
    • false:トレーニングは完了していません。

    データタイプ:文字列としてのブール値

    <Object>.percentComplete トレーニング完了率。完了率が 100 未満の場合、ジョブはターミナルステータスである可能性があります。たとえば、トレーニングがタイムアウトした場合などです。

    データタイプ:文字列としての数値

    範囲:0 〜 100

    <Object>.details 追加のトレーニングの詳細のリストを含むオブジェクト。

    データタイプ:オブジェクト

    次の例は、トレーニングが完了して成功した結果を示しています。

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

    出力:

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

    次の例は、トレーニングが完了して失敗した結果を示しています。

    // 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));

    出力:

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

    SimilaritySolutionVersion - getVersionNumber()

    ソリューションオブジェクトのバージョン番号を取得します

    表 : 5. パラメーター
    名前 タイプ 説明
    なし
    表 : 6. 返される内容
    タイプ 説明
    文字列 バージョン番号。

    次の例は、バージョン番号を取得する方法を示しています。

    // 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));

    出力:

    Version number: 1

    SimilaritySolutionVersion - predict(オブジェクト input, オブジェクト options)

    予測の入力データを取得します。

    表 : 7. パラメーター
    名前 タイプ 説明
    入力 オブジェクト GlideRecord または、キーと値のペアとしてフィールド名と値を含む JSON オブジェクトのアレイ。
    オプション オブジェクト 予測結果をフィルタリングするためのオプションの値。
    {
      "apply_threshold": Boolean,
      "top_n": Number
    }
    options.apply_threshold ブーリアン ソリューションのしきい値をチェックして結果セットに適用するかどうかを示すフラグ。
    有効な値:
    • true:信頼性がしきい値より大きい結果を返します。
    • false:すべての結果を返します。

    デフォルト:true

    options.top_n 番号 指定されている場合、指定された予測の数までの上位の結果を返します
    表 : 8. 返される内容
    タイプ 説明
    オブジェクト sys_id または record_number でソートされた予測結果を含む JSON オブジェクト。
    {
        <identifier>: [Array]
    }
    <Object>.<識別子> 各予測結果の詳細を含むオブジェクトのリスト。

    データタイプ:オブジェクトのアレイ

    <identifier>: [
      {
        "confidence": Number,
        "predictedSysId": "String",
        "predictedValue": "String", 
        "threshold": Number
      }
    ]
    <Object>.<識別子>.<object>.confidence 予測に関連付けられた信頼性の値。例:53.84。

    データタイプ:数値

    <Object>.<識別子>.<object>.predictedSysId 予測値の sys_id。結果は、情報が予測されている任意のテーブルから取得できます。

    データタイプ:文字列

    <Object>.<識別子>.<object>.predictedValue 予測結果を表す値。

    データタイプ:文字列

    <Object>.<識別子>.<object>.threshold 予測に関連付けられた構成済みのしきい値の値。

    データタイプ:数値

    次の例は、predict() メソッドの予測結果を表示する方法を示しています。このメソッドは、 sys_id 別の GlideRecord を入力として受け取り、オプションのパラメーターを含めて、上位 3 つの結果に制限してしきい値を除外します。

    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": ""
        }
      ]
    }

    次の例は、predict() メソッドの予測結果を表示する方法を示しています。このメソッドは、 キーと値のペアを入力のフィールド名のアレイとして受け取り、オプションのパラメーターを含めて、上位 3 つの結果に制限してしきい値を除外します。

    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": ""
        }
      ]
    }