File size: 1,160 Bytes
9fa6c15
 
 
2dfcad3
9fa6c15
2dfcad3
 
 
9fa6c15
08d728e
2dfcad3
08d728e
28032f0
2dfcad3
9fa6c15
2dfcad3
 
08d728e
9fa6c15
2dfcad3
08d728e
2dfcad3
9fa6c15
2dfcad3
 
 
 
 
7f970b2
2dfcad3
 
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
import gradio as gr
from utils_model import ModelFactory

class GradioAppManager():

    def __init__(self, model_type):
        model_factory_obj = ModelFactory()
        self.model = model_factory_obj.create_model(model_type)

    def __retrieve_embeddings__(self, input_queries_df, limitnoffeatures):
        queries_list = input_queries_df.values
        queries_embeddings_list = self.model.retrieve_embeddings_from_texts_list(queries_list, limitnoffeatures=limitnoffeatures)

        return queries_embeddings_list

    def build(self):
        gr_input_dataframe = gr.Dataframe(headers=['queries'], datatype=['str'], row_count=2, col_count=(1, 'fixed'))
        gr_number_limitnoffeatures = gr.Number(50)

        app = gr.Interface(fn=self.__retrieve_embeddings__, 
                        inputs=[gr_input_dataframe, gr_number_limitnoffeatures], 
                        outputs="dataframe")

        return app

    def run(self, app):
        app.launch(server_name='0.0.0.0')

gradio_app_manager_obj = GradioAppManager('multilingual-e5-large-ft-sts-spanish-matryoshka-768-64-5e')
app = gradio_app_manager_obj.build()
gradio_app_manager_obj.run(app)