...
...
Course overview for the Project Conversational Agents
...
This page contains all pertinent project information. Go through it section by section to find out how to succeed in this course and find any relevant details you need to successfully complete this project.
Table of Contents | ||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
Project Introduction
This project is aimed at learning how to build a task-based conversational agent that can talk with and understand what a user says in reply, using speech as the main modality of interaction. In this project, your agent is tasked with recommending recipes from a given recipe database to a user. Users should be able to provide input on their preferences and other constraints that a recipe they would like should satisfy. To facilitate communication with a user, the agent should not only talk but should also show relevant information about the recommendation task to a user. In other words, it should offer a spoken as well as a visual interface, and the agent needs to make sure there is alignment between these two interaction modalities.
...
Therefore, after implementing the first 10 agent capabilities, you are challenged to extend your agent with your own flare and ideas (with our assistance), which will enable you to earn a higher grade. At the end of this project, you and your team should have a fully functioning conversational agent that can assist users by recommending a recipe they would like to cook!
...
How is this Project Course Organized?
Course Schedule
The project course Conversational Agents (code XB_0101) runs in period 3 (Jan to Feb 2024). Lectures each week are scheduled on Tuesdays from 13:30-15:15 in WN-KC137. Practical sessions are scheduled each week on Tuesdays from 15:30-19:15 and Fridays from 9:00-12:15.
Note |
---|
It is obligatory for all members of the group to attend the practical sessions. Not being present will lead to you failing to pass this course. |
Go here for the detailed Course Schedule.
Communication & Contact policy
For communication throughout this project course, we will use Discord. Using the project’s Discord server, you can communicate about and work on the project assignment outside classroom hours, with your team members, fellow students, and teaching assistants. For each group, we will create a group channel. In your group channel, you can privately talk with the other students in your group and your TA (no one else will have access).
...
Tip |
---|
You can https://discord.gg/WqcvB8cDfm . Make sure you use your own name (and not a nickname) in Discord. |
Inclusivity Statement
We strive to offer students a safe and inclusive classroom environment. We welcome the perspective of students of all ethnicities, genders, spiritual beliefs, and sexual orientations, among others. If you feel discriminated based on your identity, please report it to the course staff.
If you have a disability and require accommodations, please let us know before the beginning of the course so that we can discuss your accommodations and needs to make the course as accessible to you as possible.
Academic integrity and code of conduct
Plagiarism is not tolerated for both reports and code. You are welcome to use any code you see fit for your project, as long as you appropriately cite your sources both in the report and in the code itself (as comments). Behavior violating the VU rules for academic integrity will not be tolerated.
Getting Started!
Form a group of 6
Note |
---|
Section Goal: Make sure you find 5 other people (6 total) to complete this project with! |
You will be working on the main project assignment together in a group of 6 students. We will assign a teaching assistant (TA) to each group. Your TA will also monitor whether each of you individually sufficiently contributes to the deliverables. Individual contribution and participation in the course are required to pass the course. Enroll your group members on Canvas in a group.
Project Background Knowledge
Note |
---|
Section Goal: Individually understand all concepts and tools described on the background knowledge pages. Memorizing every detail is not necessary, but you should have a decent understanding. |
Before you begin this project, please make sure that you understand the relevant background knowledge that you will need throughout the project. The background knowledge you need concerns the use of the git version control system, Google’s Dialogflow to transcribe and understand spoken natural language, Prolog for managing the dialog and reasoning about recipes, and the basics of HTML and Bootstrap to create a visually appealing webpage. You can learn about this as a team, but every member of your team must at least have a basic understanding of all of these concepts. You will also need this background knowledge to complete a few (see also the Course Schedule). So, to get up to speed, check out theProject Background Knowledge!
Project Installation
Note |
---|
Section Goal: Make sure your team members all have completed the installation. Each of you must have completed the installation to participate. Do not rely upon a team member to run certain software. |
With a basic understanding of the concepts and tools that you will use in this project, you now should proceed with installing all the needed software and tools on your device. Some will be re-used from the MAS course, but others are new. Go to Project Installation which has all the details related to installation and computer setup and complete all instructions on this page.
The Project Assignment
You and your team should now be ready to get started on developing your own conversational agent capable of recommending recipes from a given recipe database.
Building your Agent
The core of this project surrounds building a recipe recommendation agent as a team. There are three kinds of tasks that you will encounter:
...
Throughout the project go here for instructions onDesigning and Developing Your Agent.
Testing
Note |
---|
Section Goal: Prepare for pilot testing sessions for the final evaluation of your agent. |
Testing your conversational agent continuously is very important during the project. Each week you should collect, analyze, and submit data about how your agent is performing (check out the Course Schedule). Your analysis of that data will help to improve your agent. However, testing your own agent yourself is not good enough because developers are not the best testers of their own software.
To make your agent perform robustly with arbitrary users, you should also conduct at least some more structured tests with users to get insight into how robust your agent really is. You can already get started with this from early on in the project by involving other users from outside your team (e.g., your friends, family, or students not part of your team) and asking them to interact with your agent. You will find that if you do this you will learn a lot about what needs to be improved and how you can improve your agent. In any case, at the end of this project, you will need to conduct pilot testing sessions where you and another team shall be paired to test each others' agents. You need to report on the findings from these sessions in your final report. You can read more about how to prepare for these sessions in the Agent Testing and Pilot User Study section.
How to pass the course, deliverables & grading
Requirements for successfully completing the project
To complete this course, you must have participated in and completed the following:
Completed the Project Installation on your own device/laptop.
Signed up to the project’s Discord server with your own name (and not a nickname).
Signed up to the project’s GitHub classroom and actively contributed to your group’s repository.
Participated in the mandatory lab sessions twice a week, as also listed on the Course Schedule.
Kept your individual Log book up to date by updating and committing it to your GitHub repo at least once every week; your log book needs to show you actively participated in the course.
Completed individually all the Canvas quizzes related to the materials provided to you.
Submitted as a team all Project Deliverables before the project’s deadline.
Assessment and Grading
Your coursework is only assessed, and you will only receive a grade if all the requirements listed above are met.
Your coursework is assessed based on the quality of your team’s deliverables. Check out the 2024 Assessment Rubric for details.
The work is graded with a mark from 0-100. There must be a minimum of 55 to pass the course.
Individuals may be rewarded a higher or lower grade than the group based on their effort and their contribution to the teamwork. We will among other things use your log books for this purpose.
...