import os import hashlib import pandas as pd import streamlit as st def create_hash(row): combined = str(row['name']) + str(row['short_story']) return hashlib.sha256(combined.encode()).hexdigest() @st.cache_data def load_data(): """Загрузка и кэширование набора данных""" df = pd.read_json(os.getenv("DATASET_PATH")) df['hash'] = df.apply(create_hash, axis=1) return df @st.cache_data def get_unique_mood(_df): """Получение уникальных значений настроения""" return sorted(_df['mood'].unique().tolist()) @st.cache_data def get_unique_tags(_df): """Получение уникальных тегов""" return sorted({tag for tags in _df['tags'] for tag in tags.split()})