2017-09-15 4 views
2

私はNode.jsでMicrosoftボットフレームワークに組み込まれたチャットボットを持っています。このボットをLUIS.AIインテリジェンスと呼ばれるNLPフレームワークと統合して、ユーザーの会話を彼らの意図とエンティティに基づいて処理します。ここでは、単一のLUISアプリケーションで複数の言語をサポートするためにこのボットが必要ですが、そうすることはできません。単一のLUISアプリケーションまたはコードレベルで複数の言語をサポートするための方法がありますか?Microsoft chatbot(Node.js)は、単一のLUIS.AIアプリケーションで複数の言語をサポートしますか?

答えて

2

コードレベル:複数のLUISアプリケーションを作成し、LuisRecognizerに接続するには、ILuisModelMapを使用します。キーはあなたのロケールになります。

// Assuming you've already instantiated your bot, time to instantiate 
// the LuisRecognizer with an ILuisModelMap. 

var many_language_recognizer = new builder.LuisRecognizer({ 
    'en': englishModel || process.env.EN_LUIS, 
    'es': spanishModel || process.env.ES_LUIS, 
    'fr': frenchModel || process.env.FR_LUIS 
}); 

bot.recognizer(many_language_recognizer); 

また、SDKのローカリゼーション機能を使用して、プロンプトとメッセージを生成することもできます。

LUISレベル: LUISは、したがって、複数のアプリを作成することは、アプリケーションごとに言語をサポートしています。

+0

ご回答いただきありがとうございます。唯一の方法は、複数の言語のアプリケーションをサポートするLUISの複数のアプリケーションを作成することです。私たちの側で単一のアプリケーション(英語)を持ち、ボットレスポンスとマルチリンガル目的のユーザー応答を翻訳するための他の選択肢はありますか? –

+0

確かに! [Translator Text API](https://azure.microsoft.com/en-us/services/cognitive-services/translator-text-api/)を使用して、すべての着信メッセージをLUISに送信する前に翻訳することができます。この場合、LUIS Recognizerが呼び出される前にミドルウェアを使用して翻訳を処理することをお勧めします。また、ミドルウェアを使用してボットの応答を翻訳することができますので、ボットの内部で追加のローカリゼーションを使用する必要はありません。 –

+0

Stevenに感謝します。それは本当に役立ちます。 –

関連する問題