| import gradio as gr |
| from train_interface import start_training |
| import os |
| from huggingface_hub import login |
| import json |
| from connect_huggingface import setup_huggingface |
| import sys |
|
|
| print("=== Démarrage de l'application ===") |
| print(f"Python version: {sys.version}") |
| print(f"Working directory: {os.getcwd()}") |
|
|
| |
| print("\nChargement de la configuration...") |
| with open('config.json', 'r') as f: |
| config = json.load(f) |
|
|
| def create_interface(): |
| |
| print("\nConfiguration de Hugging Face...") |
| if not setup_huggingface(): |
| print("Erreur : Impossible de configurer Hugging Face") |
| |
| |
| demo = gr.Interface( |
| fn=start_training, |
| inputs=[], |
| outputs=[ |
| gr.Textbox( |
| label="Statut de l'entraînement", |
| lines=10, |
| interactive=False |
| ), |
| gr.Markdown( |
| """ |
| ### Logs d'entraînement |
| Les logs seront affichés ici pendant l'entraînement. |
| """ |
| ) |
| ], |
| title="AUTO Training Space", |
| description=f""" |
| ### Configuration actuelle |
| - **Modèle** : {config['model']['name']} |
| - **Dataset** : {config['dataset']['name']} |
| - **Nombre d'époques** : {config['training']['epochs']} |
| |
| ### Format du dataset |
| Le dataset contient des exemples structurés avec : |
| - Une instruction (question utilisateur) |
| - Une entrée (contexte optionnel) |
| - Une sortie (réponse avec recommandations) |
| |
| ### Optimisations |
| - Utilisation de BF16 pour une meilleure performance |
| - Gestion optimisée des données avec pandas |
| """, |
| theme="huggingface", |
| allow_flagging="never" |
| ) |
|
|
| return demo |
|
|
| if __name__ == "__main__": |
| print("\nCréation de l'interface...") |
| demo = create_interface() |
|
|
| print("\nLancement de l'application...") |
| demo.launch( |
| server_name="0.0.0.0", |
| server_port=7860, |
| show_api=False |
| ) |
|
|