Add image query
Browse files
app.py
CHANGED
@@ -310,11 +310,14 @@ def encode_image(image_filename, model):
|
|
310 |
return image_embedding
|
311 |
|
312 |
|
313 |
-
|
314 |
-
|
|
|
|
|
315 |
description_text.text("日本語CLIPモデル読み込み中... ")
|
316 |
device = "cuda" if torch.cuda.is_available() else "cpu"
|
317 |
model = ClipModel("sonoisa/clip-vit-b-32-japanese-v1", device=device)
|
|
|
318 |
|
319 |
pyminizip.uncompress(
|
320 |
"clip_zeroshot_irasuto_items_20210224.pq.zip", st.secrets["ZIP_PASSWORD"], None, 1
|
@@ -326,13 +329,15 @@ def load_model_and_data():
|
|
326 |
sentence_vectors = np.stack(df["sentence_vector"])
|
327 |
image_vectors = np.stack(df["image_vector"])
|
328 |
|
329 |
-
|
|
|
|
|
330 |
|
331 |
|
332 |
-
st.
|
333 |
-
|
334 |
-
|
335 |
-
|
336 |
|
337 |
description_text.text("日本語CLIPモデル(ゼロショット)を用いて、説明文の意味が近い「いらすとや」画像を検索します。\nキーワードを列挙するよりも、自然な文章を入力した方が精度よく検索できます。\n画像は必ずリンク先の「いらすとや」さんのページを開き、そこからダウンロードしてください。")
|
338 |
|
|
|
310 |
return image_embedding
|
311 |
|
312 |
|
313 |
+
st.title("いらすと検索(日本語CLIPゼロショット)")
|
314 |
+
description_text = st.empty()
|
315 |
+
|
316 |
+
if "model" not in st.session_state:
|
317 |
description_text.text("日本語CLIPモデル読み込み中... ")
|
318 |
device = "cuda" if torch.cuda.is_available() else "cpu"
|
319 |
model = ClipModel("sonoisa/clip-vit-b-32-japanese-v1", device=device)
|
320 |
+
st.session_state.model = model
|
321 |
|
322 |
pyminizip.uncompress(
|
323 |
"clip_zeroshot_irasuto_items_20210224.pq.zip", st.secrets["ZIP_PASSWORD"], None, 1
|
|
|
329 |
sentence_vectors = np.stack(df["sentence_vector"])
|
330 |
image_vectors = np.stack(df["image_vector"])
|
331 |
|
332 |
+
st.session_state.df = df
|
333 |
+
st.session_state.sentence_vectors = sentence_vectors
|
334 |
+
st.session_state.image_vectors = image_vectors
|
335 |
|
336 |
|
337 |
+
model = st.session_state.model
|
338 |
+
df = st.session_state.df
|
339 |
+
sentence_vectors = st.session_state.sentence_vectors
|
340 |
+
image_vectors = st.session_state.image_vectors
|
341 |
|
342 |
description_text.text("日本語CLIPモデル(ゼロショット)を用いて、説明文の意味が近い「いらすとや」画像を検索します。\nキーワードを列挙するよりも、自然な文章を入力した方が精度よく検索できます。\n画像は必ずリンク先の「いらすとや」さんのページを開き、そこからダウンロードしてください。")
|
343 |
|