По вопросам/багам писать в tg: @werserk
Репозиторий: https://github.com/werserk/hse-aiahp-baseline
Тестирующая система: https://dsworks.ru/champ/hse-2024-october
Лендинг: https://www.hse.ru/ai-assistant-hack-python/
В бейзлайне использована модель YandexGPT. Если вы хотите использовать её, то вам потребуется получить микро-грант, чтобы не тратить свои кровные на её инференс (там просто нужно создать новый акк и сделать его "платёжным").
Совет: сначала тестируйте свои гипотезы на небольшом сабсете данных (например, 15-20% от всех тестовых данных), а уже после выбора наилучшего варианта генерируйте полный сабмит. Так сможете потратить квоту более эффективно.
Как получить IAM Token и Folder ID можно посмотреть в документации Yandex Cloud.
Так же у Сберовского GigaChat API есть пробный тариф - Freemium. Он тоже даст вам достаточно ресурсов.
Ну и, конечно, пробуйте запускать модели локально с HuggingFace или других мест.
Вы можете ознакомиться с топовыми LLM моделями здесь - LMSYS Chatbot Arena.
В ветке "new_models" вы можете увидеть пару моделей, которые мы попробовали, но не стали включать в финальный бейзлайн. Возможно они натолкнут вас на умные мысли.
Пусть мы и сделали акцент на LLM аналогичные ChatGPT, это не значит, что вы не можете использовать другие LLM модели.
Будет круто, если вам пригодятся данные "train" не только для анализа.
docker compose up
Poetry
является более продвинутым пакетным менеджером, чем pip
. На с большей вероятность не возникнет ситуации, что нужные пакеты установятся неправильно.
poetry install
Создали для вас .env.example файл в корне проекта.
Чтобы создать .env файл, запускаем следующую команду:
cp .env.example .env
.
├── app
│ ├── __init__.py
│ ├── models <------------------------ подключаемые модели
│ │ ├── base.py
│ │ ├── __init__.py
│ │ └── yandexgpt.py
│ └── utils <------------------------ утилиты
│ ├── __init__.py
│ ├── metric.py <------------------------ ознакомьтесь с метрикой
│ └── submit.py <------------------------ здесь всё для генерации сабмита
├── data
│ ├── complete <------------------------ подготовленные данные, сабмиты
│ ├── processed <----------------------- промежуточный этап подготовки данных
│ └── raw <----------------------------- исходные данные
│ ├── submit_example.csv
│ ├── test
│ │ ├── solutions.xlsx
│ │ ├── tasks.xlsx
│ │ └── tests.xlsx
│ └── train
│ ├── solutions.xlsx
│ ├── tasks.xlsx
│ └── tests.xlsx
├── main.py <---------------------------- [ВАЖНО] Именно этот скрипт мы будем запускать при проверке ваших решений. Он должен генерировать финальный сабмит.
├── notebooks
│ └── yandexgpt.ipynb
├── poetry.lock
├── pyproject.toml
├── README.md
└── tests
├── test_correctness.py <------------------------ проверить на корректность сабмит
└── test_embedding_generation.py <--------------- попробовать генерацию эмбеддингов и подсчёт метрики