adel67460 commited on
Commit
6176ea5
·
verified ·
1 Parent(s): a65e5da

Upload connect_huggingface.py with huggingface_hub

Browse files
Files changed (1) hide show
  1. connect_huggingface.py +88 -0
connect_huggingface.py ADDED
@@ -0,0 +1,88 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ from dotenv import load_dotenv
2
+ import os
3
+ from huggingface_hub import login, HfApi
4
+ import sys
5
+
6
+ def setup_huggingface():
7
+ """Configure l'authentification Hugging Face."""
8
+ try:
9
+ print("=== Début de la configuration Hugging Face ===")
10
+ print(f"Python version: {sys.version}")
11
+ print(f"Working directory: {os.getcwd()}")
12
+
13
+ # Charger les variables d'environnement depuis .env
14
+ load_dotenv(verbose=True, override=True)
15
+ print("Variables d'environnement chargées depuis .env")
16
+
17
+ # Récupérer le token depuis les variables d'environnement
18
+ print("\nRecherche du token...")
19
+
20
+ # Liste des noms possibles pour le token
21
+ token_names = ["HF_TOKEN", "HUGGINGFACE_API_TOKEN", "HUGGINGFACE_TOKEN"]
22
+
23
+ # Afficher toutes les variables d'environnement liées à Hugging Face
24
+ env_vars = {k: v if k != "HF_TOKEN" else f"{v[:4]}...{v[-4:]}" for k, v in os.environ.items()
25
+ if k.startswith("HF") or "HUGGING" in k}
26
+ print("\nVariables d'environnement disponibles :")
27
+ for k, v in env_vars.items():
28
+ print(f"- {k}: {v}")
29
+
30
+ # Essayer de récupérer le token
31
+ hf_token = None
32
+ for name in token_names:
33
+ value = os.environ.get(name)
34
+ if value:
35
+ print(f"\nToken trouvé dans {name}")
36
+ if len(value.strip()) > 0:
37
+ hf_token = value.strip()
38
+ break
39
+ else:
40
+ print(f"Token trouvé dans {name} mais vide")
41
+ else:
42
+ print(f"Token non trouvé dans {name}")
43
+
44
+ if not hf_token:
45
+ print("\nErreur : Token Hugging Face non trouvé ou vide dans les variables d'environnement")
46
+ return False
47
+
48
+ print(f"\nToken trouvé (longueur: {len(hf_token)})")
49
+ print(f"Début du token : {hf_token[:4]}...")
50
+ print(f"Fin du token : ...{hf_token[-4:]}")
51
+
52
+ # Configurer le token comme HF_TOKEN
53
+ os.environ["HF_TOKEN"] = hf_token
54
+ print("Token configuré comme HF_TOKEN")
55
+
56
+ # Se connecter à Hugging Face
57
+ print("\nTentative de connexion à Hugging Face...")
58
+ try:
59
+ login(token=hf_token, add_to_git_credential=True)
60
+ print("Login réussi")
61
+ except Exception as e:
62
+ print(f"Erreur lors du login : {str(e)}")
63
+ raise
64
+
65
+ # Vérifier la connexion
66
+ print("\nVérification de la connexion...")
67
+ try:
68
+ api = HfApi()
69
+ user_info = api.whoami()
70
+ print(f"Connecté avec succès en tant que : {user_info['name']}")
71
+ print(f"Type de compte : {user_info.get('account_type', 'inconnu')}")
72
+ print(f"Organisations : {', '.join(user_info.get('orgs', []))}")
73
+ except Exception as e:
74
+ print(f"Erreur lors de la vérification de la connexion : {str(e)}")
75
+ raise
76
+
77
+ print("\n=== Configuration Hugging Face terminée avec succès ===")
78
+ return True
79
+
80
+ except Exception as e:
81
+ print(f"\nErreur lors de la configuration Hugging Face : {str(e)}")
82
+ import traceback
83
+ print("\nTrace complète :")
84
+ print(traceback.format_exc())
85
+ return False
86
+
87
+ if __name__ == "__main__":
88
+ setup_huggingface()