GAnswer система
GAnswer — это система для ответов на вопросы на естественном языке, разработанная под руководством профессора лаборатории управления данными в Пекинском университете компьютерных технологий. GAnswer может преобразовывать вопросы на естественном языке в запросы с семантической информацией, а затем преобразовывать эти запросы в стандартные SPARQL-запросы и выполнять их в графической базе данных, чтобы получить ответ пользователя. Мы используем метод управления данными, основанный на устранении неоднозначности: на этапе создания запроса мы сохраняем несколько вариантов связей между сущностями и предикатами, а на этапе выполнения запроса устраняем неоднозначность (неверные связи) в соответствии с ситуацией сопоставления.
Это реализация кода из статьи 2018 года «Answering Natural Language Questions by Subgraph Matching over Knowledge Graphs».
Документация по помощи доступна по ссылкам:
Сначала вам нужно скачать необходимый файл данных dbpedia16.rar с сайта Baidu Pan, используя код доступа 1mcr. Вы должны распаковать его в папку data. Поскольку полный набор данных требует большого объёма памяти (20 ГБ), вы также можете выбрать загрузку небольшого набора данных, созданного нами из DBpedia 2016 (требуется 5 ГБ памяти), используя код доступа zuue. Обратите внимание, что возможности системы ответов на вопросы ограничены для небольших наборов данных, и вам может потребоваться выбрать подходящий вопрос для тестирования, кроме примеров вопросов и вопросов QALD, представленных на официальном сайте.
Мы рекомендуем использовать предоставленный нами упакованный jar-файл для развёртывания gAnswer. Вот как это сделать:
jar -xvf Ganswer.jar
Убедитесь, что файлы после распаковки находятся в том же каталоге, что и Ganswer.jar. 3. Распакуйте dbpedia16.rar в командной строке. На этот раз убедитесь, что распакованные файлы находятся в папке data в текущем каталоге. В примере предполагается, что dbpedia16.rar и Ganswer.jar уже находятся в одном каталоге.
unrar x DBpedia2016.rar ./data/
Main_project_directory
Ganswer.jar
unzipped files from Ganswer.jar
dataunzipped files from dbpedia16.rar
java -jar Ganswer.jar
Мы предоставляем простой пример того, как использовать GAnswer через HTTP-запросы. Вы можете получить доступ к GAnswer, используя URL-адрес, подобный следующему: http://[ip]:[port]/gSolve/?data={maxAnswerNum:1, maxSparqlNum:2, question:Who is the wife of Donald Trump?} где [ip] и [port] — IP-адрес и порт, которые вы используете для запуска службы GAnswer (порт по умолчанию — 9999). Вам необходимо добавить параметр «data» в HTTP-запрос и передать строку JSON в GAnswer. В этом примере вы фактически передаёте данные JSON следующим образом:
{
"maxAnswerNum":"1",
"maxSparqlNum":"2",
"question":"Whos is the wife of Donald Trump?"
}
Здесь maxAnswerNum и maxSparqlNum определяют максимальное количество возвращаемых ответов и запросов SPARQL соответственно. Эти параметры являются необязательными. Обычно GAnswer возвращает строку JSON, содержащую сгенерированный SPARQL и ответ на вопрос.
{
"question":"Who is the wife of Donald Trump?",
"vars":["?wife"],
"sparql":["select DISTINCT ?wife where { <Donald_Trump>\t<spouse>\t?wife. } LIMIT 1","select DISTINCT ?wife where { ?wife\t<spouse>\t<Donald_Trump>. } LIMIT 1"],
"results":{"bindings":[{"?wife":{"type":"uri","value":"<Ivana_Trump>"}}]},
"status":"200"
}
Более подробную информацию можно найти в разделе «2.1.1 Начало работы» документа помощи.
Чтобы запустить gAnswer в Eclipse, вам необходимо клонировать или загрузить исходный код проекта, затем импортировать проект в Eclipse и добавить jar-файлы из папки lib в Build Path. Из-за большого размера внешних jar-файлов, их невозможно загрузить на GitHub. Вы можете скачать все необходимые внешние jar-файлы с сайта Baidu Pan по коду доступа 64jd или с Google Drive. Вам также необходимо распаковать dbpedia16.rar и поместить его в папку data в корневом каталоге проекта. Параметры, связанные с путём к данным, можно найти в qa.Globals.localPath.
Для запуска gAnswer требуется множество зависимостей пакетов, файлов и внешних интерфейсов. Подробные требования описаны в разделе «2.4 Руководство по установке» документа помощи. После генерации SPARQL-запроса система по умолчанию вызывает удалённый сервер с gStore Query Engine для поиска ответа. Это означает дополнительные сетевые издержки и возможные задержки. Поэтому мы настоятельно рекомендуем развернуть gStore Query Engine на вашем сервере и создать соответствующую базу знаний. Для этого вам потребуется:
Мы приветствуем использование gAnswer и приглашаем вас поделиться своими ценными идеями и отчётами об ошибках. Если ваши идеи или отчёты будут приняты, мы включим ваше имя в список авторов в документе помощи. Мы опубликовали несколько статей о задачах QA и системе gAnswer, и вы можете найти дополнительную информацию в главе «3.2 Публикации» документа помощи.
Если вы хотите перенести свой собственный набор данных триплетов в gAnswer, вам нужно использовать эти триплеты для повторного создания фрагментов в gAnswer. Мы предоставляем подробное руководство, которое поможет вам выполнить эту задачу.
Вы можете оставить комментарий после Вход в систему
Неприемлемый контент может быть отображен здесь и не будет показан на странице. Вы можете проверить и изменить его с помощью соответствующей функции редактирования.
Если вы подтверждаете, что содержание не содержит непристойной лексики/перенаправления на рекламу/насилия/вульгарной порнографии/нарушений/пиратства/ложного/незначительного или незаконного контента, связанного с национальными законами и предписаниями, вы можете нажать «Отправить» для подачи апелляции, и мы обработаем ее как можно скорее.
Опубликовать ( 0 )