File size: 1,729 Bytes
a779273
 
 
421e27d
a779273
 
 
ced76fc
ad445e5
a779273
 
ced76fc
a779273
 
ad445e5
a779273
421e27d
 
 
 
 
 
 
 
ad445e5
a779273
 
 
785b2ef
421e27d
ad445e5
ced76fc
 
a779273
ad445e5
ced76fc
ad445e5
a779273
 
ad445e5
a779273
 
 
 
 
 
 
 
 
ced76fc
a779273
 
 
 
 
 
 
 
421e27d
 
 
 
 
a779273
 
 
 
 
 
 
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
62
63
64
65
66
67
68
69
70
71
# --- Imports libs ---
import gradio as gr
import pandas as pd
import configparser


# --- Imports modules ---
from modules.model_embbeding import Embedding


# --- Imports interfaces ---
from interfaces.interface_WordExplorer import interface as wordExplorer_interface
from interfaces.interface_BiasWordExplorer import interface as biasWordExplorer_interface


# --- Tool config ---
cfg = configparser.ConfigParser()
cfg.read('tool.cfg')

LANGUAGE            = cfg['INTERFACE']['language']
EMBEDDINGS_PATH     = cfg['WORD_EXPLORER']['embeddings_path']
NN_METHOD           = cfg['WORD_EXPLORER']['nn_method']
MAX_NEIGHBORS       = int(cfg['WORD_EXPLORER']['max_neighbors'])
AVAILABLE_LOGS      = cfg['LOGS'].getboolean('available_logs')


# --- Init classes ---
embedding = Embedding(
    path=EMBEDDINGS_PATH,
    limit=100_000,
    randomizedPCA=False,
    max_neighbors=MAX_NEIGHBORS,
    nn_method=NN_METHOD
)


# --- Init Vars ---
labels = pd.read_json(f"language/{LANGUAGE}.json")["app"]


# --- Main App ---
INTERFACE_LIST = [
    biasWordExplorer_interface(
        embedding=embedding,
        available_logs=AVAILABLE_LOGS,
        lang=LANGUAGE),
    wordExplorer_interface(
        embedding=embedding,
        available_logs=AVAILABLE_LOGS,
        max_neighbors=MAX_NEIGHBORS,
        lang=LANGUAGE),
]

TAB_NAMES = [
    labels["biasWordExplorer"],
    labels["wordExplorer"],
]

# Skip data tab when using other than spanish language
if LANGUAGE != 'es':
    INTERFACE_LIST = INTERFACE_LIST[:2] + INTERFACE_LIST[3:]
    TAB_NAMES = TAB_NAMES[:2] + TAB_NAMES[3:]

iface = gr.TabbedInterface(
    interface_list=INTERFACE_LIST, 
    tab_names=TAB_NAMES
)

iface.queue(concurrency_count=8)
iface.launch(debug=False)