b3h-young123 commited on
Commit
1c5cd1c
·
verified ·
1 Parent(s): 264f108

Add files using upload-large-folder tool

Browse files
ofai-flx-logo/.gitattributes ADDED
@@ -0,0 +1,35 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ *.7z filter=lfs diff=lfs merge=lfs -text
2
+ *.arrow filter=lfs diff=lfs merge=lfs -text
3
+ *.bin filter=lfs diff=lfs merge=lfs -text
4
+ *.bz2 filter=lfs diff=lfs merge=lfs -text
5
+ *.ckpt filter=lfs diff=lfs merge=lfs -text
6
+ *.ftz filter=lfs diff=lfs merge=lfs -text
7
+ *.gz filter=lfs diff=lfs merge=lfs -text
8
+ *.h5 filter=lfs diff=lfs merge=lfs -text
9
+ *.joblib filter=lfs diff=lfs merge=lfs -text
10
+ *.lfs.* filter=lfs diff=lfs merge=lfs -text
11
+ *.mlmodel filter=lfs diff=lfs merge=lfs -text
12
+ *.model filter=lfs diff=lfs merge=lfs -text
13
+ *.msgpack filter=lfs diff=lfs merge=lfs -text
14
+ *.npy filter=lfs diff=lfs merge=lfs -text
15
+ *.npz filter=lfs diff=lfs merge=lfs -text
16
+ *.onnx filter=lfs diff=lfs merge=lfs -text
17
+ *.ot filter=lfs diff=lfs merge=lfs -text
18
+ *.parquet filter=lfs diff=lfs merge=lfs -text
19
+ *.pb filter=lfs diff=lfs merge=lfs -text
20
+ *.pickle filter=lfs diff=lfs merge=lfs -text
21
+ *.pkl filter=lfs diff=lfs merge=lfs -text
22
+ *.pt filter=lfs diff=lfs merge=lfs -text
23
+ *.pth filter=lfs diff=lfs merge=lfs -text
24
+ *.rar filter=lfs diff=lfs merge=lfs -text
25
+ *.safetensors filter=lfs diff=lfs merge=lfs -text
26
+ saved_model/**/* filter=lfs diff=lfs merge=lfs -text
27
+ *.tar.* filter=lfs diff=lfs merge=lfs -text
28
+ *.tar filter=lfs diff=lfs merge=lfs -text
29
+ *.tflite filter=lfs diff=lfs merge=lfs -text
30
+ *.tgz filter=lfs diff=lfs merge=lfs -text
31
+ *.wasm filter=lfs diff=lfs merge=lfs -text
32
+ *.xz filter=lfs diff=lfs merge=lfs -text
33
+ *.zip filter=lfs diff=lfs merge=lfs -text
34
+ *.zst filter=lfs diff=lfs merge=lfs -text
35
+ *tfevents* filter=lfs diff=lfs merge=lfs -text
ofai-flx-logo/README.md ADDED
@@ -0,0 +1,11 @@
 
 
 
 
 
 
 
 
 
 
 
 
1
+ ---
2
+ title: LOGO Generator
3
+ emoji: 🔆
4
+ colorFrom: gray
5
+ colorTo: purple
6
+ sdk: gradio
7
+ sdk_version: 5.12.0
8
+ app_file: app.py
9
+ pinned: false
10
+ license: apache-2.0
11
+ ---
ofai-flx-logo/app.py ADDED
@@ -0,0 +1,155 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ import gradio as gr
2
+ import numpy as np
3
+ import random
4
+ import spaces
5
+ import torch
6
+ from diffusers import DiffusionPipeline
7
+ from transformers import pipeline
8
+
9
+ # Translation pipeline and hardware settings
10
+ device = "cuda" if torch.cuda.is_available() else "cpu"
11
+ translator = pipeline("translation", model="Helsinki-NLP/opus-mt-ko-en", device=device)
12
+ dtype = torch.bfloat16
13
+ pipe = DiffusionPipeline.from_pretrained("black-forest-labs/FLUX.1-schnell", torch_dtype=dtype).to(device)
14
+
15
+ MAX_SEED = np.iinfo(np.int32).max
16
+ MAX_IMAGE_SIZE = 2048
17
+
18
+ @spaces.GPU()
19
+ def infer(prompt, seed=42, randomize_seed=False, width=1024, height=1024, num_inference_steps=4, progress=gr.Progress(track_tqdm=True)):
20
+ if randomize_seed:
21
+ seed = random.randint(0, MAX_SEED)
22
+ generator = torch.Generator().manual_seed(seed)
23
+
24
+ # Korean input detection and translation
25
+ if any('\uAC00' <= char <= '\uD7A3' for char in prompt):
26
+ print("Translating Korean prompt...")
27
+ translated_prompt = translator(prompt, max_length=512)[0]['translation_text']
28
+ print("Translated prompt:", translated_prompt)
29
+ prompt = translated_prompt
30
+
31
+ image = pipe(
32
+ prompt = prompt,
33
+ width = width,
34
+ height = height,
35
+ num_inference_steps = num_inference_steps,
36
+ generator = generator,
37
+ guidance_scale=0.0
38
+ ).images[0]
39
+
40
+ return image, seed
41
+
42
+ examples = [
43
+ ["[한글] [스타일: 모던] [색상: 빨강과 검정] [컨셉: 식당] [텍스트: '맛있는집'] [배경: 심플]"],
44
+ ["[Style: Corporate] [Color: Navy and Silver] [Concept: Finance] [Text: 'TRUST'] [Background: Professional]"],
45
+ ["[Style: Dynamic] [Color: Purple and Orange] [Concept: Creative Agency] [Text: 'SPARK'] [Background: Abstract]"],
46
+ ["[Style: Minimalist] [Color: Red and White] [Concept: Sports] [Text: 'POWER'] [Background: Clean]"]
47
+ ]
48
+
49
+ css = """
50
+ footer {visibility: hidden}
51
+ .container {max-width: 850px; margin: auto; padding: 20px}
52
+ .title {text-align: center; margin-bottom: 20px}
53
+ #prompt {min-height: 50px}
54
+ #result {min-height: 400px}
55
+ .gr-box {border-radius: 10px; border: 1px solid #ddd}
56
+ """
57
+
58
+
59
+ def create_snow_effect():
60
+ # CSS 스타일 정의
61
+ snow_css = """
62
+ @keyframes snowfall {
63
+ 0% {
64
+ transform: translateY(-10vh) translateX(0);
65
+ opacity: 1;
66
+ }
67
+ 100% {
68
+ transform: translateY(100vh) translateX(100px);
69
+ opacity: 0.3;
70
+ }
71
+ }
72
+ .snowflake {
73
+ position: fixed;
74
+ color: white;
75
+ font-size: 1.5em;
76
+ user-select: none;
77
+ z-index: 1000;
78
+ pointer-events: none;
79
+ animation: snowfall linear infinite;
80
+ }
81
+ """
82
+
83
+ # JavaScript 코드 정의
84
+ snow_js = """
85
+ function createSnowflake() {
86
+ const snowflake = document.createElement('div');
87
+ snowflake.innerHTML = '❄';
88
+ snowflake.className = 'snowflake';
89
+ snowflake.style.left = Math.random() * 100 + 'vw';
90
+ snowflake.style.animationDuration = Math.random() * 3 + 2 + 's';
91
+ snowflake.style.opacity = Math.random();
92
+ document.body.appendChild(snowflake);
93
+
94
+ setTimeout(() => {
95
+ snowflake.remove();
96
+ }, 5000);
97
+ }
98
+ setInterval(createSnowflake, 200);
99
+ """
100
+
101
+ # CSS와 JavaScript를 결합한 HTML
102
+ snow_html = f"""
103
+ <style>
104
+ {snow_css}
105
+ </style>
106
+ <script>
107
+ {snow_js}
108
+ </script>
109
+ """
110
+
111
+ return gr.HTML(snow_html)
112
+
113
+
114
+ with gr.Blocks(theme="Yntec/HaleyCH_Theme_Orange", css=css) as demo:
115
+ create_snow_effect()
116
+ gr.HTML("<h1 class='title'>LOGO Generator AI</h1>")
117
+
118
+ with gr.Column(elem_id="container"):
119
+ with gr.Group():
120
+ prompt = gr.Text(
121
+ label="PROMPT",
122
+ placeholder="Text input Prompt (Korean input supported)",
123
+ lines=2
124
+ )
125
+ run_button = gr.Button("Generate Logo", variant="primary")
126
+
127
+ with gr.Row():
128
+ result = gr.Image(label="Generated Logo", show_label=True)
129
+
130
+ with gr.Accordion("Advanced Settings", open=False):
131
+ with gr.Row():
132
+ seed = gr.Slider(label="Seed", minimum=0, maximum=MAX_SEED, step=1, value=0)
133
+ randomize_seed = gr.Checkbox(label="Random Seed", value=True)
134
+
135
+ with gr.Row():
136
+ width = gr.Slider(label="Width", minimum=256, maximum=MAX_IMAGE_SIZE, step=32, value=512)
137
+ height = gr.Slider(label="Height", minimum=256, maximum=MAX_IMAGE_SIZE, step=32, value=512)
138
+ num_inference_steps = gr.Slider(label="Quality", minimum=1, maximum=50, step=1, value=4)
139
+
140
+ gr.Examples(
141
+ examples=examples,
142
+ fn=infer,
143
+ inputs=[prompt],
144
+ outputs=[result, seed],
145
+ cache_examples="lazy"
146
+ )
147
+
148
+ gr.on(
149
+ triggers=[run_button.click, prompt.submit],
150
+ fn=infer,
151
+ inputs=[prompt, seed, randomize_seed, width, height, num_inference_steps],
152
+ outputs=[result, seed]
153
+ )
154
+
155
+ demo.launch()
ofai-flx-logo/requirements.txt ADDED
@@ -0,0 +1,9 @@
 
 
 
 
 
 
 
 
 
 
1
+ accelerate
2
+ git+https://github.com/huggingface/diffusers.git
3
+ invisible_watermark
4
+ torch
5
+ transformers==4.42.4
6
+ xformers
7
+ sentencepiece
8
+ sacremoses
9
+ transformers