Подключите ботпресс с RASA_NLU - PullRequest
0 голосов
/ 04 июня 2019

Я пытался использовать rasa_nlu вместо нативного botpress nlu.

Вот мой код. data / global / hooks / 01_ras_nlu.js

const axios = require('axios') 
const eventTypes = ['text'] // Process only ‘text’ events
async function rasaExtract() {
if (eventTypes.includes(event.type)) {
      const { data } = await axios.post('http://localhost:5000/parse',{ q: event.preview }
   )
if (data) {
/** TODO Here you will need to manipulate the format of these objects so that they use the same 
  format as Botpress NLU */
event.nlu = event.nlu || {}
event.nlu.intent = {};
  if(data.intent.name)
    event.nlu.intent.name = data.intent.name;
  else
    event.nlu.intent.name = 'none';
    event.nlu.intent.confidence = 1.0;
// Disable Native NLU

 event.setFlag(bp.IO.WellKnownFlags.SKIP_NATIVE_NLU, true)
   }
  }
}
return rasaExtract()

Я переписываю файл nlu.json data / global / config / nlu.json

  {
  "$schema": "../../../assets/modules/nlu/config.schema.json",
  "intentsDir": "./intents",
  "entitiesDir": "./entities",
  "modelsDir": "./models", 
  "provider": "rasa",
  "debugModeEnabled": true,
  "minimumConfidence": 0.3,
  "maximumConfidence": 100,
  "rasaEndpoint": "http://localhost:5000",
  "rasaProject": "botpress",
  "confidenceTreshold": 0.7,
  "ducklingURL": "https://duckling.botpress.io",
  "ducklingEnabled": true
}

Я действительно перепутал с "rasaProject": "botpress", каким должно быть значение rasaProject?это model папка?

Я запустил rasa, используя следующие команды

 python -m rasa_nlu.train --data data/Data.json  --config config_spacy.json 
 python -m rasa_nlu.server --config config_spacy.json  --path models/

И я запускаю botpress, используя ./bp

 Created a new chat bot. and tried  to communicate with chatbot, when i type `hi` in chat, i getting 
response in `data` field in *data/global/hooks/01_ras_nlu.js* . But not getting any response from chat bot in chat.

Как я могу решить это?

1 Ответ

0 голосов
/ 18 июня 2019

Пожалуйста, попробуйте позвонить этой конечной точке .Это должно дать вам вывод, подобный этому

{
  "available_projects": {
    "my_restaurant_search_bot" : {
      "status" : "ready",
      "available_models" : [
        <model_XXXXXX>,
        <model_XXXXXX>
      ]
    }
  }
}

Каждый ключ в available_projects является именем проекта.Вы, вероятно, должны иметь только один.Используйте это для запроса к /parse.Также было бы полезно, если бы вы могли поделиться журналами NLU для дальнейшей отладки.Сообщество на форуме Rasa также может вам помочь.

...