Skip to content

Instantly share code, notes, and snippets.

@vitoravale
Last active January 25, 2018 13:56
Show Gist options
  • Save vitoravale/bac6dbd94ea8727461167b482c1bdead to your computer and use it in GitHub Desktop.
Save vitoravale/bac6dbd94ea8727461167b482c1bdead to your computer and use it in GitHub Desktop.
QnA Maker Bot With Active Learning
const builder = require('botbuilder')
const restify = require('restify')
const cognitiveServices = require('botbuilder-cognitiveservices') // incluir no projeto npm i -s botbuilder-cognitiveservices
//=========================================================
// Bot Setup
//=========================================================
const port = process.env.port || process.env.PORT || 3978
const server = restify.createServer()
server.listen(port, () => {
console.log(`${server.name} listening to ${server.url}`)
})
const connector = new builder.ChatConnector({
appId: process.env.MICROSOFT_APP_ID,
appPassword: process.env.MICROSOFT_APP_PASSWORd
})
const bot = new builder.UniversalBot(connector) // essa linha mudou
bot.set('storage', new builder.MemoryBotStorage()) // in-memory state storage
server.post('/api/messages', connector.listen())
//=========================================================
// Bots Dialogs
//=========================================================
const recognizer = new cognitiveServices.QnAMakerRecognizer({
knowledgeBaseId: 'Seu knowledge base id - código na rota do POST',
subscriptionKey: 'sua subscription key - código no Ocp-Apim-Subscription-Key',
top: 3
})
const qnaMakerTools = new cognitiveServices.QnAMakerTools()
bot.library(qnaMakerTools.createLibrary())
const basicQnaMakerDialog = new cognitiveServices.QnAMakerDialog({
recognizers: [recognizer],
defaultMessage: 'Não encontrado! Tente alterar os termos da pergunta!',
qnaThreshold: 0.5,
feedbackLib: qnaMakerTools
})
bot.dialog('/', basicQnaMakerDialog)
@vitoravale
Copy link
Author

Para pegar os dados a serem utilizados nas linhas 29 e 30, basta observar os seguintes itens no exemplo de requisição da página do QnA Maker

captura de tela 2018-01-22 as 13 12 29

@pvfigueiredo
Copy link

pvfigueiredo commented Jan 23, 2018

Muito obrigado cara! Ficou muito bem explicado!

@W1ll14nC4rl0s
Copy link

Estou tendo um problema com meu código e já nao sei mais oque fazer.
pode me ajudar?
image

@vitoravale
Copy link
Author

vitoravale commented Jan 25, 2018

@W1ll14nC4rl0s você pode tentar ver se as dependências estão corretas para o botbuilder e o cognitiveservices, ou tentar reinstalá-las

"botbuilder-cognitiveservices": "^1.1.0",

e também se a chamada dele está OK

const cognitiveServices = require('botbuilder-cognitiveservices')

Também subi minha versão no git https://github.com/vitoravale/MaratonaBots pode tentar baixar e instalar as dependências pra verificar.

@W1ll14nC4rl0s
Copy link

Vlw @vitoravale eu reinstalei o botbuilder-cognitiveservices e deu certo!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment