| ... | ... | @@ -270,11 +270,18 @@ |
|
|
|
|
|
|
|
## 3.3 Загрузка данных сервиса Личный кабинет МИЭМ и начальная предобработка
|
|
|
|
|
|
|
|
**Личный кабинет МИЭМ** хранит информацию об исследовательских и прикладных проектах факультета. Для каждого проекта программа получает его описание, список участников и набор их компетенций («вакансии»).
|
|
|
|
|
|
|
|
В функции предобработки из описаний проектов программа удаляет изображения, ссылки и дополнительные символы, которые снижают качество работы модели.
|
|
|
|
|
|
|
|
В модель передаются три типа документов: текстовый массив с описанием каждого проекта `projects.txt` в директории [`cabinet/data`](https://git.miem.hse.ru/240/competence-search/-/tree/master/cabinet/data), `JSON`-файл `projects_info.json` в директории [`cabinet/data`](https://git.miem.hse.ru/240/competence-search/-/tree/master/cabinet/data), в котором помещены данные с `id` проекта и соответствующему ему списком `id` участников, а также файл с информацией о компетенциях каждого пользователя Личного кабинета - `students_info.txt` в директории [`cabinet/data`](https://git.miem.hse.ru/240/competence-search/-/tree/master/cabinet/data).
|
|
|
|
**Личный кабинет МИЭМ** хранит информацию об исследовательских и прикладных проектах факультета.
|
|
|
|
Сервис получает данные по следующему алгоритму:
|
|
|
|
1) С помощью API Личного кабинета программа получает список проектов, находящихся в статусе «Рабочий» (/public-api/projects) и «В архиве» (/public-api/projects/archive);
|
|
|
|
2) Для каждого проекта получаем описание (/public-api/project/body/{projectId});
|
|
|
|
3) В описании проекта выделяется отдельный блок «Требуемые и приобретаемые навыки», общий для всего проекта;
|
|
|
|
4) В функции предобработки из описаний проектов программа удаляет изображения, ссылки, дополнительные символы, которые снижают качество работы модели;
|
|
|
|
5) В текстовый файл projects.txt записываются описание самого проекта и общие для всех студентов компетенции;
|
|
|
|
6) По запросу /public-api/project/vacancies/{projectId} получаем список вакансий (ролей) для проекта, для каждой вакансии указан список компетенций.
|
|
|
|
7) Для каждого проекта программа получает список студентов и их роли в проекте (/public-api/project/students/{projectId});
|
|
|
|
8) Записываем в файл students_info.json id студентов и соответствующие им компетенции.
|
|
|
|
|
|
|
|
В модель передаются три типа документов: текстовый массив с описанием каждого проекта `projects.txt` в директории [`cabinet/data`](https://git.miem.hse.ru/240/competence-search/-/tree/master/cabinet/data), `JSON`-файл `projects_info.json` в директории [`cabinet/data`](https://git.miem.hse.ru/240/competence-search/-/tree/master/cabinet/data), в котором помещены данные с `id` проекта и соответствующему ему списком `id` участников, а также файл с информацией о компетенциях каждого пользователя Личного кабинета - `students_info.json` в директории [`cabinet/data`](https://git.miem.hse.ru/240/competence-search/-/tree/master/cabinet/data).
|
|
|
|
|
|
|
|
# 4 Размещение приложения на сервере
|
|
|
|
|
| ... | ... | |