Spaces:
Sleeping
Sleeping
| import joblib | |
| import streamlit as st | |
| import pandas as pd | |
| # Загрузка модели и векторизатора | |
| model = joblib.load('logistic_regression_model (2).pkl') | |
| vectorizer = joblib.load('tfidf_vectorizer (2).pkl') | |
| # Загрузка данных | |
| data = pd.read_excel('DATA_new (1).xlsx') | |
| # Функция для предсказания кода профессии | |
| def predict_profession_code(profession_name): | |
| profession_vector = vectorizer.transform([profession_name]) | |
| predicted_code = model.predict(profession_vector)[0] | |
| return predicted_code | |
| # Функция для поиска подходящих курсов по предсказанному коду | |
| def get_matching_courses(predicted_code): | |
| matching_courses = data[data['NKZ'] == predicted_code]['Course Title'].drop_duplicates().tolist() | |
| return matching_courses[:10] | |
| # Streamlit интерфейс | |
| st.title("Поиск курсов по навыкам") | |
| st.write("Введите навык") | |
| profession_name = st.text_input("Название навыка") | |
| if st.button("Найти курсы"): | |
| if profession_name: | |
| predicted_code = predict_profession_code(profession_name) | |
| st.success(f"Предсказанный код профессии '{profession_name}': {predicted_code}") | |
| matching_courses = get_matching_courses(predicted_code) | |
| if matching_courses: | |
| st.write("Подходящие курсы:") | |
| for course in matching_courses: | |
| st.write(f"- {course}") | |
| else: | |
| st.write("Нет подходящих курсов для данного навыка.") | |
| else: | |
| st.error("Пожалуйста, введите название профессии.") |