vancauwe's picture
feat: push to HF enabled
4158a85
raw
history blame
937 Bytes
import json
from validation_submission.validation import validate_individual
import gradio as gr
from huggingface_hub import HfApi
import os
def validate_save_individual(data, error_icon, error_box, mode):
individual, error_icon, error_box = validate_individual(data, error_icon, error_box, mode)
if individual:
print("pushing to hugging face")
push_to_dataset_hf(individual.model_dump())
return error_icon, error_box
def push_to_dataset_hf(individual):
token = os.environ.get("HF_TOKEN", None)
api = HfApi(token=token)
import tempfile
f = tempfile.NamedTemporaryFile(mode="w", suffix=".json", delete=False)
json.dump(individual, f)
f.flush()
f.close()
path_in_repo = f"data/{individual['image_md5']}.json"
api.upload_file(
path_or_fileobj=f.name,
path_in_repo=path_in_repo,
repo_id="SDSC/digiwild-dataset",
repo_type="dataset",
)