import os import gradio as gr from pyannote.audio import Pipeline # קרא את טוקן הגישה ממשתנה הסביבה hf_auth_token = os.getenv("HF_AUTH_TOKEN") if not hf_auth_token: raise ValueError("The environment variable 'HF_AUTH_TOKEN' is not set. Please set it in the Space.") # טען את המודל של pyannote עם טוקן הגישה pipeline = Pipeline.from_pretrained( "pyannote/speaker-diarization", use_auth_token=hf_auth_token ) # פונקציה לעיבוד קובץ אודיו def diarize_audio(audio_path): try: # בצע חלוקת דוברים עם pyannote diarization = pipeline(audio_path) results = [] for turn, _, speaker in diarization.itertracks(yield_label=True): results.append(f"{turn.start:.1f}s - {turn.end:.1f}s: {speaker}") return "\n".join(results) except Exception as e: return f"Error processing audio: {str(e)}" # הגדרת ממשק Gradio interface = gr.Interface( fn=diarize_audio, inputs=gr.Audio(type="filepath"), # שימוש ב-type="filepath" outputs="text", title="Speaker Diarization", description="Upload an audio file to perform speaker diarization." ) # הפעלת היישום interface.launch()