hoololi commited on
Commit
a4f096f
·
verified ·
1 Parent(s): 9bf4d36

Upload game_engine.py

Browse files
Files changed (1) hide show
  1. game_engine.py +25 -25
game_engine.py CHANGED
@@ -1,5 +1,5 @@
1
  # ==========================================
2
- # game_engine.py - Calcul OCR v3.0 CLEAN (Modifié)
3
  # ==========================================
4
 
5
  """
@@ -31,7 +31,7 @@ from utils import (
31
  cleanup_memory,
32
  decode_image_from_dataset,
33
  validate_ocr_result,
34
- analyze_calculation_complexity # Nouvelle importation
35
  )
36
 
37
  # Auto-détection propre : GPU OU CPU uniquement
@@ -93,14 +93,14 @@ except Exception as e:
93
  print(f"⚠️ Impossible de récupérer les infos OCR: {e}")
94
  ocr_info = {"model_name": "Error", "device": "Unknown"}
95
 
96
- # Imports dataset avec gestion d'erreur
97
  try:
98
- from datasets import Dataset, load_dataset [cite: 2]
99
- DATASET_AVAILABLE = True [cite: 2]
100
- print("✅ Modules dataset disponibles") [cite: 2]
101
  except ImportError as e:
102
- DATASET_AVAILABLE = False [cite: 2]
103
- print(f"⚠️ Modules dataset non disponibles: {e}") [cite: 2]
104
 
105
  # Nom du dataset cohérent avec le space
106
  DATASET_NAME = "hoololi/calcul_ocr_dataset"
@@ -737,21 +737,21 @@ def export_to_clean_dataset(session_data: list[dict], dataset_name: str = None)
737
  sample_entry = clean_entries[0]
738
  print(f"🔍 Structure première entrée: {list(sample_entry.keys())}")
739
 
740
- # Charger dataset existant et combiner (IMPORTANT!)
741
  try:
742
- existing_dataset = load_dataset(dataset_name, split="train") [cite: 2]
743
- existing_data = existing_dataset.to_list() [cite: 2]
744
- print(f"📊 {len(existing_data)} entrées existantes trouvées") [cite: 2]
745
 
746
- # Combiner ancien + nouveau
747
- combined_data = existing_data + clean_entries [cite: 2]
748
- clean_dataset = Dataset.from_list(combined_data) [cite: 2]
749
- print(f"📊 Dataset combiné: {len(existing_data)} existantes + {len(clean_entries)} nouvelles = {len(combined_data)} total") [cite: 2]
750
 
751
  except Exception as e:
752
  print(f"📊 Dataset non trouvé, création nouveau: {e}")
753
  # Si le dataset n'existe pas, créer depuis les nouvelles entrées
754
- clean_dataset = Dataset.from_list(clean_entries) [cite: 2]
755
  print(f"📊 Nouveau dataset créé avec {len(clean_entries)} entrées")
756
 
757
  print(f"✅ Dataset créé - Features:")
@@ -766,14 +766,14 @@ def export_to_clean_dataset(session_data: list[dict], dataset_name: str = None)
766
 
767
  operations_summary = ", ".join([f"{op}: {count}" for op, count in operations_count.items()])
768
 
769
- # Push vers HuggingFace
770
- print(f"📤 Push vers {dataset_name}...") [cite: 2]
771
- clean_dataset.push_to_hub( [cite: 2]
772
- dataset_name, [cite: 2]
773
- private=False, [cite: 2]
774
- token=hf_token, [cite: 2]
775
- commit_message=f"Add {len(clean_entries)} handwriting samples for math OCR ({operations_summary})" [cite: 2]
776
- ) [cite: 2]
777
 
778
  cleanup_memory()
779
 
 
1
  # ==========================================
2
+ # game_engine.py - Calcul OCR v3.0 CLEAN (Modifié - sans marqueurs)
3
  # ==========================================
4
 
5
  """
 
31
  cleanup_memory,
32
  decode_image_from_dataset,
33
  validate_ocr_result,
34
+ analyze_calculation_complexity
35
  )
36
 
37
  # Auto-détection propre : GPU OU CPU uniquement
 
93
  print(f"⚠️ Impossible de récupérer les infos OCR: {e}")
94
  ocr_info = {"model_name": "Error", "device": "Unknown"}
95
 
96
+ # Imports dataset avec gestion d'erreur
97
  try:
98
+ from datasets import Dataset, load_dataset
99
+ DATASET_AVAILABLE = True
100
+ print("✅ Modules dataset disponibles")
101
  except ImportError as e:
102
+ DATASET_AVAILABLE = False
103
+ print(f"⚠️ Modules dataset non disponibles: {e}")
104
 
105
  # Nom du dataset cohérent avec le space
106
  DATASET_NAME = "hoololi/calcul_ocr_dataset"
 
737
  sample_entry = clean_entries[0]
738
  print(f"🔍 Structure première entrée: {list(sample_entry.keys())}")
739
 
740
+ # Charger dataset existant et combiner (IMPORTANT!)
741
  try:
742
+ existing_dataset = load_dataset(dataset_name, split="train")
743
+ existing_data = existing_dataset.to_list()
744
+ print(f"📊 {len(existing_data)} entrées existantes trouvées")
745
 
746
+ # Combiner ancien + nouveau
747
+ combined_data = existing_data + clean_entries
748
+ clean_dataset = Dataset.from_list(combined_data)
749
+ print(f"📊 Dataset combiné: {len(existing_data)} existantes + {len(clean_entries)} nouvelles = {len(combined_data)} total")
750
 
751
  except Exception as e:
752
  print(f"📊 Dataset non trouvé, création nouveau: {e}")
753
  # Si le dataset n'existe pas, créer depuis les nouvelles entrées
754
+ clean_dataset = Dataset.from_list(clean_entries)
755
  print(f"📊 Nouveau dataset créé avec {len(clean_entries)} entrées")
756
 
757
  print(f"✅ Dataset créé - Features:")
 
766
 
767
  operations_summary = ", ".join([f"{op}: {count}" for op, count in operations_count.items()])
768
 
769
+ # Push vers HuggingFace
770
+ print(f"📤 Push vers {dataset_name}...")
771
+ clean_dataset.push_to_hub(
772
+ dataset_name,
773
+ private=False,
774
+ token=hf_token,
775
+ commit_message=f"Add {len(clean_entries)} handwriting samples for math OCR ({operations_summary})"
776
+ )
777
 
778
  cleanup_memory()
779