Spaces:
Running
Running
cleaned codes
Browse files
app.py
CHANGED
@@ -1,24 +1,18 @@
|
|
1 |
-
from transformers import AutoTokenizer, AutoModelForMaskedLM
|
2 |
import torch
|
|
|
|
|
|
|
3 |
BERTTokenizer = AutoTokenizer.from_pretrained("cl-tohoku/bert-base-japanese")
|
4 |
BERTModel = AutoModelForMaskedLM.from_pretrained("cl-tohoku/bert-base-japanese")
|
5 |
|
6 |
-
from transformers import AutoTokenizer, AutoModelForSeq2SeqLM
|
7 |
mT5Tokenizer = AutoTokenizer.from_pretrained("google/mt5-base")
|
8 |
mT5Model = AutoModelForSeq2SeqLM.from_pretrained("google/mt5-base")
|
9 |
|
10 |
-
from transformers import AutoTokenizer, AutoModelForCausalLM
|
11 |
GPT2Tokenizer = AutoTokenizer.from_pretrained("rinna/japanese-gpt2-medium")
|
12 |
GPT2Model = AutoModelForCausalLM.from_pretrained("rinna/japanese-gpt2-medium")
|
13 |
|
14 |
-
import gradio as gr
|
15 |
-
|
16 |
votes=[]
|
17 |
-
BERT
|
18 |
-
mT5=None
|
19 |
-
GPT2=None
|
20 |
-
def MELCHIOR(sue):
|
21 |
-
#BERT
|
22 |
allow=BERTTokenizer("承認").input_ids[1]
|
23 |
deny=BERTTokenizer("否定").input_ids[1]
|
24 |
output=BERTModel(**BERTTokenizer('MELCHIORは科学者としての人格を持っています。人間とMELCHIORの対話です。人間「'+sue+'。承認 か 否定 のどちらかで答えてください。」'+"MELCHIOR 「[MASK]」",return_tensors="pt")).logits
|
@@ -27,8 +21,7 @@ def MELCHIOR(sue):
|
|
27 |
votes.append(1 if mask[allow]>mask[deny] else -1)
|
28 |
return "承認" if mask[allow]>mask[deny] else "否定"
|
29 |
|
30 |
-
def BALTHASAR(sue)
|
31 |
-
#mT5
|
32 |
allow=mT5Tokenizer("承認").input_ids[1]
|
33 |
deny=mT5Tokenizer("否定").input_ids[1]
|
34 |
encoder_output=mT5Model.encoder(**mT5Tokenizer('BALTHASARは母としての人格としての人格を持っています。人間とBALTHASARの対話です。人間「'+sue+'。承認 か 否定 のどちらかで答えてください。」'+"BALTHASAR 「<X>」",return_tensors="pt"))
|
@@ -47,8 +40,7 @@ def BALTHASAR(sue):
|
|
47 |
votes.append(1 if probs[i+1][allow]>probs[i+1][deny] else -1)
|
48 |
return "承認" if probs[i+1][allow]>probs[i+1][deny] else "否定"
|
49 |
|
50 |
-
def CASPER(sue)
|
51 |
-
#GPT2
|
52 |
allow=GPT2Tokenizer("承認").input_ids[1]
|
53 |
deny=GPT2Tokenizer("否定").input_ids[1]
|
54 |
probs=GPT2Model(**GPT2Tokenizer('CASPERは女としての人格を持っています。人間とCASPERの対話です。人間「'+sue+'。承認 か 否定 のどちらかで答えてください。」'+"CASPER 「",return_tensors="pt")).logits[0]
|
|
|
|
|
1 |
import torch
|
2 |
+
import gradio as gr
|
3 |
+
from transformers import AutoTokenizer, AutoModelForMaskedLM, AutoModelForSeq2SeqLM, AutoModelForCausalLM
|
4 |
+
|
5 |
BERTTokenizer = AutoTokenizer.from_pretrained("cl-tohoku/bert-base-japanese")
|
6 |
BERTModel = AutoModelForMaskedLM.from_pretrained("cl-tohoku/bert-base-japanese")
|
7 |
|
|
|
8 |
mT5Tokenizer = AutoTokenizer.from_pretrained("google/mt5-base")
|
9 |
mT5Model = AutoModelForSeq2SeqLM.from_pretrained("google/mt5-base")
|
10 |
|
|
|
11 |
GPT2Tokenizer = AutoTokenizer.from_pretrained("rinna/japanese-gpt2-medium")
|
12 |
GPT2Model = AutoModelForCausalLM.from_pretrained("rinna/japanese-gpt2-medium")
|
13 |
|
|
|
|
|
14 |
votes=[]
|
15 |
+
def MELCHIOR(sue):#BERT
|
|
|
|
|
|
|
|
|
16 |
allow=BERTTokenizer("承認").input_ids[1]
|
17 |
deny=BERTTokenizer("否定").input_ids[1]
|
18 |
output=BERTModel(**BERTTokenizer('MELCHIORは科学者としての人格を持っています。人間とMELCHIORの対話です。人間「'+sue+'。承認 か 否定 のどちらかで答えてください。」'+"MELCHIOR 「[MASK]」",return_tensors="pt")).logits
|
|
|
21 |
votes.append(1 if mask[allow]>mask[deny] else -1)
|
22 |
return "承認" if mask[allow]>mask[deny] else "否定"
|
23 |
|
24 |
+
def BALTHASAR(sue):#mT5
|
|
|
25 |
allow=mT5Tokenizer("承認").input_ids[1]
|
26 |
deny=mT5Tokenizer("否定").input_ids[1]
|
27 |
encoder_output=mT5Model.encoder(**mT5Tokenizer('BALTHASARは母としての人格としての人格を持っています。人間とBALTHASARの対話です。人間「'+sue+'。承認 か 否定 のどちらかで答えてください。」'+"BALTHASAR 「<X>」",return_tensors="pt"))
|
|
|
40 |
votes.append(1 if probs[i+1][allow]>probs[i+1][deny] else -1)
|
41 |
return "承認" if probs[i+1][allow]>probs[i+1][deny] else "否定"
|
42 |
|
43 |
+
def CASPER(sue):#GPT2
|
|
|
44 |
allow=GPT2Tokenizer("承認").input_ids[1]
|
45 |
deny=GPT2Tokenizer("否定").input_ids[1]
|
46 |
probs=GPT2Model(**GPT2Tokenizer('CASPERは女としての人格を持っています。人間とCASPERの対話です。人間「'+sue+'。承認 か 否定 のどちらかで答えてください。」'+"CASPER 「",return_tensors="pt")).logits[0]
|