Spaces:
Sleeping
Sleeping
import gradio as gr | |
from sentence_transformers import SentenceTransformer, util | |
model_name = 'nq-distilbert-base-v1' | |
bi_encoder = SentenceTransformer("./") | |
top_k = 5 | |
sentences = [ | |
"a happy person is a person how can do what he want with his money", | |
"That is a happy dog ho bark alot", | |
"Today is a sunny day so that a happy person can walk on the street" | |
] | |
# vector embeddings created from dataset | |
corpus_embeddings = bi_encoder.encode(sentences, convert_to_tensor=True, show_progress_bar=True) | |
def search(query): | |
# Encode the query using the bi-encoder and find potentially relevant passages | |
question_embedding = bi_encoder.encode(query) | |
hits = util.semantic_search(question_embedding, corpus_embeddings, top_k=top_k) | |
hits = hits[0] # Get the hits for the first query | |
# Output of top-k hits | |
print("Input question:", query) | |
print("Results") | |
for hit in hits: | |
print("\t{:.3f}\t{}".format(hit['score'], sentences[hit['corpus_id']])) | |
return hits | |
def greet(name): | |
hittt = search(query=name) | |
x=dict() | |
for hit in hittt: | |
score=hit['score'] | |
sentence=sentences[hit['corpus_id']] | |
buffer={sentence:score} | |
x.update(buffer) | |
return x | |
import dill | |
def greet1(data): | |
# pdf=data.get('pdf') | |
print(data) | |
x=eval(data) | |
y=x.get('pdf') | |
print(y) | |
print(type(y)) | |
print(type(dill.loads(eval(y)))) | |
print(dill.loads(eval(y)).read()) | |
return y | |
iface = gr.Blocks() | |
with iface: | |
name = gr.Textbox(label="Name") | |
output = gr.Textbox(label="Output Box") | |
greet_btn = gr.Button("Greet") | |
greet_btn.click(fn=greet, inputs=name, outputs=output, api_name="greet") | |
greet1_btn = gr.Button("Greet1") | |
greet1_btn.click(fn=greet1, inputs=name, outputs=output, api_name="testing") | |
iface.launch() |