SimilaritySolution - グローバル

  • リリースバージョン: Australia
  • 更新日 2026年03月12日
  • 所要時間:20分
  • SimilaritySolution API は、予測インテリジェンスストアで使用されるスクリプト可能なオブジェクトです。

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

    ソリューションのセットアップからトレーニングまでのフローは次のとおりです。
    1. コンストラクターを使用して、類似性ソリューションオブジェクトを作成します。
    2. SimilaritySolutionStore - add() メソッドを使用して、ソリューションオブジェクトを類似性ソリューションストアに追加します。
    3. submitTrainingJob() メソッドを使用してソリューションをトレーニングします。これにより、 SimilaritySolutionVersion API を使用して管理できるオブジェクトのバージョンが作成されます。
    4. SimilaritySolutionVersion – predict() メソッドを使用して予測を取得します。
    注:
    この API は、Vancouver パッチ 7 ホットフィックス 2b および Washington DC パッチ 7 リリースより前の完全な権限で実行されます。それ以降のリリースでは、ACL を使用してアクセス権を付与します。詳細については、「 Query ACLs」を参照してください。

    使用上のガイドラインについては、「 ML API の使用」を参照してください。

    SimilaritySolution:SimilaritySolution (オブジェクト構成)

    類似性ソリューションを作成します。

    表 : 1. パラメーター
    名前 タイプ 説明
    構成 オブジェクト の構成プロパティを含む JavaScript オブジェクト ソリューション。
    {  
      "domainName": "String",
      "label": "String",
      "lookupDataset": {Object},
      "minRowCount": "String",
      "processingLanguage": "String",
      "stopwords": [Array],
      "testDataset": {Object},
      "trainingFrequency": "String",
      "updateFrequency": "String"
    }
    config.domainName 文字列 オプション。このデータセットに関連付けられたドメイン名。「 ドメインセパレーション」および 予測インテリジェンスを参照してください。

    デフォルト:現在のドメイン ( 「global」など)。

    config.label 文字列 予測タスクを識別します。
    config.lookupDataset オブジェクト ルックアップセットとして使用する DatasetDefinition の名前。
    config.minRowCount 文字列 オプション。トレーニングのためにデータセットに必要なレコードの最小数。

    デフォルト:10000

    config.processingLanguage 文字列 オプション。2 文字の ISO 639-1 言語コード形式の処理言語。

    デフォルト:「en」

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

    デフォルト:英語のストップワード

    config.testDataset オブジェクト lookupDataset結果との類似性をスキャンする DatasetDefinition の名前。
    config.trainingFrequency 文字列 オプション。 モデルを再トレーニングする頻度。
    可能な値:
    • every_30_days
    • every_60_days
    • every_90_days
    • every_120_days
    • every_180_days
    • run_once
    デフォルト:run_once
    config.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

    次の例は、オブジェクトを作成して SimilaritySolution ストア。

    var incidentData = new sn_ml.DatasetDefinition({
            'tableName' : 'incident',
            'fieldNames' : ['category', 'short_description']        
        });
        var kbData = new sn_ml.DatasetDefinition({
            'tableName' : 'kb_knowledge',
            'fieldNames' : ['short_description'],
            'encodedQuery' : 'active=true'
        });
    
        var mySolution = new sn_ml.SimilaritySolution({
            'label': "similarity solution",
            'lookupDataset' : kbData,
            'testDataset' : incidentData,              
        });
        
        // add solution
        var solutionName = sn_ml.SimilaritySolutionStore.add(mySolution);

    SimilaritySolution:cancelTrainingJob()

    のジョブをキャンセル ソリューションオブジェクト トレーニングのために送信された

    表 : 2. パラメーター
    名前 タイプ 説明
    なし
    表 : 3. 返される内容
    タイプ 説明
    なし

    次の例は、既存のトレーニングジョブをキャンセルする方法を示しています。

    var mySolution = sn_ml.SimilaritySolutionStore.get('ml_sn_global_global_similarity');
    
    mySolution.cancelTrainingJob();

    SimilaritySolution:getActiveVersion()

    アクティブを取得します SimilaritySolutionVersion オブジェクト。

    表 : 4. パラメーター
    名前 タイプ 説明
    なし
    表 : 5. 返される内容
    タイプ 説明
    オブジェクト アクティブな SimilaritySolutionVersion オブジェクト。

    次の例は 類似性ソリューション ストアからアクティブなバージョンを取得し、そのトレーニングステータスを返す

    var mlSolution = sn_ml.SimilaritySolutionStore.get('ml_x_snc_global_global_similarity');
    
    gs.print(JSON.stringify(JSON.parse(mlSolution.getActiveVersion().getStatus()), null, 2));

    出力:

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

    SimilaritySolution:getAllVersions()

    のすべてのバージョンを取得しますSimilaritySolution オブジェクト。

    表 : 6. パラメーター
    名前 タイプ 説明
    なし
    表 : 7. 返される内容
    タイプ 説明
    アレイ 類似ソリューションオブジェクトの既存のバージョン。関連項目 ソリューションバージョンAPI。

    次の例は、すべての SimilaritySolution バージョンオブジェクトを取得し、それらで getVersionNumber() および getStatus() ソリューションバージョンメソッドを呼び出す方法を示しています。

    var mlSolution = sn_ml.SimilaritySolutionStore.get('ml_x_snc_global_global_Similarity');
    
    var mlSolutionVersions = mlSolution.getAllVersions();
    
    for (i = 0; i < mlSolutionVersions.length; i++) {
    gs.print("Version " + mlSolutionVersions[i].getVersionNumber() + " Status: " + mlSolutionVersions[i].getStatus() +"\n");
    

    出力:

    Version 3 Status: {"state":"solution_complete","percentComplete":"100","hasJobEnded":"true"}
    
    Version 2 Status: {"state":"solution_complete","percentComplete":"100","hasJobEnded":"true"}
    
    Version 1 Status: {"state":"solution_cancelled","percentComplete":"0","hasJobEnded":"true"}

    SimilaritySolution:getLatestVersion()

    の最新バージョンを取得します 解決策。

    表 : 8. パラメーター
    名前 タイプ 説明
    なし
    表 : 9. 返される内容
    タイプ 説明
    オブジェクト SimilaritySolutionVersion の最新バージョンに対応するオブジェクト : SimilaritySolution

    次の例は、ソリューションの最新バージョンを取得し 、そのトレーニングステータスを返す方法を示しています。

    var mlSolution = sn_ml.SimilaritySolutionStore.get('ml_x_snc_global_global_Similarity');
    
    gs.print(JSON.stringify(JSON.parse(mlSolution.getLatestVersion().getStatus()), null, 2));

    出力:

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

    SimilaritySolution:getName()

    ストアとのインタラクションに使用するオブジェクトの名前を取得します。

    表 : 10. パラメーター
    名前 タイプ 説明
    なし
    表 : 11. 返される内容
    タイプ 説明
    文字列 ソリューションオブジェクトの名前。

    次の例は、 類似性ソリューション データセット情報を更新し、オブジェクトの名前を出力

    // Update solution
    var myIncidentData = new sn_ml.DatasetDefinition({
       'tableName' : 'incident',
       'fieldNames' : ['category', 'short_description', 'priority'],
       'encodedQuery' : 'activeANYTHING'
    });
    
    var eligibleFields = JSON.parse(myIncidentData.getEligibleFields('Similarity'));
    
    var mySimilarity = new sn_ml.SimilaritySolution({
       'label': "my Similarity solution",
       'dataset' : myIncidentData,
       'inputFieldNames': eligibleFields['eligibleInputFieldNames'],
       'predictedFieldName': 'category'
    });
    
    // update solution
    sn_ml.SimilaritySolutionStore.update('ml_x_snc_global_global_my_solution_definition_4', mySimilarity);
    
    // print solution name
    gs.print('Solution Name: '+mySimilarity.getName());

    出力:

    Solution Name: ml_x_snc_global_global_my_solution_definition_4

    SimilaritySolution:getProperties()

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

    表 : 12. パラメーター
    名前 タイプ 説明
    なし
    表 : 13. 返される内容
    タイプ 説明
    オブジェクト SimilaritySolutionStore 内の Dataset と SimilaritySolution() オブジェクトの詳細の内容。
    {
      "domainName": "String",
      "label": "String",
      "lookupDatasetProperties": {Object},
      "name": "String",
      "processingLanguage": "String",
      "scope": "String",
      "stopwords": [Array],
      "testDatasetProperties": {Object},
      "trainingFrequency": "String",
      "updateFrequency": "String"
    }
    <Object>.domainName このデータセットに関連付けられたドメイン名。「 ドメインセパレーション」および 予測インテリジェンスを参照してください。

    データタイプ:文字列。

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

    データタイプ:文字列。

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

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

    <Object>.lookupDatasetProperties.tableName データセットのテーブルの名前。たとえば、「 tableName」:「インシデント」です。

    データタイプ:文字列。

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

    データタイプ:アレイ。

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

    データタイプ:アレイ。

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

    データタイプ:文字列。

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

    データタイプ:文字列。

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

    データタイプ:文字列。

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

    データタイプ:文字列。

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

    データタイプ:文字列。

    <Object>.scope オブジェクトスコープ。現時点で有効な値は グローバル値のみです。

    データタイプ:文字列

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

    データタイプ:アレイ。

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

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

    <Object>.testDatasetProperties.tableName データセットのテーブルの名前。たとえば、「 tableName」:「インシデント」です。

    データタイプ:文字列。

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

    データタイプ:アレイ。

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

    データタイプ:アレイ。

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

    データタイプ:文字列。

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

    データタイプ:文字列。

    <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

    データタイプ:文字列

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

    var mySolution = sn_ml.SimilaritySolutionStore.get('ml_sn_global_global_similarity_solution');
    
    gs.print(JSON.stringify(JSON.parse(mySolution.getProperties()), null, 2));
    出力:
    *** Script: {
      "domainName": "global",
      "label": "similarity",
      "lookupDatasetProperties": {
        "tableName": "incident",
        "fieldNames": [
          "short_description"
        ]
      },
      "name": "ml_x_snc_global_global_similarity",
      "processingLanguage": "en",
      "scope": "global",
      "stopwords": [
        "Default English Stopwords"
      ],
      "testDatasetProperties": {
        "tableName": "incident",
        "fieldNames": [
          "short_description"
        ]
      },
      "trainingFrequency": "every_30_days",
      "updateFrequency": "do_not_update"
    }

    SimilaritySolution:getVersion(文字列バージョン)

    ソリューションを取得します 指定されたバージョン番号で。

    表 : 14. パラメーター
    名前 タイプ 説明
    version 文字列 ソリューションの既存のバージョン番号
    表 : 15. 返される内容
    タイプ 説明
    オブジェクト SimilaritySolutionVersion API メソッドを呼び出すことができる SimilaritySolution() オブジェクトの指定されたバージョン。

    次の例は、バージョン番号でソリューションのトレーニングステータスを取得する方法を示しています

    var mlSolution = sn_ml.SimilaritySolutionStore.get('ml_x_snc_global_global_similarity');
    
    gs.print(JSON.stringify(JSON.parse(mlSolution.getVersion('1').getStatus()), null, 2));

    出力:

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

    SimilaritySolution:setActiveVersion(文字列 version)

    ストア内の指定されたバージョンのソリューションをアクティブ化します。

    表 : 16. パラメーター
    名前 タイプ 説明
    version 文字列 アクティブ化する SimilaritySolution() オブジェクトバージョンの名前。

    このバージョンをアクティブ化すると、他のバージョンはすべて非アクティブ化されます。

    表 : 17. 返される内容
    タイプ 説明
    なし

    次の例は、ストアでソリューションバージョンアクティブ化する方法を示しています

    sn_ml.SimilaritySolution.setActiveVersion("ml_x_snc_global_similarity_solution");

    SimilaritySolution - submitTrainingJob()

    トレーニングジョブを送信します。

    注:
    このメソッドを実行する前に、 まず SimilaritySolutionStore - add() メソッドを使用してソリューションをストアに追加する必要があります。
    表 : 18. パラメーター
    名前 タイプ 説明
    なし
    表 : 19. 返される内容
    タイプ 説明
    オブジェクト 類似性ソリューションバージョン に対応するオブジェクト 類似性ソリューション トレーニング対象
    // Create a dataset 
    var incidentData = new sn_ml.DatasetDefinition({
        'tableName' : 'incident',
        'fieldNames' : ['category', 'short_description']
    });
    
    var kbData = new sn_ml.DatasetDefinition({
        'tableName' : 'kb_knowledge',
        'fieldNames' : ['short_description'],
        'encodedQuery' : 'active=true'
    });
    
    // Create a solution 
    var mySolution = new sn_ml.SimilaritySolution({
        'label': "similarity solution",
        'lookupDataset' : kbData,
        'testDataset' : incidentData
    });
    
    // Add solution
    var solutionName = sn_ml.SimilaritySolutionStore.add(mySolution);
    
    
    // Train the solution - this is a long running job 
    var mySimilarityVersion = mySolution.submitTrainingJob();