NLU システムエンティティ

  • リリースバージョン: Xanadu
  • 更新日 2024年08月01日
  • 所要時間:11分
  • グローバルに定義された NLU エンティティを使用して、仮想エージェント が会話から抽出できるシステム情報を識別します。エンティティは、トピックの「ノードレス」入力変数として定義できます。これらの変数は、NLU サービスプロバイダー予測からスロット入力するか、トピックのスコープ外で指定できます。

    NLU モデルでは、システムエンティティはデフォルトで有効になっています。これらは、NLU ワークベンチ のこのモデルの [エンティティ] タブで表示できます。

    GLOBAL.DATE システムエンティティ

    DAY サブタイプは、特定の日付を正確に表す日付文字列を返します。

    表 : 1. GLOBAL.DATE SubType = DAY の使用法
    使用法
    形式 YYYY-MM-DD
    正規表現 \\d\\d\\d\\d-\\d\\d-\\d\\d
    入力例 Smith 氏は 2019 年 2 月 4 日金曜日に出発しました。
    正規化値 2019-02-04
    コード例
    {
    "name": "DATE", 
    "value": "...",
    "score": 1.0, 
    "normalization": "2019-02-04"
    }
    

    WEEK サブタイプは、年の特定の週の日付文字列を返します。

    表 : 2. GLOBAL.DATE SubType = WEEK の使用法
    使用法
    形式 YYYY'W'WW
    正規表現 \\d\\d\\d\\d\\dW\\d\\d
    入力例 Smith 氏は 1999 年の第 3 週に出発しました。
    正規化値 1999W3
    コード例
    {
    "name": "entity:GLOBAL.DATE", 
    "value": "...",
    "score": 1.0, 
    "normalization": {"type": "GLOBAL.DATE", "subType": "WEEK", "value":"1999W3"}
    }
    

    MONTH サブタイプは、年の特定の月の日付文字列を返します。

    表 : 3. GLOBAL.DATE SubType = MONTH の使用法
    使用法
    形式 YYYY'M'MM
    正規表現 \\d\\d\\d\\dM\\d\\d
    入力例 Smith 氏は 1999 年 2 月に出発しました。
    正規化値 1999M02
    コード例
    {
    "name": "entity:GLOBAL.DATE",
    "value": "...",
    "score": 1.0, 
    "normalization": {"type": "GLOBAL.DATE", "subType": "MONTH", "value": "1999M02"}
    }
    

    YEAR サブタイプは、特定の年の日付文字列を返します。

    表 : 4. GLOBAL.DATE SubType = YEAR の使用法
    使用法
    形式 YYYY
    正規表現 \\d\\d\\d\\d
    入力例 Smith 氏は 1999 年に出発しました。
    正規化値 1999
    コード例
    {
    "name": "entity:GLOBAL.DATE",
    "value": "...",
    "score": 1.0,
    "normalization": {"type": "GLOBAL.DATE", "subType": "YEAR", "value": "1999"}
    }
    

    SEASON サブタイプは、年の特定の季節の日付文字列を返します。

    表 : 5. GLOBAL.DATE SubType = SEASON の使用法
    使用法
    フォーマット 次のいずれかになります。
    • 冬:YYYYWI
    • 春:YYYYSP
    • 夏:YYYYSU
    • 秋:YYYYFA
    正規表現 次のいずれかになります。
    • 冬:\\d\\d\\d\\dWI
    • 春:\\d\\d\\d\\dSP
    • 夏:\\d\\d\\d\\dSU
    • 秋:\\d\\d\\d\\dFA
    入力例 Smith 氏は 1999 年の秋に出発しました。
    正規化値 1999FA
    コード例
    {
    "name": "entity:GLOBAL.DATE",
    "value": "...",
    "score": 1.0,
    "normalization": {"type": "GLOBAL.DATE", "subType": "SEASON", "value": "1999FA"}
    }
    

    GLOBAL.TIME システムエンティティ

    TIME サブタイプは、1 時間と 1 分を正確に表す時間文字列を返します。

    表 : 6. GLOBAL.TIME SubType = TIME の使用法
    使用法
    形式 'T'HH:mm
    正規表現 T\\d\\d:\\d\\d
    入力例 Smith 氏は 3 時 10 分前に出発しました。
    正規化値 T02:50
    コード例
    {
    "name": "entity:GLOBAL.TIME", 
    "value": "...",
    "score": 1.0, 
    "normalization": {"type": "GLOBAL.TIME","subType": "TIME", "value": "T02:50"}
    }
    

    PARTSOFDAY サブタイプは、その日の部分を指定する時間文字列を返します。

    表 : 7. GLOBAL.TIME SubType = PARTSOFDAY の使用法
    使用法
    フォーマット 次のいずれかになります。
    • 朝:TMO
    • 午後:TAF
    • 夕方:TEV
    • 夜:TNI
    正規表現 次のいずれかになります。
    • 朝:TMO
    • 午後:TAF
    • 夕方:TEV
    • 夜:TNI
    入力例 Smith 氏は朝に出発しました。
    正規化値 TMO
    コード例
    {
    "name": "entity:GLOBAL.TIME", 
    "value": "...",
    "score": 1.0, 
    "normalization": {"type": "GLOBAL.TIME", "subType": "PARTSOFDAY", "value": "TMO"}
    }
    

    GLOBAL.DATE_TIME システムエンティティ

    DATE_TIME サブタイプは、特定の日付を正確に表す日付文字列と、時間と分を正確に表す時間文字列を返します。

    表 : 8. GLOBAL.DATE_TIME SubType = DATETIME の使用法
    使用法
    フォーマット YYYY-MM-DD'T'HH:mm
    正規表現 \\d\\d\\d\\d-\\d\\d-\\d\\dT\\d\\d:\\d\\d
    入力例 Mr. Smith leaves on October 31st at 5:00 p.m.
    正規化値 2022-10-31T17:00
    コード例
    {
    "name": "DATE_TIME",
    "value": "October 31st at 5:00 p.m",
    "normalization": "2022-10-31T17:00","confidence": "1"
    }

    GLOBAL.DURATION システムエンティティ

    このエンティティは、アクティビティの期間を指定する期間文字列を返します。

    表 : 9. GLOBAL.DURATION の使用法
    使用法
    フォーマット 次のいずれかになります。
    • 秒:'s'ss
    • 分:'m'mm
    • 時間:'h'hh
    • 日:'D'DD
    • 週:'W'WW
    • 月:'M'MM
    • 年:'Y'YY
    正規表現 次のいずれかになります。
    • 秒:s\\d\\d
    • 分:m\\d\\d
    • 時間:h\\d\\d
    • 日:D\\d\\d
    • 週:W\\d\\d
    • 月:M\\d\\d
    • 年:Y\\d\\d
    入力例 Smith 氏は Boston に 48 時間滞在しました。
    正規化値 h48
    コード例
    {
    "name": "entity:GLOBAL.DURATION",
    "value": "...", 
    "score": 1.0,
    "normalization": {"type": "GLOBAL.DURATION", "value": "h48"}
    }
    

    GLOBAL.LOCATION システムエンティティ

    このエンティティは場所文字列を返します。

    表 : 10. GLOBAL.LOCATION の使用法
    使用法
    フォーマット 文字列値。例:Santa Clara
    正規表現 適用外です。
    入力例 Smith 氏は Santa Clara で働いています。
    正規化値 Santa Clara
    コード例
    {
    "name": "entity:GLOBAL.LOCATION",
    "value": "...", 
    "score": 1.0,
    "normalization": {"type": "GLOBAL.LOCATION", "value":"Santa Clara"}
    }
    

    GLOBAL.PERSON システムエンティティ

    このエンティティは名前文字列を返します。

    使用法
    フォーマット 文字列値。例:Joe Smith
    正規表現 適用外です。
    入力例 Joe Smith は Santa Clara で働いています。
    正規化値 Joe Smith
    コード例
    {
    "name": "entity:GLOBAL.PERSON", 
    "value": "...",
    "score": 1.0, 
    "normalization": {"type": "GLOBAL.PERSON", "value":"Joe Smith"}
    }
    

    GLOBAL.MONEY システムエンティティ

    このエンティティは通貨文字列を返します。

    表 : 11. GLOBAL.MONEY の使用法
    使用法
    フォーマット 文字列値。例:USD 2000
    正規表現 適用外です。
    入力例 $2,000 未満のラップトップを表示してください。
    正規化値 USD 2000
    注:
    正規化値は、ソース通貨の 3 文字の ISO 3166 国コードを使用します。
    コード例
    {
    "name": "entity:GLOBAL.MONEY", 
    "value": "...",
    "score": 1.0, 
    "normalization": {"type": "GLOBAL.MONEY", "value":"2000", “currency”:”USD”}
    }
    

    GLOBAL.NUMBER システムエンティティ

    このエンティティは数値を返します。

    使用法
    フォーマット 文字列値。例:5.0
    正規表現 適用外です。
    入力例 自分のアカウントで前の 5 つのトランザクションを確認したい。
    正規化値 5.0
    コード例
    {
    "name": "entity:GLOBAL.NUMBER",
      "value": "...",
      "score": 1.0,
      "normalization": {"numericValue":"5", “normalizedValue”: “5”}
    }
    

    GLOBAL.SOFTWARE

    ソフトウェア文字列を返します。

    使用法
    フォーマット 文字列値。例:Java
    正規表現 適用外です。
    入力例 Java をインストールするにはどうすればよいですか?
    正規化値 Java
    コード例
    {
      "name": "entity:GLOBAL.SOFTWARE",
      "value": "Java",
      "score": 0.99930537,
      "normalization": {"type":"entity:GLOBAL.SOFTWARE",
                         "subType":"SOFTWARE",
                         "value":"Java"}
    }
    

    GLOBAL.HARDWARE

    ハードウェア文字列を返します。

    使用法
    フォーマット 文字列値。例:プリンター
    正規表現 適用外です。
    入力例 プリンターを注文するにはどうすればよいですか?
    正規化値 プリンター
    コード例
    {
      "name": "entity:GLOBAL.HARDWARE",
      "value": "printer",
      "score": 1.0,
      "normalization": {"type":"entity:GLOBAL.HARDWARE",
                         "subType":"HARDWARE",
                         "value":"printer"}
    }
    

    Software システムエンティティを使用した NLU 予測結果の例

    {"status":"success",
       "response":{
          "utterance":"How do I install Java?",
          "intents":[
             {
                "intentName":"test intent",
                "nluModelName":"ml_x_snc_global_global_268a97a9dbd23c107906265d1396191a",
                "score":0.90401393,
                "intents":[
                   
                ],
                "entities":[
                   {
                      "name":"entity:GLOBAL.SOFTWARE",
                      "value":"Java",
                      "score":0.99930537,
                      "normalization":{
                         "type":"entity:GLOBAL.SOFTWARE",
                         "subType":"SOFTWARE",
                         "value":"Java"
                      },
                      "startingPosition":-1
                   }
                ]
             }
          ],
          "properties":{
             "all:ml_x_snc_global_global_268a97a9dbd23c107906265d1396191a":"0.55",
             "entity:all":"0.01",
             "inference.sspace.time":"4",
             "inference.time":"33",
             "intent:all":"0.01",
             "nluPlatformLanguage":"en",
             "nluPlatformVersion":"rome.0"
          }
       }
    }
    

    DATE システムエンティティを使用した NLU 予測結果の例

    {
        "utterance": "We should meet next Sunday at Starbucks.",
        "intents": [
            {
                "intentName": "intent:Desire.Desire",
                "score": 0.83452,
                "entities": []
            },
            {
                "intentName": "intent:Meeting.MeetRequest",
                "score": 0.8919042,
                "entities": [
                    {
                        "entityName": "entity:Meeting.MeetRequest.Where",
                        "value": "Starbucks",
                        "score": 1
                    },
         {
                        "entityName": "entity:GLOBAL.DATE",
                        "value": "Sunday",
                        "normalization": { "type": "DATE",
                            "subType": "DAY",
                            "value": "1999-10-01"
                         },
                        "score": 0.87
                    }
                ]
            }
        ]
    }