7

同僚と私は、Microsoft ボット フレームワークと Microsoft LUIS を使用して、非常に大規模なアプリケーションの構築に取り組んでいます。基本的に、組織全体の人々が (slack を介して) ボットにメッセージを送信し、関連情報を受け取ることができるボットを作成しようとしています。さまざまな種類の要求が、さまざまな主題ドメイン (販売、マーケティング、ロジスティクス、および R&D) に関係しています。複数の LUIS モデル、エンティティ、およびサブ エンティティをチェーンして、要求が正しいエンティティに到達する前にすべてのエンティティを照会しないようにするにはどうすればよいでしょうか?

現在、ユーザーが「これまでに研究に費やした金額はどれくらいですか?」と尋ねた場合。最初に販売エンティティ、次にマーケティング エンティティ、次にロジスティクス エンティティにクエリを実行し、最後に R&D エンティティにクエリを実行してから応答を取得します。API リクエストの数を制限しようとしています。私は現在、このルーティングの問題に対処する 3 つの解決策を知っていますが、適切なエンティティへのルーティングに LUIS に依存しているようには見えません。

解決策 1 では、各ドメインに対応する UI セレクターをボットに提供します。

解決策 2 では、NLP ライブラリを接続して文から主語を抽出し、重み付けされた辞書ライブラリを使用して主語を照合します。

解決策 3 には、純粋な RegEx の設定が含まれます。明らかな理由から、これは私の最も嫌いなソリューションです。

Microsoft ボット フレームワークと Microsoft LUIS を使用するエンタープライズ グレードのリファレンス アプリケーションへのリンクが理想的な回答です。

4

1 に答える 1

1

ContosoFlowersのようなエンド ツー エンドのデモを含む新しいサンプル セットを次に示します。これにより、実際の BOT プロジェクトがどのように構築されるかが明らかになります。

  • サンプルはタスクに焦点を当てたもので、フレームワークの特定の機能を示しています。
  • エンド ツー エンドのデモは、依存関係の挿入、IScorable 機能の使用、コンポーネントの分離方法、再利用可能なボット アセットの構築方法、プロジェクトの編成方法などの概念を確認できるため、見ているものにより適しています。 /建築。

もう 1 つのパブリック ボットは、実際の実装が見られるAzure ボットです。addextensibilityブランチでも興味深いリファクタリングが行われています。アーキテクチャがどのように進化しているかを確認することもできます

ドキュメントから:

AzureBot は、Azure を使用する開発者、管理者、またはチームの生産性を向上させるために作成されました。現在公開されており、デベロッパー セットアップに従って自分で実行し、貢献することもできます。

この最初の実装では、ユーザーの Azure サブスクリプションに対する認証、サブスクリプションの選択と切り替え、RM ベースの仮想マシンの開始と停止、および Azure Automation Runbook の一覧表示と開始に焦点を当てています。

于 2016-10-07T16:03:44.173 に答える