Spaces:
Runtime error
Runtime error
import gradio as gr | |
import sentence_transformers | |
from sentence_transformers import SentenceTransformer | |
import torch | |
from sentence_transformers.util import semantic_search | |
import pandas as pd | |
model = SentenceTransformer('gart-labor/eng-distilBERT-se-eclass') | |
corpus = pd.read_json('corpus.jsonl', lines = True, encoding = 'utf-8') | |
def predict(name, description): | |
text = 'Description: '+ description + '; Name: ' + name | |
query_embedding = model.encode(text, convert_to_tensor=True) | |
corpus_embeddings = torch.Tensor(corpus["embeddings"]) | |
output = sentence_transformers.util.semantic_search(query_embedding, corpus_embeddings, top_k = 5) | |
preferedName1 = corpus.iloc[output[0][0].get('corpus_id'),2] | |
definition1 = corpus.iloc[output[0][0].get('corpus_id'),1] | |
IRDI1 = corpus.iloc[output[0][0].get('corpus_id'),4] | |
score1 = output[0][0].get('score') | |
return preferedName1, definition1, IRDI1, score1 | |
interface = gr.Interface(fn = predict, | |
inputs = [gr.Textbox(label="Name:", placeholder="Name of the Pump Property", lines=1), gr.Textbox(label="Description:", placeholder="Description of the Pump Property", lines=1)], | |
outputs = [gr.Textbox(label = 'preferedName'),gr.Textbox(label = 'definition'), gr.Textbox(label = 'IDRI'),gr.Textbox(label = 'score')], | |
#outputs = [gr.Dataframe(row_count = (5, "fixed"), col_count=(3, "fixed"), label="Predictions", headers=['ECLASS preferedName', 'ECLASS IRDI', 'simularity score'])], | |
examples = [['Device type', 'describing a set of common specific characteristics in products or goods'], ['Item type','the type of product, an item can be assigned to'], | |
['Nominal power','power being consumed by or dissipated within an electric component as a variable'], ['Power consumption', 'power that is typically taken from the auxiliary power supply when the device is operating normally']], | |
#theme = 'huggingface', | |
title = 'ECLASS-Property-Search', description = "This is a semantic search algorithm that mapps unknown pump properties to the ECLASS standard.", | |
article = """<center><Strong><font size="4em">Functionality and further development of the demo</font></strong></center> | |
<img src='https://imagizer.imageshack.com/img924/6072/NhrX5g.png' width=600p>""") | |
interface.launch() |