opencompletion.com/research/activity2.yaml
Russell Ballestrini ea082ad1ff migrate all activities, there should always be a step without a question
as last step.
	modified:   research/activity.yaml
	modified:   research/activity2.yaml
	modified:   research/activity4.yaml
	modified:   research/activity5.yaml
	modified:   research/activity6.yaml
	modified:   research/activity7.yaml
2024-08-01 18:03:00 -04:00

292 lines
14 KiB
YAML

default_max_attempts_per_step: 3
sections:
- section_id: "section_1"
title: "Introduction to Python"
steps:
- step_id: "step_1"
title: "What is Python?"
content_blocks:
- "Welcome to the Python programming course."
- "Python is a high-level, interpreted programming language known for its readability and versatility."
tokens_for_ai: "Explain what Python is and its key features in a friendly and engaging manner."
question: "What do you know about Python?"
buckets:
- correct
- partial_understanding
- off_topic
- asking_clarifying_questions
transitions:
correct:
content_blocks:
- "Great! You have a good understanding of Python."
ai_feedback:
tokens_for_ai: "Provide positive reinforcement and encourage the user to continue learning."
partial_understanding:
content_blocks:
- "You have a partial understanding of Python. Let's clarify a few points."
ai_feedback:
tokens_for_ai: "Provide additional information to clarify the user's understanding in a friendly and supportive manner."
off_topic:
content_blocks:
- "It seems like your response is off-topic. Let's try to stay focused on Python."
ai_feedback:
tokens_for_ai: "Gently guide the user back to the topic of Python in a supportive manner."
asking_clarifying_questions:
content_blocks:
- "I see you have some questions. Let's address them."
ai_feedback:
tokens_for_ai: "Answer the user's clarifying questions and provide additional information in a friendly and engaging manner."
- step_id: "step_2"
title: "Installing Python"
content_blocks:
- "To start coding in Python, you need to install it on your computer."
- "You can download Python from the official website: https://www.python.org/downloads/"
tokens_for_ai: "Explain how to install Python on different operating systems in a friendly and engaging manner."
question: "Have you installed Python on your computer?"
buckets:
- correct
- partial_understanding
- off_topic
- asking_clarifying_questions
transitions:
correct:
content_blocks:
- "Excellent! You are ready to start coding in Python."
ai_feedback:
tokens_for_ai: "Provide positive reinforcement and encourage the user to continue learning."
partial_understanding:
content_blocks:
- "It seems like you have some issues with the installation. Let's go over the steps again."
ai_feedback:
tokens_for_ai: "Provide detailed installation steps to help the user in a friendly and supportive manner."
off_topic:
content_blocks:
- "It seems like your response is off-topic. Let's try to stay focused on installing Python."
ai_feedback:
tokens_for_ai: "Gently guide the user back to the topic of installing Python in a supportive manner."
asking_clarifying_questions:
content_blocks:
- "I see you have some questions. Let's address them."
ai_feedback:
tokens_for_ai: "Answer the user's clarifying questions and provide additional information in a friendly and engaging manner."
- section_id: "section_2"
title: "Basic Python Syntax"
steps:
- step_id: "step_1"
title: "Writing Your First Python Program"
content_blocks:
- "Let's write your first Python program."
- "Open a text editor and type the following code:\n```python\nprint('Hello, World!')\n```"
- "Save the file with a `.py` extension and run it using the Python interpreter."
tokens_for_ai: "Explain how to write and run a simple Python program in a friendly and engaging manner."
question: "Were you able to run the 'Hello, World!' program?"
buckets:
- correct
- partial_understanding
- off_topic
- asking_clarifying_questions
transitions:
correct:
content_blocks:
- "Great! You've written and run your first Python program."
ai_feedback:
tokens_for_ai: "Provide positive reinforcement and encourage the user to continue learning."
partial_understanding:
content_blocks:
- "It seems like you had some issues. Let's go over the steps again."
ai_feedback:
tokens_for_ai: "Provide detailed steps to help the user run the program successfully in a friendly and supportive manner."
off_topic:
content_blocks:
- "It seems like your response is off-topic. Let's try to stay focused on writing and running the Python program."
ai_feedback:
tokens_for_ai: "Gently guide the user back to the topic of writing and running the Python program in a supportive manner."
asking_clarifying_questions:
content_blocks:
- "I see you have some questions. Let's address them."
ai_feedback:
tokens_for_ai: "Answer the user's clarifying questions and provide additional information in a friendly and engaging manner."
- step_id: "step_2"
title: "Variables and Data Types"
content_blocks:
- "In Python, you can store data in variables."
- "Python supports various data types such as integers, floats, strings, and booleans."
- "Here's an example:\n```python\nx = 5\npi = 3.14\nname = 'Alice'\nis_student = True\n```"
tokens_for_ai: "Explain variables and data types in Python with examples in a friendly and engaging manner."
question: "Can you create a variable and assign a value to it?"
buckets:
- correct
- partial_understanding
- off_topic
- asking_clarifying_questions
transitions:
correct:
content_blocks:
- "Excellent! You have successfully created a variable."
ai_feedback:
tokens_for_ai: "Provide positive reinforcement and encourage the user to continue learning."
partial_understanding:
content_blocks:
- "It seems like you have a partial understanding. Let's clarify a few points."
ai_feedback:
tokens_for_ai: "Provide additional examples and explanations to clarify the user's understanding in a friendly and supportive manner."
off_topic:
content_blocks:
- "It seems like your response is off-topic. Let's try to stay focused on variables and data types."
ai_feedback:
tokens_for_ai: "Gently guide the user back to the topic of variables and data types in a supportive manner."
asking_clarifying_questions:
content_blocks:
- "I see you have some questions. Let's address them."
ai_feedback:
tokens_for_ai: "Answer the user's clarifying questions and provide additional information in a friendly and engaging manner."
- section_id: "section_3"
title: "Control Flow"
steps:
- step_id: "step_1"
title: "If Statements"
content_blocks:
- "If statements allow you to execute code based on certain conditions."
- "Here's an example:\n```python\nx = 10\nif x > 5:\n print('x is greater than 5')\nelse:\n print('x is 5 or less')\n```"
tokens_for_ai: "Explain if statements in Python with examples in a friendly and engaging manner."
question: "Can you write an if statement to check if a number is positive?"
buckets:
- correct
- partial_understanding
- off_topic
- asking_clarifying_questions
transitions:
correct:
content_blocks:
- "Great! You've written a correct if statement."
ai_feedback:
tokens_for_ai: "Provide positive reinforcement and encourage the user to continue learning."
partial_understanding:
content_blocks:
- "It seems like you have a partial understanding. Let's clarify a few points."
ai_feedback:
tokens_for_ai: "Provide additional examples and explanations to clarify the user's understanding in a friendly and supportive manner."
off_topic:
content_blocks:
- "It seems like your response is off-topic. Let's try to stay focused on if statements."
ai_feedback:
tokens_for_ai: "Gently guide the user back to the topic of if statements in a supportive manner."
asking_clarifying_questions:
content_blocks:
- "I see you have some questions. Let's address them."
ai_feedback:
tokens_for_ai: "Answer the user's clarifying questions and provide additional information in a friendly and engaging manner."
- step_id: "step_2"
title: "For Loops"
content_blocks:
- "For loops allow you to iterate over a sequence of elements."
- "Here's an example:\n```python\nfor i in range(5):\n print(i)\n```"
tokens_for_ai: "Explain for loops in Python with examples in a friendly and engaging manner."
question: "Can you write a for loop to print the numbers from 1 to 10?"
buckets:
- correct
- partial_understanding
- off_topic
- asking_clarifying_questions
transitions:
correct:
content_blocks:
- "Excellent! You've written a correct for loop."
ai_feedback:
tokens_for_ai: "Provide positive reinforcement and encourage the user to continue learning."
partial_understanding:
content_blocks:
- "It seems like you have a partial understanding. Let's clarify a few points."
ai_feedback:
tokens_for_ai: "Provide additional examples and explanations to clarify the user's understanding in a friendly and supportive manner."
off_topic:
content_blocks:
- "It seems like your response is off-topic. Let's try to stay focused on for loops."
ai_feedback:
tokens_for_ai: "Gently guide the user back to the topic of for loops in a supportive manner."
asking_clarifying_questions:
content_blocks:
- "I see you have some questions. Let's address them."
ai_feedback:
tokens_for_ai: "Answer the user's clarifying questions and provide additional information in a friendly and engaging manner."
- section_id: "section_4"
title: "Functions"
steps:
- step_id: "step_1"
title: "Defining Functions"
content_blocks:
- "Functions allow you to encapsulate code into reusable blocks."
- "Here's an example:\n```python\ndef greet(name):\n print(f'Hello, {name}!')\n\ngreet('Alice')\n```"
tokens_for_ai: "Explain how to define and use functions in Python with examples in a friendly and engaging manner."
question: "Can you define a function that takes two numbers and returns their sum?"
buckets:
- correct
- partial_understanding
- off_topic
- asking_clarifying_questions
transitions:
correct:
content_blocks:
- "Great! You've defined a correct function."
ai_feedback:
tokens_for_ai: "Provide positive reinforcement and encourage the user to continue learning."
partial_understanding:
content_blocks:
- "It seems like you have a partial understanding. Let's clarify a few points."
ai_feedback:
tokens_for_ai: "Provide additional examples and explanations to clarify the user's understanding in a friendly and supportive manner."
off_topic:
content_blocks:
- "It seems like your response is off-topic. Let's try to stay focused on defining functions."
ai_feedback:
tokens_for_ai: "Gently guide the user back to the topic of defining functions in a supportive manner."
asking_clarifying_questions:
content_blocks:
- "I see you have some questions. Let's address them."
ai_feedback:
tokens_for_ai: "Answer the user's clarifying questions and provide additional information in a friendly and engaging manner."
- step_id: "step_2"
title: "Calling Functions"
content_blocks:
- "Once you've defined a function, you can call it to execute the code inside it."
- "Here's an example:\n```python\ndef add(a, b):\n return a + b\n\nresult = add(3, 4)\nprint(result)\n```"
tokens_for_ai: "Explain how to call functions in Python with examples in a friendly and engaging manner."
question: "Can you call a function that you've defined and print the result?"
buckets:
- correct
- partial_understanding
- off_topic
- asking_clarifying_questions
transitions:
correct:
content_blocks:
- "Excellent! You've called the function correctly."
ai_feedback:
tokens_for_ai: "Provide positive reinforcement and encourage the user to continue learning."
partial_understanding:
content_blocks:
- "It seems like you have a partial understanding. Let's clarify a few points."
ai_feedback:
tokens_for_ai: "Provide additional examples and explanations to clarify the user's understanding in a friendly and supportive manner."
off_topic:
content_blocks:
- "It seems like your response is off-topic. Let's try to stay focused on calling functions."
ai_feedback:
tokens_for_ai: "Gently guide the user back to the topic of calling functions in a supportive manner."
asking_clarifying_questions:
content_blocks:
- "I see you have some questions. Let's address them."
ai_feedback:
tokens_for_ai: "Answer the user's clarifying questions and provide additional information in a friendly and engaging manner."
- step_id: "step_3"
title: "The End."
content_blocks:
- "The End."