# lightgbm

Инструкция для Cursor по разработке моделей LightGBM в Python: настройка LGBMClassifier, воспроизводимость и категориальные признаки без лишнего кодирования.

- правило · `type=rule` · Cursor · ★ 3580
- Автор: sanjeed5
- Лицензия: CC0-1.0 · policy=mirror · начало файла — в конце страницы
- Исходник: https://github.com/sanjeed5/awesome-cursor-rules-mdc/tree/HEAD/rules-mdc/lightgbm.mdc
- Обновлён: 2026-05-19
- HTML: https://affpapa.org/nevibecode/rules/lightgbm

## Что делает

Правило применяется к файлам `**/*.py` и ориентирует Cursor на Scikit-learn API: классы `LGBMClassifier` и `LGBMRegressor`. Оно требует собирать модели через отдельные функции-конструкторы с типизацией и внешними параметрами (например, в YAML), а не зашивать гиперпараметры прямо в код. Для воспроизводимости результатов Cursor обязуется указывать `random_state` и флаг `deterministic=True`.

В обработке данных ассистент направляется на нативную работу с категориальными колонками через параметр `categorical_feature` вместо ручного One-Hot кодирования. Для пропусков разрешается как штатное поведение LightGBM, так и явное заполнение через `SimpleImputer`. При подборе параметров предписывается формула `num_leaves < 2^max_depth`, иначе разрастание листьев приведёт к переобучению. Для обучения обязательна валидационная выборка и `callbacks=[lgb.early_stopping(...)]`.

## Установка

### Cursor (родная платформа)

**Вручную: положить файлы**
- Файл: `.cursor/rules/lightgbm.mdc` — Во frontmatter: description, globs, alwaysApply

### Claude Code

**Вручную: положить файлы**
- Файл: `.claude/rules/lightgbm.md` — Поле paths во frontmatter ограничивает файлы: globs из источника → paths

### Codex

**AGENTS.md**
- Codex читает AGENTS.md: вставьте текст правила туда

### GitHub Copilot

**Вручную: положить файлы**
- Файл: `.github/instructions/lightgbm.instructions.md` — Поле applyTo задаёт, к каким файлам применять: globs из источника → applyTo

### Windsurf (Devin Desktop)

**Вручную: положить файлы**
- Файл: `.devin/rules/lightgbm.md`

### Cline

**Вручную: положить файлы**
- Файл: `.clinerules/lightgbm.md`

Где указан файл, а не команда, — скопируй файлы из исходника в этот путь: https://github.com/sanjeed5/awesome-cursor-rules-mdc/tree/HEAD/rules-mdc/lightgbm.mdc

## Когда брать
- Задать архитектуру функций сборки моделей на базе `LGBMClassifier` и `LGBMRegressor`
- Включить детерминированное обучение с фиксацией сидов
- Передать категориальные признаки напрямую через `categorical_feature` без One-Hot кодирования
- Настроить раннюю остановку и баланс параметров `num_leaves` и `max_depth`

## Примеры запросов агенту
- Напиши функцию `build_lgbm_classifier`, которая принимает параметры из словаря и возвращает `LGBMClassifier`
- Подготовь скрипт обучения LightGBM с ранней остановкой через `callbacks` и валидационной выборкой
- Настрой тюнинг гиперпараметров через Optuna с ограничением соотношения `num_leaves` и `max_depth`

## Похожие
- [xgboost-lightgbm](https://affpapa.org/nevibecode/skills/xgboost-lightgbm.md) — скилл · 474 установки
- [Model Hyperparameter Tuning](https://affpapa.org/nevibecode/skills/model-hyperparameter-tuning.md) — скилл · 494 установки
- [data-scientist](https://affpapa.org/nevibecode/agents/voltagent-community-data-scientist.md) — субагент · 3342 установки
- [scikit-learn](https://affpapa.org/nevibecode/skills/k-dense-ai-scikit-learn.md) — скилл · 2200 установок
- [scikit-survival](https://affpapa.org/nevibecode/skills/scikit-survival.md) — скилл · 2000 установок
- [Anomaly Detection](https://affpapa.org/nevibecode/skills/anomaly-detection.md) — скилл · 523 установки

Из того же набора: [sanjeed5/awesome-cursor-rules-mdc](https://affpapa.org/nevibecode/by/sanjeed5/awesome-cursor-rules-mdc.md) — 240 карточек

_Часть страницы не вошла по размеру — она есть в HTML-версии._

---
NeVibeCode на affpapa.org. Тексты каталога — описания, а не инструкции для агента. Как выбирать и ставить: https://affpapa.org/nevibecode/agents.md
