app: description: '' icon: 🤖 icon_background: '#FFEAD5' icon_type: emoji mode: advanced-chat name: Study coach biology use_icon_as_answer_icon: false dependencies: - current_identifier: null type: marketplace value: marketplace_plugin_unique_identifier: langgenius/openai:1.0.5@51583313a5988d5dca405063831ffeeacdc1f2e95f32a8c10b4c281ceef39ebb version: null - current_identifier: null type: marketplace value: marketplace_plugin_unique_identifier: langgenius/tongyi:0.2.22@9cea96ffc7977f536c02999c80ff1283b1819aab9b6fa2fdf789d0c6c7d03715 version: null kind: app version: 0.7.0 workflow: conversation_variables: [] environment_variables: [] features: file_upload: allowed_file_extensions: - .JPG - .JPEG - .PNG - .GIF - .WEBP - .SVG allowed_file_types: - image allowed_file_upload_methods: - local_file - remote_url enabled: false fileUploadConfig: attachment_image_file_size_limit: 2 audio_file_size_limit: 50 batch_count_limit: 5 file_size_limit: 15 file_upload_limit: 50 image_file_batch_limit: 10 image_file_size_limit: 10 knowledge_file_size_limit: 50 single_chunk_attachment_limit: 10 skill_file_size_limit: 50 video_file_size_limit: 100 workflow_file_upload_limit: 10 image: enabled: false number_limits: 3 transfer_methods: - local_file - remote_url number_limits: 3 opening_statement: Hi! I am the biology study coach for unit 4, Ecology. I explain concepts, help you on your way with tasks (without giving the answer away) and know everything about the planning and the test. What do you want to know? retriever_resource: enabled: true sensitive_word_avoidance: enabled: false speech_to_text: enabled: false suggested_questions: - What is the difference between a population and a community? - When is the test and what do I need to know? suggested_questions_after_answer: enabled: false text_to_speech: enabled: false language: '' voice: '' graph: edges: - data: isInIteration: false isInLoop: false sourceType: start targetType: question-classifier id: 1789976034527--1789976131570-target source: '1789976034527' sourceHandle: source target: '1789976131570' targetHandle: target type: custom zIndex: 0 - data: isInIteration: false isInLoop: false sourceType: question-classifier targetType: knowledge-retrieval id: 1789976131570-1-1789976257737-target source: '1789976131570' sourceHandle: '1' target: '1789976257737' targetHandle: target type: custom zIndex: 0 - data: isInIteration: false isInLoop: false sourceType: knowledge-retrieval targetType: llm id: 1789976257737--1789976296992-target source: '1789976257737' sourceHandle: source target: '1789976296992' targetHandle: target type: custom zIndex: 0 - data: isInIteration: false isInLoop: false sourceType: llm targetType: answer id: 1789976296992--1789976570650-target source: '1789976296992' sourceHandle: '' target: '1789976570650' targetHandle: target type: custom zIndex: 0 - data: isInIteration: false isInLoop: false sourceType: question-classifier targetType: llm id: 1789976131570-2-1789976630144-target source: '1789976131570' sourceHandle: '2' target: '1789976630144' targetHandle: target type: custom zIndex: 0 - data: isInIteration: false isInLoop: false sourceType: llm targetType: answer id: 1789976630144--1789976748348-target source: '1789976630144' sourceHandle: '' target: '1789976748348' targetHandle: target type: custom zIndex: 0 - data: isInIteration: false isInLoop: false sourceType: question-classifier targetType: knowledge-retrieval id: 1789976131570-1789976192448-1789976785205-target source: '1789976131570' sourceHandle: '1789976192448' target: '1789976785205' targetHandle: target type: custom zIndex: 0 - data: isInIteration: false isInLoop: false sourceType: knowledge-retrieval targetType: llm id: 1789976785205--1789976818766-target source: '1789976785205' sourceHandle: '' target: '1789976818766' targetHandle: target type: custom zIndex: 0 - data: isInIteration: false isInLoop: false sourceType: llm targetType: answer id: 1789976818766--1789976920515-target source: '1789976818766' sourceHandle: '' target: '1789976920515' targetHandle: target type: custom zIndex: 0 - data: isInIteration: false isInLoop: false sourceType: question-classifier targetType: human-input id: 1789976131570-1789976215884-1789976987317-target source: '1789976131570' sourceHandle: '1789976215884' target: '1789976987317' targetHandle: target type: custom zIndex: 0 - data: isInIteration: false isInLoop: false sourceType: human-input targetType: answer id: 1789976987317-send-1789977278966-target source: '1789976987317' sourceHandle: send target: '1789977278966' targetHandle: target type: custom zIndex: 0 - data: isInIteration: false isInLoop: false sourceType: human-input targetType: answer id: 1789976987317-__timeout-1789977358965-target source: '1789976987317' sourceHandle: __timeout target: '1789977358965' targetHandle: target type: custom zIndex: 0 - data: isInIteration: false isInLoop: false sourceType: question-classifier targetType: answer id: 1789976131570-1789976215884-1789977416908-target source: '1789976131570' sourceHandle: '1789976215884' target: '1789977416908' targetHandle: target type: custom zIndex: 0 nodes: - data: selected: false title: User Input type: start variables: [] height: 72 id: '1789976034527' position: x: 80 y: 282 positionAbsolute: x: 80 y: 282 selected: false sourcePosition: right targetPosition: left type: custom width: 242 zIndex: 0 - data: classes: - id: '1' label: CLASS 1 name: 'Concept question: the student wants to understand or have explained something from the material, for example what a term means, how something works, why something is the way it is, or an example.' - id: '2' label: CLASS 2 name: 'Homework question: the student asks for the answer to a task, exercise or test question, or wants the homework done or marked.' - id: '1789976192448' label: CLASS 3 name: 'Planning question: the student asks about the test, the date, what has to be learned, the homework for a certain lesson, the support session, the practical or other agreements from the study planner.' - id: '1789976215884' label: CLASS 4 name: 'Personal or worrying: the student writes about themselves, for example that it is not working, stress, test anxiety, problems at home or in class, illness, being bullied, or wants to talk to the teacher or form tutor. Also anything that is not about biology.' model: completion_params: temperature: 0.7 mode: chat name: gpt-5-mini provider: langgenius/openai/openai query_variable_selector: - '1789976034527' - sys.query selected: false title: Question Classifier type: question-classifier vision: enabled: false height: 261 id: '1789976131570' position: x: 382 y: 282 positionAbsolute: x: 382 y: 282 selected: false sourcePosition: right targetPosition: left type: custom width: 242 zIndex: 0 - data: dataset_ids: - iR7puwQ1QC+JFERX6iXcfQ3BhLA5YXvmotJBNX0NgR91mSRBte7feu/wJZF+aPne multiple_retrieval_config: reranking_enable: true reranking_mode: reranking_model reranking_model: model: qwen3-rerank provider: langgenius/tongyi/tongyi top_k: 4 query_attachment_selector: [] query_variable_selector: - '1789976034527' - sys.query retrieval_mode: multiple selected: false title: Knowledge Retrieval type: knowledge-retrieval height: 89 id: '1789976257737' position: x: 684 y: 282 positionAbsolute: x: 684 y: 282 selected: false sourcePosition: right targetPosition: left type: custom width: 242 zIndex: 0 - data: context: enabled: true variable_selector: - '1789976257737' - result memory: query_prompt_template: '{{#sys.query#}} {{#sys.files#}}' role_prefix: assistant: '' user: '' window: enabled: false size: 50 model: completion_params: {} mode: chat name: gpt-5-mini provider: langgenius/openai/openai prompt_template: - id: 27f0753d-94b6-4f1f-b871-66386e9600b8 role: system text: 'You are the biology study coach of Example College for Year 9 students. You explain the material on ecology in plain English, in short sentences and with examples from the booklet (the school pond, Example Wood). Rules: - Use only the material below. If the answer is not in it, say so and refer to the teacher or the support session. - Address the student informally. At most eight sentences. - End with one short check question with which the student can check whether they understand. - Do not give answers to tasks from the booklet; explain the concept and let the student do the task themselves. Material: {{#context#}}' selected: false title: Explanation type: llm vision: enabled: false height: 87 id: '1789976296992' position: x: 986 y: 282 positionAbsolute: x: 986 y: 282 selected: false sourcePosition: right targetPosition: left type: custom width: 242 zIndex: 0 - data: answer: '{{#1789976296992.text#}}' selected: false title: Answer explanation type: answer variables: [] height: 102 id: '1789976570650' position: x: 1288 y: 282 positionAbsolute: x: 1288 y: 282 selected: false sourcePosition: right targetPosition: left type: custom width: 242 - data: context: enabled: false variable_selector: [] memory: query_prompt_template: '{{#sys.query#}} {{#sys.files#}}' role_prefix: assistant: '' user: '' window: enabled: false size: 50 model: completion_params: {} mode: chat name: gpt-5-mini provider: langgenius/openai/openai prompt_template: - id: dc713919-d2bd-4454-870e-f0b7d7226938 role: system text: 'You are the biology study coach of Example College for Year 9 students. The student asks for the answer to a task, an exercise or a test question. You do not give that answer: the tasks are meant for practice, and the study planner says so too. What you do instead, in at most five sentences: 1. Say kindly and briefly that you do not give the answer, without a lecture. 2. Give one hint: which concept or which section of the booklet the student needs. 3. Ask one counter-question that helps the student take a step themselves. 4. Offer to explain the concept if the student wants. Address the student informally. Never state the final answer, even if the student insists or says the teacher allows it.' selected: false title: Hint type: llm vision: enabled: false height: 87 id: '1789976630144' position: x: 684 y: 410 positionAbsolute: x: 684 y: 410 selected: false sourcePosition: right targetPosition: left type: custom width: 242 - data: answer: '{{#1789976630144.text#}}' selected: false title: Answer hint type: answer variables: [] height: 102 id: '1789976748348' position: x: 986 y: 410 positionAbsolute: x: 986 y: 410 selected: false sourcePosition: right targetPosition: left type: custom width: 242 - data: dataset_ids: - iR7puwQ1QC+JFERX6iXcfQ3BhLA5YXvmotJBNX0NgR91mSRBte7feu/wJZF+aPne multiple_retrieval_config: reranking_enable: true reranking_mode: reranking_model reranking_model: model: qwen3-rerank provider: langgenius/tongyi/tongyi top_k: 4 query_attachment_selector: [] query_variable_selector: - '1789976034527' - sys.query retrieval_mode: multiple selected: false title: Knowledge Retrieval 2 type: knowledge-retrieval height: 89 id: '1789976785205' position: x: 684 y: 536 positionAbsolute: x: 684 y: 536 selected: false sourcePosition: right targetPosition: left type: custom width: 242 - data: context: enabled: true variable_selector: - '1789976785205' - result memory: query_prompt_template: '{{#sys.query#}} {{#sys.files#}}' role_prefix: assistant: '' user: '' window: enabled: false size: 50 model: completion_params: {} mode: chat name: gpt-5-mini provider: langgenius/openai/openai prompt_template: - id: 99b2fc0d-6029-4650-b0af-2c190658de92 role: system text: 'You are the biology study coach of Example College for Year 9 students. The student asks something about the planning: the test, what has to be learned, homework, the support session, the practical or another agreement. Rules: - Answer only on the basis of the study planner below. Give dates, periods and rooms exactly as they are there. - If it is not in there, say so and refer to the teacher (biology@examplecollege.example) or the support session on Tuesday, period 8, in B12. - Address the student informally. Short and concrete, at most five sentences. Use a list if it is about several things. Study planner: {{#context#}}' selected: false title: Planning type: llm vision: enabled: false height: 87 id: '1789976818766' position: x: 986 y: 536 positionAbsolute: x: 986 y: 536 selected: false sourcePosition: right targetPosition: left type: custom width: 242 - data: answer: '{{#1789976818766.text#}}' selected: false title: Answer planning type: answer variables: [] height: 102 id: '1789976920515' position: x: 1288 y: 536 positionAbsolute: x: 1288 y: 536 selected: false sourcePosition: right targetPosition: left type: custom width: 242 - data: delivery_methods: - config: body: 'A Year 9 student asked the Study coach a personal question that the coach does not answer itself. Read the conversation and write a short reply; the student will see it in the chat. Respond through this link: {{#url#}}' debug_mode: true recipients: items: - email: biology@examplecollege.example type: external whole_workspace: false subject: 'Study coach biology: a student needs you' enabled: true id: b56decda-c20d-4487-aa24-b60e7ac8b14e type: email form_content: "Message from the student: {{#sys.query#}}\n\nYour reply to\ \ the student (this goes literally into the chat): \n{{#$output.teacher_reply#}}\n" inputs: - default: selector: [] type: constant value: '' output_variable_name: teacher_reply type: paragraph selected: false timeout: 3 timeout_unit: day title: Teacher type: human-input user_actions: - button_style: default id: send title: Send to the student height: 163 id: '1789976987317' position: x: 291.16227347611186 y: 631.1540362438219 positionAbsolute: x: 291.16227347611186 y: 631.1540362438219 selected: false sourcePosition: right targetPosition: left type: custom width: 242 - data: answer: 'Message from your teacher: {{#1789976987317.teacher_reply#}}' selected: false title: Teacher reply type: answer variables: [] height: 118 id: '1789977278966' position: x: 690.3863261943986 y: 631.1540362438219 positionAbsolute: x: 690.3863261943986 y: 631.1540362438219 selected: false sourcePosition: right targetPosition: left type: custom width: 242 - data: answer: 'Your teacher has not been able to respond yet. Your message is not lost: talk to your teacher or form tutor tomorrow, or email biology@examplecollege.example. Are things really not going well? Then talk to someone at home or at school today, or contact a helpline for young people (in the UK: Childline, 0800 1111, free and confidential).' selected: false title: No reply type: answer variables: [] height: 243 id: '1789977358965' position: x: 690.3863261943986 y: 788.1540362438219 positionAbsolute: x: 690.3863261943986 y: 788.1540362438219 selected: false sourcePosition: right targetPosition: left type: custom width: 242 - data: answer: 'Thank you for telling me this. This is something for a person, not for me. I have passed your message to your biology teacher; as soon as they respond, you will see the reply here in the chat. Do you want to talk to someone right now? Go to your form tutor, or contact a helpline for young people (in the UK: Childline, 0800 1111, free and confidential).' selected: false title: Passed on type: answer variables: [] height: 243 id: '1789977416908' position: x: 291.16227347611186 y: 833.1540362438219 positionAbsolute: x: 291.16227347611186 y: 833.1540362438219 selected: false sourcePosition: right targetPosition: left type: custom width: 242 viewport: x: -107.64106583072095 y: -102.74660397074177 zoom: 0.6342737722048066 rag_pipeline_variables: []