MonitorKarma commited on
Commit
6762b07
·
verified ·
1 Parent(s): e6cb874

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +76 -27
app.py CHANGED
@@ -1,35 +1,84 @@
1
- import gradio as gr
2
- import requests
3
 
4
 
5
- # Функция, которая будет вызываться при нажатии кнопки
6
- def generate_meme(topic):
7
- # 1. Генерация текста через API (для мастер-класса можно имитировать)
8
- # В реальности здесь был бы вызов API Qwen/DeepSeek
9
- # meme_text = f"Когда на уроке начинают объяснять {topic}: \n *мозг отключается*"
10
- meme_text = "Фотосинтез — это когда ты пытаешься взять энергию от солнца, но просыпаешься только к обеду"
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
11
 
12
- # 2. Используем заранее заготовленную картинку или шаблон
13
- image_url = "https://huggingface.co/datasets/MonitorKarma/school-meme-templates/resolve/main/3.jpg" # Ссылку меняем на свою
14
 
15
- # 3. Возвращаем результат (текст и ссылку на картинку)
16
- return meme_text, image_url
17
 
18
- # Создаем простой интерфейс
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
19
  with gr.Blocks() as demo:
20
- gr.Markdown("# 🚀 Генератор школьных мемов v1.0")
21
- topic_input = gr.Textbox(label="Введи скучную тему урока")
22
- generate_btn = gr.Button("Сгенерировать мем!")
23
- # text_output = gr.Textbox(label="Твой мем:")
24
- # image_output = gr.Image(label="Шаблон для мема")
25
- image_output = gr.Image(
26
- label="🖼️ Шаблон мема",
27
- height=400, # Максимальная высота
28
- # width не указываем, чтобы сохранялись пропорции
29
- )
30
- # image_output = gr.Image(label="🖼️ Шаблон мема", elem_classes=["image-container"])
31
- text_output = gr.Textbox(label="📄 Текст для мема:", lines=5, elem_classes=["text-output"])
32
-
33
- generate_btn.click(fn=generate_meme, inputs=topic_input, outputs=[text_output, image_output])
 
 
 
 
 
34
 
35
  demo.launch()
 
1
+ # import gradio as gr
2
+ # import requests
3
 
4
 
5
+ # # Функция, которая будет вызываться при нажатии кнопки
6
+ # def generate_meme(topic):
7
+ # # 1. Генерация текста через API (для мастер-класса можно имитировать)
8
+ # # В реальности здесь был бы вызов API Qwen/DeepSeek
9
+ # # meme_text = f"Когда на уроке начинают объяснять {topic}: \n *мозг отключается*"
10
+ # meme_text = "Фотосинтез — это когда ты пытаешься взять энергию от солнца, но просыпаешься только к обеду"
11
+
12
+ # # 2. Используем заранее заготовленную картинку или шаблон
13
+ # image_url = "https://huggingface.co/datasets/MonitorKarma/school-meme-templates/resolve/main/3.jpg" # Ссылку меняем на свою
14
+
15
+ # # 3. Возвращаем результат (текст и ссылку на картинку)
16
+ # return meme_text, image_url
17
+
18
+ # # Создаем простой интерфейс
19
+ # with gr.Blocks() as demo:
20
+ # gr.Markdown("# 🚀 Генератор школьных мемов v1.0")
21
+ # topic_input = gr.Textbox(label="Введи скучную тему урока")
22
+ # generate_btn = gr.Button("Сгенерировать мем!")
23
+ # image_output = gr.Image(
24
+ # label="🖼️ Шаблон мема",
25
+ # height=400, # Максимальная высота
26
+ # )
27
+ # text_output = gr.Textbox(label="📄 Текст для мема:", lines=5, elem_classes=["text-output"])
28
+
29
+ # generate_btn.click(fn=generate_meme, inputs=topic_input, outputs=[text_output, image_output])
30
 
31
+ # demo.launch()
 
32
 
 
 
33
 
34
+
35
+ import gradio as gr
36
+ import random
37
+
38
+ # Ваши 15-20 шаблонов
39
+ MEME_TEMPLATES = [
40
+ "https://huggingface.co/datasets/MonitorKarma/school-meme-templates/resolve/main/1.jpeg",
41
+ "https://huggingface.co/datasets/MonitorKarma/school-meme-templates/resolve/main/2.jpeg",
42
+ "https://huggingface.co/datasets/MonitorKarma/school-meme-templates/resolve/main/3.jpeg",
43
+ # ... добавьте остальные
44
+ ]
45
+
46
+ def generate_meme(topic):
47
+ # 1. Генерация текста (пока заглушка)
48
+ upper_text = f"Когда на уроке {topic}:"
49
+ lower_text = "Твой мозг: *404 Not Found*"
50
+
51
+ # 2. Выбор случайного шаблона
52
+ template_url = random.choice(MEME_TEMPLATES)
53
+
54
+ # 3. Формируем результат
55
+ result = {
56
+ "upper_text": upper_text,
57
+ "lower_text": lower_text,
58
+ "template_url": template_url
59
+ }
60
+
61
+ return result
62
+
63
  with gr.Blocks() as demo:
64
+ gr.Markdown("# 🎯 Генератор школьных мемов")
65
+
66
+ with gr.Row():
67
+ with gr.Column():
68
+ topic = gr.Textbox(label="Введи тему урока",
69
+ placeholder="например: митоз, интегралы, ВОВ...")
70
+ btn = gr.Button("Создать мем! 🚀")
71
+
72
+ with gr.Column():
73
+ upper = gr.Textbox(label="Верхняя надпись")
74
+ lower = gr.Textbox(label="Нижняя надпись")
75
+ image_output = gr.Image(
76
+ label="🖼️ Шаблон мема",
77
+ height=400, # Максимальная высота
78
+ )
79
+
80
+
81
+ btn.click(fn=generate_meme, inputs=topic,
82
+ outputs=[upper, lower, image_output])
83
 
84
  demo.launch()