Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

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.

...

Project Introduction

This project is aimed at learning how to build focuses on building 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 capable of 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.

One of the main challenges of designing such an agent is to make it work for all kinds of different users. The recommendation task itself may seem straightforward enough, but making your agent able to reply to whatever a user might say is not so easy. That is because users always vary in the way they approach a task, what they say, and how they say it, and conversational interaction in principle allows for all of this variation. First, there are many different ways in which a conversation may be conducted and many different ways in which a user can phrase what they want from the agent. A user can specify different aspects of a recipe that the recipe it will finally select should satisfy (e.g., type of ingredients, cooking duration, type of course, etc.). Second, the recipe recommendation domain already is a broad knowledge space that the agent needs to be able to handle to understand what the user is looking for. The agent will have to reason over its database of recipes to filter for recipes that fit the user’s preferences.

At the start of the project, you are provided with a Prolog database of close to 1,000 recipes and an agent template to get started. You will need to develop basic capabilities for your conversational agent, each of which will provide the agent with a basic understanding of what a user says, of how to organize the conversation, and what to show when to a user during the interaction. While developing your agent, it will be important to continuously and systematically test it and improve it based on your findings. This should result in a working agent, but it will still be pretty basic…

...

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!

...

database of nearly 1,000 options. The agent will use speech as its primary mode of interaction while also incorporating a visual interface to display relevant information, ensuring alignment between these two modalities. Users will interact with the agent by specifying preferences and constraints, such as ingredients, cooking time, or type of dish, and the agent must understand and respond effectively to their inputs. A key challenge is designing an agent that can handle the variability in how users express their needs and conduct conversations, while also reasoning over the broad knowledge space of recipes to provide accurate recommendations. Starting with a Prolog database and a basic agent template, the project will involve developing essential conversational capabilities, systematically testing the agent, and refining its performance. Teams are encouraged to add creative features to enhance the agent’s functionality, culminating in a fully operational system that can assist users in finding recipes they would love to cook.

...

How is this Project Course Organized?

...

Go here for the detailed Course Schedule.

Communication & Contact policy

For communication throughout this project course, we will use Canvas Discussion Boards between practical sessions. These will be answered on Mondays, Wednesdays, and Thursdays.

Your main point of contact and question-answering will be during the 4 hour-long practical sessions on Tuesdays and Fridays. This is where most concerns will be handled about project content.

For group, organizational, or absence-related issues please contact [Instructor’s Email].

If the question or issue cannot be resolved with your TA, ask your TA to take this up with us. Only if after that you still have not received any response within a reasonable time (within a week that means), send the teachers a mail.

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!

Getting Started!

Form a group of 6

Panel
panelIconId23f3
panelIcon:hourglass_flowing_sand:
panelIconText
bgColor#FFBDAD

Section Goal: Form a group of 6 members (including yourself) to complete the project.

Steps to Join or Form a Group:

  1. Find a Group on Your Own:

    • If you have a group of 6, ensure all members are officially joined under the same group on Canvas.

  2. Need Help Finding a Group?

    • Use Canvas to join an available group under one of the sections (Group Set: B, E, EE, I, J, L, M, MR) then choose a group like B1, M3, etc.

    • If you are unable to find a group, assign yourself to a group under the "People" section, or request to be assigned.

  3. Groups Not Yet Full:

    • If your group has fewer than 6 members, join with your group mates on Canvas, and additional members will be assigned to you.

    • By January 7th at 13:30, all incomplete groups will automatically receive additional members to reach the required size of 6.

  4. Deadline for Group Formation:

    • If you are not part of a group by January 7th at 13:30, you must either:

      • Assign yourself to a group.

      • Join an available group under the "Letter Groups" section.

    • Failure to do so will result in the assumption that you are not participating.

Important Times:

  • January 7th, 13:30: Deadline to join or form a group.

  • January 7th, 15:30: Final group assignments will be made for incomplete groups.

Make sure to act promptly to ensure your participation in the project!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.

Preliminaries and Quiz Materials

...

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.

Your Pipeline

Building your Agent

The core of this project surrounds building a recipe recommendation agent as a team. There are different tasks that you will encounter:

...

We encourage you to work on these assignments as a team as much as possible. Throughout the project go here for instructions on

Your AgentProject Pipeline .

Testing

Note

Section Goal:

...

  • Completed the Project Installation on your own device/laptop.

  • Signed up to the project’s and actively contributed to your group’s repository, see Commits.

  • Participated in the mandatory lab sessions twice a week, as also listed on the Course Schedule.

  • Completed individually all the related to the materials provided to you.

  • Submitted as a team all Project Deliverables before the project’s deadline.

Assessment and Grading

...

Percentage

...

Subject

...

Grade Composition

  • Basic Conversational Agent: 30%

  • Extensions to the Agent (quality and originality): 30%

  • Written Report: 30%

  • Individual Quiz: 10%

    • A pass adds 1 full point to the grade.

    • A fail adds no points.

  • Practical Attendance:

    • Pass or Fail

    • Mandatory pass. A failure will lead to failing the entire course.

  • Midway Check-In Presentation:

    • Pass or Fail

    • Mandatory pass. A failure will lead to failing the entire course.

Make sure to also check out the assessment rubrics to get a sense of how various parts will contribute to your grade.

Due Dates

  • Group Formation

    • Due Date: Tuesday, 7 January 2024, by 13:30

    • Task: Form a group of 6 members (including yourself) to complete the project.

  • Project Preliminaries Quiz

    • Due Date: Sunday, 12 January 2025, by 23:59

    • Task: Complete a preliminary quiz to assess foundational understanding. Find project preliminaries here [TBA].

  • Midway Check-In Presentation and Basic Agent - Inclusion

    • Due Date: Friday, 17 January 2025, by 13:00

    • Task: Present progress and receive feedback on your project. Find more information here [TBA].

  • Conversational Agent Code Submission

    • Due Date: Tuesday, 28 January 2025, by 15:00

    • Task: Submit the code for the conversational agent. Find more information here [TBA].

  • Final Submission

    • Due Date: Sunday, 2 February 2025, by 23:59

    • Task: Submit the complete project, including the final report. Find more information here [TBA]

  • 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

Communication & Contact policy

For communication throughout this project course, we will use Canvas Discussion Boards between practical sessions. These will be answered on Mondays, Wednesdays, and Thursdays.

Your main point of contact and question-answering will be during the 4 hour-long practical sessions on Tuesdays and Fridays. This is where most concerns about project content will be handled.

For group, organizational, or absence-related issues please contact [Instructor’s Email].

If the question or issue cannot be resolved with your TA, ask your TA to take this up with us. Only if after that you still have not received any response within a reasonable time (within a week that means), send the teachers a mail.

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 in both reports and codes. 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.