適用対象: SDK v4
言語生成 (LG) を使用すると、開発者はコードとリソース ファイルから埋め込み文字列を抽出し、LG ランタイムとファイル形式で管理できます。 LG では、開発者は、フレーズに複数のバリエーションを定義し、コンテキストに基づいて単純な式を実行し、会話メモリを参照することで、より自然な会話エクスペリエンスを作成できます。
注
LG は Bot Framework Composer でサポートされており、SDK 優先ボットでの使用を目的としていません。
LG は、開発者が次の用途に使用できます。
- ボットの一貫性のある個性、音声のトーンを実現する
- プレゼンテーションからビジネス ロジックを分離する
- 彼らのボットの応答に対する多様性と高度な構成に基づく解決策が含まれます。
- 音声と表示の適応を追加する
- カード、推奨されるアクション、添付ファイルを構築する
LGの中核には、テンプレートの拡張とエンティティの置換があります。 テンプレートを条件付きで展開するだけでなく、展開のバリエーションの 1 つを指定できます。 LG からの出力には、単純なテキスト文字列、複数行の応答、または LG の上のレイヤーが アクティビティの構築に使用する複雑なオブジェクト ペイロードを指定できます。
簡単なあいさつLGテンプレートを次に示します。 すべての応答メッセージが、変数 ${user.name}
を使用してメモリ内のユーザーの名前を参照していることに注意してください。
# greetingTemplate
- Hello ${user.name}, how are you?
- Good morning ${user.name}.It's nice to see you again.
- Good day ${user.name}. What can I do for you today?
LGの動作
ボットを開発するときは、さまざまな方法で LG を使用できます。 まず、1 つ以上 の .lg ファイル を作成して、ユーザーに対するボットの応答で言語生成サブタイプを使用する可能性のあるすべてのシナリオをカバーします。
多言語生成と言語フォールバック ポリシー
ボットは、複数の音声言語または表示言語を対象とする場合があります。 TemplateEngine の個別のインスタンスは、ターゲット言語ごとに 1 つずつ管理できます。
その他のリソース
- lgファイルの詳細については、 .lgファイル形式 を参照してください。
- 複雑なテンプレートの詳細については 、構造化された応答 テンプレートを参照してください。
- C# API リファレンス
- JavaScript API リファレンス