TomokiFujihara commited on
Commit
62d7d53
1 Parent(s): c65685a

Create app.py

Browse files
Files changed (1) hide show
  1. app.py +38 -0
app.py ADDED
@@ -0,0 +1,38 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ # transformersとtorch、Gradioをインポート
2
+ from transformers import AutoTokenizer, AutoModel
3
+ import torch
4
+ import numpy as np
5
+ import gradio as gr
6
+
7
+ # トークナイザーとモデルをロードする
8
+ tokenizer = AutoTokenizer.from_pretrained("studio-ousia/luke-japanese-base-lite")
9
+ model = AutoModel.from_pretrained("TomokiFujihara/luke-japanese-base-lite-offensiveness-estimation")
10
+
11
+ # txt入力を受け取り、それを使用して新しいtxtを生成する関数
12
+ def generate(text):
13
+ # 入力テキストをトークナイズ
14
+ inputs = tokenizer.encode_plus(text, return_tensors='pt')
15
+ # トークナイズされたテキストを使用して攻撃性を推定
16
+ outputs = np.array(model(**inputs)[:3])
17
+ # スコアを算出
18
+ min = min(outputs)
19
+ if min < 0:
20
+ outputs = outputs - min
21
+ score = outputs / np.sum(outputs)
22
+ prediction = f'Not Offensive: {outputs[0]}, Gray-area: {outputs[1]}, Offensive: {outputs[1]}'
23
+ # デコードされたテキストを関数から返す
24
+ return prediction
25
+
26
+ # Gradio UIを作成
27
+ iface = gr.Interface(
28
+ # 上記で定義したテキスト生成関数を使用
29
+ generate,
30
+ # 入力としてテキストボックスを使用
31
+ inputs = gr.Textbox(label = "Input a text", default = "攻撃性を評価したいコメントを入力してください."),
32
+ # 出力はテキスト形式
33
+ outputs="text",
34
+ # UIのタイトル設定
35
+ title = "Mr Bot🤖")
36
+
37
+ # Gradio UIを起動
38
+ iface.launch()