File size: 1,714 Bytes
12ba4ff
52f43c9
0dc3afb
52f43c9
 
 
805f6fe
 
 
 
 
 
bb86df1
 
47cfcec
 
 
17ebaff
46cd5e7
b93d861
9cf8085
 
 
46cd5e7
9cf8085
50df5e2
f526817
9cf8085
52f43c9
 
 
9cf8085
52f43c9
9cf8085
47cfcec
9cf8085
47cfcec
9cf8085
47cfcec
50df5e2
47cfcec
9cf8085
47cfcec
9cf8085
47cfcec
50df5e2
 
47cfcec
9cf8085
47cfcec
 
40ad2a7
47cfcec
f283d99
40ad2a7
47cfcec
9cf8085
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
from transformers import AutoTokenizer, AutoModelForSequenceClassification, pipeline
import torch
import pickle
import streamlit as st
device = torch.device("cuda") if torch.cuda.is_available() else torch.device("cpu")

# model_name = "MoritzLaurer/mDeBERTa-v3-base-mnli-xnli"
# tokenizer = AutoTokenizer.from_pretrained(model_name)
# model = AutoModelForSequenceClassification.from_pretrained(model_name)

classifier = pipeline("zero-shot-classification", model="MoritzLaurer/mDeBERTa-v3-base-mnli-xnli")

# with open('chapter_titles.pkl', 'rb') as file:
#     titles_astiko = pickle.load(file)
# labels1 = ["κληρονομικό", "ακίνητα", "διαζύγιο"]
# # labels2 = ["αποδοχή κληρονομιάς", "αποποίηση", "διαθήκη"]
# # labels3 = ["μίσθωση", "κυριότητα", "έξωση", "απλήρωτα νοίκια"]


# titles_astiko = ["γάμος", "αλλοδαπός", "φορολογία", "κληρονομικά", "στέγη", "οικογενειακό", "εμπορικό","κλοπή","απάτη"]
# Load dictionary from the file using pickle
with open('my_dict.pickle', 'rb') as file:
    dictionary = pickle.load(file)

def classify(text,labels):
    output = classifier(text, labels, multi_label=False)
    
    return output


text = st.text_input('Enter some text:')  # Input field for new text

if text:

    labels = list(dictionary)
    
    output = classify(text,labels)

    output = output["labels"][0]

    labels = list(dictionary[output])

    output2 = classify(text,labels)

    output2 = output2["labels"][0]


    answer = dictionary[output][output2]

    st.text(output)
    st.text(output2)

    st.text(answer)