型を使用すると、アシスタントの NLU(自然言語理解)を構成できます。 を使用して、ユーザー入力から構造化データを抽出します。マイページ は、次のような状況で型を使用できます。
インテントでは、トレーニング フレーズに次の型のアノテーションを付けることができます。 作成します。ユーザーがスロットに一致する発言をすると、NLU エンジンが 型指定パラメータとして抽出するので、シーンで処理できます。
カスタム型
カスタムタイプを使用すると、独自のタイプ仕様を作成して NLU に通知できます。 一連の値を 1 つのキーに割り当てますさまざまな形式で型を指定できます。 方法:
- 単語と類義語では、複数の値を 1 つのキーにマッピングできます。
これをエントリと呼びますタイプには、1 つまたは複数のエントリを含めることができます。もし
次の NLU 設定を有効にすることもできます。
<ph type="x-smartling-placeholder">
- </ph>
- ファジー一致を有効にする - この機能では、複数の 単語の語順が異なる場合でも、一致する単語を検索します。
- 不明な値を受け入れる - 指定可能な値をすべて指定できない場合は、 言語プロセッサは、周囲の環境に基づいて、未知の単語やフレーズを 食料品店に追加される可能性のあるアイテムなど、入力およびインテント トレーニング データ 選択します。
- 正規表現では、正規表現を使用して値を照合できます。 基づいて表現パターンを Google の RE2 規格。
- 自由形式のテキスト: 一致するタイプ アラートが生成されます。アノテーション付け中 このタイプのインテントでは、すべての入力をパラメータとして使用して、 独自の NLU に連結できます
システムの種類
システムタイプを使用すると、ユーザー入力からよく知られたデータにアノテーションを付けて抽出できます。 システムが提供するトレーニング データと値を使用します。次のシステムタイプは、 supported:
タイプ | 説明 |
---|---|
actions.type.DateTime |
ユーザーのデバイスの設定に基づく日付、時刻、タイムゾーンが含まれます。 スロット充填とトレーニング フレーズのアノテーションで使用できます。 |
actions.type.Date |
日付のみが含まれます。スロット充填でのみ使用できます。 |
actions.type.Time |
時間のみが含まれます。スロット充填でのみ使用できます。 |
actions.type.Number |
Number 型は序数と基数と一致します。
あります。 |
DateTime
、Date
、Time
の使用状況
これらの型の動作は、型と ユーザー入力を返します。
インテントで使用する
インテントでトレーニング フレーズにアノテーションを付けることができるのは、DateTime
タイプのみです。ユーザー
入力は DateTime
値全体と一致する必要はありません。たとえば、ユーザーが
年のみを指定している場合、session パラメータは次のようになります。
"date_time": {
"year": 2019
}
スロット充填で使用する
スロット充填は、DateTime
、Date
、Time
をサポートします。
- スロットタイプが
DateTime
の場合、アシスタントはフル充電されるまでユーザーにメッセージを表示します。 値が提供されます。 - スロットタイプが
Date
の場合、アシスタントはその日付までユーザーにメッセージを表示します。 値が提供されます。収集されると、受信するパラメータは完全な 時刻を 00:00 に設定したDateTime
。 - スロットタイプが
Time
の場合、アシスタントはその時間になるまでユーザーにメッセージを表示します。 値が提供されます。収集されると、受信するパラメータは完全な 日付が現在の日付に設定されたDateTime
オブジェクト。
たとえば、ロサンゼルスのユーザーが「OK Google, リマインダーを作成して」と言ったとします。
にアクセスしていただけますでしょうか。」DateTime
がスロットの一部として抽出される場合
完全なパラメータは次のようになります。
"date_time": {
"day": 15,
"hours": 20,
"minutes": 0,
"month": 1,
"nanos": 0,
"seconds": 0,
"time_zone": {
"id": "America/Los_Angeles"
},
"year": 2024
}
条件での使用
条件では数値と文字列しか使用できないため、トップレベル
DateTime
パラメータを使用すると、条件に対して False 結果が得られます。次に例を示します。
$session.params.my_dateTime.day > 5
は有効な条件です。これは、day
の値は数値で、サポートされています。- 次の理由により、
$session.params.my_dateTime > "01-01-2010"
は無効な条件です。 最上位レベルの 'DateTime'オブジェクトは数値または文字列ではありません。
ランタイム タイプのオーバーライド
ランタイム タイプのオーバーライドを使用すると、ランタイム タイプの動的な作成や変更が 受け取りますこの機能を使用すると、 ランタイム。たとえば、バックエンド データソースを確認して、日替わりメニューを読み込むことができます フルフィルメントのタイプに 変換します
詳しくは、Webhook ガイドをご覧ください。 ビルドタイプのオーバーライドの方法について見てみましょう。