Skip to content
This repository has been archived by the owner on May 16, 2024. It is now read-only.

Latest commit

 

History

History
49 lines (43 loc) · 2.89 KB

README.md

File metadata and controls

49 lines (43 loc) · 2.89 KB

Sim

Симулятор поведения пользователей рекомендательного сервиса. Реализован как среда OpenAI gym.

Запуск симулятора поделен на условные "дни". В конце каждого дня симулятор останавливается, чтобы была возможность обработать данные, собранные за предыдущий день и обновить сервис рекомендаций. Самый общий подход к работе с симулятором такой:

  1. Разворачиваем сервис-рекомендер в режиме холодного старта
  2. Запускаем симулятор на один день
  3. Пока симулятор остановлен, анализируем собранные данные, строим модели
  4. Обновляем сервис-рекомендер
  5. Повторяем пункты 2-4 при необходимости

Инструкция

  1. Создаем чистый env с python 3.8. На примере conda:
    conda create -n recsys-2024 python==3.8
    
  2. Активириуем окружение:
    conda activate recsys-2024
    
  3. Устанавливаем зависимости
    pip install -r requirements.txt
    
  4. Симулятор можно запустить в "ручном" режиме, чтобы самостоятельно подбирать рекомендации для пользователя. Это режим для ознакомления с симулятором.
    python -m sim.run --episodes 1 --config config/env.yml single --recommender console --seed 31337
    
  5. Запуск симулятора в режиме "трафика" в однопоточном режиме. Параметр --episodes определяет число сгенерированных пользовательских сессий. Однопоточный режим позволяет останавливать симулятор каждый виртуальный день, например чтобы обновлять модель
    python -m sim.run --episodes 1000 --config config/env.yml single --recommender remote --seed 31337 
    
  6. Запуск симулятора в режиме "трафика" в многопоточном режиме. Многопоточный режим ускоряет сбор данных.
    python -m sim.run --episodes 1000 --config config/env.yml multi --processes 4
    

Идеи на будущее

  • Долгосрочное счастье пользователей: сделать так чтобы, пользователь мог уйти навсегда
  • Хайповые треки для каждого из дней