Spaces:
Runtime error
Runtime error
| import json | |
| import os | |
| import uuid | |
| from pathlib import Path | |
| from huggingface_hub import CommitScheduler | |
| APP_INSTANCE_ID = str(uuid.uuid4()) | |
| feedback_file = Path("user_feedback/") / f"data_{APP_INSTANCE_ID}.json" | |
| feedback_folder = feedback_file.parent | |
| scheduler = CommitScheduler( | |
| repo_id=os.getenv("REPO_ID", default="feel-feedback"), | |
| repo_type="dataset", | |
| folder_path=feedback_folder, | |
| path_in_repo="data", | |
| every=1, | |
| ) | |
| def save_feedback(input_object: dict) -> None: | |
| """ | |
| Append input/outputs and user feedback to a JSON Lines file using a thread lock to avoid concurrent writes from different users. | |
| """ | |
| with scheduler.lock: | |
| with feedback_file.open(mode="a") as f: | |
| f.write(json.dumps(obj=input_object)) | |
| f.write("\n") | |