Modular DBpedia Chatbot - GSoC 2021

Data accessibility is the key to a better understanding of the world. DBpedia has done a great job in collecting and organizing data. In 2017 a previous GSoC project [1] a simple chatbot was implemented [2,7] to provide users an easy-to-use interface for accessing the knowledge stored in the DBpedia knowledge base. In particular, it uses Qanary/QAnswer services and the Wolfram Alpha API to fetch answers for the provided user’s question. The chatbot supports simple questions like “Who is Albert Einstein’’ or “What is a planet” and returns a short abstract as well as links to DBpedia and Wikipedia. Many users already benefited from this GSoC project’s results.

Despite the integrated APIs and the great modeling of the dialogs, the functionality of the chatbot is rather limited. There is no support for multilingual questions (only English directly is supported) and no possibility to open a particular interaction context (e.g., “I search only for persons.”) nor support for refining the questions (e.g., follow-up questions). Hence, while data collected in the DBpedia knowledge base is growing permanently, the chatbot implementation is not supporting the users using a state-of-the-art method.
In this project, we plan to extend the functionality of the DBpedia chatbot by integrating the ecosystem of the Qanary framework [3,4] including its plug-and-play components and their optimization (c.f., [5]). These components already provide much functionality required for full-fledged question answering systems.
We plan to move from the DBpedia chatbot’s custom implementation to Google Dialogflow, s.t., a state-of-the-art technology is used (e.g., enabling speech input). While refactoring the architecture of the DBpedia chatbot we will provide users with many novel options. For example, users will be enabled to interactively switch languages, select particular knowledge domains, receive search suggestions (e.g., question refinements) and activate particular components dynamically. While integrating the Qanary ecosystem into the DBpedia chatbot we will also provide the opportunity for contributors of a particular Qanary component to integrate on-demand their components. Hence, testing and verifying a novel implementation would be facilitated, s.t., developers are enabled to contribute directly to the extension of the DBpedia chatbot.
Concluding the contribution is twofold: (1) We will provide better access to the DBpedia knowledge base for regular users while providing a state-of-the-art interface. (2) We will provide community members with a technical background easy access to the APIs via the established Qanary framework, s.t., they can integrate new functionality into the DBpedia chatbot with little to no additional technical requirements.

Goals

  1. Facilitate access to DBpedia content via natural language while using the state-of-the-art Google Dialogflow framework (including follow-up and drill-down questions etc.)
  2. Enable access for users not capable of asking English questions.
  3. Establish web-based interfaces for developers to test and extend the DBpedia chatbot.

Impact

  • Easier access for normal users to the vast knowledge in the DBpedia knowledge base.
  • Establish an open-source community of DBpedia Chatbot developers and connect the communities of DBpedia developers and Qanary developers.
  • Collect more feedback from users to improve the DBpedia knowledge base.

Warm-up tasks

  • Implement a Google Dialogflow tutorial: https://cloud.google.com/dialogflow/es/docs/tutorials?hl=en
  • Read the tutorial on implementing a trivial Qanary-driven question answering pipeline: github: WDAqua/Qanary/wiki/Qanary-tutorial:-How-to-build-a-trivial-Question-Answering-pipeline (optional)
  • Reuse the already deployed test environment (Qanary pipeline and Qanary components) to create a question answering system capable of answering the question “What is the real name of Catwomen” and “What is the real name of Captain America”. Use the Qanary components DBpedia Spotlight and Query Builder for Real Names of Super Heros to configure your system without coding.
  • Implement a simple Qanary component using Python or Java (see the guides at [8]).
  • Run simple SPARQL Queries on DBpedia to get familiar with the data and the technology.
  • Get familiar with the provided list of questions.

Mentors

  • Andreas Both
  • Aleksandr Perevalov
  • Ricardo Usbeck
  • Ram G Athreya

To get in touch with the mentors please see the following post.

[1] https://github.com/dbpedia/chatbot/wiki/GSoC-2017:-Chatbot-for-DBpedia

[2] http://chat.dbpedia.org

[3] Both, A., Diefenbach, D., Singh, K., Shekarpour, S., Cherix, D., & Lange, C. (2016). Qanary–a methodology for vocabulary-driven open question answering systems. In European Semantic Web Conference (pp. 625-641). Springer, Cham.

[4] https://github.com/WDAqua/Qanary

[5] Singh, K., Radhakrishna, A. S., Both, A., Shekarpour, S., Lytra, I., Usbeck, R., … & Auer, S. (2018). Why reinvent the wheel: Let’s build question answering systems together. In Proceedings of the 2018 World Wide Web Conference (pp. 1247-1256).

[6] https://github.com/WDAqua/Qanary-question-answering-components

[7] Athreya, R. G., Ngonga Ngomo, A. C., & Usbeck, R. (2018). Enhancing Community Interactions with Data-Driven Chatbots–The DBpedia Chatbot. In Companion Proceedings of the The Web Conference 2018 (pp. 143-146).

[8] https://github.com/WDAqua/Qanary/wiki

6 Likes

Hi @anbo, this project looks interesting and aligns with my research interests. I did understand most of it from the description although I have a few questions. Should I go ahead and do the warm-up tasks to get more acquainted with the project? Also, I was interested on the other chatbot project here too: DBpedia Live Neural Question Answering Chatbot - GSoC2021. Will it be an issue if I explore that too?

1 Like

Hi @anbo ,
My name is Pawel Borkar. I am currently pursuing B.E. from Sinhgad College Of Engineering, Pune , India. I found this project aligning with my field of interest. I did checkout the project at chat.dbpedia.org and found its limitations as it was described above. I do have some plans for the project’s UI too if possible with your permission. we’ll be discussing it. Should I go ahead and do the warm-up tasks to get more acquainted with the project?

Thanks.

1 Like

Hey there! @anbo @perevalov
I’m Jigar Desai, a final year student from Ganpat University, India. I have a strong interest in this domain Modular DBpedia Chatbot - GSoC 2021 Talking about my recent experience in chatbots and natural language processing is I’ve been making chatbots for 3 years on various platforms like Dialog flow, Rydot assistant, IBM Watson for companies like Plexuss(FAQ based bot with follow up), DISCOVERED by Bethanie Nonami, etc. with different integrations like Slack, Facebook messenger Google home Amazon Alexa, etc. and also a 6-month internship in RYdot Infotech, India on natural language processing field and worked on the platform - Dialogflow and rydot assistant. along with I have experience in connecting several API to Dialogflow because I am working as a freelancer on weekends while studying at university. Thrilled to see the ideas released by DBpedia this year, I have already started doing warm-up tasks! Really excited to work with you guys!

2 Likes

Hi, @anbo @perevalov and ricardousbeck,
I am Jayesh Desai and I’m a Final Year Computer Science Student from India. I came across to Modular DBpedia Chatbot - GSoC 2021 through the Google Summer of Code 2021 Organization page, I would like to work on the " Modular DBpedia Chatbot - GSoC 2021 " under anbo, perevalov, ricardousbeck, and I hope I would able to make a necessary impact with this project Speaking about my experience, I have earlier worked on Google DialogFlow, Amazon Alexa and IBM Watson with more than 2 years of experience I have worked with 5+ companies on different platforms for the chatbot development in my free time I work as a freelancer on fiverr.com, I believe I would be able to take my learning from the earlier projects and work on this one as well. I’m also quite familiar with the concepts of databases, APIs. I also explored the previous version of this project from the below link https://svn.aksw.org/papers/2018/WWW_dbpedia_chatbot/public.pdf,
I would be happy to contribute to this Project. I have some questions regarding this project can I ask it over here or is there a specific slack channel for this project?
Thanks

1 Like

Hello everyone we are happy that our project is interesting for you!

1 Like

@tathagata-raha sure, you can explore both projects at the same time and then decide what fits better for you.

@pawel UI is not the main point of the project, but still, we can discuss it. Yes, you already can check our warm-up tasks.

Hi, @perevalov
Do I need to submit any google form to let you know about warm-up task is completed or not.
Thanks

1 Like

Hi @jayesh45,

thanks for reaching out to us. To my best knowledge there is no standard process to make statements about the completion status of the warm-up tasks. However, we only can make a final statement when Google is opening the application process. There might be something asked there regarding the warm-up tasks.

However, to get in touch with us, you might join the DBpedia Slack channel at https://dbpedia-slack.herokuapp.com/ and create a private conversation with us.

2 Likes

@anbo ok thanks you

Hi, @anbo @ricardousbeck
I’m Chaitanya, a final-year student pursuing my B.E. from Giet Engineering College, Andhra Pradesh, India. I have an interest in this particular domain named - Modular DBpedia Chatbot. I came across the limitations that were described above. I would like to contribute as much as I can do!

1 Like

Hi @anbo @perevalov I am Tanya. I am interested in this project. I went through the goals and tasks and would like to pursue it as a GSoC 2021 task.

However I am unable to join the slack channel. I have a few questions and suggestions regarding the project. Can anyone help me out in getting in touch with mentors for this project so I can engage in a discussion ?

Hi, what exactly is the issue with slack?


@ricardousbeck it says channel not found

ping @kurzum

@kurzum help!

Hi, @anbo, My name is E Liu, i’m a junior at Northwest Normal University, China.I am very interested in these projects, and have some ideas.I started warm-up tasks. Looking forward to your guidance and hoping to discuss with you to get your .

I’m having the same issue too! Any solution?

Hi all, dbpedia.herokuapp was a community contribution. I messaged the person who I think was the creator (Gustavo Publio). Let’s see. In the mean time please PM @juliah with your email and she can invite you.