File size: 12,099 Bytes
1f2c7d3
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1aa5d04
1f2c7d3
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
import streamlit as st

import torch
from transformers import PreTrainedTokenizerFast
from transformers import BartForConditionalGeneration


@st.cache(allow_output_mutation=True)
def get_model(model_path):
	tokenizer = PreTrainedTokenizerFast.from_pretrained(model_path)
	model = BartForConditionalGeneration.from_pretrained(model_path)

	return tokenizer, model


def summarize(text):
	input_ids = tokenizer.encode(text, return_tensors="pt")
	# Generate Summary Text Ids
	summary_text_ids = model.generate(
	    input_ids=input_ids,
	    bos_token_id=model.config.bos_token_id,
	    eos_token_id=model.config.eos_token_id,
	    length_penalty=2.0,
	    max_length=128,
	    min_length=56,
	    num_beams=4,
	)
	# Decoding Text
	summarized_text = tokenizer.decode(summary_text_ids[0], skip_special_tokens=True)

	return summarized_text



# Load tokenizer, model
tokenizer, model = get_model('ainize/kobart-news')


## Title
st.title('โ˜๏ธ Bespin โ†’ TextSummarization')

# Text Input
st.subheader('Summarize!')
context_option = st.selectbox('๐Ÿ“Œ Select Example or Enter Your Input.',
    (
        '''๋ฒ ์Šคํ•€๊ธ€๋กœ๋ฒŒ(๋Œ€ํ‘œ ์ดํ•œ์ฃผ)์€ ๊ณต๊ณต ํด๋ผ์šฐ๋“œ ์šด์˜, ๊ด€๋ฆฌ๋ฅผ ์œ„ํ•œ ์ž๋™ํ™” ์†”๋ฃจ์…˜ ์˜ต์Šค๋‚˜์šฐ-G(OpsNow-G) ์„œ๋น„์Šค๋ฅผ ์ถœ์‹œํ–ˆ๋‹ค๊ณ  30์ผ ๋ฐํ˜”๋‹ค.\n\n์ด๋ฒˆ ์˜ต์Šค๋‚˜์šฐ-G ์„œ๋น„์Šค ์ถœ์‹œ๋กœ ์˜ต์Šค๋‚˜์šฐ๋Š” ๊ตญ๋‚ด์—์„œ ์œ ์ผํ•˜๊ฒŒ ๋„ค์ด๋ฒ„ํด๋ผ์šฐ๋“œ, NHNํด๋ผ์šฐ๋“œ, KTํด๋ผ์šฐ๋“œ๋ฅผ ๋ชจ๋‘ ์ง€์›ํ•  ์ˆ˜ ์žˆ๊ฒŒ ๋˜์—ˆ๋‹ค.\n\n๊ณ ๊ฐ์นœํ™”์ ์œผ๋กœ ์‹œ๊ฐ„ ๋ฐ ์žฅ์†Œ์— ๊ตฌ์• ๋ฐ›์ง€ ์•Š๊ณ  ์ฑ„ํŒ…๊ณผ ์„œ๋น„์Šค ์‹ ์ฒญ์„œ๋ฅผ ํ†ตํ•ด ๊ธฐ์ˆ  ์ง€์›์„ ์š”์ฒญํ•  ์ˆ˜ ์žˆ์–ด, ๊ณต๊ณต๊ธฐ๊ด€ ์‚ฌ์šฉ์ž๊ฐ€ ์˜ต์Šค๋‚˜์šฐ-G ๋ฅผ ํ†ตํ•˜์—ฌ ์–ด๋ ต์ง€ ์•Š๊ฒŒ ํด๋ผ์šฐ๋“œ๋ฅผ ๊ด€๋ฆฌํ•  ์ˆ˜ ์žˆ๊ฒŒ ๋•๋Š”๋‹ค.\n์ถ”๊ฐ€์ ์œผ๋กœ ์ „๋ฐ˜์ ์ธ ํด๋ผ์šฐ๋“œ ๊ด€๋ จ ๊ธฐ์ˆ ๊ณผ ํ™œ์šฉ์— ๋Œ€ํ•œ ๋ฒ ์Šคํ•€๊ธ€๋กœ๋ฒŒ์˜ ์ „๋ฌธ์ ์ธ ๋„์›€๊นŒ์ง€๋„ ์‰ฝ๊ณ  ๊ฐ„ํŽธํ•˜๊ฒŒ ์š”์ฒญํ•  ์ˆ˜ ์žˆ๋‹ค.\n\n๋ฒ ์Šคํ•€๊ธ€๋กœ๋ฒŒ์˜ ๋ฉ€ํ‹ฐ ํด๋ผ์šฐ๋“œ ์šด์˜โˆ™๊ด€๋ฆฌ ํ”Œ๋žซํผ ์˜ต์Šค๋‚˜์šฐ(OpsNow)๋Š” ๊ตญ๋‚ด ์œ ์ผ์˜ SaaSํ˜•ํƒœ๋กœ ์ œ๊ณต๋˜๋Š” ๋ฉ€ํ‹ฐ ํด๋ผ์šฐ๋“œ ์ „๋ฌธ ์†”๋ฃจ์…˜์œผ๋กœ โ–ฒํด๋ผ์šฐ๋“œ ๋น„์šฉ ๋ฐ ์ž์› ๊ด€๋ฆฌ โ–ฒํด๋ผ์šฐํ•€๊ธ€๋กœ๋ฒŒ์˜ ๋ฉ€ํ‹ฐ ํด๋ผ์šฐ๋“œ ์šด์˜โˆ™๊ด€๋ฆฌ ํ”Œ๋žซํผ ์˜ต์Šค๋‚˜์šฐ(OpsNow)๋Š” ๊ตญ๋‚ด ์œ ์ผ์˜ SaaSํ˜•ํƒœ๋กœ ์ œ๊ณต๋˜๋Š” ๋ฉ€ํ‹ฐ ํด๋ผ์šฐ๋“œ ์ „๋ฌธ ์†”๋ฃจ์…˜์œ•์ ์œผ๋กœ ์ง€์›ํ•œ๋‹ค.''',
        '''๊ตฌ๊ธ€ ํด๋ผ์šฐ๋“œ๋Š” ์นด์นด์˜ค์˜ ์ธ๊ณต์ง€๋Šฅ(AI) ์—ฐ๊ตฌ ์žํšŒ์‚ฌ ์นด์นด์˜ค๋ธŒ๋ ˆ์ธ์ด ๊ตฌ๊ธ€ ํด๋ผ์šฐ๋“œ์˜ ๋งž์ถคํ˜• ๋จธ์‹ ๋Ÿฌ๋‹ ํ•˜๋“œ์›จ์–ด(ASIC) \'ํด๋ผ์šฐ๋“œ TPU(Tensor Processing Unit)\'๋ฅผ ๋„์ž…ํ•ด ์ดˆ๊ฑฐ๋Œ€ AI ์–ธ์–ด ๋ชจ๋ธ \'KoGPT\'์˜ ์—ฐ๊ตฌ๊ฐœ๋ฐœ ์—ญ๋Ÿ‰์„ ๊ฐ•ํ™”ํ–ˆ๋‹ค๊ณ  26์ผ ๋ฐํ˜”๋‹ค. \n\nKoGPT๋Š” ๋ฏธ๊ตญ์˜ AI ์—ฐ๊ตฌ๊ธฐ๊ด€ ์˜คํ”ˆAI(OpenAI)๊ฐ€ ๊ฐœ๋ฐœํ•œ ๋”ฅ๋Ÿฌ๋‹ ๊ธฐ๋ฐ˜ ์ž์—ฐ์–ด์ฒ˜๋ฆฌ(NLP) AI ๋ชจ๋ธ \'GPT-3\'์˜ ํ•œ๊ตญ์–ด ํŠนํ™” ๋ฒ„์ „์œผ๋กœ, ์นด์นด์˜ค๋ธŒ๋ ˆ์ธ์€ ์ตœ๊ทผ ์˜คํ”ˆ์†Œ์Šค ์ปค๋ฎค๋‹ˆํ‹ฐ ๊นƒํ—ˆ๋ธŒ(GitHub)์— KoGPT๋ฅผ ๊ณต๊ฐœํ–ˆ๋‹ค. \n\nKoGPT ๋ชจ๋ธ์„ ํ•™์Šต์‹œํ‚ค๋Š” ๋ฐ์—๋Š” ์ˆ˜์‹ญ์–ต ์ด์ƒ์˜ ๋ฐ์ดํ„ฐ์™€ ๋ชจ๋ธ ํŒŒ๋ผ๋ฏธํ„ฐ(Parameter; ๋งค๊ฐœ๋ณ€์ˆ˜)๊ฐ€ ํ™œ์šฉ๋๋‹ค. ์นด์นด์˜ค๋ธŒ๋ ˆ์ธ์€ ๋Œ€๊ทœ๋ชจ ๋ฐ์ดํ„ฐ ๋ฐ ๋ชจ๋ธ ํ•™์Šต์— ์ ํ•ฉํ•œ ๋ฆฌ์†Œ์Šค๋ฅผ ํ™•๋ณดํ•˜๊ธฐ ์œ„ํ•ด ๊ธฐ์กด์˜ GPU ์„œ๋ฒ„ ํ™˜๊ฒฝ์— ํด๋ผ์šฐ๋“œ TPU๋ฅผ ์ถ”๊ฐ€๋กœ ๋„์ž…ํ–ˆ๋‹ค.\n\n์นด์นด์˜ค๋ธŒ๋ ˆ์ธ์€ ๊ตฌ๊ธ€์—์„œ ๊ฐœ๋ฐœํ•œ ํ…์„œ ์ฒ˜๋ฆฌ ์žฅ์น˜์ธ \'๊ตฌ๊ธ€ TPU\'๋ฅผ ํ™œ์šฉํ•ด 1์—‘์‚ฌ ํ”Œ๋กญ์Šค(์ปดํ“จํ„ฐ์˜ ์—ฐ์‚ฐ ์†๋„ ๋‹จ์œ„/์ดˆ๋‹น 100๊ฒฝ ์—ฐ์‚ฐ์ฒ˜๋ฆฌ)๋ฅผ ๋›ฐ์–ด๋„˜๋Š” ๊ตญ๋‚ด ์ตœ๋Œ€ ๊ทœ๋ชจ์˜ ๋”ฅ๋Ÿฌ๋‹ ์Šˆํผ์ปดํ“จํŒ… ์ธํ”„๋ผ๋ฅผ ๋„์ž…ํ•ด \'KoGPT\'์— ์ ์šฉํ•œ AI ์—ฐ๊ตฌ ํšจ์œจ์„ ๊ธฐ์กด ๋Œ€๋น„ 100๋ฐฐ ์ด์ƒ ๋†’์ธ๋‹ค๋Š” ๋ชฉํ‘œ๋‹ค.\n\n\'๊ตฌ๊ธ€ TPU\'๋Š” ๊ตฌ๊ธ€ ํด๋ผ์šฐ๋“œ์—์„œ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋Š” ๋Œ€์šฉ๋Ÿ‰ ์—ฐ์‚ฐ ์ธํ”„๋ผ๊ธ€ TPU\'๋Š” ๊ตฌ๊ธ€ ํด๋ผ์šฐ๋“œ์—์„œ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋Š” ๋Œ€์šฉ๋Ÿ‰ ์—ฐ์‚ฐ ์ธํ”„๋ผ๊ธ€ TPU\'๋Š” ๊ตฌ๊ธ€ ํด๋ผ์šฐ๋“œ์—์„œ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋Š” ๋Œ€์šฉ๋Ÿ‰ ์—ฐ์‚ฐ ์ธํ”„๋ผ๊ธ€ TPU\'๋Š” ๊ตฌ๊ธ€ ํด๋ผ์šฐ๋“œ์—์„œ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋Š” ๋Œ€์šฉ๋Ÿ„ ๊ฐ–์ถ˜ ์ƒ์œ„ ์‹œ์Šคํ…œ์„ ์Šˆํผ์ปดํ“จํ„ฐ ํ•œ ๋Œ€์— ๊ตฌ์ถ•ํ•ด ํ™œ์šฉํ•œ๋‹ค.\n\nํด๋ผ์šฐ๋“œ TPU๋Š” ํŒŸ(Pod) ๋‹จ์œ„๋กœ ํ• ๋‹น ๋ฐ ๊ด€๋ฆฌ๊ฐ€ ๊ฐ€๋Šฅํ•˜๋ฉฐ ์ตœ์†Œํ•œ์˜ ์ฝ”๋“œ ๋ณ€๊ฒฝ์œผ๋กœ ์ตœ๋Œ€ 2์ฒœ48๊ฐœ์˜ ์—ฐ์‚ฐ ๋…ธ๋“œ๊นŒ์ง€ ์†์‰ฝ๊ฒŒ ํ™•์žฅํ•  ์ˆ˜ ์žˆ๋‹ค. ๋˜ํ•œ ๋ณ„๋„์˜ ์ธํ”„๋ผ๋ฅผ ์„ค์น˜ํ•  ํ•„์š” ์—†์ด ํผ๋ธ”๋ฆญ ํด๋ผ์šฐ๋“œ ํ™˜๊ฒฝ์—์„œ ๋ชจ๋“  ์‹œ์Šคํ…œ์„ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๊ธฐ ๋•Œ๋ฌธ์— KoGPT์˜ ๊ฐœ๋ฐœ ์‹œ๊ฐ„๊ณผ ๋น„์šฉ์„ ๋™์‹œ์— ์ ˆ๊ฐํ•  ์ˆ˜ ์žˆ๋‹ค.\n\n๋†’์€ ์—ฐ์‚ฐ ์ฒ˜๋ฆฌ ์„ฑ๋Šฅ์œผ๋กœ AI ์—ฐ๊ตฌ๋ชจ๋ธ ์—ฐ์‚ฐ ์†๋„๋ฅผ ํš๊ธฐ์ ์œผ๋กœ ํ–ฅ์ƒ์‹œํ‚ฌ ์ˆ˜ ์žˆ๊ณ , ํด๋ผ์šฐ๋“œ ๋ฐฉ์‹์„ ํ™œ์šฉํ•จ์œผ๋กœ์จ ๋‹ค์ˆ˜์˜ ์—ฐ๊ตฌ์ž๋“ค์ด ์œ ์—ฐํ•˜๊ฒŒ ์‹œ์Šคํ…œ์— ์ ‘์†/์‚ฌ์šฉ์ด ๊ฐ€๋Šฅํ•ด ์—ฐ๊ตฌ ํšจ์œจ์„ ๋†’์ผ ๊ฒƒ์œผ๋กœ ๊ธฐ๋Œ€๋œ๋‹ค.\n\n๊น€์ผ๋‘ ์นด์นด์˜ค๋ธŒ๋ ˆ์ธ ๋Œ€ํ‘œ๋Š” "๊ตฌ๊ธ€ ํด๋ผ์šฐ๋“œ์—์„œ ์ œ๊ณตํ•˜๋Š” ํด๋ผ์šฐ๋“œ TPU๋Š” ๋”ฅ๋Ÿฌ๋‹์— ์ตœ์ ํ™”๋˜์–ด ์žˆ์–ด ์งง์€ ๊ธฐ๊ฐ„ ์•ˆ์— ๊ณ ํšจ์œจ์˜ ํ•™์Šต ํŒŒ์ดํ”„๋ผ์ธ์„ ๊ตฌ์ถ•ํ•  ์ˆ˜ ์žˆ์—ˆ๋‹ค"๋ผ๋ฉฐ "๊ตฌ๊ธ€ ํด๋ผ์šฐ๋“œ์™€ ์ง€์†์ ์œผ๋กœ ํ˜‘๋ ฅํ•ด ์ดˆ๊ฑฐ๋Œ€ AI ๋ชจ๋ธ์˜ ์—ฐ๊ตฌ ํšจ์œจ์„ ํ•œ์ธต ๋” ๋Œ์–ด์˜ฌ๋ฆด ์˜ˆ์ •"์ด๋ผ๊ณ  ๋‘ ์นด์นด์˜ค๋ธŒ๋ ˆ์ธ ๋Œ€ํ‘œ๋Š” "๊ตฌ๊ธ€ ํด๋ผ์šฐ๋“œ์—์„œ ์ œ๊ณตํ•˜๋Š” ํด๋ผ์šฐ๋“œ TPU๋Š” ๋”ฅ๋Ÿฌ๋‹์— ์ตœ์ ํ™”๋˜์–ด ์žˆ์–ด ์งง์€ ๊ธฐ๊ฐ„ ์•ˆ์— ๊ณ ํšจ์œจ์˜ ํ•™์Šต ํŒŒ์ดํ”„๋ผ์ธ์„ ๊ตฌ์ถ•ํ•  ์ˆ˜ ์žˆ์—ˆ๋‹ค"๋ผ๋ฉฐ "๊ตฌ๊ธ€ ํด๋ผ์šฐ๋“œ์™€ ์ง€์†์ ์œผ๋กœ ํ˜‘๋ ฅํ•ด ์ดˆ๊ฑฐ๋Œ€ AI ๋ชจ๋ธ์˜ ์—ฐ๊ตฌ ํšจ์œจ์„ ํ•œ์ธต ๋” ๋Œ์–ด์˜ฌ๋ฆด ์˜ˆ์ •"์ด๋ผ๊ณ  ๋‘ ์นด์นด์˜ค๋ธŒ๋ ˆ์• ์ˆ˜ ์žˆ๋„๋ก ์ ๊ทน ์ง€์›ํ•˜๊ฒ ๋‹ค"๋ผ๊ณ  ๊ฐ•์กฐํ–ˆ๋‹ค.''',
        '''์„ธ๊ณ„ 115๊ฐœ ์—ฌ์„ฑยท์ธ๊ถŒ์‹œ๋ฏผ์‚ฌํšŒ๋‹จ์ฒด๊ฐ€ ์œค์„์—ด ๋Œ€ํ†ต๋ น ๋‹น์„ ์ž์˜ \'์—ฌ์„ฑ๊ฐ€์กฑ๋ถ€ ํ์ง€\' ๊ณต์•ฝ์„ ๊ฐ•๋ ฅํ•˜๊ฒŒ ๋น„ํŒํ•˜๋ฉฐ ์ฒ ํšŒ๋ฅผ ์ด‰๊ตฌํ–ˆ๋‹ค.\n\nํ•œ๊ตญ์—ฌ์„ฑ๋‹จ์ฒด์—ฐํ•ฉ์€ 115๊ฐœ ๊ตญ์ œ ์‹œ๋ฏผ๋‹จ์ฒด๊ฐ€ ํ•ฉ๋™์œผ๋กœ ์ž‘์„ฑํ•œ ์„ฑ๋ช…์„ 4์ผ ๊ณต๊ฐœํ–ˆ๋‹ค. ์ด๋“ค ๋‹จ์ฒด๋Š” ์œค ๋‹น์„ ์ž๊ฐ€ "๊ตฌ์กฐ์ ์ธ ์„ฑ์ฐจ๋ณ„์ด ์—†๋‹ค"๊ณ  ๋งํ•˜๊ณ  ์—ฌ๊ฐ€๋ถ€ ํ์ง€๋ฅผ ํ•ต์‹ฌ ๊ณต์•ฝ์œผ๋กœ ๋‚ด๋†“์€ ๊ฒƒ์— ๋Œ€ํ•ด "๊ฐ•ํ•œ ์šฐ๋ ค๋ฅผ ํ‘œํ•œ๋‹ค"๊ณ  ๋ฐํ˜”๋‹ค.\n\n115๊ฐœ ๊ตญ์ œ ์‹œ๋ฏผ๋‹จ์ฒด๋Š” ์œค ๋‹น์„ ์ž์™€ ๊ตญ๋ฏผ์˜ํž˜์ด "์ฝ”๋กœ๋‚˜19 ํŒฌ๋ฐ๋ฏน์œผ๋กœ ์ธํ•œ ๋ถˆํ‰๋“ฑ์˜ ์‹ฌํ™”, ๋งŒ์—ฐํ•œ ์„ฑ์ฐจ๋ณ„๊ณผ ์„ฑํญ๋ ฅ์˜ ํ˜„์‹ค ๋“ฑ ์‹œ๊ธ‰ํ•˜๊ณ  ์ค‘๋Œ€ํ•œ ํ•œ๊ตญ์˜ ์‚ฌํšŒ ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๊ธฐ ์œ„ํ•œ ํ•ฉ๋ฆฌ์ ์ธ ์ •์ฑ…์„ ์ œ์•ˆํ•˜๋Š” ๋Œ€์‹  ์•ˆํ‹ฐํŽ˜๋ฏธ๋‹ˆ์ฆ˜ ๋ฐฑ๋ž˜์‹œ(backlash, ์‚ฌํšŒยท์ •์น˜์  ๋ณ€ํ™”์— ๋Œ€ํ•œ ๋ฐ˜๋ฐœ) ์ •์„œ๋ฅผ ๋ถ€์ถ”๊ธฐ๊ณ  ์ด๋ฅผ ์„ ๊ฑฐ์— ์ ๊ทน์ ์œผ๋กœ ํ™œ์šฉํ–ˆ๋‹ค"๊ณ  ๋น„ํŒํ–ˆ๋‹ค.\n\n์ด์–ด "์œ ์—” ์—ฌ์„ฑ์ง€์œ„์œ„์›ํšŒ ์•„์‹œ์•„ํƒœํ‰์–‘ ๊ทธ๋ฃน ์˜์žฅ์ด์ž ์œ ์—”์ธ๊ถŒ์ด์‚ฌ๊ตญ์œผ๋กœ "์œ ์—” ์—ฌ์„ฑ์ง€์œ„์œ„์›ํšŒ ์•„์‹œ์•„ํƒœํ‰์–‘ ๊ทธ๋ฃน ์˜์žฅ์ด์ž ์œ ์—”์ธ๊ถŒ์ด์‚ฌ๊ตญ์œผ๋กœ "์œ ์—” ์—ฌ์„ฑ์ง€์œ„์œ„์›ํšŒ ์•„์‹œ์•„ํƒœํ‰์–‘ ๊ทธ๋ฃธ๊ถŒ์˜ ์‹ฌ๊ฐํ•œ ํ‡ดํ–‰์ด๋ฉฐ, ํ•œ๊ตญ๋ฟ ์•„๋‹ˆ๋ผ, ์•„์‹œ์•„ ์ง€์—ญ, ๊ตญ์ œ์‚ฌํšŒ์— ํฐ ์•…์˜ํ–ฅ์„ ๋ฏธ์น  ๊ฒƒ"์ด๋ผ๊ณ  ์šฐ๋ คํ–ˆ๋‹ค.\n\n๋‹จ์ฒด๋“ค์€ \'์ ์ ˆํ•œ ์˜ˆ์‚ฐ๊ณผ ์ธ๋ ฅ์„ ๋ณด์žฅ๋ฐ›๋Š” ์„ฑํ‰๋“ฑ ์ •์ฑ… ์ „๋‹ด๊ธฐ๊ตฌ์˜ ํ•„์š”์„ฑ\'์€ 1995๋…„ ์ค‘๊ตญ ๋ฒ ์ด์ง•์—์„œ ์—ด๋ฆฐ ์„ธ๊ณ„์—ฌ์„ฑ๋Œ€ํšŒ์—์„œ ํ•œ๊ตญ ํฌํ•จ 189๊ฐœ๊ตญ์ด ๋งŒ์žฅ์ผ์น˜๋กœ ํ†ต๊ณผ์‹œํ‚จ ๊ตญ์ œ ๊ทœ๋ฒ” \'๋ฒ ์ด์ง• ํ–‰๋™๊ฐ•๋ น\'์— ๋ช…์‹œ๋ผ์žˆ๋‹ค๊ณ  ์งš์—ˆ๋‹ค. ๋˜ ์ง€๋‚œํ•ด ์œ ์—” ์—ฌ์„ฑ์ง€์œ„์œ„์›ํšŒ๊ฐ€ ๋ฒ ์ด์ง• ํ–‰๋™๊ฐ•๋ น์˜ ํšจ๊ณผ์ ์ธ ์ดํ–‰์„ ์œ„ํ•ด ๊ฐ๊ตญ์˜ ์„ฑํ‰๋“ฑ ์ „๋‹ด ๊ธฐ๊ตฌ๋ฅผ ๊ฐ•ํ™”ํ•˜๋ผ๊ณ  ๊ถŒ๊ณ ํ–ˆ๋‹ค๊ณ  ๋ถ€์—ฐํ–ˆ๋‹ค.\n\n์„ฑ๋ช… ์ฐธ์—ฌ ๋‹จ์ฒด๋“ค์€ "ํ•œ๊ตญ์€ ๊ฐ์ข… ๊ฒฝ์ œ์‚ฌํšŒ ์ง€ํ‘œ์—์„œ ์„ ์ง„๊ตญ์˜ ์œ„์น˜์— ์žˆ์ง€๋งŒ ์—ฌ์„ฑ์ธ๊ถŒ์˜ ์ธก๋ฉด์—  ์ฐธ์—ฌ ๋‹จ์ฒด๋“ค์€ "ํ•œ๊ตญ์€ ๊ฐ์ข… ๊ฒฝ์ œ์‚ฌํšŒ ์ง€ํ‘œ์—์„œ ์„ ์ง„๊ตญ์˜ ์œ„์น˜์— ์žˆ์ง€๋งŒ ์—ฌ์„ฑ์ธ๊ถŒ์˜ ์ธก๋ฉด์—  ์ฐธ์—ฌ ๋‹จ์ฒด๋“ค์€ "ํ•œ๊ตญ์€ ๊ฐ์ข… ๊ฒฝ์ œ์‚ฌํšŒ ์ง€ํ‘œ์—์„œ ์„ ์ง„๊ตญ์˜ ์œ„์น˜์— ์žˆ์ง€๋งŒ ์—ฌ์„ฑ์ธ๊ถŒ์˜ ์ธก๋ฉด์—  ์ฐธ์—ฌ ๋‹จ์ฒด๋“ค์€ "ํ•œ๊ตญ์€ ๊ฐ์ข… ๊ฒฝ์ œ์‚ฌํšŒ ์ง€ํ‘œ์—์„œ ์„ ์ง„๊ตญ์˜ ์œ„์น˜์— ์žˆ์ง€๋งŒ ์—ฌ์„ฑ์ธ๊ถŒ์˜ ์„ฑ์—ฐํ•ฉ(1902๋…„ ์ฐฝ๋ฆฝ๋œ ์—ฌ์„ฑ์ธ๊ถŒ ๊ตญ์ œ๊ทœ๋ฒ” ์ฃผ์š” ํ˜‘์ƒ ํŒŒํŠธ๋„ˆ ๋‹จ์ฒด) โ–ณ์—ฌ์„ฑ๊ณผ ๋ฒ•ยท๊ฐœ๋ฐœ์— ๊ด€ํ•œ ์•„์‹œ์•„ํƒœํ‰์–‘ ํฌ๋Ÿผ(์•„์‹œ์•„ํƒœํ‰์–‘ 30๊ฐœ๊ตญ 265๊ฐœ ์—ฌ์„ฑ์ธ๊ถŒ๋‹จ์ฒด์˜ ์—ฐํ•ฉ์ฒด) โ–ณ์•„ํ”„๋ฆฌ์นด ์—ฌ์„ฑ๋ฐœ์ „๊ณผ ์ปค๋ฎค๋‹ˆ์ผ€์ด์…˜ ๋„คํŠธ์›Œํฌ(์•„ํ”„๋ฆฌ์นด 49๊ฐœ๊ตญ 800์—ฌ๊ฐœ ์—ฌ์„ฑ์ธ๊ถŒ๋‹จ์ฒด์˜ ๋„คํŠธ์›Œํฌ) โ–ณํ‰๋“ฑ๊ณผ ์—ฐ๋Œ€๋ฅผ ์œ„ํ•œ ์•„๋ž ์—ฌ์„ฑ ๋„คํŠธ์›Œํฌ ๋“ฑ ์„ธ๊ณ„ ๊ฐ๊ตญ์—์„œ ์—ฌ์„ฑ์ธ๊ถŒ ํ™œ๋™์„ ํŽผ์น˜๊ณ  ์žˆ๋Š” ๋‹จ์ฒด๋“ค์ด ์ฐธ์—ฌํ–ˆ๋‹ค.''',
        '''์‹๋ชฉ์ผ์„ ํ•˜๋ฃจ ์•ž๋‘๊ณ  ๊ฒฝ๊ธฐ๋„ ํ•˜๋‚จ์‹œ ์œ„๋ก€์‹ ๋„์‹œ ์ธ๊ทผ ์•ผ์‚ฐ์—์„œ ๋ถˆ์ด ๋ฐœ์ƒํ•ด ์†Œ๋ฐฉ๋‹น๊ตญ์ด ์ง„ํ™”์— ๋‚˜์„ฐ๋‹ค.\n \n4์ผ ์†Œ๋ฐฉ๋‹น๊ตญ ๋“ฑ์— ๋”ฐ๋ฅด๋ฉด ์ด๋‚  ์˜คํ›„ 7์‹œ 40๋ถ„์ฏค ํ•˜๋‚จ์‹œ ์œ„๋ก€์‹ ๋„์‹œ ๋‚จํ•œ์‚ฐ์„ฑ ์ž๋ฝ์—์„œ ํฐ ๋ถˆ์ด ๋‚ฌ๋‹ค.\n \nํ˜„์žฌ๊นŒ์ง€ ์ธ๋ช…ํ”ผํ•ด๋Š” ํ™•์ธ๋˜์ง€ ์•Š์•˜์ง€๋งŒ, ์‚ฐ ์ผ๋Œ€๋กœ ๋ถˆ์ด ๋ฒˆ์ง€๊ณ  ์žˆ๋Š” ๊ฒƒ์œผ๋กœ ํŒŒ์•…๋๋‹ค.\n \n๋ถˆ์ด ๋‚˜์ž ์†Œ๋ฐฉ๋‹น๊ตญ์€ ๋Œ€์› 81๋ช…, ํŽŒํ”„์ฐจ ๋“ฑ ์žฅ๋น„ 27์—ฌ ๋Œ€๋ฅผ ๋™์›ํ•ด ์ง„ํ™” ์ž‘์—…์„ ํ•˜๊ณ  ์žˆ๋‹ค.\n \n์•ผ๊ฐ„์— ํฐ ๋ถˆ์ด ๋‚˜์ž 119์— ๊ธด๊ธ‰์‹ ๊ณ  50์—ฌ ๊ฑด์ด ์ ‘์ˆ˜๋˜๋Š” ๋“ฑ ์‹œ๋ฏผ๋“ค ์‚ฌ์ด์—์„œ ๋ถˆ์•ˆ์ด ํ™•์‚ฐ๋˜๊ณ  ์žˆ๋‹ค.\n\n์œ„๋ก€์‹ ๋„์‹œ ์ฃผ๋ฏผ ์ด๋ชจ(43)์”จ๋Š” "์ฐฝ๋ฌธ์„ ํ†ตํ•ด ๋ฐ–์„ ๋ฐ”๋ผ๋ณด๋‹ˆ ๋ถˆ๊ฝƒ๋†€์ด๋ฅผ ํ•˜๋Š” ๊ฒƒ์ฒ˜๋Ÿผ ํ™˜ํ–ˆ๋‹ค"๋ฉฐ "๋‚˜๊ฐ€์„œ ํ™•์ธํ•˜๋‹ˆ ์ด๋ฏธ ๊ตฌ๊ธ‰์ฐจ๊ฐ€ ์•„ํŒŒํŠธ ์ฃผ๋ณ€์„ ์—์›Œ์‹ธ๊ณ  ์žˆ์—ˆ๋‹ค"๊ณ  ๋งํ–ˆ๋‹ค.\n \n๊ฐ™์€ ์ง€์—ญ ์ฃผ๋ฏผ ๋ฐ•๋ชจ(33ยท์—ฌ)์”จ๋„ "์ตœ๊ทผ ๊ฐ•์›๋„์—์„œ ํฐ ๋ถˆ์ด ๋‚˜ ์‹œ๋ฏผ๋“ค์ด ํ”ผํ•ด๋ฅผ ์ž…์—ˆ๋Š”๋ฐ, ์šฐ๋ฆฌ๋„ ๊ฐ™์€ ์ฒ˜์ง€๊ฐ™์€ ์ง€์—ญ ์ฃผ๋ฏผ  ๊ฑฑ์ •๋œ๋‹ค"๋ฉฐ "๋‹คํ–‰ํžˆ ๋ฐ”๋žŒ์ด ์•„ํŒŒํŠธ ์ชฝ์ด ์•„๋‹ˆ๋ผ ์‚ฐ์ชฝ์œผ๋กœ ํ–ฅํ•˜๊ณ  ์žˆ์–ด ์žฌ๊ฐ€ ๋‚ ๋ฆฌ๋Š” ๋“ฑ์˜ ํ”ผํ•ด๋Š” ์—†๋‹ค"๊ณ  ๋งํ–ˆ๋‹ค.\n \n์ด ๋ฐ–์— ์ง€์—ญ ์˜จ๋ผ์ธ ์ปค๋ฎค๋‹ˆํ‹ฐ์—๋Š” "์™œ ์ž๊พธ ๋ถˆ์ด ๋‚˜๋‚˜. ์†์ƒํ•˜๊ณ  ๋ฌด์„ญ๋‹ค", "์— ์ง€์—ญ ์˜จ๋ผ์ธ ์ปค๋ฎค๋‹ˆํ‹ฐ์—๋Š” "์™œ ์ž๊พธ ๋ถˆ์ด ๋‚˜๋‚˜. ์†์ƒํ•˜๊ณ  ๋ฌด์„ญ๋‹ค", "์— ์ง€ ์•„์— ์ง€์—ญ ์˜จ๋ผ์ธ ์ปค๋ฎค๋‹ˆํ‹ฐ์—๋Š” "์™œ ์ž๊พธ ๋ถˆ์ด ๋‚˜๋‚˜. ์†์ƒํ•˜๊ณ  ๋ฌด์„ญ๋‹ค", "์— ์ง€์—ญ๊ฒช์— ์ง€์—ญ ์˜จ๋ผ์ธ ์ปค๋ฎค๋‹ˆํ‹ฐ์—๋Š” "์™œ ์ž๊พธ ๋ถˆ์ด ๋‚˜๋‚˜. ์†์ƒํ•˜๊ณ  ๋ฌด์„ญ๋‹ค", "์— ์ง€์—ญ ์˜จ๋ผ์ธ  ํ™”์žฌ๋ฅผ ๋” ๋น ๋ฅธ ์‹œ๊ฐ„์— ์ง„์••ํ•  ์ˆ˜ ์žˆ์ง€๋งŒ, ๋Šฆ์€ ๋ฐค์ด๋ผ ์–ด๋ ค์šด ์ƒํ™ฉ"์ด๋ผ๋ฉฐ "๋‹ค๋งŒ ์ตœ๊ทผ ๋ฐœ์ƒํ•œ ์‚ฐ๋ถˆ์ฒ˜๋Ÿผ ๋ฒ”์œ„๊ฐ€ ๋„“์€ ์ง€์—ญ์ด ์•„๋‹ˆ๋ผ ์†Œ๋ฐฉ์ธ๋ ฅ์œผ๋กœ ์ง„ํ™”๊ฐ€ ๊ฐ€๋Šฅํ•˜๋‹ค. ๋น ๋ฅด๋ฉด ๋‚ด์ผ ์•„์นจ๊นŒ์ง€๋Š” ์ง„์••์ด ๊ฐ€๋Šฅํ•  ๊ฒƒ ๊ฐ™๋‹ค"๊ณ  ๋งํ–ˆ๋‹ค.\n \n๊ฒฝ๊ธฐ๋„ ๊ด€๊ณ„์ž๋„ "์‚ฐ์„ฑ ํ›ผ์†์ด๋‚˜ ์ธ๋ช…ํ”ผํ•ด ๊ฐ€๋Šฅ์„ฑ์€ ๋‚ฎ์€ ์ƒํƒœ"๋ผ๋ฉฐ "ํŠน์ˆ˜ ์ง„ํ™”๋Œ€๋ฅผ ํˆฌ์ž…ํ•œ ์ƒํ™ฉ์ด๋ผ ์ง„ํ™”์—๋Š” ํฐ ์–ด๋ ค์›€์€ ์—†์„ ๊ฒƒ์œผ๋กœ ํŒ๋‹จํ•˜๊ณ  ์žˆ๋‹ค"๊ณ  ํ–ˆ๋‹ค.''',
        '''์ •๋ถ€๊ฐ€ ์ฐจ๋Ÿ‰์šฉ ๋ฐฐํ„ฐ๋ฆฌ ์žฌํ™œ์šฉ์„ ์œ„ํ•œ ๊ธฐ์ˆ  ํ‘œ์ค€ ๋งˆ๋ จ ์ž‘์—…์— ์ฐฉ์ˆ˜ํ–ˆ๋‹ค. ์ „๊ธฐ์ฐจ ๋ณด๊ธ‰ ์†๋„๊ฐ€ ๋นจ๋ผ์ง€๋ฉด์„œ 2030๋…„์—” 8๋งŒ๊ฐœ ๋„˜๋Š” ์ „๊ธฐ์ฐจ '์‚ฌ์šฉ ํ›„ ๋ฐฐํ„ฐ๋ฆฌ'(ํ๋ฐฐํ„ฐ๋ฆฌ)๊ฐ€ ๋ฐฐ์ถœ๋  ๊ฒƒ์ด๋ž€ ์ „๋ง์ด ๋‚˜์˜ค๋Š” ๊ฐ€์šด๋ฐ ๋ฐฐํ„ฐ๋ฆฌ ์ œ์กฐ ๋‹จ๊ณ„๋ถ€ํ„ฐ ์žฌํ™œ์šฉ๊นŒ์ง€ ์ ์šฉ ๊ฐ€๋Šฅํ•œ ํ‘œ์ค€์„ ๋งŒ๋“ค๊ฒ ๋‹ค๋Š” ๊ณ„ํš์ด๋‹ค.\n\n4์ผ ์ •๋ถ€์— ๋”ฐ๋ฅด๋ฉด ์‚ฐ์—…ํ†ต์ƒ์ž์›๋ถ€ ์‚ฐํ•˜ ๊ตญ๊ฐ€๊ธฐ์ˆ ํ‘œ์ค€์›(๊ตญํ‘œ์›)์€ ์ง€๋‚œ๋‹ฌ ์ค‘์ˆœ '์ž๋™์ฐจ ์‚ฌ์šฉ ํ›„ ๋ฐฐํ„ฐ๋ฆฌ ์žฌํ™œ์šฉ์„ ์œ„ํ•œ ๊ตญ๋‚ดยท์™ธ ๊ทœ์ œ ๋ฐ ํ‘œ์ค€ํ™” ๋Œ€์‘ ๋ฐฉ์•ˆ ์—ฐ๊ตฌ' ์šฉ์—ญ์„ ๋ฐœ์ฃผํ–ˆ๋‹ค. ๊ตญํ‘œ์›์€ ์—ฐ๊ตฌ์šฉ์—ญ์„ ํ†ตํ•ด ์˜ฌํ•ด ๋ง๊นŒ์ง€ ์ •๋ถ€ยท์‚ฐ์—…๊ณ„ยทํ•™๊ณ„ ๋“ฑ ์ฐจ๋Ÿ‰์šฉ ๋ฐฐํ„ฐ๋ฆฌ ์žฌํ™œ์šฉ์— ๊ด€ํ•œ ์ดํ•ด ๊ด€๊ณ„์ž๋“ค์˜ ์˜๊ฒฌ์„ ์ˆ˜๋ ดํ•˜๊ณ  ์–‘๊ทน์žฌ ๋“ฑ ๋ฐฐํ„ฐ๋ฆฌ ์‚ฐ์—… ๋™ํ–ฅ์„ ํŒŒ์•…ํ•ด ์ด๋ฅด๋ฉด 2025๋…„ ๊ธฐ์ˆ  ํ‘œ์ค€์„ ๋งŒ๋“ค ๊ณ„ํš์ด๋‹ค.\n\n์ •๋ถ€์™€ ์—…๊ณ„๋Š” ์ „๊ธฐ์ฐจ์šฉ ๋ฐฐํ„ฐ๋ฆฌ์˜ ์‚ฌ์šฉ ๊ธฐ๊ฐ„์„ ํ†ต์ƒ 10๋…„์œผ๋กœ ๋ณด๊ณ  ์žˆ๋‹ค. 2010๋…„์„ ์ „ํ›„ํ•ด ์šฐ๋ฆฌ๋‚˜๋ผ ์ „๊ธฐ์ฐจ ๋ณด๊ธ‰์ด ์‹œ์ž‘๋œ ์ ์„ ๊ณ ๋ คํ•˜๋ฉด 2020๋…„ ์ดํ›„ ์ „๊ธฐ์ฐจ ์‚ฌ์šฉ ํ›„ ๋ฐฐํ„ฐ๋ฆฌ ๋ฐฐ์ถœ์ด ๋ณธ๊ฒฉํ™”๋œ๋‹ค๋Š” ์–˜๊ธฐ๋‹ค. ์ •๋ถ€๋Š” ์ „๊ธฐ์ฐจ ์‚ฌ์šฉ ํ›„ ๋ฐฐํ„ฐ๋ฆฌ ๋ฐฐ์ถœ๋Ÿ‰์ด 2020๋…„ 4700์—ฌ๊ฐœ์— ์ด์–ด 2025๋…„ 1๋งŒ3000์—ฌ๊ฐœ๋กœ ๋Š˜์–ด๋‚˜๊ณ  2030๋…„์ด๋ฉด 8๋งŒ์—ฌ๊ฐœ ์ด์ƒ์œผ๋กœ ๊ธ‰์ฆํ•  ๊ฒƒ์œผ๋กœ ๋ณด๊ณ  ์žˆ๋‹ค.'''
    )   
)
context = st.text_area("Context", value=context_option, height=300, on_change=None)


if st.button("Submit", key="context"):
	with st.spinner("Wait for it...โณ"):
		summarized_text = summarize(context)
		st.subheader('๐Ÿ“ Result')
		st.success(summarized_text)