問題タブ [botbuilder]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
microsoft-cognitive - LUIS API を使用してエンティティ階層を作成できません
LUIS API を使用してエンティティ階層を作成したいと考えています。API docsに従って、JSON 本文を使用して Create Entity Extractor エンドポイントへの POST を作成する必要があります。
ただし、この要求を実行すると、LUIS には "EntityName" という新しいエンティティのみがあり、子はありません。children 配列が無視されているかのようです。何が起こっているかについてのアイデアはありますか?
node.js - node.js botbuilder と LUIS を使用しているときに、人間への引き継ぎを試みた人はいますか?
node.js botbuilder と LUIS を使用しているときに、人間への引き継ぎを試みた人はいますか? サンプルコードはどこにありますか?
c# - MS Bot Framework が無限ループでメッセージの送信を停止しました
MS Bot Framework を使用するボットが、facebook
とemulator
チャネルの両方で無限ループでユーザーにメッセージを送信するのにスタックしています。
IDialog
私のボットには、メニューのような「ルート」がIDialog
あり、ユーザーの選択に応じて他のいくつかの を呼び出します。子ダイアログは次のように呼び出されます。
response
IMessageActivity
ユーザーが送信したものです。ChildDialogComplete
メインメニューを再度構築し、次の行で終了するメソッドです。
.
この 1 つの非常に短いダイアログを除いて、すべてのダイアログは正常に機能します。これにより、無限ループが発生します。Web アプリを停止するまで、ボットはこのメッセージを何度も送信し続けます。
}
あなたが何をしているのか疑問に思っているならSendCardToChat
:
要点をまとめると:
- を使用して別のダイアログからダイアログを起動しています
context.Forward()
- ダイアログは、ユーザーにメッセージを表示し、ユーザーからの追加の入力なしですぐに終了することになっています
- 代わりに、「私たちのインフォメーション カウンターがお手伝いします!」を送信し続けます。メッセージ無限。
私の最善の推測は、子ダイアログが何らかの形でユーザーの最初のメッセージを会話に返し、それが同じダイアログを何度もトリガーすることです。しかし、これは起こるべきではありません。子供は、私が作成IDialog
した以外の会話に何も送信してはなりません。HeroCard
または、私が間違った方向を見ているのかもしれません。Bot Framework は、IDialog
何かを実行してすぐにcontext.Wait()
?なしで終了する s をサポートしていません。
node.js - aml と nodejs を使用したチャット ボットの構築
提供されるコース、その料金、コースの詳細とタイミングなどに関する質問で、私のウェブサイトの顧客にサービスを提供する必要があります.
を使用aiml
すると、AI や ML を使用せずにビジネス ロジックを簡単に説明できますが、Microsoft Bot Framework (Node.js
バージョン) の場合と同様に、顧客のクエリを完了するために機能をチェーン化するウォーターフォール アプローチ スタイルのコーディングを多数作成する必要があることがわかります。
それでは私の質問は、連鎖関数を手動で記述した場合、どのようにインテリジェントまたは機械学習になるのでしょうか? また、Microsoft Bot Framework を使用する場合、一連の質問と回答はどこに入力すればよいですか?
さまざまなアプローチを見て混乱しています。私の要件にはどのアプローチが適していますか?
c# - メソッド IDialogStack.Wait の型引数(ResumeAfter履歴書)は使用法から推測できません
私はIDialog
ボットで を使用しており、ボット フレームワークによって実行されるメソッドの 1 つには、context.Wait()
通常どおり 2 つの引数がありました。
このメソッドに 3 番目のオプションの引数を追加したいと思います。これは、このメソッドをコード内のどこかから直接実行する場合に指定します (Bot Framework が後で実行してcontext.Wait()
ユーザーからメッセージを受信する場合とは対照的です)。
そのため、メソッドを次のように変更します。
そのため、すべてのcontext.Wait
呼び出しが無効として表示されるようになりました。
メソッド宣言から 3 番目の引数を削除すると、そのエラーは消えます。
Visual Studio によって表示されるメッセージは次のとおりです。
メソッド IDialogStack.Wait(ResumeAfter resume) の型引数は、使用法から推測できません。型引数を明示的に指定してみてください。
context.Wait
それはasを呼び出す必要があることを意味すると思いますcontext.Wait<SOMETHING>
が、 の代わりに何を書くべきかわかりませんSOMETHING
。
c# - C# | MS ボットビルダー | DefaultIfException の使用法
MS Bot ビルダー SDK で DefaultIfException を使用する方法に関するいくつかのドキュメントを追跡しようとしています。私が見る限り、その使用法に関するドキュメントはありません。
「申し訳ありませんが、ボット コードに問題があります」というメッセージがユーザーに投稿されるのを回避しようとしています。DefaultIfException を使用すると、それが言うことを実行し、「例外の伝播を停止」しますが、何もしないのではなく、独自のエラー メッセージを投稿する方法がわかりません。
カスタム エラー ダイアログ クラスなどを使用するようにボット フレームワークに指示する方法があれば、すばらしいことです。
コードサンプルの編集:
単純に実装するカスタムダイアログクラスは
await Conversation.SendAsync(activity, () => new RootDialog().DefaultIfException());
どこにありますか?RootDialog()
IDialog<object>
IDialog<object>
にアクセスできることを実装すると気付くでしょうpublic async Task StartAsync(IDialogContext context)
。このメソッドで を呼び出すとcontext.Wait(MessageReceivedAsync);
、次のようになります。public async Task MessageReceivedAsync(IDialogContext context, IAwaitable<IMessageActivity> argument)
このメソッドでは、メッセージの処理を処理し、エラーを処理する try-catch で処理をラップします。
明確にするために、実際には DefaultIfException を使用していません。これは、独自のエラー メッセージを使用できないためです。ただし、エラーの伝播を停止したいだけの場合は、DefaulIfException のみを使用できます。