vivaceailab commited on
Commit
e80fffd
ยท
verified ยท
1 Parent(s): bb1367b

Upload 2 files

Browse files
Files changed (2) hide show
  1. app.py +28 -0
  2. requirements.txt +8 -0
app.py ADDED
@@ -0,0 +1,28 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ # app.py
2
+ from fastai.text.all import load_learner
3
+ import gradio as gr
4
+
5
+ # ํ•™์Šต๋œ ๋ชจ๋ธ ํŒŒ์ผ ๋กœ๋“œ ('model.pkl'์€ ์‹คํ–‰ ๋””๋ ‰ํ† ๋ฆฌ์— ์œ„์น˜)
6
+ learn = load_learner('model.pkl')
7
+
8
+ # ํ•œ๊ตญ์–ด ์งˆ๋ณ‘ ๋ชฉ๋ก (๋ชจ๋ธ ์ถœ๋ ฅ ์ˆœ์„œ์— ๋งž์ถฐ ์„ค์ •)
9
+ categories = ['์•Œ๋ ˆ๋ฅด๊ธฐ', '๋นˆํ˜ˆ', '๊ธฐ๊ด€์ง€์—ผ', '๋‹น๋‡จ๋ณ‘', '์„ค์‚ฌ', 'ํ”ผ๋กœ', '๋…๊ฐ', '๋ง๋ผ๋ฆฌ์•„', '์ŠคํŠธ๋ ˆ์Šค']
10
+
11
+ def classify_korean(txt):
12
+ """
13
+ ํ•œ๊ตญ์–ด๋กœ ์ž…๋ ฅ๋œ ์ฆ์ƒ์„ ๋ฐ›์•„ ๊ฐ ์งˆ๋ณ‘๋ณ„ ํ™•๋ฅ ์„ ๋ฐ˜ํ™˜ํ•ฉ๋‹ˆ๋‹ค.
14
+ """
15
+ _, _, probs = learn.predict(txt)
16
+ return {cat: float(probs[i]) for i, cat in enumerate(categories)}
17
+
18
+ # Gradio ์ธํ„ฐํŽ˜์ด์Šค ์„ค์ •
19
+ iface = gr.Interface(
20
+ fn=classify_korean,
21
+ inputs=gr.Textbox(lines=3, label='์ฆ์ƒ์„ ์ž์„ธํžˆ ์ž…๋ ฅํ•˜์„ธ์š”'),
22
+ outputs=gr.Label(num_top_classes=len(categories), label='์งˆ๋ณ‘๋ณ„ ํ™•๋ฅ '),
23
+ examples=['๋ชฉ์ด ์•„ํ”„๊ณ  ๊ธฐ์นจ์ด ๋‚˜์š”', '์—ด์ด ๋‚˜๊ณ  ๋ชธ์‚ด ๊ธฐ์šด์ด ์žˆ์–ด์š”'],
24
+ description='์ฆ์ƒ์„ ์ž…๋ ฅํ•˜๋ฉด ํ•ด๋‹น ์งˆ๋ณ‘๋ณ„ ํ™•๋ฅ ์„ ํ•œ๊ตญ์–ด๋กœ ๋ณด์—ฌ์ค๋‹ˆ๋‹ค.'
25
+ )
26
+
27
+ if __name__ == '__main__':
28
+ iface.launch()
requirements.txt ADDED
@@ -0,0 +1,8 @@
 
 
 
 
 
 
 
 
 
1
+ # requirements.txt
2
+ fastai>=2.7.0
3
+ fastcore>=1.5.0
4
+ torch>=2.0.0
5
+ konlpy>=0.6.0
6
+ mecab-python3>=1.0.0
7
+ sentencepiece>=0.1.96
8
+ gradio>=4.16.0