QnA Maker общедоступен против предварительного просмотра: он не находит ответы - PullRequest
0 голосов
/ 18 мая 2018

Это немного странно. Я создал базу знаний с одним и тем же файлом excel как в режиме предварительного просмотра, так и в общедоступном сервисе QnA Maker, но в последнем вопросе он не находит много вопросов ... В предварительном просмотре один работает нормально.

Я заметил, что в предпросмотре можно найти ответы в любом порядке слов, но не в общедоступном.

Что мне делать? В чем проблема?

Я использую тест QnAMaker: enter image description here

РЕДАКТИРОВАТЬ 1: Если я захожу в Azure к моей службе поиска -> Search Explorer, она работает нормально, и я нахожу ответы правильно, как в QnA Preview Test, но не в QnA GA Test.

РЕДАКТИРОВАТЬ 2: я использую узел. Я создал шаблонный бот Azure SDKv3 Qna, отредактировал QnAAuthKey / QnAEndpointHostName / QnAKnowledgebaseId и попробовал его с «Тест в веб-чате», но я всегда получаю «Нет совпадения! Попробуйте изменить условия запроса!» сообщение.

Также я попытался получить «имя хоста» здесь , которое отличается от параметра «хоста», заданного QnaMaker, когда я создавал КБ (заканчивающийся на / qnamaker). Затем я использовал его с кодом, чтобы получить ответы от здесь , но я получаю ошибку «not found»: https://xx.azurewebsites.net/qnamaker/knowledgebases/xxx.../generateAnswer. Ошибка: getaddrinfo ENOTFOUND https://xxx.azurewebsites.net https://xx.azurewebsites.net:443

РЕДАКТИРОВАТЬ 3: после многократного тестирования на разных языках моего КБ, я думаю, что проблема связана с изменениями в распознавании языков и с показателями доверия. Я переписываю некоторые вопросы сейчас ...

У стека GA есть новый и улучшенный алгоритм ранжирования, поэтому вполне вероятно, что вы увидите некоторые отклонения в доверительной вероятности ответа по сравнению со стеком предварительного просмотра.

Ответы [ 3 ]

0 голосов
/ 20 мая 2018

После публикации, когда вы получите всю необходимую информацию о настройках, такую ​​как id базы знаний, authkey, host url. затем вы можете добавить в код, как это

QnADialog.cs

namespace Test.Qna
{
    [Serializable]
    [QnAMaker(authKey: "AuthKey", knowledgebaseId: "KnowledgebaseId", defaultMessage: "please rephrase, I could not understand.", scoreThreshold: 0.5, top: 1, endpointHostName: "https://yourAccount.azurewebsites.net/qnamaker")]
    public class QnADialog : QnAMakerDialog
    {}
}

Если вы используете Node js, вы можете добавить такие настройки, как это

    var server = restify.createServer();
server.listen(process.env.port || process.env.PORT || 3978, function () {
    console.log('%s listening to %s', server.name, server.url);
});

var connector = new builder.ChatConnector({
    appId: process.env.MICROSOFT_APP_ID,
    appPassword: process.env.MICROSOFT_APP_PASSWORD
});
var bot = new builder.UniversalBot(connector);
bot.set('storage', new builder.MemoryBotStorage()); 
server.post('/api/messages', connector.listen());

var recognizer = new cognitiveservices.QnAMakerRecognizer({
    knowledgeBaseId: '5abcde-cbfb-4yuio-92c5-052d3a806e78',
    authKey: 'eb7uy78y-8a64-4e75-98uj-7f89987b67bc',
    endpointHostName: 'https://name.azurewebsites.net/qnamaker'
    });

var basicQnAMakerDialog = new cognitiveservices.QnAMakerDialog({
    recognizers: [recognizer],
    defaultMessage: 'No match! Try changing the query terms!',
    qnaThreshold: 0.3
});

bot.dialog('/', basicQnAMakerDialog);

Надеюсь, это поможет. Для пошагового руководства следуйте по этой ссылке

0 голосов
/ 10 июня 2018

У нас была похожая проблема, и похоже, что она уже исправлена ​​на стороне MS.Воссоздание нового КБ с нуля действительно помогло.

Ответ от Microsoft:

Похоже, что на ваш КБ повлияла недавняя ошибка, которую мы сейчас исправили - она ​​вызывала релевантность результатов длябыть униженнымМожете ли вы воссоздать базу знаний и посмотреть, сталкиваетесь ли вы с этими проблемами сопоставления запросов?

Чтобы быстро восстановить базу знаний, просто «Экспортируйте базу знаний» на вкладке «Настройки» в базе знаний.Создайте новый пустой КБ и «Импорт базы знаний» на странице «Настройки».

0 голосов
/ 18 мая 2018

Поскольку QnAMaker доступен, метод поиска изменился: теперь он использует Поиск Azure , а не только сравнение токенов, как вы могли видеть раньше.

Новая архитектура выглядит следующим образом:

enter image description here

Основным результатом является значительное улучшение функциональности поиска, поскольку в прошлом он мог найти ответы, не относящиеся к делу.

ДляНапример, если ваш KB выглядит следующим образом:

  • Вопрос1: «Я хочу машину» / Ответ1: «Вы можете арендовать автомобиль по адресу ...»

  • Вопрос2: «Как я могу получить бутерброд?»/ Ответ2: «Вы голодны? ...»

Если вы спросите свою КБ «Как я могу получить машину?», Она может ответить «Вы голодны? ..». "!

Что касается эффективности вашего поиска, в настоящее время нет реальной документации, объясняющей, как его улучшить, но в основном она должна основываться на индексах

.
...