Extract list from knowledge base, based on input. ...
# 🤝help
I'm building a chatbot for my educational institution as an assistant for a intern process. I'm attempting to return a list of projects based on the career the user is currently majoring in. The projects are stored in knowledge bases depending on its category. Each project is uploaded as a PDF with a technical form format. They specify, the project name, code, objectives, required majors, etc. I built a workflow were the user is able to select if they want a list of the available projects, that takes them to a node with a raw input that will wait for the user to type something by throwing the next question: "What's your major" and I save that in a variable. Then I prompted an AI task specifying to generate a list with the projects found that match with the introduced major. If nothing is found then tell the user there is no information matching the result. I'm constantly getting back a 400 error or a nothing found response even if I do type in an existing major with a bunch of available projects. I also prompted to "Generate a response to the following question: What are the available projects that require the major introduced by the user?, if nothing is found tell the user you couldn't find a matching response." (That's the prompt in the picture added) But, if I specifically type in the question in the flow saying "What are the available projects for X major?" it will answer correctly (sometimes). I'm trying to make it a separated node to ensure the answer since I'm not certain of how the users will make this specific question. Any advice? (I'll add pictures, but the flow is in spanish) Thank you in advance!
I have a similar situation in my bot for an educational institution too. You started on a right track with AI task. But that's not nearly enough. You need to understand the bot is very bad at making lists or filtering them from data in KB. Here's my temporary solution. Create an AI task to filter out keywords for search parameters and store them in variables. Then check for empty parameters and ask the user directly for values of empty parameters or ignore those parameters, upto you. Now make sure you have your your project list stored in a table. Use table search filters or use table find record card or execute code, whichever works in your case to get an array of list of projects that fit your parameters. Now again use AI task to make the resulting array presentable
Thank you for your response @astonishing-napkin-74260 ! I wasn't aware there was an issue with listing, is there really no other way without implementing tables? The issue I have is that the documents will be constantly updated and changed So my institution was looking for something very low maintenance, maybe including tables will be a little tricky for them, I'll still propose it and keep that option in mind though Thank you so much