From 5d4215e0cb18e236e2df3d0e820296cfbcefd6dc Mon Sep 17 00:00:00 2001 From: Filipp16 Date: Mon, 20 May 2024 18:26:22 +0500 Subject: [PATCH 1/6] test --- app/streamlit.py | 1 + search/semantic_search.py | 2 ++ 2 files changed, 3 insertions(+) diff --git a/app/streamlit.py b/app/streamlit.py index e69de29..ee0b7ac 100644 --- a/app/streamlit.py +++ b/app/streamlit.py @@ -0,0 +1 @@ +import streamlit \ No newline at end of file diff --git a/search/semantic_search.py b/search/semantic_search.py index e69de29..7643afb 100644 --- a/search/semantic_search.py +++ b/search/semantic_search.py @@ -0,0 +1,2 @@ +#сюда закидывается поисковой запрос в переменной query из sreamlit +#поиск по базе From 17a79a666cf375bc6e05369b2443c45fe6666bc5 Mon Sep 17 00:00:00 2001 From: Filipp16 Date: Mon, 20 May 2024 19:59:36 +0500 Subject: [PATCH 2/6] test2 --- app/streamlit.py | 58 +++++++++++++++++++++++++++++++++++++++++++++++- 1 file changed, 57 insertions(+), 1 deletion(-) diff --git a/app/streamlit.py b/app/streamlit.py index ee0b7ac..3cfa786 100644 --- a/app/streamlit.py +++ b/app/streamlit.py @@ -1 +1,57 @@ -import streamlit \ No newline at end of file +import streamlit as st +from PIL import Image + +# Добавление вкладок +tabs = ["Главная", "Краткое описание", "Доп. Информация"] +selected_tab = st.sidebar.radio("Выберите вкладку", tabs) + +# Заголовок приложения +st.title('Умный ассистент') + +# Поле для ввода запроса +query = st.text_input('Введите ваш запрос:') + + +# Функция для обработки запроса и вывода данных +def process_query(query): + # Здесь можно добавить логику обработки запроса и получения данных + # Например, можно использовать pandas для работы с данными + + # Пример вывода данных + st.write(f'Вы ввели запрос: {query}') + st.write('Здесь могут быть данные, соответствующие вашему запросу') + + +# Обработка запроса при нажатии кнопки +if st.button('Отправить запрос'): + process_query(query) + +# Отображение информации в зависимости от выбранной вкладки +if query == "": + if selected_tab == "Главная": + subtabs = ["1.1", "1.2", "1.3"] + selected_subtab = st.sidebar.radio("Подвкладка", subtabs) + if selected_subtab == "1.1": + st.write("Содержимое подвкладки 1.1") + elif selected_subtab == "1.2": + st.write("Содержимое подвкладки 1.2") + elif selected_subtab == "1.3": + st.write("Содержимое подвкладки 1.3") + elif selected_tab == "Краткое описание": + subtabs = ["2.1", "2.2", "2.3"] + selected_subtab = st.sidebar.radio("Подвкладка", subtabs) + if selected_subtab == "2.1": + st.write("Содержимое подвкладки 2.1") + elif selected_subtab == "2.2": + st.write("Содержимое подвкладки 2.2") + elif selected_subtab == "2.3": + st.write("Содержимое подвкладки 2.3") + elif selected_tab == "Доп. Информация": + subtabs = ["3.1", "3.2", "3.3"] + selected_subtab = st.sidebar.radio("Подвкладка", subtabs) + if selected_subtab == "3.1": + st.write("Содержимое подвкладки 3.1") + elif selected_subtab == "3.2": + st.write("Содержимое подвкладки 3.2") + elif selected_subtab == "3.3": + st.write("Содержимое подвкладки 3.3") From d48e73d8b9b981ef0a3c4d40fa5376fc0fa05048 Mon Sep 17 00:00:00 2001 From: Filipp16 Date: Wed, 22 May 2024 16:50:32 +0500 Subject: [PATCH 3/6] new test with Vova --- app/streamlit.py | 75 ++++++++++++++++++++++-------------------------- 1 file changed, 35 insertions(+), 40 deletions(-) diff --git a/app/streamlit.py b/app/streamlit.py index 3cfa786..90f73fd 100644 --- a/app/streamlit.py +++ b/app/streamlit.py @@ -1,15 +1,24 @@ import streamlit as st -from PIL import Image +import sqlite3 + +left1_column, right2_column = st.columns([1, 4]) +inside_left, inside_right = right2_column.columns([4, 1]) +query = inside_left.text_input('', label_visibility='collapsed') +# inside_right.markdown("", unsafe_allow_html=True) +st.markdown( + """ + + """, + unsafe_allow_html=True +) # Добавление вкладок -tabs = ["Главная", "Краткое описание", "Доп. Информация"] -selected_tab = st.sidebar.radio("Выберите вкладку", tabs) - -# Заголовок приложения -st.title('Умный ассистент') - -# Поле для ввода запроса -query = st.text_input('Введите ваш запрос:') +# tabs = ["Главная", "Краткое описание", "Доп. Информация"] +# selected_tab = st.sidebar.radio("Выберите вкладку", tabs) # Функция для обработки запроса и вывода данных @@ -18,40 +27,26 @@ def process_query(query): # Например, можно использовать pandas для работы с данными # Пример вывода данных - st.write(f'Вы ввели запрос: {query}') + right2_column.write(f'Вы ввели запрос: {query}') st.write('Здесь могут быть данные, соответствующие вашему запросу') # Обработка запроса при нажатии кнопки -if st.button('Отправить запрос'): +if inside_right.button('🔍', key="my-button"): process_query(query) -# Отображение информации в зависимости от выбранной вкладки -if query == "": - if selected_tab == "Главная": - subtabs = ["1.1", "1.2", "1.3"] - selected_subtab = st.sidebar.radio("Подвкладка", subtabs) - if selected_subtab == "1.1": - st.write("Содержимое подвкладки 1.1") - elif selected_subtab == "1.2": - st.write("Содержимое подвкладки 1.2") - elif selected_subtab == "1.3": - st.write("Содержимое подвкладки 1.3") - elif selected_tab == "Краткое описание": - subtabs = ["2.1", "2.2", "2.3"] - selected_subtab = st.sidebar.radio("Подвкладка", subtabs) - if selected_subtab == "2.1": - st.write("Содержимое подвкладки 2.1") - elif selected_subtab == "2.2": - st.write("Содержимое подвкладки 2.2") - elif selected_subtab == "2.3": - st.write("Содержимое подвкладки 2.3") - elif selected_tab == "Доп. Информация": - subtabs = ["3.1", "3.2", "3.3"] - selected_subtab = st.sidebar.radio("Подвкладка", subtabs) - if selected_subtab == "3.1": - st.write("Содержимое подвкладки 3.1") - elif selected_subtab == "3.2": - st.write("Содержимое подвкладки 3.2") - elif selected_subtab == "3.3": - st.write("Содержимое подвкладки 3.3") +# Определение структуры иерархии страниц и категорий +pages = { + "Категория 1": ["Страница 1", "Страница 2"], + "Категория 2": ["Страница 3", "Страница 4", "Страница 5"], + "Категория 3": ["Страница 6"] +} + +# Отображение названий страниц в боковой панели +for category, subpages in pages.items(): + st.sidebar.subheader(category) + for subpage in subpages: + if st.sidebar.button(subpage): + st.write(f"Отображается страница: {subpage}") +# путь к базе +# database_path = "C:\\Users\\gaevf\\PycharmProjects\\ProjectStreamlit\\wikipedia_articles.db" From 4772f3a72a345e1654962cdcbd040d7412c3bef5 Mon Sep 17 00:00:00 2001 From: Volodemare <83754136+Volodemare@users.noreply.github.com> Date: Thu, 23 May 2024 19:28:35 +0500 Subject: [PATCH 4/6] =?UTF-8?q?=D0=91=D1=8B=D0=BB=20=D1=80=D0=B5=D0=B0?= =?UTF-8?q?=D0=BB=D0=B8=D0=B7=D0=BE=D0=B2=D0=B0=D0=BD=20=D1=84=D1=80=D0=BE?= =?UTF-8?q?=D0=BD=D1=82,=20=D0=B3=D0=BB=D0=BE=D0=B1=D0=B0=D0=BB=D1=8C?= =?UTF-8?q?=D0=BD=D0=BE=20=D0=BE=D0=B1=D0=BD=D0=BE=D0=B2=D0=BB=D1=91=D0=BD?= =?UTF-8?q?=20=D0=B8=D0=BD=D1=82=D0=B5=D1=80=D1=84=D0=B5=D0=B9=D1=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/frontend.py | 96 ++++++++++++++++++++++++++++++++++++++++++++++++ app/streamlit.py | 52 -------------------------- 2 files changed, 96 insertions(+), 52 deletions(-) create mode 100644 app/frontend.py delete mode 100644 app/streamlit.py diff --git a/app/frontend.py b/app/frontend.py new file mode 100644 index 0000000..efc096d --- /dev/null +++ b/app/frontend.py @@ -0,0 +1,96 @@ +import streamlit as st +import sqlite3 + + +files = { + ':blue_book: История компании': { + ':open_book: Основатели': {'Демон': 'парсит', 'Андройд': 'Ебёт'}, + ':open_book: Этапы развития': {'Старт': 'ФальшСтарт'} + }, + ':blue_book: Помощь': { + ':open_book: Как начать первую неделю': {'Выживание': 'Сложно выжить', 'Коммуникаци': 'Помолчи.'}, + ':open_book: Как не пососать увольнительное': {'Как': 'Легко нахуй'} + } +} + +left1_column, right2_column = st.columns([1, 4]) +inside_left, inside_right = right2_column.columns([4, 1]) +# inside_right.markdown("", unsafe_allow_html=True) +st.markdown( + """ + + """, + unsafe_allow_html=True +) +results = '' + +def base(): + components = {} + global results + print(files.values()) + for categories in files.values(): + for test in list(categories.keys()): + components[test] = st.expander(test) + + for subcategory in categories.values(): + print('xyuuuuuuuuuuuu', subcategory) + for title in list(subcategory.keys()): + components[test].title(title) + components[test].write(subcategory[title]) + print(components.keys()) + + + #print('aboba', str(list(theme.values())[:])) + #results += str(list(theme.values())[:]) + + + +def process_query(query): + global results + right2_column.write(f'Вы ввели запрос: {query}') + print(files.values()) + for subcategory in files.values(): + for theme in subcategory.values(): + if query in theme: + results = list(theme)[0] + + + + +main_page = st.container() +def create_list(data, level=0): + global results + for key, value in data.items(): + with st.sidebar: + if isinstance(value, dict): + if st.checkbox(':heavy_minus_sign:' * level + str(key)): + create_list(value, level + 1) + else: + if st.checkbox(':heavy_minus_sign:' * level + str(key)): + with main_page: + results = value + + + + + +query = st.sidebar.text_input('', label_visibility='collapsed') +if st.sidebar.button('🔍', key="my-button"): + process_query(query) + +create_list(files) + +st.write(results) + + + + + + + +# путь к базе +# database_path = "C:\\Users\\gaevf\\PycharmProjects\\ProjectStreamlit\\wikipedia_articles.db" diff --git a/app/streamlit.py b/app/streamlit.py deleted file mode 100644 index 90f73fd..0000000 --- a/app/streamlit.py +++ /dev/null @@ -1,52 +0,0 @@ -import streamlit as st -import sqlite3 - -left1_column, right2_column = st.columns([1, 4]) -inside_left, inside_right = right2_column.columns([4, 1]) -query = inside_left.text_input('', label_visibility='collapsed') -# inside_right.markdown("", unsafe_allow_html=True) -st.markdown( - """ - - """, - unsafe_allow_html=True -) - -# Добавление вкладок -# tabs = ["Главная", "Краткое описание", "Доп. Информация"] -# selected_tab = st.sidebar.radio("Выберите вкладку", tabs) - - -# Функция для обработки запроса и вывода данных -def process_query(query): - # Здесь можно добавить логику обработки запроса и получения данных - # Например, можно использовать pandas для работы с данными - - # Пример вывода данных - right2_column.write(f'Вы ввели запрос: {query}') - st.write('Здесь могут быть данные, соответствующие вашему запросу') - - -# Обработка запроса при нажатии кнопки -if inside_right.button('🔍', key="my-button"): - process_query(query) - -# Определение структуры иерархии страниц и категорий -pages = { - "Категория 1": ["Страница 1", "Страница 2"], - "Категория 2": ["Страница 3", "Страница 4", "Страница 5"], - "Категория 3": ["Страница 6"] -} - -# Отображение названий страниц в боковой панели -for category, subpages in pages.items(): - st.sidebar.subheader(category) - for subpage in subpages: - if st.sidebar.button(subpage): - st.write(f"Отображается страница: {subpage}") -# путь к базе -# database_path = "C:\\Users\\gaevf\\PycharmProjects\\ProjectStreamlit\\wikipedia_articles.db" From 0ddd53e06262ab5bd2f73b8cbbd80571a2c87a32 Mon Sep 17 00:00:00 2001 From: Volodemare <83754136+Volodemare@users.noreply.github.com> Date: Thu, 23 May 2024 19:30:56 +0500 Subject: [PATCH 5/6] =?UTF-8?q?=D0=91=D1=8B=D0=BB=20=D1=80=D0=B5=D0=B0?= =?UTF-8?q?=D0=BB=D0=B8=D0=B7=D0=BE=D0=B2=D0=B0=D0=BD=20=D1=84=D1=80=D0=BE?= =?UTF-8?q?=D0=BD=D1=82,=20=D0=B3=D0=BB=D0=BE=D0=B1=D0=B0=D0=BB=D1=8C?= =?UTF-8?q?=D0=BD=D0=BE=20=D0=BE=D0=B1=D0=BD=D0=BE=D0=B2=D0=BB=D1=91=D0=BD?= =?UTF-8?q?=20=D0=B8=D0=BD=D1=82=D0=B5=D1=80=D1=84=D0=B5=D0=B9=D1=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/{frontend.py => streamlit.py} | 0 1 file changed, 0 insertions(+), 0 deletions(-) rename app/{frontend.py => streamlit.py} (100%) diff --git a/app/frontend.py b/app/streamlit.py similarity index 100% rename from app/frontend.py rename to app/streamlit.py From d67945a4d9f2b7278a3c8e2c1c69814d154623b1 Mon Sep 17 00:00:00 2001 From: Volodemare <83754136+Volodemare@users.noreply.github.com> Date: Thu, 23 May 2024 19:33:42 +0500 Subject: [PATCH 6/6] =?UTF-8?q?=D0=91=D1=8B=D0=BB=20=D1=80=D0=B5=D0=B0?= =?UTF-8?q?=D0=BB=D0=B8=D0=B7=D0=BE=D0=B2=D0=B0=D0=BD=20=D1=84=D1=80=D0=BE?= =?UTF-8?q?=D0=BD=D1=82,=20=D0=B3=D0=BB=D0=BE=D0=B1=D0=B0=D0=BB=D1=8C?= =?UTF-8?q?=D0=BD=D0=BE=20=D0=BE=D0=B1=D0=BD=D0=BE=D0=B2=D0=BB=D1=91=D0=BD?= =?UTF-8?q?=20=D0=B8=D0=BD=D1=82=D0=B5=D1=80=D1=84=D0=B5=D0=B9=D1=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- search/semantic_search.py | 99 ++++++++++++++++++++++++++++++++++++++- 1 file changed, 97 insertions(+), 2 deletions(-) diff --git a/search/semantic_search.py b/search/semantic_search.py index 7643afb..ced5b51 100644 --- a/search/semantic_search.py +++ b/search/semantic_search.py @@ -1,2 +1,97 @@ -#сюда закидывается поисковой запрос в переменной query из sreamlit -#поиск по базе +import streamlit as st +import sqlite3 + + +files = { + ':blue_book: История компании': { + ':open_book: Основатели': {'Демон': 'парсит', 'Андройд': 'Ебёт'}, + ':open_book: Этапы развития': {'Старт': 'ФальшСтарт'} + }, + ':blue_book: Помощь': { + ':open_book: Как начать первую неделю': {'Выживание': 'Сложно выжить', 'Коммуникаци': 'Помолчи.'}, + ':open_book: Как не пососать увольнительное': {'Как': 'Легко нахуй'} + } +} + +left1_column, right2_column = st.columns([1, 4]) +inside_left, inside_right = right2_column.columns([4, 1]) +# inside_right.markdown("", unsafe_allow_html=True) +st.markdown( + """ + + """, + unsafe_allow_html=True +) +results = '' + +def base(): + components = {} + global results + print(files.values()) + for categories in files.values(): + for test in list(categories.keys()): + components[test] = st.expander(test) + + for subcategory in categories.values(): + print('xyuuuuuuuuuuuu', subcategory) + for title in list(subcategory.keys()): + components[test].title(title) + components[test].write(subcategory[title]) + print(components.keys()) + + + #print('aboba', str(list(theme.values())[:])) + #results += str(list(theme.values())[:]) + + + +def process_query(query): + global results + right2_column.write(f'Вы ввели запрос: {query}') + print(files.values()) + for subcategory in files.values(): + for theme in subcategory.values(): + if query in theme: + results = list(theme)[0] + + + + +main_page = st.container() +def create_list(data, level=0): + global results + for key, value in data.items(): + with st.sidebar: + if isinstance(value, dict): + if st.checkbox(':heavy_minus_sign:' * level + str(key)): + create_list(value, level + 1) + else: + if st.checkbox(':heavy_minus_sign:' * level + str(key)): + with main_page: + results = value + + + + + +query = st.sidebar.text_input('', label_visibility='collapsed') +if st.sidebar.button('🔍', key="my-button"): + process_query(query) + +create_list(files) + +st.write(results) + + + + + + + +# путь к базе +# database_path = "C:\\Users\\gaevf\\PycharmProjects\\ProjectStreamlit\\wikipedia_articles.db" +