・自然言語処理の技術をAPI化し、レスポンス結果で受け取るとき、ベクトル化の部分などで時間が掛かりタイムアウトエラーになることがある。
・その対処法として、ベクトル化データをnumpyフォーマットで保存する方法。
# モデルファイルのパスを取得
file_path = f'{os.path.dirname(os.path.abspath(__file__))}/data/SentenceBert_Triplet'
model = SentenceTransformer(file_path) # モデルを読み込み
## 結果で出力するクエリをベクトル化
#sentence_vectors = model.encode(sentences)
## ベクトルデータを numpy フォーマットでファイル保存
## モデルに変更があれば、作り直す必要がある
#np.save('/tmp/sentence_vectors.npy', sentence_vectors)
# ベクトルデータファイルのパス
vector_file_path = f'{os.path.dirname(os.path.abspath(__file__))}/data/sentence_vectors.npy'
# 保存しておいたベクトルデータファイルのデータを読み込む
sentence_vectors = np.load(vector_file_path)