ChatBot

GideonWilliams
Community Coach
Community Coach
5
7413

So I thought I would try to make a ChatBot for Canvas to add to our staff EdTech Help canvas course.

I had come across a number of posts and ideas mentioning this a way back - this one in particular from  @sonya_corcoran  -  Microsoft's QnA Maker = Canvas FAQ ai  and also https://community.canvaslms.com/ideas/5717" modifiedtitle="true" title="AI chatbot which answers bas...

Spent a couple of hours trying to get it set up. Googled ChatBot. Got some advice about Azure and QnA Maker. Set up a free portal. Followed a few online help guides. Actually, it was not a difficult as I first thought..

Bit of trial and error, made a few mistakes along the way, struggled with some of the Tech but I've actually made one.

The Chat bot is embedded on a Canvas page. I used the Redirect tool used to create an entry on the Navigation menu to take you directly to the page.

Of course, this is the easy bit. The (fun part?) of the challenge is now to "program'' it and get it to be useful...

346831_pastedImage_1.png

Just the start of a post. More to be added soon but please get in touch or ask questions below or share ideas and thoughts.....

Today's work (6th May)

Customising the standard Hello and Welcome! message to:

346971_pastedImage_3.png

Thanks to - botframework - How to customize the "Hello and welcome" default response message in Microsoft Azure ... 

Customising the Default message - No QnA Maker answers were found to:

346972_pastedImage_5.png

Thanks to - QnA Maker | How to customize the "No good match in FAQ" default response message - YouTube 

Adding some images:

346994_pastedImage_1.png

Thanks to - How to Add Images to QnA Maker Answers in Markdown 

Learning how to use Markdown to add some formatting to your responses:

346995_pastedImage_5.png

Thanks to - Markdown Tutorial - Introduction has a great hands-on tutorial!

Today's work (7th May)

There is an interesting option that allows you to import Word/PDF files to create Q&A responses. The format they suggest needs to be quite a formal design with the use of Headings for certain features eg

347097_pastedImage_3.png

I tried this with a guide I had written for Learning Apps - the results were NOT GREAT! I had (secretly) hoped that I would magically create amazingly engaging FAQs with pictures and formats - nope. None of the pictures added and as such the step by step guide makes little sense.

To be fair, a little down the Microsoft Help guide - Import document format guidelines - QnA Maker - Azure Cognitive Services | Microsoft Docs it does suggest the sort of document that would work best (basically a Word based FAQ doc)

347098_pastedImage_6.png

I have not tried this with the hyperlinks in place but if it does this then at least this is a step in the right direction..

Instead, I have been making use of the Markdown script to copy in links to Canvas pages in our EdTech platform:

347100_pastedImage_9.png

My Help Guides are made in Word and I would ordinarily use the Office365 integration to link to this. Instead I PDF'ed the file and put it into the Canvas course.

What I am learning very quickly is how best to create a ChatBot flowchart that allows different approaches for users. Wonderfully enough, it has drawn me back to this superb blog post from  @Bobby2  Horse Before the Cart. Purpose first, Canvas second.‌ and wonderful comments from  @kmeeusen ‌

It is easier to create a chatbot that responds to a request by providing a link to a Help Guide and/or some examples.Of course the real challenge would be developing a framework not based on how you can get help but:

What would you like to be able to do?

Oh, before I forget, CanvasBot now has face to go with the name:

347101_pastedImage_13.png

5 Comments
Bobby2
Community Champion

Wow  @GideonWilliams , you clever thing.

Perseverance, creativity, rigour, abstraction, patience, resilience all rolled into one project. Purpose obviously lead the way. I'm impressed. 

I'm also keen to hear how the students interact with your new buddy bot. Keep us posted.

 @GideonWilliams  Congratulations

waaaseee
Community Contributor

This is neat stuff! It would be cool if you can hook it up with the Canvas API so teachers can get summaries or inquire it for who hasn't submitted yet without clicking around. Btw, have you played Rasa?

jeannesamuel
Community Explorer

Cute bot! I want to use a bot to query against a subject or course knowledge base and help tutor. 

RicPhil
Community Novice

This is a wonderful solution. I recently tried implementing the Piazza LTI app integrated into my Canvas environment. If you are trying that for a chatbot. Here's some information to get you started: Edu App Center: PIazza. Follow the "Contact Piazza" link to get all the details on how to set up this LTI inside of your Canvas environment. They recommend setting up the LTI at the account level instead of at the course level.  I am currently working for a chatbot development company and I have used my skills to integrate the Plazza API to Canvas. It can be integrated, but it does so via embedding an iframe making it static on the page. But it can't be dynamically added 'pinned' to the lower right corner of the page like most typical chatbots. 

andrew_ippolito
Community Member

So I have been experimenting with ChatGPT4 for developing materials I can provide for students within the Canvas environment, and it has been GREAT.  I had the idea of creating a customizable chatbot that is trained on the syllabus and all content within my Canvas course.  From here, students will be able to ask anything - "When is the next test?"  "the book talks about XXX, is that topic also on the study guide?"  "Which powerpoint slide was XXX mentioned on, and can you also tell me which section in the textbook also has that information?" "Compile a list of key terms from the XXXX powerpoint file."

I'm not a developer, but I "play one on TV".  I can hack together some pretty good stuff normally, and with GPT's coding assistance I am confident this is totally doable.  I just don't really know where to start.  If anyone has any ideas, feel free to send me an email at andrew.ippolito@bucks.edu.  I'd love to collaborate!  Otherwise, ideas appreciated.