Spaces:
Sleeping
Sleeping
HaggiVaggi
commited on
Commit
·
2a4ef78
1
Parent(s):
b1ead15
Update pages/Подбор фильмов по описанию✏️🔍.py
Browse files
pages/Подбор фильмов по описанию✏️🔍.py
CHANGED
@@ -5,41 +5,41 @@ st.header("Подбор фильмов по описанию ✏️🔍")
|
|
5 |
user_input = st.text_input("Введите описание фильма:", value="", help="Чем подробнее будет ваше описание, тем точнее мы сможем подобрать для вас фильм 🤗'")
|
6 |
|
7 |
if st.button("Искать🔍🎦"):
|
8 |
-
if user_input:
|
9 |
# Векторизация введенного запроса
|
10 |
-
|
11 |
|
12 |
# Поиск с использованием Faiss
|
13 |
-
|
14 |
|
15 |
# Используйте индексы для извлечения строк из DataFrame
|
16 |
-
|
17 |
-
|
18 |
|
19 |
# Вывод рекомендованных фильмов с изображениями
|
20 |
-
|
21 |
-
|
22 |
-
|
23 |
# Создаем две колонки: одну для текста, другую для изображения
|
24 |
-
|
25 |
|
26 |
# В колонке отображаем название фильма, описание, роли и ссылку
|
27 |
-
|
28 |
-
|
29 |
-
|
30 |
|
31 |
# В колонке отображаем изображение
|
32 |
-
|
33 |
-
|
34 |
-
|
35 |
-
|
36 |
-
|
37 |
-
|
38 |
-
|
39 |
-
|
40 |
-
|
41 |
-
|
42 |
-
|
43 |
-
|
44 |
-
|
45 |
|
|
|
5 |
user_input = st.text_input("Введите описание фильма:", value="", help="Чем подробнее будет ваше описание, тем точнее мы сможем подобрать для вас фильм 🤗'")
|
6 |
|
7 |
if st.button("Искать🔍🎦"):
|
8 |
+
if user_input:
|
9 |
# Векторизация введенного запроса
|
10 |
+
input_embedding = encode_description(user_input)
|
11 |
|
12 |
# Поиск с использованием Faiss
|
13 |
+
_, sorted_indices = index.search(input_embedding.reshape(1, -1), 5) # Изменил на 5
|
14 |
|
15 |
# Используйте индексы для извлечения строк из DataFrame
|
16 |
+
recs = df2.iloc[sorted_indices[0]].reset_index(drop=True)
|
17 |
+
recs.index = recs.index + 1
|
18 |
|
19 |
# Вывод рекомендованных фильмов с изображениями
|
20 |
+
st.subheader("Рекомендованные фильмы 🎉:")
|
21 |
+
for i in range(5):
|
22 |
+
st.markdown(f"<span style='font-size:{20}px; color:purple'>{recs['movie_title'].iloc[i]}</span>", unsafe_allow_html=True)
|
23 |
# Создаем две колонки: одну для текста, другую для изображения
|
24 |
+
col1, col2 = st.columns([2, 1])
|
25 |
|
26 |
# В колонке отображаем название фильма, описание, роли и ссылку
|
27 |
+
col1.info(recs['description'].iloc[i])
|
28 |
+
col1.markdown(f"**В ролях:** {recs['actors'].iloc[i]}")
|
29 |
+
col1.markdown(f"**Фильм можно посмотреть [здесь]({recs['page_url'].iloc[i]})**")
|
30 |
|
31 |
# В колонке отображаем изображение
|
32 |
+
col2.image(recs['image_url'].iloc[i], caption=recs['movie_title'].iloc[i], width=200)
|
33 |
+
with st.sidebar:
|
34 |
+
st.info("""
|
35 |
+
#### Мы смогли помочь вам с выбором?
|
36 |
+
""")
|
37 |
+
feedback = st.text_input('Поделитесь с нами вашим мнением')
|
38 |
+
|
39 |
+
feedback_button = st.button("Отправить отзыв", key="feedback_button")
|
40 |
+
|
41 |
+
if feedback_button and feedback:
|
42 |
+
feedback_container.success("Спасибо, каждый день мы стараемся быть лучше для вас 💟")
|
43 |
+
elif feedback_button:
|
44 |
+
feedback_container.warning("Пожалуйста, введите отзыв перед отправкой.")
|
45 |
|