Nikolaygod777 commited on
Commit
73c0be0
·
verified ·
1 Parent(s): d7707de

Create app.py

Browse files
Files changed (1) hide show
  1. app.py +50 -0
app.py ADDED
@@ -0,0 +1,50 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ # Устанавливаем необходимые библиотеки
2
+ !pip install gradio diffusers torch transformers accelerate scipy numpy librosa
3
+
4
+ # Импортируем библиотеки
5
+ import gradio as gr
6
+ import torch
7
+ from diffusers import StableVideoDiffusionPipeline
8
+ from transformers import MusicgenForConditionalGeneration, MusicgenProcessor
9
+
10
+ # Загрузка модели для генерации видео (Stable Video Diffusion)
11
+ device = "cuda" if torch.cuda.is_available() else "cpu"
12
+ video_pipe = StableVideoDiffusionPipeline.from_pretrained(
13
+ "stabilityai/stable-video-diffusion-img2vid",
14
+ torch_dtype=torch.float16 if device == "cuda" else torch.float32
15
+ ).to(device)
16
+
17
+ # Загрузка модели для генерации музыки (MusicGen)
18
+ music_model = MusicgenForConditionalGeneration.from_pretrained("facebook/musicgen-small")
19
+ music_processor = MusicgenProcessor.from_pretrained("facebook/musicgen-small")
20
+
21
+ # Функция генерации видео
22
+ def generate_video(prompt):
23
+ video_frames = video_pipe(prompt, num_inference_steps=25).frames
24
+ return video_frames
25
+
26
+ # Функция генерации музыки
27
+ def generate_music(prompt):
28
+ inputs = music_processor(prompt, return_tensors="pt")
29
+ audio_output = music_model.generate(**inputs)
30
+ return audio_output
31
+
32
+ # Интерфейс Gradio
33
+ with gr.Blocks() as demo:
34
+ gr.Markdown("# OnlyReels.AI 🎥🎵")
35
+
36
+ with gr.Row():
37
+ prompt_input = gr.Textbox(label="Введите описание видео и музыки", placeholder="Пример: Киберпанк-город ночью, синтезаторная музыка")
38
+
39
+ with gr.Row():
40
+ btn_video = gr.Button("🎬 Сгенерировать видео")
41
+ btn_music = gr.Button("🎵 Сгенерировать музыку")
42
+
43
+ video_output = gr.Video(label="Сгенерированное видео")
44
+ music_output = gr.Audio(label="Сгенерированная музыка")
45
+
46
+ btn_video.click(fn=generate_video, inputs=prompt_input, outputs=video_output)
47
+ btn_music.click(fn=generate_music, inputs=prompt_input, outputs=music_output)
48
+
49
+ # Запуск интерфейса
50
+ demo.launch(share=True)