Skip to content

Feat/feasibility check#291

Open
voorhs wants to merge 18 commits into
devfrom
feat/feasibility-check
Open

Feat/feasibility check#291
voorhs wants to merge 18 commits into
devfrom
feat/feasibility-check

Conversation

@voorhs

@voorhs voorhs commented May 23, 2026

Copy link
Copy Markdown
Collaborator

No description provided.

voorhs and others added 11 commits May 23, 2026 19:31
- proposal: introduce 3-phase framing (resource/data/config), add
  resource-phase refinements (warm cache, n_jobs × VRAM, refit_after,
  Hub reachability, CatBoost GPU sanity), data-quality phase (token
  truncation, split readiness, partial descriptions, embedder dim),
  config sanity phase, updated example output, CLI surface, out-of-
  scope deferrals
- _advisor package: hardware detection (CUDA/MPS/CPU with broken-CUDA
  fallback), HF Hub metadata + warm-cache probe + offline heuristics,
  three-phase run_preflight returning structured PreflightReport,
  text + JSON renderers
- autointent-advisor CLI: inspect <preset|config> and recommend
  subcommands; placeholder dataset stats when no --dataset given
- 88 offline tests covering hardware fallbacks, every bundled preset,
  severity routing, report serialization, name-pattern heuristics,
  AMP invariant, dump_modules / refit_after, CLI flows

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
@Samoed Samoed marked this pull request as ready for review June 16, 2026 15:09
Comment on lines 119 to +134
SearchSpacePreset = Literal[
"classic-heavy",
"classic-light",
"classic-medium",
"nn-heavy",
"nn-medium",
"transformers-heavy",
"transformers-light",
"transformers-no-hpo",
"nn-heavy",
"zero-shot-llm",
"nn-medium",
"classic-heavy",
"transformers-no-hpo",
"classic-medium",
"zero-shot-encoders",
"classic-light",
]
"""Some presets that our library supports."""
"""Bundled search-space presets, listed in descending quality order.

The order is consumed by ``autointent._advisor.recommend`` to pick the
highest-quality feasible preset (lower index = higher quality)."""

Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

это к сожалению неправда - выстроить пресеты в какой-то один порядок нельзя потому что под разные задачи нужны разные пресеты

например transformers-heavy будет ужасно работать если выборка маленькая

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Тут скорее по времени выполнения

Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

тогда надо докстринг изменить, сейчас он вводит в заблуждение читателей документации

Comment on lines +231 to +232
if mixed_precision:
bytes_per_sample //= 2

@voorhs voorhs Jun 17, 2026

Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

тут не совсем такая формула, там же куча мастер копий еще - мне кажется стоит уточнить этот момент

такое сокращение может быть, но это слишком оптимистичная оценка - а мы хотим оценить затраты сверху а не снизу

Comment thread src/autointent/_advisor/_estimates.py

Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

немного странно что цпу никак не влияет на оценки времени

@voorhs voorhs left a comment

Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

в целом по методике и алгоритам ок за исключением мелочей которые прокомментил (посмотрел не прямо все но пока это стоит исправить)

есть два пожелания:

  • наверное стоит добавить какой-то обоснованности всем используемым формулам (ссылки на внешние ресурсы, бенчмарки, статьи в которых исследуется такое) - вообще с этого стоило начать выполнение этой задачи)
  • очень неудобно ревьюить когда в одном бульоне приватные утилиты и публичные функции, мне кажется стоит руками самому как-то разнести все это на подфайлы и подпапки, потому что иишке это ок, а человечески очень тяжело когда файл на 800 строк и в нем центральный публичный метод с главным алгоритмом спрятан где-то посередине или в конце

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants