Spaces:
Build error
Build error
from backend import Backend | |
import frontend | |
import numpy as np | |
from pandas import DataFrame | |
import pickle | |
with open("./himitsudogu_db.pkl", "rb") as file: | |
himitsudogu_db: dict = pickle.load(file) | |
class LocaltestBackend(Backend): | |
""" | |
ローカル開発環境にSentence BERTを連れ込んでくるのは無理なので、 | |
文章をベクトル化する行程は乱数発生とする。 | |
""" | |
def __init__(self): | |
super().__init__() | |
self.feature_matrix = himitsudogu_db["feature_matrix_s"][ | |
"sonoisa/sentence-bert-base-ja-mean-tokens-v2" | |
] | |
def on_submit_button_press(self, query: str) -> DataFrame: | |
query_feature_vector = np.random.random((768,)) | |
cs_s = self.feature_matrix @ query_feature_vector | |
ranked_index_s = np.argsort(cs_s)[::-1] | |
output = DataFrame(columns=["類似度", "名前", "説明"]) | |
for rank, i in enumerate(ranked_index_s[:20], 1): | |
output.loc[rank] = [ | |
cs_s[i], | |
himitsudogu_db["name_s"][i], | |
himitsudogu_db["description_s"][i], | |
] | |
return output | |
frontend.launch_frontend(backend=LocaltestBackend()) |