Help in Building an Educational Product #154
Replies: 3 comments 3 replies
-
@Vali-98 Another difficulty I’m facing is how to configure remote access via server as an API using the LLM webui applications mentioned (Oobabooga, Jan, and others) with ChatterUI. Could someone provide a detailed step-by-step guide that works for different LLM webui alternatives with the possibility of generating an API server? The biggest issue I’m facing is configuring the personality and flow of the questions and chatbot-user interaction. Since there is a script of questions to be presented in a specific order, both Jan and ChatterUI have an "Instructions" tab that I try to use to configure this flow of conversation and interaction between the chatbot and the user, but I’m not having success. I don’t know which coding format I should use to make this work. Essentially, the chatbot starts by introducing itself, then presents an activity involving a problem generated by a prompt. After that, there are a series of ten questions, but these questions should not all appear at once because they are part of a guided questionnaire. The questions must be presented one at a time by the chatbot, and the user responds one by one. After each response, the chatbot provides feedback considering the context of previous answers, the conversation, and the problem presented at the start. I tried using the coding <assistant_start> and <assistant_end>, but it didn’t work correctly in Jan or ChatterUI. The interaction doesn’t happen as I expected, there’s a delay in responses, and sometimes it freezes the application. <im_start|>assistant ...... From here on, there is another series of questions where there are turns between the chatbot asking the question, the user providing the answer, and the chatbot's feedback considering the response, the question, and the generated problem text. Each new interaction will have a new problem generated by the prompt. Could someone guide me on the correct way to code and program this interaction? What coding should I use and how should I do it? Although the developers of Jan have several proposed updates, Oobabooga (LLM webui) has all the configurations I’m interested in working with for the development of teaching activities in a future update of my educational product, such as voice cloning and training the chatbot from texts. |
Beta Was this translation helpful? Give feedback.
-
Hey there Alberto, thanks for the interest in this project. I've read through the requirements of your project, and I'm afraid ChatterUI is not a good starting point. There are many issues which I can forsee:
I am not certain that LLMs (especially lower power local ones) can achieve this goal consistently. How much research have you done in this part of the project? As far as I know, multi-lingual performance of open-weight LLMs is rather poor.
I'm fairly the app you have listed should work. Perhaps you need to restart ChatterUI once you enable that TTS engine.
I wouldn't exactly know since every project implements their API differently. In general however, most APIs should be compatible with the standard OpenAI-style Chat Completions. You could refer to the API documentation of the software you are using to do so.
Just as a tip, Instruct formatting is more about compliance with a LLM's prompt format.
This would require some custom functionality:
This isn't impossible to do, but It will take a lot of effort to rework the app to create this functionality. |
Beta Was this translation helpful? Give feedback.
-
I have until March to apply this product to a class, and I'm concerned. If you have a practical solution or a path I should follow, I would appreciate your advice. |
Beta Was this translation helpful? Give feedback.
-
@Vali-98
Hello, my name is Alberto, and I am a master's student in Brazil with no programming experience. I need to build an educational product for the completion of my course. My proposal is a chatbot that generates a problem from a prompt and, through a series of guided questions, leads the student to reflect on the presented issue. The questions should be fixed, but the chatbot's response to the student's answer should not be. The product is designed as an activity for foreign language teaching. If possible, I would like the chatbot to have the ability to clone voices and use TTS (text-to-speech), but text alone would be sufficient. The idea is for it to work offline.
However, since LLMs (Large Language Models) are resource-intensive and mobile hardware, especially that of students, is not very powerful, I thought of using Oobabooga (LLM webui) (oobabooga/text-generation-webui) or Jan (https://jan.ai/) or other existing alternatives so that the heavier LLM functions run on a PC acting as an API for ChatterUI. I thought of making a fork of ChatterUI, already configured and adjusted to the learning layout, to make it easier for students and teachers to just install and start using it. After configuring it, I would like to disable some functions and windows of ChatterUI. Since I don't know how to program, I plan to use GitHub Copilot to help with the more structural changes to the forked app.
However, I am facing basic issues with ChatterUI and with the structure of the guided interaction flow for the chatbot. I would like to know if you can assist.
The first difficulty seems simple: How should I configure the mobile phone so the chatbot responds with voice? I believe the voice is from the phone's TTS, but the app did not recognize the installed voices. I need a realistic voice. I am using this one: https://github.com/jing332/tts-server-android because the voices are good from Microsoft Edge. Do I need to install something or configure it? How should I do that?
Beta Was this translation helpful? Give feedback.
All reactions