Gradio / app.py
Renday's picture
Update app.py
8da966f verified
import os
import io
import numpy as np
import gradio as gr
import soundfile as sf
from huggingface_hub import InferenceClient
HF_TOKEN = os.getenv("HF_TOKEN")
if not HF_TOKEN:
raise RuntimeError(
"HF_TOKEN fehlt! Bitte in den Space Settings โ†’ Secrets eintragen."
)
client = InferenceClient(model="facebook/musicgen-small", token=HF_TOKEN)
def generate_music(prompt: str):
if not prompt.strip():
return None
audio_bytes = client.text_to_audio(prompt)
audio_data, samplerate = sf.read(io.BytesIO(audio_bytes))
audio_data = np.array(audio_data, dtype=np.float32)
return samplerate, audio_data
demo = gr.Interface(
fn=generate_music,
inputs=gr.Textbox(label="Beschreibe deine Musik", placeholder="z.B. Lo-fi chill"),
outputs=gr.Audio(label="Generierte Musik", type="numpy"),
title="๐ŸŽถ KI Musik Generator",
description="Musik wird mit MusicGen generiert. Dauer ca. 30โ€“60 Sekunden (GPU empfohlen)."
)
if __name__ == "__main__":
demo.launch()