ParlAI icon indicating copy to clipboard operation
ParlAI copied to clipboard

Is there any way to make BB3 to ask specific questions/ say specific things ?

Open Beidaidai0713 opened this issue 3 years ago • 3 comments

Hi. I'm trying to use BB3 to create a chatbot that can be used after class by students to help collect their suggestions or comments about teaching methods or contents in class. Is there any way to make BB3 to ask specific questions like :"How do you feel about the discussion part in class?" or "Do you feel overwhelmed because of the current workload of class reading and assignments?"

I was thinking about adding these as contexts but bb3 does not always use the topics in contexts, but I want to gather the answers of these kind of questions as quick as possible in a short conversation. What part of the code should I look at to add this function into bb3?

Beidaidai0713 avatar Sep 12 '22 08:09 Beidaidai0713

There are a few things you can try:

  1. If you set up your own custom interactive world, you can simply output those statements directly as openers to the conversation; not sure about your general familiarity with ParlAI, but you can subclass the InteractiveWorld and modify it's parley function and add it to your own task, then call --task my_teacher_task to use it
  2. You can seed BB3 with a persona that would make it amenable to asking these questions, e.g., Person 2's Persona: I am a teacher. I am seeking feedback about teaching methods. This would require setting the memories directly, via calling agent.memories = agent.get_opening_memories(memories), where memories is a list of persona items

klshuster avatar Sep 12 '22 18:09 klshuster

There are a few things you can try:

  1. If you set up your own custom interactive world, you can simply output those statements directly as openers to the conversation; not sure about your general familiarity with ParlAI, but you can subclass the InteractiveWorld and modify it's parley function and add it to your own task, then call --task my_teacher_task to use it

  2. You can seed BB3 with a persona that would make it amenable to asking these questions, e.g., Person 2's Persona: I am a teacher. I am seeking feedback about teaching methods. This would require setting the memories directly, via calling agent.memories = agent.get_opening_memories(memories), where memories is a list of persona items

Thanks so much for the reply. I would try these and see if they help to finish the task.

Beidaidai0713 avatar Sep 13 '22 01:09 Beidaidai0713

Maybe I didn't understand your question right, but I think you have better way of doing this that using BlenderBot. BlenderBot is trained to generate responses. It is not a chatbot that asks questions for running surveys. If I understood your intentions correctly, there are better tools for collecting feedback through a chatbot interface than BlenderBot. Even if you try to steer the conversation toward those questions, there is not guarantee that BlenderBot doesn't go completely off-rail and start talking about basketball.

mojtaba-komeili avatar Sep 13 '22 12:09 mojtaba-komeili

This issue has not had activity in 30 days. Please feel free to reopen if you have more issues. You may apply the "never-stale" tag to prevent this from happening.

github-actions[bot] avatar Oct 14 '22 00:10 github-actions[bot]