Spaces:
Running
Running
| #!/usr/bin/env python3 | |
| """ | |
| Test real training data logging and retrieval | |
| """ | |
| import json | |
| import logging | |
| from trackio_api_client import TrackioAPIClient | |
| # Setup logging | |
| logging.basicConfig(level=logging.INFO) | |
| logger = logging.getLogger(__name__) | |
| def test_real_training_data(): | |
| """Test if real training data is being logged and can be retrieved""" | |
| client = TrackioAPIClient("https://tonic-test-trackio-test.hf.space") | |
| # Your experiment ID | |
| experiment_id = "exp_20250720_101955" | |
| print("π Testing Real Training Data") | |
| print("=" * 50) | |
| # 1. Test getting experiment details | |
| print(f"\n1. Getting experiment details for {experiment_id}...") | |
| details_result = client.get_experiment_details(experiment_id) | |
| if "success" in details_result: | |
| print("β Experiment details retrieved successfully") | |
| try: | |
| details_preview = details_result['data'][:200] | |
| print(f"Details: {details_preview}...") | |
| except UnicodeEncodeError: | |
| print(f"Details: {details_result['data'][:100].encode('utf-8', errors='ignore').decode('utf-8')}...") | |
| # Look for metrics in the details | |
| if "metrics" in details_result['data'].lower(): | |
| print("β Found metrics in experiment details") | |
| else: | |
| print("β No metrics found in experiment details") | |
| else: | |
| print(f"β Failed to get experiment details: {details_result}") | |
| # 2. Test getting training metrics specifically | |
| print(f"\n2. Getting training metrics for {experiment_id}...") | |
| metrics_result = client.get_training_metrics(experiment_id) | |
| if "success" in metrics_result: | |
| print("β Training metrics retrieved successfully") | |
| print(f"Metrics: {metrics_result['data'][:200]}...") | |
| else: | |
| print(f"β Failed to get training metrics: {metrics_result}") | |
| # 3. Test getting metrics history | |
| print(f"\n3. Getting metrics history for {experiment_id}...") | |
| history_result = client.get_experiment_metrics_history(experiment_id) | |
| if "success" in history_result: | |
| print("β Metrics history retrieved successfully") | |
| print(f"History: {history_result['data'][:200]}...") | |
| else: | |
| print(f"β Failed to get metrics history: {history_result}") | |
| # 4. List all experiments to see what's available | |
| print(f"\n4. Listing all experiments...") | |
| list_result = client.list_experiments() | |
| if "success" in list_result: | |
| print("β Experiments listed successfully") | |
| try: | |
| response_preview = list_result['data'][:300] | |
| print(f"Response: {response_preview}...") | |
| except UnicodeEncodeError: | |
| print(f"Response: {list_result['data'][:150].encode('utf-8', errors='ignore').decode('utf-8')}...") | |
| else: | |
| print(f"β Failed to list experiments: {list_result}") | |
| print("\n" + "=" * 50) | |
| print("π― Analysis Complete") | |
| print("=" * 50) | |
| def log_real_training_step(experiment_id: str, step: int): | |
| """Log a single real training step for testing""" | |
| client = TrackioAPIClient("https://tonic-test-trackio-test.hf.space") | |
| # Real training metrics | |
| metrics = { | |
| "loss": 1.2345, | |
| "accuracy": 0.8567, | |
| "learning_rate": 3.5e-6, | |
| "gpu_memory_gb": 22.5, | |
| "training_time_per_step": 0.8, | |
| "epoch": 1, | |
| "samples_per_second": 45.2 | |
| } | |
| print(f"π Logging real training step {step}...") | |
| result = client.log_metrics(experiment_id, metrics, step) | |
| if "success" in result: | |
| print(f"β Step {step} logged successfully") | |
| print(f"Metrics: {metrics}") | |
| else: | |
| print(f"β Failed to log step {step}: {result}") | |
| if __name__ == "__main__": | |
| # Test existing data | |
| test_real_training_data() | |
| # Optionally log a test step | |
| print("\n" + "=" * 50) | |
| print("π§ͺ Testing Real Data Logging") | |
| print("=" * 50) | |
| experiment_id = "exp_20250720_101955" | |
| log_real_training_step(experiment_id, 1000) | |
| print("\n" + "=" * 50) | |
| print("π― Next Steps:") | |
| print("1. Run your actual training: python run_a100_large_experiment.py") | |
| print("2. The training will log real metrics every 25 steps") | |
| print("3. Check the visualization tab in your Trackio Space") | |
| print("4. Real training data should appear as training progresses") | |
| print("=" * 50) |