EML Project Snapshot: Socratic Dialogues

Combine artificial intelligence with the Socratic method. What do we get? This is what UBC Adjunct Professor of Law and EML Professor in Residence Jon Festinger is exploring in one of the Emerging Media Lab’s current projects called “Socratic Dialogues”.

Project team members this semester: Jon Festinger (PI), Dante Cerron (EML staff), Richard Tape (CTLT staff), Michelle Huynh (EML student)

The Socratic method, named after the ancient Greek philosopher Socrates, is a method of interactive inquiry and helps individuals discuss various perspectives in search of answers to various questions. In classrooms, the Socratic method has been practiced in seminars or group discussions which stimulate critical thinking through dialogue and interactive questioning, helping students refine arguments and explore new ways of thinking. The movie “The Paper Chase” starring John Houseman as a fictional Harvard Law professor illustrated some of the perceived strengths of the method as well as its potential for abuse.

“Socratic Dialogues”, one of the Emerging Media Lab’s current projects, explores the dynamic between Socratic interactive inquiries and search engines in an educational setting. Led by UBC law professor Jon Festinger as the PI and Richard Tape of UBC CTLT, the project team is developing an artificial intelligence-powered tool to create an interactive search engine interface that helps students refine their search when browsing through a multitude of articles in a course’s article database.

The problem that this project aims to solve was first identified when Professor Festinger and Richard Tape first collaborated over 5 years ago. They created a very basic Socratic tool allowing students on Festinger’s WordPress course websites to enter into a Socratic dialogue with themselves through the intermediation of digital tools and simple algorithms.

The tool also helped students with the practical problem of sifting through a growing accumulation of website posts known as “News of the Week” which tracked articles relevant to the course subject matter. On a weekly basis Festinger compiled digital articles which supplemented the course materials and allowed students keep up with developments in the course subject matters on a real time basis. After several years of these weekly posts, the sheer volume of articles in the database made it time-consuming and  cumbersome for students to manually go through anything other than current “News of the Week” entries if they wanted to do additional research for papers and projects using that now large volume of materials.

To progress further on creating a meaningful Socratic dialogue tool and in the hopes of making that tool more broadly available for use at UBC, Festinger and Tape are now working with EML to build on existing tool to create the current iteration of the “Socratic Dialogues” project. The aim is to have students find articles from the database that are more meaningful to their individual learning paths through an application bot that offers interactive search recommendations to find information that they otherwise would not be exposed to. The application produces questions and search recommendations in addition to query results, allowing students to refine their search and as such, reflects the Socratic method of refining one’s argument through dialogue and discussion.

The original iteration of the Socrates Dialogues application worked in the following way: students first enter a query into the search box, then the application responds with a set of articles matching the query, presents options to refine the initial search query, and provides other articles that might expand the students’ search or help them consider different arguments and perspectives. The second generation of this project was produced as an R&D exercise by a small group of staff members from UBC IT who worked with Festinger and Tape developed an application programming interface (API) using IBM Watson – a natural language processing (NLP) question-answer system that can be used for deeper processing of the articles, like perceiving categories and entities.  They then put these categories into the article database, making that information also searchable, and allowing for a deeper connection between search queries and the content of the article.

Now, the team at EML is using a technology called Elasticsearch to fetch articles from the database. This allows for more complex searching and makes the overall search process more efficient. In addition to Elasticsearch, which is used for article storage, the main platforms and tools that the team has been using include Python, which is the technology for the development for the API; Beautiful Soup, which is used for searching through article HTML tags to find blacklisted words; IBM Watson, used for processing articles using NLP and recording info into the database; and AWS Elastic Beanstalk, used for hosting the API that serves articles.

The team is working towards having this application ready to be installed as a plug-in for any course that requires searching through a plethora of articles. This semester specifically, the EML team is working on developing a database input interface for professors who might not have a preexisting set of articles. In the future, the project team hopes to have a first proof of concept of what this interface is and test it with additional faculty so they can see what types of articles they would want to include in their databases.

Flow Diagram for Article Import

The vision is to have someone go through the Socratic method virtually, where the application that receives your search query responds with another set of questions based on the articles that come back. Once you search with the new questions, it again provides a new set of articles, making it seem like the back-and-forth questions and answers that take place in Socratic seminars.