Update app.py
Browse files
app.py
CHANGED
@@ -9,10 +9,6 @@ import random
|
|
9 |
import os
|
10 |
from huggingface_hub import InferenceClient
|
11 |
from fpdf import FPDF
|
12 |
-
from transformers import pipeline
|
13 |
-
import torch
|
14 |
-
from diffusers import StableDiffusionXLPipeline
|
15 |
-
import uuid
|
16 |
|
17 |
def setup_session():
|
18 |
try:
|
@@ -207,7 +203,6 @@ def get_title_prompt(category):
|
|
207 |
2. ๋๋ ๊ฐ์ฅ ์ฃผ๋ชฉ๋ฐ๋ ๋ง์ผํฐ์ด๋ฉฐ ๋ธ๋ก๊ทธ ๋ง์ผํ
์ ๋ฌธ๊ฐ์ด๋ค.
|
208 |
3. ํนํ ๋๋ '์ ๋ณด์ฑ(Informative)' ์ ๋ฌธ ๋ธ๋ก๊ทธ ๋ง์ผํ
์ ๋ฌธ๊ฐ์ด๋ค.
|
209 |
4. ์ ๋ณด ์ ๊ณต์ ์ด์ ์ ๋ง์ถ์ด ์์ฑํ๋ค.
|
210 |
-
|
211 |
##[๋ธ๋ก๊ทธ ์ ๋ชฉ ์์ฑ ๊ท์น]
|
212 |
1. ๋ธ๋ก๊ทธ ์ ๋ชฉ 10๊ฐ๋ฅผ ์์ฑํ๊ณ ์ ๋ชฉ 10๊ฐ๋ง ์ถ๋ ฅํ๋ผ.
|
213 |
2. ์ ๋ชฉ์ 40์ ์ด๋ด๋ก ์์ฑํ๋ผ.
|
@@ -223,7 +218,6 @@ def get_title_prompt(category):
|
|
223 |
2. ๋๋ ๊ฐ์ฅ ์ฃผ๋ชฉ๋ฐ๋ ๋ง์ผํฐ์ด๋ฉฐ ๋ธ๋ก๊ทธ ๋ง์ผํ
์ ๋ฌธ๊ฐ์ด๋ค.
|
224 |
3. ํนํ ๋๋ '๊ฑด๊ฐ, ์ํ ์ ๋ณด' ์ ๋ฌธ ๋ธ๋ก๊ทธ ๋ง์ผํฐ์ด๋ค.
|
225 |
4. ์ ํํ๊ณ ์ ๋ฌธ์ ์ธ ์ ๋ณด ์ ๊ณต์ ์ด์ ์ ๋ง์ถ์ด ์์ฑํ๋ค.
|
226 |
-
|
227 |
##[๋ธ๋ก๊ทธ ์ ๋ชฉ ์์ฑ ๊ท์น]
|
228 |
1. ๋ธ๋ก๊ทธ ์ ๋ชฉ 10๊ฐ๋ฅผ ์์ฑํ๊ณ ์ ๋ชฉ 10๊ฐ๋ง ์ถ๋ ฅํ๋ผ.
|
229 |
2. ์ ๋ชฉ์ 40์ ์ด๋ด๋ก ์์ฑํ๋ผ.
|
@@ -241,7 +235,6 @@ def get_outline_prompt(category):
|
|
241 |
2. ๋๋ ๊ฐ์ฅ ์ฃผ๋ชฉ๋ฐ๋ ๋ง์ผํฐ์ด๋ฉฐ ๋ธ๋ก๊ทธ ๋ง์ผํ
์ ๋ฌธ๊ฐ์ด๋ค.
|
242 |
3. ํนํ ๋๋ '์ ๋ณด์ฑ(Informative)' ์ ๋ฌธ ๋ธ๋ก๊ทธ ๋ง์ผํ
์ ๋ฌธ๊ฐ์ด๋ค.
|
243 |
4. ์ ๋ณด ์ ๊ณต์ ์ด์ ์ ๋ง์ถ์ด ์์ฑํ๋ค.
|
244 |
-
|
245 |
##[์์ฃผ์ ์์ฑ๊ท์น]
|
246 |
1. [๊ธฐ๋ณธ๊ท์น]์ ๊ธฐ๋ณธ ์ ์ฉํ๋ผ.
|
247 |
2. ๋ธ๋ก๊ทธ ๊ธ์ ์์ฑํ๊ธฐ ์ํ ์์ฃผ์ ๋ฅผ ์์ฑํ๋ผ.
|
@@ -251,7 +244,6 @@ def get_outline_prompt(category):
|
|
251 |
6. ๋
์๊ฐ ์ป๊ณ ์ ํ๋ ์ ๋ณด์ ํฅ๋ฏธ๋ก์ด ์ ๋ณด๋ฅผ ์ ๊ณตํ๋๋ก ์์ฃผ์ ๋ฅผ ์์ฑํ๋ผ.
|
252 |
7. ์์ฃผ์ ์ ๋ณธ๋ก ์ ๋ด์ฉ์ด ์ถฉ๋ถํ ์์ฑ๋ ์ ์๋ ์์ฃผ์ ๋ก ์ค์ ํ๋ผ.
|
253 |
8. ๋ฐ๋์ [์์ฃผ์ ๊ตฌ์ฑ]์ ๋ง๊ฒ ์ถ๋ ฅํ๋ผ.
|
254 |
-
|
255 |
##[์์ฃผ์ ๊ตฌ์ฑ]
|
256 |
1. ๋ฐ๋์ [๋์
๋ถ] - 1๊ฐ, [๋ณธ๋ก 1~5] - 5๊ฐ, [๊ฒฐ๋ก ] - 1๊ฐ๋ก ๊ตฌ์ฑํ์ฌ ์ถ๋ ฅํ๋ผ.
|
257 |
2. ๋ฐ๋์ [๋์
๋ถ]์ [๊ฒฐ๋ก ]์ ์ ๋ชฉ์ด ์ค๋ณต๋์ง ์๋๋ก ์์ฑํ๋ผ.
|
@@ -264,7 +256,6 @@ def get_outline_prompt(category):
|
|
264 |
2. ๋๋ ๊ฐ์ฅ ์ฃผ๋ชฉ๋ฐ๋ ๋ง์ผํฐ์ด๋ฉฐ ๋ธ๋ก๊ทธ ๋ง์ผํ
์ ๋ฌธ๊ฐ์ด๋ค.
|
265 |
3. ํนํ ๋๋ '๊ฑด๊ฐ, ์ํ ์ ๋ณด' ์ ๋ฌธ ๋ธ๋ก๊ทธ ๋ง์ผํฐ์ด๋ค.
|
266 |
4. ์ ํํ๊ณ ์ ๋ฌธ์ ์ธ ์ ๋ณด ์ ๊ณต์ ์ด์ ์ ๋ง์ถ์ด ์์ฑํ๋ค.
|
267 |
-
|
268 |
##[์์ฃผ์ ์์ฑ๊ท์น]
|
269 |
1. [๊ธฐ๋ณธ๊ท์น]์ ๊ธฐ๋ณธ ์ ์ฉํ๋ผ.
|
270 |
2. ๋ธ๋ก๊ทธ ๊ธ์ ์์ฑํ๊ธฐ ์ํ ์์ฃผ์ ๋ฅผ ์์ฑํ๋ผ.
|
@@ -274,7 +265,6 @@ def get_outline_prompt(category):
|
|
274 |
6. ๋
์๊ฐ ์ป๊ณ ์ ํ๋ ์ ํํ ์ ๋ณด์ ๊ฑด๊ฐํ ์ํ์ ์ ์งํ๋ ๋ฐ ํ์ํ ์ ๋ณด๋ฅผ ์ ๊ณตํ๋๋ก ์์ฃผ์ ๋ฅผ ์์ฑํ๋ผ.
|
275 |
7. ์์ฃผ์ ์ ๋ณธ๋ก ์ ๋ด์ฉ์ด ์ถฉ๋ถํ ์์ฑ๋ ์ ์๋ ์์ฃผ์ ๋ก ์ค์ ํ๋ผ.
|
276 |
8. ๋ฐ๋์ [์์ฃผ์ ๊ตฌ์ฑ]์ ๋ง์ถฐ ์์ฃผ์ ๋ง ์ถ๋ ฅํ๋ผ.
|
277 |
-
|
278 |
##[์์ฃผ์ ๊ตฌ์ฑ]
|
279 |
1. ๋ฐ๋์ [๋์
๋ถ] - 1๊ฐ, [๋ณธ๋ก 1~5] - 5๊ฐ, [๊ฒฐ๋ก ] - 1๊ฐ๋ก ๊ตฌ์ฑํ์ฌ ์ถ๋ ฅํ๋ผ.
|
280 |
2. ๋ฐ๋์ [๋์
๋ถ]์ [๊ฒฐ๋ก ]์ ์ ๋ชฉ์ด ์ค๋ณต๋์ง ์๋๋ก ์์ฑํ๋ผ.
|
@@ -289,7 +279,6 @@ def get_blog_post_prompt(category):
|
|
289 |
2. ๋๋ ๊ฐ์ฅ ์ฃผ๋ชฉ๋ฐ๋ ๋ง์ผํฐ์ด๋ฉฐ ๋ธ๋ก๊ทธ ๋ง์ผํ
์ ๋ฌธ๊ฐ์ด๋ค.
|
290 |
3. ํนํ ๋๋ '์ ๋ณด์ฑ(Informative)' ์ ๋ฌธ ๋ธ๋ก๊ทธ ๋ง์ผํ
์ ๋ฌธ๊ฐ์ด๋ค.
|
291 |
4. ์ ๋ณด ์ ๊ณต์ ์ด์ ์ ๋ง์ถ์ด ์์ฑํ๋ค.
|
292 |
-
|
293 |
##[ํ
์คํธ ์์ฑ ๊ท์น]
|
294 |
1. ๋ฐ๋์ ์
๋ ฅ๋ [์์ฃผ์ ]์ ๋ง๊ฒ ํ
์คํธ๋ฅผ ์์ฑํ๋ผ.
|
295 |
2. ์์ฃผ์ ์ [๋ณธ๋ก ] 5๊ฐ๋ฅผ ๊ฐ๊ฐ 300์ ์ด์์ผ๋ก ์์ฑํ๋ผ.
|
@@ -301,13 +290,11 @@ def get_blog_post_prompt(category):
|
|
301 |
8. ์ฃผ์ ์ ์ํฉ์ ๋ง๋ ์ ์ ํ ์ดํ๋ฅผ ์ ํํ๋ผ.
|
302 |
9. ํ๊ธ ์ดํ์ ๋์ด๋๋ ์ฝ๊ฒ ์์ฑํ๋ผ.
|
303 |
10. ์ ๋ ๋ฌธ์ฅ์ ๋์ '๋ต๋๋ค'๋ฅผ ์ฌ์ฉํ์ง ๋ง ๊ฒ.
|
304 |
-
|
305 |
###[์ ๋ณด์ฑ ๋ธ๋ก๊ทธ ์์ฑ ๊ท์น]
|
306 |
1. ๋
์๊ฐ ์ป๊ณ ์ ํ๋ ์ ์ฉํ ์ ๋ณด์ ํฅ๋ฏธ๋ก์ด ์ ๋ณด๋ฅผ ์ ๊ณตํ๋๋ก ์์ฑํ๋ผ.
|
307 |
2. ๋
์์ ๊ณต๊ฐ์ ์ด๋์ด๋ด๊ณ ๊ถ๊ธ์ฆ์ ํด๊ฒฐํ๋๋ก ์์ฑํ๋ผ.
|
308 |
3. ๋
์์ ๊ด์ฌ์ฌ๋ฅผ ์ถฉ์กฑ์ํค๋๋ก ์์ฑํ๋ผ.
|
309 |
4. ๋
์์๊ฒ ์ด๋์ด ๋๋ ์ ๋ณด๋ฅผ ์์ฑํ๋ผ.
|
310 |
-
|
311 |
##[์ ์ธ ๊ท์น]
|
312 |
1. ๋ฐ๋์ ๋น์์ด ๋ฐ ์์ค(expletive, abusive language, slang)์ ์ ์ธํ๋ผ.
|
313 |
2. ๋ฐ๋์ ์ฐธ๊ณ ๊ธ์ ๋งํฌ(URL)๋ ์ ์ธํ๋ผ.
|
@@ -323,7 +310,6 @@ def get_blog_post_prompt(category):
|
|
323 |
2. ๋๋ ๊ฐ์ฅ ์ฃผ๋ชฉ๋ฐ๋ ๋ง์ผํฐ์ด๋ฉฐ ๋ธ๋ก๊ทธ ๋ง์ผํ
์ ๋ฌธ๊ฐ์ด๋ค.
|
324 |
3. ํนํ ๋๋ '๊ฑด๊ฐ, ์ํ ์ ๋ณด' ์ ๋ฌธ ๋ธ๋ก๊ทธ ๋ง์ผํฐ์ด๋ค.
|
325 |
4. ์ ํํ๊ณ ์ ๋ฌธ์ ์ธ ์ ๋ณด ์ ๊ณต์ ์ด์ ์ ๋ง์ถ์ด ์์ฑํ๋ค.
|
326 |
-
|
327 |
##[ํ
์คํธ ์์ฑ ๊ท์น]
|
328 |
1. ๋ฐ๋์ ์
๋ ฅ๋ [์์ฃผ์ ]์ ๋ง์ถฐ์ ํ
์คํธ๋ฅผ ์์ฑํ๋ผ.
|
329 |
2. ๋ฐ๋์ ์
๋ ฅ๋ [์์ฃผ์ ]๋ ๋ณ๊ฒฝํ์ง ๋ง๊ณ ๊ทธ๋๋ก ์ถ๋ ฅํ๋ผ.
|
@@ -335,13 +321,11 @@ def get_blog_post_prompt(category):
|
|
335 |
7. ์ดํฌ๋ ์ ๊ณต๋ ์ฐธ๊ณ ๊ธ์ ์ดํฌ๋ฅผ ๋ฐ์ํ๋, '๊ฑด๊ฐ, ์ํ ์ ๋ณด' ์ ๋ฌธ ๋ธ๋ก๊ทธ ๋ง์ผํฐ๋ก์ ์์ฑํ๋ผ.
|
336 |
8. ์ ๋๋ก ์ฐธ๊ณ ๊ธ์ ํ๋ฌธ์ฅ ์ด์ ๊ทธ๋๋ก ์ถ๋ ฅํ์ง ๋ง ๊ฒ.
|
337 |
9. ์ฃผ์ ์ ์ํฉ์ ๋ง๋ ์ ์ ๏ฟฝ๏ฟฝ ์ดํ๋ฅผ ์ ํํ๋ผ.
|
338 |
-
|
339 |
###[์ ๋ณด์ฑ ๋ธ๋ก๊ทธ ์์ฑ ๊ท์น]
|
340 |
1. ๋
์๊ฐ ์ป๊ณ ์ ํ๋ ์ ํํ ์ ๋ณด์ ๊ฑด๊ฐํ ์ํ์ ์ ์งํ๋ ๋ฐ ํ์ํ ์ ๋ณด๋ฅผ ์ ๊ณตํ๋๋ก ์์ฃผ์ ์ ๋ง๊ฒ ๋ด์ฉ์ ์์ฑํ๋ผ.
|
341 |
2. ๋
์์ ๊ณต๊ฐ์ ์ด๋์ด๋ด๊ณ ๊ถ๊ธ์ฆ์ ํด๊ฒฐํ๋๋ก ์์ฑํ๋ผ.
|
342 |
3. ๋
์์ ๊ด์ฌ์ฌ๋ฅผ ์ถฉ์กฑ์ํค๋๋ก ์์ฑํ๋ผ.
|
343 |
4. ๋
์์๊ฒ ์ด๋์ด ๋๋ ์ ๋ณด๋ฅผ ์์ฑํ๋ผ.
|
344 |
-
|
345 |
##[์ ์ธ ๊ท์น]
|
346 |
1. ๋ฐ๋์ ์ฐธ๊ณ ๊ธ์ ๋งํฌ(URL)๋ ์ ์ธํ๋ผ.
|
347 |
2. ์ฐธ๊ณ ๊ธ์์ '๋งํฌ๋ฅผ ํ์ธํด์ฃผ์ธ์'์ ๊ฐ์ ๋งํฌ ์ด๋์ ๋ฌธ๊ตฌ๋ ์ ์ธํ๋ผ.
|
@@ -510,60 +494,44 @@ def update_prompts_and_description(category, style):
|
|
510 |
style_description = get_style_description(style)
|
511 |
return style_description
|
512 |
|
513 |
-
translator = pipeline("translation", model="Helsinki-NLP/opus-mt-ko-en")
|
514 |
-
|
515 |
-
device = torch.device("cuda:0" if torch.cuda.is_available() else "cpu")
|
516 |
|
517 |
-
|
518 |
-
|
519 |
-
|
520 |
-
|
521 |
-
add_watermarker=False,
|
522 |
-
variant="fp16"
|
523 |
-
).to(device)
|
524 |
-
|
525 |
-
def generate_image(prompt: str):
|
526 |
-
# ํ๊ธ ์
๋ ฅ ๊ฐ์ง ๋ฐ ๋ฒ์ญ
|
527 |
-
if any('\uac00' <= char <= '\ud7a3' for char in prompt):
|
528 |
-
translated = translator(prompt, max_length=512)
|
529 |
-
prompt = translated[0]['translation_text']
|
530 |
|
531 |
-
#
|
532 |
-
|
533 |
|
534 |
-
#
|
535 |
-
|
536 |
-
|
537 |
-
|
538 |
-
guidance_scale = 6
|
539 |
-
num_inference_steps = 100
|
540 |
-
seed = random.randint(0, 2**32 - 1)
|
541 |
-
generator = torch.Generator().manual_seed(seed)
|
542 |
|
543 |
-
|
544 |
-
|
545 |
-
|
546 |
-
|
547 |
-
|
548 |
-
|
549 |
-
|
550 |
-
|
551 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
552 |
|
553 |
-
unique_name = str(uuid.uuid4()) + ".png"
|
554 |
-
image.save(unique_name)
|
555 |
-
return unique_name
|
556 |
-
|
557 |
-
def generate_images(blog_post):
|
558 |
-
images = []
|
559 |
-
lines = blog_post.split('\n')
|
560 |
-
for i in range(5):
|
561 |
-
if i < len(lines):
|
562 |
-
prompt = lines[i]
|
563 |
-
else:
|
564 |
-
prompt = random.choice(lines)
|
565 |
-
image_path = generate_image(prompt)
|
566 |
-
images.append(image_path)
|
567 |
return images
|
568 |
|
569 |
|
@@ -619,14 +587,6 @@ with gr.Blocks() as demo:
|
|
619 |
outputs=[references1, references2, references3, outline_result, outline_token_output, output, token_output]
|
620 |
)
|
621 |
|
622 |
-
save_pdf_btn = gr.Button("PDF๋ก ์ ์ฅํ๊ธฐ")
|
623 |
-
pdf_output = gr.File(label="์์ฑ๋ PDF ํ์ผ")
|
624 |
-
|
625 |
-
save_pdf_btn.click(fn=save_content_to_pdf, inputs=[output], outputs=[pdf_output])
|
626 |
-
|
627 |
-
category.change(fn=update_prompts_and_description, inputs=[category, style], outputs=[style_description])
|
628 |
-
style.change(fn=update_prompts_and_description, inputs=[category, style], outputs=[style_description])
|
629 |
-
|
630 |
# ์ด๋ฏธ์ง ์์ฑ ๋ฒํผ ๋ฐ ์ถ๋ ฅ ์ถ๊ฐ
|
631 |
generate_images_btn = gr.Button("์ด๋ฏธ์ง ์์ฑํ๊ธฐ")
|
632 |
image_outputs = [gr.Image(label=f"์์ฑ๋ ์ด๋ฏธ์ง {i+1}") for i in range(5)]
|
@@ -635,8 +595,8 @@ with gr.Blocks() as demo:
|
|
635 |
fn=generate_images,
|
636 |
inputs=[output],
|
637 |
outputs=image_outputs
|
638 |
-
)
|
639 |
-
|
640 |
save_pdf_btn = gr.Button("PDF๋ก ์ ์ฅํ๊ธฐ")
|
641 |
pdf_output = gr.File(label="์์ฑ๋ PDF ํ์ผ")
|
642 |
|
|
|
9 |
import os
|
10 |
from huggingface_hub import InferenceClient
|
11 |
from fpdf import FPDF
|
|
|
|
|
|
|
|
|
12 |
|
13 |
def setup_session():
|
14 |
try:
|
|
|
203 |
2. ๋๋ ๊ฐ์ฅ ์ฃผ๋ชฉ๋ฐ๋ ๋ง์ผํฐ์ด๋ฉฐ ๋ธ๋ก๊ทธ ๋ง์ผํ
์ ๋ฌธ๊ฐ์ด๋ค.
|
204 |
3. ํนํ ๋๋ '์ ๋ณด์ฑ(Informative)' ์ ๋ฌธ ๋ธ๋ก๊ทธ ๋ง์ผํ
์ ๋ฌธ๊ฐ์ด๋ค.
|
205 |
4. ์ ๋ณด ์ ๊ณต์ ์ด์ ์ ๋ง์ถ์ด ์์ฑํ๋ค.
|
|
|
206 |
##[๋ธ๋ก๊ทธ ์ ๋ชฉ ์์ฑ ๊ท์น]
|
207 |
1. ๋ธ๋ก๊ทธ ์ ๋ชฉ 10๊ฐ๋ฅผ ์์ฑํ๊ณ ์ ๋ชฉ 10๊ฐ๋ง ์ถ๋ ฅํ๋ผ.
|
208 |
2. ์ ๋ชฉ์ 40์ ์ด๋ด๋ก ์์ฑํ๋ผ.
|
|
|
218 |
2. ๋๋ ๊ฐ์ฅ ์ฃผ๋ชฉ๋ฐ๋ ๋ง์ผํฐ์ด๋ฉฐ ๋ธ๋ก๊ทธ ๋ง์ผํ
์ ๋ฌธ๊ฐ์ด๋ค.
|
219 |
3. ํนํ ๋๋ '๊ฑด๊ฐ, ์ํ ์ ๋ณด' ์ ๋ฌธ ๋ธ๋ก๊ทธ ๋ง์ผํฐ์ด๋ค.
|
220 |
4. ์ ํํ๊ณ ์ ๋ฌธ์ ์ธ ์ ๋ณด ์ ๊ณต์ ์ด์ ์ ๋ง์ถ์ด ์์ฑํ๋ค.
|
|
|
221 |
##[๋ธ๋ก๊ทธ ์ ๋ชฉ ์์ฑ ๊ท์น]
|
222 |
1. ๋ธ๋ก๊ทธ ์ ๋ชฉ 10๊ฐ๋ฅผ ์์ฑํ๊ณ ์ ๋ชฉ 10๊ฐ๋ง ์ถ๋ ฅํ๋ผ.
|
223 |
2. ์ ๋ชฉ์ 40์ ์ด๋ด๋ก ์์ฑํ๋ผ.
|
|
|
235 |
2. ๋๋ ๊ฐ์ฅ ์ฃผ๋ชฉ๋ฐ๋ ๋ง์ผํฐ์ด๋ฉฐ ๋ธ๋ก๊ทธ ๋ง์ผํ
์ ๋ฌธ๊ฐ์ด๋ค.
|
236 |
3. ํนํ ๋๋ '์ ๋ณด์ฑ(Informative)' ์ ๋ฌธ ๋ธ๋ก๊ทธ ๋ง์ผํ
์ ๋ฌธ๊ฐ์ด๋ค.
|
237 |
4. ์ ๋ณด ์ ๊ณต์ ์ด์ ์ ๋ง์ถ์ด ์์ฑํ๋ค.
|
|
|
238 |
##[์์ฃผ์ ์์ฑ๊ท์น]
|
239 |
1. [๊ธฐ๋ณธ๊ท์น]์ ๊ธฐ๋ณธ ์ ์ฉํ๋ผ.
|
240 |
2. ๋ธ๋ก๊ทธ ๊ธ์ ์์ฑํ๊ธฐ ์ํ ์์ฃผ์ ๋ฅผ ์์ฑํ๋ผ.
|
|
|
244 |
6. ๋
์๊ฐ ์ป๊ณ ์ ํ๋ ์ ๋ณด์ ํฅ๋ฏธ๋ก์ด ์ ๋ณด๋ฅผ ์ ๊ณตํ๋๋ก ์์ฃผ์ ๋ฅผ ์์ฑํ๋ผ.
|
245 |
7. ์์ฃผ์ ์ ๋ณธ๋ก ์ ๋ด์ฉ์ด ์ถฉ๋ถํ ์์ฑ๋ ์ ์๋ ์์ฃผ์ ๋ก ์ค์ ํ๋ผ.
|
246 |
8. ๋ฐ๋์ [์์ฃผ์ ๊ตฌ์ฑ]์ ๋ง๊ฒ ์ถ๋ ฅํ๋ผ.
|
|
|
247 |
##[์์ฃผ์ ๊ตฌ์ฑ]
|
248 |
1. ๋ฐ๋์ [๋์
๋ถ] - 1๊ฐ, [๋ณธ๋ก 1~5] - 5๊ฐ, [๊ฒฐ๋ก ] - 1๊ฐ๋ก ๊ตฌ์ฑํ์ฌ ์ถ๋ ฅํ๋ผ.
|
249 |
2. ๋ฐ๋์ [๋์
๋ถ]์ [๊ฒฐ๋ก ]์ ์ ๋ชฉ์ด ์ค๋ณต๋์ง ์๋๋ก ์์ฑํ๋ผ.
|
|
|
256 |
2. ๋๋ ๊ฐ์ฅ ์ฃผ๋ชฉ๋ฐ๋ ๋ง์ผํฐ์ด๋ฉฐ ๋ธ๋ก๊ทธ ๋ง์ผํ
์ ๋ฌธ๊ฐ์ด๋ค.
|
257 |
3. ํนํ ๋๋ '๊ฑด๊ฐ, ์ํ ์ ๋ณด' ์ ๋ฌธ ๋ธ๋ก๊ทธ ๋ง์ผํฐ์ด๋ค.
|
258 |
4. ์ ํํ๊ณ ์ ๋ฌธ์ ์ธ ์ ๋ณด ์ ๊ณต์ ์ด์ ์ ๋ง์ถ์ด ์์ฑํ๋ค.
|
|
|
259 |
##[์์ฃผ์ ์์ฑ๊ท์น]
|
260 |
1. [๊ธฐ๋ณธ๊ท์น]์ ๊ธฐ๋ณธ ์ ์ฉํ๋ผ.
|
261 |
2. ๋ธ๋ก๊ทธ ๊ธ์ ์์ฑํ๊ธฐ ์ํ ์์ฃผ์ ๋ฅผ ์์ฑํ๋ผ.
|
|
|
265 |
6. ๋
์๊ฐ ์ป๊ณ ์ ํ๋ ์ ํํ ์ ๋ณด์ ๊ฑด๊ฐํ ์ํ์ ์ ์งํ๋ ๋ฐ ํ์ํ ์ ๋ณด๋ฅผ ์ ๊ณตํ๋๋ก ์์ฃผ์ ๋ฅผ ์์ฑํ๋ผ.
|
266 |
7. ์์ฃผ์ ์ ๋ณธ๋ก ์ ๋ด์ฉ์ด ์ถฉ๋ถํ ์์ฑ๋ ์ ์๋ ์์ฃผ์ ๋ก ์ค์ ํ๋ผ.
|
267 |
8. ๋ฐ๋์ [์์ฃผ์ ๊ตฌ์ฑ]์ ๋ง์ถฐ ์์ฃผ์ ๋ง ์ถ๋ ฅํ๋ผ.
|
|
|
268 |
##[์์ฃผ์ ๊ตฌ์ฑ]
|
269 |
1. ๋ฐ๋์ [๋์
๋ถ] - 1๊ฐ, [๋ณธ๋ก 1~5] - 5๊ฐ, [๊ฒฐ๋ก ] - 1๊ฐ๋ก ๊ตฌ์ฑํ์ฌ ์ถ๋ ฅํ๋ผ.
|
270 |
2. ๋ฐ๋์ [๋์
๋ถ]์ [๊ฒฐ๋ก ]์ ์ ๋ชฉ์ด ์ค๋ณต๋์ง ์๋๋ก ์์ฑํ๋ผ.
|
|
|
279 |
2. ๋๋ ๊ฐ์ฅ ์ฃผ๋ชฉ๋ฐ๋ ๋ง์ผํฐ์ด๋ฉฐ ๋ธ๋ก๊ทธ ๋ง์ผํ
์ ๋ฌธ๊ฐ์ด๋ค.
|
280 |
3. ํนํ ๋๋ '์ ๋ณด์ฑ(Informative)' ์ ๋ฌธ ๋ธ๋ก๊ทธ ๋ง์ผํ
์ ๋ฌธ๊ฐ์ด๋ค.
|
281 |
4. ์ ๋ณด ์ ๊ณต์ ์ด์ ์ ๋ง์ถ์ด ์์ฑํ๋ค.
|
|
|
282 |
##[ํ
์คํธ ์์ฑ ๊ท์น]
|
283 |
1. ๋ฐ๋์ ์
๋ ฅ๋ [์์ฃผ์ ]์ ๋ง๊ฒ ํ
์คํธ๋ฅผ ์์ฑํ๋ผ.
|
284 |
2. ์์ฃผ์ ์ [๋ณธ๋ก ] 5๊ฐ๋ฅผ ๊ฐ๊ฐ 300์ ์ด์์ผ๋ก ์์ฑํ๋ผ.
|
|
|
290 |
8. ์ฃผ์ ์ ์ํฉ์ ๋ง๋ ์ ์ ํ ์ดํ๋ฅผ ์ ํํ๋ผ.
|
291 |
9. ํ๊ธ ์ดํ์ ๋์ด๋๋ ์ฝ๊ฒ ์์ฑํ๋ผ.
|
292 |
10. ์ ๋ ๋ฌธ์ฅ์ ๋์ '๋ต๋๋ค'๋ฅผ ์ฌ์ฉํ์ง ๋ง ๊ฒ.
|
|
|
293 |
###[์ ๋ณด์ฑ ๋ธ๋ก๊ทธ ์์ฑ ๊ท์น]
|
294 |
1. ๋
์๊ฐ ์ป๊ณ ์ ํ๋ ์ ์ฉํ ์ ๋ณด์ ํฅ๋ฏธ๋ก์ด ์ ๋ณด๋ฅผ ์ ๊ณตํ๋๋ก ์์ฑํ๋ผ.
|
295 |
2. ๋
์์ ๊ณต๊ฐ์ ์ด๋์ด๋ด๊ณ ๊ถ๊ธ์ฆ์ ํด๊ฒฐํ๋๋ก ์์ฑํ๋ผ.
|
296 |
3. ๋
์์ ๊ด์ฌ์ฌ๋ฅผ ์ถฉ์กฑ์ํค๋๋ก ์์ฑํ๋ผ.
|
297 |
4. ๋
์์๊ฒ ์ด๋์ด ๋๋ ์ ๋ณด๋ฅผ ์์ฑํ๋ผ.
|
|
|
298 |
##[์ ์ธ ๊ท์น]
|
299 |
1. ๋ฐ๋์ ๋น์์ด ๋ฐ ์์ค(expletive, abusive language, slang)์ ์ ์ธํ๋ผ.
|
300 |
2. ๋ฐ๋์ ์ฐธ๊ณ ๊ธ์ ๋งํฌ(URL)๋ ์ ์ธํ๋ผ.
|
|
|
310 |
2. ๋๋ ๊ฐ์ฅ ์ฃผ๋ชฉ๋ฐ๋ ๋ง์ผํฐ์ด๋ฉฐ ๋ธ๋ก๊ทธ ๋ง์ผํ
์ ๋ฌธ๊ฐ์ด๋ค.
|
311 |
3. ํนํ ๋๋ '๊ฑด๊ฐ, ์ํ ์ ๋ณด' ์ ๋ฌธ ๋ธ๋ก๊ทธ ๋ง์ผํฐ์ด๋ค.
|
312 |
4. ์ ํํ๊ณ ์ ๋ฌธ์ ์ธ ์ ๋ณด ์ ๊ณต์ ์ด์ ์ ๋ง์ถ์ด ์์ฑํ๋ค.
|
|
|
313 |
##[ํ
์คํธ ์์ฑ ๊ท์น]
|
314 |
1. ๋ฐ๋์ ์
๋ ฅ๋ [์์ฃผ์ ]์ ๋ง์ถฐ์ ํ
์คํธ๋ฅผ ์์ฑํ๋ผ.
|
315 |
2. ๋ฐ๋์ ์
๋ ฅ๋ [์์ฃผ์ ]๋ ๋ณ๊ฒฝํ์ง ๋ง๊ณ ๊ทธ๋๋ก ์ถ๋ ฅํ๋ผ.
|
|
|
321 |
7. ์ดํฌ๋ ์ ๊ณต๋ ์ฐธ๊ณ ๊ธ์ ์ดํฌ๋ฅผ ๋ฐ์ํ๋, '๊ฑด๊ฐ, ์ํ ์ ๋ณด' ์ ๋ฌธ ๋ธ๋ก๊ทธ ๋ง์ผํฐ๋ก์ ์์ฑํ๋ผ.
|
322 |
8. ์ ๋๋ก ์ฐธ๊ณ ๊ธ์ ํ๋ฌธ์ฅ ์ด์ ๊ทธ๋๋ก ์ถ๋ ฅํ์ง ๋ง ๊ฒ.
|
323 |
9. ์ฃผ์ ์ ์ํฉ์ ๋ง๋ ์ ์ ๏ฟฝ๏ฟฝ ์ดํ๋ฅผ ์ ํํ๋ผ.
|
|
|
324 |
###[์ ๋ณด์ฑ ๋ธ๋ก๊ทธ ์์ฑ ๊ท์น]
|
325 |
1. ๋
์๊ฐ ์ป๊ณ ์ ํ๋ ์ ํํ ์ ๋ณด์ ๊ฑด๊ฐํ ์ํ์ ์ ์งํ๋ ๋ฐ ํ์ํ ์ ๋ณด๋ฅผ ์ ๊ณตํ๋๋ก ์์ฃผ์ ์ ๋ง๊ฒ ๋ด์ฉ์ ์์ฑํ๋ผ.
|
326 |
2. ๋
์์ ๊ณต๊ฐ์ ์ด๋์ด๋ด๊ณ ๊ถ๊ธ์ฆ์ ํด๊ฒฐํ๋๋ก ์์ฑํ๋ผ.
|
327 |
3. ๋
์์ ๊ด์ฌ์ฌ๋ฅผ ์ถฉ์กฑ์ํค๋๋ก ์์ฑํ๋ผ.
|
328 |
4. ๋
์์๊ฒ ์ด๋์ด ๋๋ ์ ๋ณด๋ฅผ ์์ฑํ๋ผ.
|
|
|
329 |
##[์ ์ธ ๊ท์น]
|
330 |
1. ๋ฐ๋์ ์ฐธ๊ณ ๊ธ์ ๋งํฌ(URL)๋ ์ ์ธํ๋ผ.
|
331 |
2. ์ฐธ๊ณ ๊ธ์์ '๋งํฌ๋ฅผ ํ์ธํด์ฃผ์ธ์'์ ๊ฐ์ ๋งํฌ ์ด๋์ ๋ฌธ๊ตฌ๋ ์ ์ธํ๋ผ.
|
|
|
494 |
style_description = get_style_description(style)
|
495 |
return style_description
|
496 |
|
|
|
|
|
|
|
497 |
|
498 |
+
def generate_images(blog_post):
|
499 |
+
images = []
|
500 |
+
lines = blog_post.split('\n')
|
501 |
+
title = lines[0].strip()
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
502 |
|
503 |
+
# 1. ์ ๋ชฉ์ ์์ฝํ์ฌ ์ด๋ฏธ์ง ์์ฑ
|
504 |
+
images.append(generate_image(f"Summary of '{title}'"))
|
505 |
|
506 |
+
# ๋์
๋ถ์ ๋ณธ๋ฌธ, ๊ฒฐ๋ก ์ฐพ๊ธฐ
|
507 |
+
intro_index = next((i for i, line in enumerate(lines) if '[๋์
๋ถ]' in line), -1)
|
508 |
+
body_index = next((i for i, line in enumerate(lines) if '[๋ณธ๋ก 1]' in line), -1)
|
509 |
+
conclusion_index = next((i for i, line in enumerate(lines) if '[๊ฒฐ๋ก ]' in line), -1)
|
|
|
|
|
|
|
|
|
510 |
|
511 |
+
# 2. ๋์
๋ถ ์์ฝ์ผ๋ก ์ด๋ฏธ์ง 2์ฅ ์์ฑ
|
512 |
+
if intro_index != -1 and body_index != -1:
|
513 |
+
intro_text = ' '.join(lines[intro_index+1:body_index])
|
514 |
+
intro_summary = f"Summary of introduction: {intro_text[:100]}..."
|
515 |
+
images.append(generate_image(intro_summary))
|
516 |
+
images.append(generate_image(intro_summary))
|
517 |
+
|
518 |
+
# 3. ๋ณธ๋ฌธ ์์ฝ์ผ๋ก ์ด๋ฏธ์ง ์์ฑ
|
519 |
+
if body_index != -1 and conclusion_index != -1:
|
520 |
+
body_text = ' '.join(lines[body_index+1:conclusion_index])
|
521 |
+
body_summary = f"Summary of main content: {body_text[:100]}..."
|
522 |
+
images.append(generate_image(body_summary))
|
523 |
+
|
524 |
+
# 4. ๊ฒฐ๋ก ์์ฝ์ผ๋ก ์์ง์ ์ด๋ฏธ์ง ์์ฑ
|
525 |
+
if conclusion_index != -1:
|
526 |
+
conclusion_text = ' '.join(lines[conclusion_index+1:])
|
527 |
+
conclusion_summary = f"Symbolic image representing: {conclusion_text[:100]}..."
|
528 |
+
images.append(generate_image(conclusion_summary))
|
529 |
+
|
530 |
+
# 5. ๊ฒฐ๋ก ์์ฝ์ผ๋ก ๊ฐ์น์ ์ด์ต์ ์์งํ๋ ์ด๋ฏธ์ง ์์ฑ
|
531 |
+
if conclusion_index != -1:
|
532 |
+
value_summary = f"Image symbolizing the value and benefit for readers: {conclusion_text[:100]}..."
|
533 |
+
images.append(generate_image(value_summary))
|
534 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
535 |
return images
|
536 |
|
537 |
|
|
|
587 |
outputs=[references1, references2, references3, outline_result, outline_token_output, output, token_output]
|
588 |
)
|
589 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
590 |
# ์ด๋ฏธ์ง ์์ฑ ๋ฒํผ ๋ฐ ์ถ๋ ฅ ์ถ๊ฐ
|
591 |
generate_images_btn = gr.Button("์ด๋ฏธ์ง ์์ฑํ๊ธฐ")
|
592 |
image_outputs = [gr.Image(label=f"์์ฑ๋ ์ด๋ฏธ์ง {i+1}") for i in range(5)]
|
|
|
595 |
fn=generate_images,
|
596 |
inputs=[output],
|
597 |
outputs=image_outputs
|
598 |
+
)
|
599 |
+
|
600 |
save_pdf_btn = gr.Button("PDF๋ก ์ ์ฅํ๊ธฐ")
|
601 |
pdf_output = gr.File(label="์์ฑ๋ PDF ํ์ผ")
|
602 |
|