|
import gradio as gr |
|
from gradio_client import Client |
|
import os |
|
|
|
|
|
from info_blog import generate_outline_1, generate_blog_post_1 |
|
from travel_blog import generate_outline_2, generate_blog_post_2 |
|
from product_review_blog import generate_outline_3, generate_blog_post_3 |
|
from feature_focus_blog import generate_outline_4, generate_blog_post_4 |
|
from visit_review_blog import generate_outline_5, generate_blog_post_5 |
|
|
|
|
|
def generate_outline_1_api(category, style, ref1, ref2, ref3): |
|
result = generate_outline_1(category, style, ref1, ref2, ref3) |
|
return result |
|
|
|
def generate_blog_post_1_api(category, style, ref1, ref2, ref3, outline_input): |
|
result = generate_blog_post_1(category, style, ref1, ref2, ref3, outline_input) |
|
return result |
|
|
|
|
|
def generate_outline_2_api(category, style, ref1, ref2, ref3): |
|
result = generate_outline_2(category, style, ref1, ref2, ref3) |
|
return result |
|
|
|
def generate_blog_post_2_api(category, style, ref1, ref2, ref3, outline_input): |
|
result = generate_blog_post_2(category, style, ref1, ref2, ref3, outline_input) |
|
return result |
|
|
|
|
|
def generate_outline_3_api(category, style, ref1, ref2, ref3): |
|
result = generate_outline_3(category, style, ref1, ref2, ref3) |
|
return result |
|
|
|
def generate_blog_post_3_api(category, style, ref1, ref2, ref3, outline_input): |
|
result = generate_blog_post_3(category, style, ref1, ref2, ref3, outline_input) |
|
return result |
|
|
|
|
|
def generate_outline_4_api(category, style, ref1, ref2, ref3): |
|
result = generate_outline_4(category, style, ref1, ref2, ref3) |
|
return result |
|
|
|
def generate_blog_post_4_api(category, style, ref1, ref2, ref3, selected_feature): |
|
result = generate_blog_post_4(category, style, ref1, ref2, ref3, selected_feature) |
|
return result |
|
|
|
|
|
def generate_outline_5_api(category, style, ref1, ref2, ref3, photo_recommendations): |
|
result = generate_outline_5(category, style, ref1, ref2, ref3, photo_recommendations) |
|
return result |
|
|
|
def generate_blog_post_5_api(category, style, ref1, ref2, ref3, outline_input, photo_recommendations): |
|
result = generate_blog_post_5(category, style, ref1, ref2, ref3, outline_input, photo_recommendations) |
|
return result |
|
|
|
|
|
def interface(): |
|
with gr.Blocks() as demo: |
|
gr.Markdown("# ๋ธ๋ก๊ทธ ํฌ์คํ
") |
|
|
|
|
|
with gr.Tab("์ ๋ณด์ฑ"): |
|
category_1 = gr.Radio(choices=['์ผ๋ฐ', '์ํ๊ฑด๊ฐ'], label="ํฌ์คํ
์นดํ
๊ณ ๋ฆฌ", value="์ผ๋ฐ") |
|
style_1 = gr.Radio(choices=['์น๊ทผํ', '์ผ๋ฐ', '์ ๋ฌธ์ ์ธ'], label="ํฌ์คํ
์คํ์ผ", value="์น๊ทผํ") |
|
ref1_1 = gr.Textbox(label="์ฐธ๊ณ ๊ธ 1", placeholder="์ฐธ๊ณ ํ ๊ธ์ ์
๋ ฅํ์ธ์") |
|
ref2_1 = gr.Textbox(label="์ฐธ๊ณ ๊ธ 2", placeholder="์ฐธ๊ณ ํ ๊ธ์ ์
๋ ฅํ์ธ์") |
|
ref3_1 = gr.Textbox(label="์ฐธ๊ณ ๊ธ 3", placeholder="์ฐธ๊ณ ํ ๊ธ์ ์
๋ ฅํ์ธ์") |
|
outline_button_1 = gr.Button("์์๋ผ์ธ ์์ฑ") |
|
outline_output_1 = gr.Textbox(label="์์ฑ๋ ์์๋ผ์ธ") |
|
|
|
outline_1 = gr.Textbox(label="์์ฑํ ์์๋ผ์ธ", placeholder="์์ฑ๋ ์์๋ผ์ธ์ ์
๋ ฅํ์ธ์") |
|
blog_button_1 = gr.Button("๋ธ๋ก๊ทธ ๊ธ ์์ฑ") |
|
blog_output_1 = gr.HTML(label="์์ฑ๋ ๋ธ๋ก๊ทธ ๊ธ (HTML ํ์)") |
|
|
|
outline_button_1.click(generate_outline_1_api, inputs=[category_1, style_1, ref1_1, ref2_1, ref3_1], outputs=outline_output_1) |
|
blog_button_1.click(generate_blog_post_1_api, inputs=[category_1, style_1, ref1_1, ref2_1, ref3_1, outline_1], outputs=blog_output_1) |
|
|
|
|
|
with gr.Tab("์ฌํ"): |
|
category_2 = gr.Radio(choices=['์ฌํ ๋จ์ผ', '์ฌํ ์ฝ์ค'], label="ํฌ์คํ
์นดํ
๊ณ ๋ฆฌ", value="์ฌํ ๋จ์ผ") |
|
style_2 = gr.Radio(choices=['์น๊ทผํ', '์ผ๋ฐ', '์ ๋ฌธ์ ์ธ'], label="ํฌ์คํ
์คํ์ผ", value="์น๊ทผํ") |
|
ref1_2 = gr.Textbox(label="์ฐธ๊ณ ๊ธ 1", placeholder="์ฐธ๊ณ ํ ๊ธ์ ์
๋ ฅํ์ธ์") |
|
ref2_2 = gr.Textbox(label="์ฐธ๊ณ ๊ธ 2", placeholder="์ฐธ๊ณ ํ ๊ธ์ ์
๋ ฅํ์ธ์") |
|
ref3_2 = gr.Textbox(label="์ฐธ๊ณ ๊ธ 3", placeholder="์ฐธ๊ณ ํ ๊ธ์ ์
๋ ฅํ์ธ์") |
|
outline_button_2 = gr.Button("์์๋ผ์ธ ์์ฑ") |
|
outline_output_2 = gr.Textbox(label="์์ฑ๋ ์์๋ผ์ธ") |
|
|
|
outline_2 = gr.Textbox(label="์์ฑํ ์์๋ผ์ธ", placeholder="์์ฑ๋ ์์๋ผ์ธ์ ์
๋ ฅํ์ธ์") |
|
blog_button_2 = gr.Button("๋ธ๋ก๊ทธ ๊ธ ์์ฑ") |
|
blog_output_2 = gr.HTML(label="์์ฑ๋ ๋ธ๋ก๊ทธ ๊ธ (HTML ํ์)") |
|
|
|
outline_button_2.click(generate_outline_2_api, inputs=[category_2, style_2, ref1_2, ref2_2, ref3_2], outputs=outline_output_2) |
|
blog_button_2.click(generate_blog_post_2_api, inputs=[category_2, style_2, ref1_2, ref2_2, ref3_2, outline_2], outputs=blog_output_2) |
|
|
|
|
|
with gr.Tab("์ํํ๊ธฐ"): |
|
category_3 = gr.Radio(choices=['์ผ๋ฐ', '๊ธฐ๋ฅ์ง์คํ', '๊ณ ๊ฐ๋ฐ์ํ'], label="ํฌ์คํ
์นดํ
๊ณ ๋ฆฌ", value="์ผ๋ฐ") |
|
style_3 = gr.Radio(choices=['์น๊ทผํ', '์ผ๋ฐ', '์ ๋ฌธ์ ์ธ'], label="ํฌ์คํ
์คํ์ผ", value="์น๊ทผํ") |
|
ref1_3 = gr.Textbox(label="์ฐธ๊ณ ๊ธ 1", placeholder="์ฐธ๊ณ ํ ๊ธ์ ์
๋ ฅํ์ธ์") |
|
ref2_3 = gr.Textbox(label="์ฐธ๊ณ ๊ธ 2", placeholder="์ฐธ๊ณ ํ ๊ธ์ ์
๋ ฅํ์ธ์") |
|
ref3_3 = gr.Textbox(label="์ฐธ๊ณ ๊ธ 3", placeholder="์ฐธ๊ณ ํ ๊ธ์ ์
๋ ฅํ์ธ์") |
|
outline_button_3 = gr.Button("์์๋ผ์ธ ์์ฑ") |
|
outline_output_3 = gr.Textbox(label="์์ฑ๋ ์์๋ผ์ธ") |
|
|
|
outline_3 = gr.Textbox(label="์์ฑํ ์์๋ผ์ธ", placeholder="์์ฑ๋ ์์๋ผ์ธ์ ์
๋ ฅํ์ธ์") |
|
blog_button_3 = gr.Button("๋ธ๋ก๊ทธ ๊ธ ์์ฑ") |
|
blog_output_3 = gr.HTML(label="์์ฑ๋ ๋ธ๋ก๊ทธ ๊ธ (HTML ํ์)") |
|
|
|
outline_button_3.click(generate_outline_3_api, inputs=[category_3, style_3, ref1_3, ref2_3, ref3_3], outputs=outline_output_3) |
|
blog_button_3.click(generate_blog_post_3_api, inputs=[category_3, style_3, ref1_3, ref2_3, ref3_3, outline_3], outputs=blog_output_3) |
|
|
|
|
|
with gr.Tab("ํต์ฌ๊ธฐ๋ฅ์ง์คํ"): |
|
category_4 = gr.Radio(choices=['ํต์ฌ๊ธฐ๋ฅ์ง์คํ'], label="ํฌ์คํ
์นดํ
๊ณ ๋ฆฌ", value="ํต์ฌ๊ธฐ๋ฅ์ง์คํ") |
|
style_4 = gr.Radio(choices=['์น๊ทผํ', '์ผ๋ฐ', '์ ๋ฌธ์ ์ธ'], label="ํฌ์คํ
์คํ์ผ", value="์น๊ทผํ") |
|
ref1_4 = gr.Textbox(label="์ฐธ๊ณ ๊ธ 1", placeholder="์ฐธ๊ณ ํ ๊ธ์ ์
๋ ฅํ์ธ์") |
|
ref2_4 = gr.Textbox(label="์ฐธ๊ณ ๊ธ 2", placeholder="์ฐธ๊ณ ํ ๊ธ์ ์
๋ ฅํ์ธ์") |
|
ref3_4 = gr.Textbox(label="์ฐธ๊ณ ๊ธ 3", placeholder="์ฐธ๊ณ ํ ๊ธ์ ์
๋ ฅํ์ธ์") |
|
outline_button_4 = gr.Button("ํต์ฌ๊ธฐ๋ฅ ์ ์ ํ๊ธฐ") |
|
outline_result1 = gr.Textbox(label="ํต์ฌ๊ธฐ๋ฅ 1") |
|
outline_result2 = gr.Textbox(label="ํต์ฌ๊ธฐ๋ฅ 2") |
|
outline_result3 = gr.Textbox(label="ํต์ฌ๊ธฐ๋ฅ 3") |
|
outline_4 = gr.Textbox(label="์์ฑํ ํต์ฌ๊ธฐ๋ฅ ์ฃผ์ ์ค์ 1๊ฐ๋ง ์
๋ ฅํด์ฃผ์ธ์", placeholder="ํต์ฌ๊ธฐ๋ฅ 1๊ฐ๋ง ์
๋ ฅํ์ธ์") |
|
blog_button_4 = gr.Button("๋ธ๋ก๊ทธ ๊ธ ์์ฑ") |
|
blog_output_4 = gr.HTML(label="์์ฑ๋ ๋ธ๋ก๊ทธ ๊ธ (HTML ํ์)") |
|
|
|
outline_button_4.click(generate_outline_4_api, inputs=[category_4, style_4, ref1_4, ref2_4, ref3_4], outputs=[outline_result1, outline_result2, outline_result3]) |
|
blog_button_4.click(generate_blog_post_4_api, inputs=[category_4, style_4, ref1_4, ref2_4, ref3_4, outline_4], outputs=blog_output_4) |
|
|
|
|
|
with gr.Tab("๋ฐฉ๋ฌธํ๊ธฐํ"): |
|
category_5 = gr.Radio(choices=['๋ฐฉ๋ฌธํ๊ธฐํ'], label="ํฌ์คํ
์นดํ
๊ณ ๋ฆฌ", value="๋ฐฉ๋ฌธํ๊ธฐํ") |
|
style_5 = gr.Radio(choices=['์น๊ทผํ', '์ผ๋ฐ', '์ ๋ฌธ์ ์ธ'], label="ํฌ์คํ
์คํ์ผ", value="์น๊ทผํ") |
|
ref1_5 = gr.Textbox(label="์ฐธ๊ณ ๊ธ 1", placeholder="์ฐธ๊ณ ํ ๊ธ์ ์
๋ ฅํ์ธ์") |
|
ref2_5 = gr.Textbox(label="์ฐธ๊ณ ๊ธ 2", placeholder="์ฐธ๊ณ ํ ๊ธ์ ์
๋ ฅํ์ธ์") |
|
ref3_5 = gr.Textbox(label="์ฐธ๊ณ ๊ธ 3", placeholder="์ฐธ๊ณ ํ ๊ธ์ ์
๋ ฅํ์ธ์") |
|
photo_recommendations_5 = gr.Textbox(label="์ฌ์ง ํํ ํค์๋", placeholder="์ฌ์ง ์ถ์ฒ ํค์๋๋ฅผ ์
๋ ฅํ์ธ์") |
|
outline_button_5 = gr.Button("์์๋ผ์ธ ์์ฑ") |
|
outline_output_5 = gr.Textbox(label="์์ฑ๋ ์์๋ผ์ธ") |
|
|
|
outline_5 = gr.Textbox(label="์์ฑํ ์์๋ผ์ธ", placeholder="์์ฑ๋ ์์๋ผ์ธ์ ์
๋ ฅํ์ธ์") |
|
blog_button_5 = gr.Button("๋ธ๋ก๊ทธ ๊ธ ์์ฑ") |
|
blog_output_5 = gr.HTML(label="์์ฑ๋ ๋ธ๋ก๊ทธ ๊ธ (HTML ํ์)") |
|
|
|
outline_button_5.click( |
|
generate_outline_5_api, |
|
inputs=[category_5, style_5, ref1_5, ref2_5, ref3_5, photo_recommendations_5], |
|
outputs=outline_output_5 |
|
) |
|
blog_button_5.click( |
|
generate_blog_post_5_api, |
|
inputs=[category_5, style_5, ref1_5, ref2_5, ref3_5, outline_5, photo_recommendations_5], |
|
outputs=blog_output_5 |
|
) |
|
|
|
return demo |
|
|
|
|
|
if __name__ == "__main__": |
|
interface().launch(share=True) |