Spaces:
Sleeping
Sleeping
from dataclasses import dataclass | |
from datetime import datetime | |
from typing import List, Dict | |
import json | |
class AdapterMetadata: | |
"""Metadata for tracking adapter training history""" | |
training_timestamp: str # ISO format timestamp | |
training_params: Dict # Training parameters used | |
model_name: str # Base model name | |
language: str # Language of the adapter | |
version: str # Version of the adapter | |
# Create class instance from a dictionary | |
def from_dict(cls, data: Dict): | |
return cls(**data) | |
# Convert class instance to a dictionary | |
def to_dict(self) -> Dict: | |
return { | |
"training_timestamp": self.training_timestamp, | |
"dataset_entries": self.dataset_entries, | |
"training_params": self.training_params, | |
"model_name": self.model_name, | |
"language": self.language, | |
"version": self.version | |
} | |
# Save metadata to a JSON file | |
def save(self, filepath: str): | |
with open(filepath, 'w') as f: | |
json.dump(self.to_dict(), f, indent=2) | |
# Load metadata from a JSON file | |
def load(cls, filepath: str): | |
with open(filepath, 'r') as f: | |
data = json.load(f) | |
return cls.from_dict(data) | |