data / test_hf_connection.py
Tracy André
updated
b5ed585
raw
history blame
2.36 kB
#!/usr/bin/env python3
"""
Script de test pour vérifier la connexion au dataset HuggingFace
"""
import os
from datasets import load_dataset
# Configuration
dataset_id = "HackathonCRA/2024"
hf_token = os.environ.get("HF_TOKEN")
print("🧪 Test de connexion au dataset HuggingFace")
print(f"📦 Dataset: {dataset_id}")
print(f"🔑 Token configuré: {'✅ Oui' if hf_token else '❌ Non'}")
print()
try:
# Test 1: Chargement du dataset
print("🔄 Chargement du dataset...")
if hf_token:
dataset = load_dataset(dataset_id, token=hf_token)
print("✅ Chargement avec token réussi")
else:
print("⚠️ Tentative sans token...")
dataset = load_dataset(dataset_id)
print("✅ Chargement sans token réussi")
# Test 2: Exploration de la structure
print(f"📊 Splits disponibles: {list(dataset.keys())}")
if 'train' in dataset:
train_data = dataset['train']
print(f"📈 Nombre d'enregistrements dans 'train': {len(train_data)}")
# Conversion en DataFrame pour inspection
df = train_data.to_pandas()
print(f"📝 Colonnes disponibles ({len(df.columns)}): {list(df.columns)}")
print(f"📏 Forme des données: {df.shape}")
# Vérifier les colonnes importantes
important_cols = ['millesime', 'familleprod', 'produit', 'quantitetot', 'numparcell']
available_important = [col for col in important_cols if col in df.columns]
print(f"🎯 Colonnes importantes trouvées: {available_important}")
# Statistiques rapides
if 'millesime' in df.columns:
print(f"📅 Années disponibles: {sorted(df['millesime'].unique())}")
if 'familleprod' in df.columns:
print(f"🧪 Types de produits: {df['familleprod'].value_counts().head()}")
print("✅ Test de connexion réussi !")
else:
print("⚠️ Pas de split 'train' trouvé")
except Exception as e:
print(f"❌ Erreur lors du test: {e}")
print()
print("💡 Solutions possibles:")
print("1. Vérifiez que le dataset existe: https://huggingface.co/datasets/HackathonCRA/2024")
print("2. Configurez votre token HF: export HF_TOKEN='votre_token'")
print("3. Vérifiez vos permissions d'accès au dataset")