# thinkingframes.py description = ( "In this photograph, we see a group of young girls dressed in shiny, glittery costumes being helped by adults. " "It looks like they are preparing for a performance or a dance recital. Each girl has her hair neatly done, and some " "are getting decorative hairpieces attached. They are all standing indoors, as we can see windows with light coming " "through in the background, which creates a calm and focused atmosphere.\n\n" "The adults, possibly parents or teachers, are attentively making sure that the girls look their best. The girls seem " "to be patient and maybe a bit nervous as they get ready. One girl in the front is closing her eyes and has a serious " "expression on her face, which might mean she is concentrating or thinking about the upcoming event.\n\n" "The way everyone is dressed and the care being taken with their appearance suggests that this is an important and " "special occasion. It's a busy scene with everyone doing something to prepare, and it captures a moment of quiet " "intensity before a performance where everyone wants to do well." ) strategy_options = { "PEEL": ("PEEL strategy (Point, Evidence, Experience(s), Link back to the question)", "Structure your feedback using the PEEL strategy. Begin with a Point, provide Evidence to support it, specifically referencing possible details from the photograph: '{description}'. Share an Experience or example, and finally Link back to the question."), "5W1H": ("5W1H thinking frame (Who, What, Where, When, Why, How)", "Structure your feedback using the 5W1H thinking frame. Address Who the user is talking about, What they are discussing, Where it's happening, When it's occurring, Why they feel that way, and How they express it."), "OREO": ("OREO thinking frame (Opening Statement, Reasons, Elaborate, Opinion)", "Structure your feedback using the OREO thinking frame. Begin with an Opening Statement about the user's response, provide Reasons for your feedback, Elaborate on those reasons, and conclude with an Opinion on their overall response."), "SEP": ("SEP strategy - State, Elaborate, Personal experiences", "Structure your feedback using the SEP strategy. Begin with a State (S), where you state your point and answer to the question posed. Next, Elaborate (E) on your statement, justifying and explaining the reasons for your choice of answer specifically referencing possible details from the photograph: '{description}'. S. Use examples from various areas of your life such as Self, Home, School, Community, and Nation to enrich your elaboration. Lastly, share Personal experiences (P) from your own life or others' experiences to support your answer."), "OREOS": ("OREOS thinking frame (Opinion, Reasons, Elaborate, Own Experiences, Suggestion)", "Structure your feedback using the OREO thinking frame. Begin with an Opening Statement about the user's response, provide Reasons for your feedback, Elaborate on those reasons, and conclude with an Opinion on their overall response, and make a Suggestion."), "TREES": ("TREES strategy (Thought, Reasons, Elaboration, Experiences, Summary or Suggestions)", "Begin your feedback with a Thought that directly addresses the question. " "Follow with Reasons that are relevant and logical to support this thought. " "Elaborate on your reasons using the 5Ws1H method: Who, What, Where, When, Why, and How, to provide a comprehensive explanation. " "Incorporate personal Experiences that are pertinent and provide insight into the topic to make your response more engaging. " "Conclude with a Summary that encapsulates your main points succinctly, or offer Suggestions that provide depth and forward-thinking perspectives."), "TREES+": ("TREES+ strategy - Thought, Reasons, Elaboration, Experiences, Summary or Suggestions", "Begin your feedback with a Thought that directly addresses the question. " "Follow with Reasons to support this thought, making sure they are relevant and logical. " "Then, Elaborate on your reasons with examples or explanations that further clarify your point. " "Incorporate personal Experiences that are pertinent to the topic to make your response more engaging. " "Conclude with a Summary that encapsulates your main points succinctly, or provide Suggestions that offer insight or recommendations. " "Ask yourself: Does my Thought align with the question? Are my Reasons strong and supportive of my Thought? " "How can I Elaborate on my reasons more effectively? What Experiences can I share that will resonate with my main points? " "How can I tie all my points together in a Summary, or what Suggestions can I make for future consideration?") } questions = [ "1. How do you think the people in the photograph might be feeling? Why?", "2. Would you like to perform on stage? Why or why not?", "3. What are some ways to build confidence in children?", ] # Function to generate the feedback prompt based on feedback level def generate_prompt(feedback_level): if feedback_level == "Brief Feedback": return (f"Provide concise feedback Strictly following a 40 word limit. " f"Conclude with one relevant Socratic question for reflect on their response and label them as Follow Up Question:.") elif feedback_level == "Moderate Feedback": return (f"Provide clear, constructive, concise feedback strictly in a 70 word limit. " f"Include two relevant Socratic questions for the student to reflect on their response and label them as Follow Up Questions:") elif feedback_level == "Comprehensive Feedback": # No additional prompting for comprehensive feedback return "Strictly provide feedback of around 300 words limit, including a full suggested response based on the student's response structured using the relevant thinking frame." else: raise ValueError(f"Invalid feedback level: {feedback_level}") # Update the generate_system_message function to include feedback_level and strategy_choice def generate_system_message(current_question_index, feedback_level): feedback_structure = generate_prompt(feedback_level) system_message = f""" As your English Oral Coach, I'll guide you through answering the question: '{questions[current_question_index]}'. {feedback_structure} I'll help you reflect on your response, suggesting areas to elaborate and clarify. Remember, our goal is to enhance your critical thinking and independence. Please ensure your response is in English and language and tone is age appropriate for Singapore students in Primary 5. """ return system_message