hcanges per rabbit feedback
modified: app.py modified: research/guarded_ai.py
This commit is contained in:
parent
dd13bce82b
commit
9f3c5fb3a7
2 changed files with 12 additions and 13 deletions
19
app.py
19
app.py
|
|
@ -110,19 +110,17 @@ class ActivityState(db.Model):
|
|||
json_metadata = db.Column(db.UnicodeText, default="{}")
|
||||
|
||||
@property
|
||||
def _json_metadata(self):
|
||||
if self.json_metadata:
|
||||
return json.loads(self.json_metadata)
|
||||
return {}
|
||||
def dict_metadata(self):
|
||||
return json.loads(self.json_metadata) if self.json_metadata else {}
|
||||
|
||||
@_json_metadata.setter
|
||||
def _json_metadata(self, value):
|
||||
@dict_metadata.setter
|
||||
def dict_metadata(self, value):
|
||||
self.json_metadata = json.dumps(value)
|
||||
|
||||
def update_metadata(self, key, value):
|
||||
metadata = self._json_metadata
|
||||
metadata = self.dict_metadata
|
||||
metadata[key] = value
|
||||
self._json_metadata = metadata
|
||||
self.dict_metadata = metadata
|
||||
|
||||
|
||||
def get_room(room_name):
|
||||
|
|
@ -1847,7 +1845,7 @@ def handle_activity_response(room_name, user_response, username):
|
|||
# Check metadata conditions for the current step
|
||||
if "metadata_conditions" in step["transitions"][category]:
|
||||
conditions_met = all(
|
||||
activity_state._json_metadata.get(key) == value
|
||||
activity_state.dict_metadata.get(key) == value
|
||||
for key, value in step["transitions"][category][
|
||||
"metadata_conditions"
|
||||
].items()
|
||||
|
|
@ -1916,11 +1914,9 @@ def handle_activity_response(room_name, user_response, username):
|
|||
|
||||
# Update metadata based on user actions
|
||||
if "metadata_updates" in step["transitions"][category]:
|
||||
print(f"metadata_updates in step/category")
|
||||
for key, value in step["transitions"][category][
|
||||
"metadata_updates"
|
||||
].items():
|
||||
print(f"{key}: {value}")
|
||||
activity_state.update_metadata(key, value)
|
||||
|
||||
# Commit the changes after the loop
|
||||
|
|
@ -1928,7 +1924,6 @@ def handle_activity_response(room_name, user_response, username):
|
|||
db.session.commit()
|
||||
|
||||
# Log the updated metadata
|
||||
print(f"Updated metadata: {activity_state._json_metadata}")
|
||||
|
||||
# if "correct" or max_attempts reached.
|
||||
if (
|
||||
|
|
|
|||
|
|
@ -1,3 +1,4 @@
|
|||
import argparse
|
||||
import yaml
|
||||
from openai import OpenAI
|
||||
|
||||
|
|
@ -200,5 +201,8 @@ def simulate_activity(yaml_file_path):
|
|||
)
|
||||
|
||||
if __name__ == "__main__":
|
||||
parser = argparse.ArgumentParser(description="Simulate an activity.")
|
||||
parser.add_argument("yaml_file_path", type=str, help="Path to the activity YAML file", default="activity0.yaml")
|
||||
args = parser.parse_args()
|
||||
simulate_activity(args.yaml_file_path)
|
||||
# simulate_activity("activity13-choose-adventure.yaml")
|
||||
simulate_activity("activity0.yaml")
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue