Mapped purity кандидата выше на обоих размеченных фрагментах.
Sortformer оставил без говорящего 92 слова против 73 у W0 и использовал около 551 МиБ RSS против 325 МиБ.
Обе ячейки задели swap; одной пары недостаточно для устойчивой оценки разброса.
Sortformer выглядит перспективным кандидатом для следующего эксперимента. Перед внедрением нужны повторные пары без активности swap и слуховая проверка неназначенных слов.
Что изменено
Свежая основа связывает числа голосов с source hash и принимает отсутствующую опорную разметку.
Active swap определяется изменением sin/sout во время ячейки.
Добавлен отчет с прямым сравнением скорости, кластеров, purity и памяти.
Новые материалы .scratch/ исключены из Git; общие диагностические скрипты сохранены.
Проверка
uv run pytest -q: 460 passed, 2 skipped.
Обязательный набор перед моделью: 113 passed.
Приватный runner: 18 passed; --validate-only, C ABI/config и live guard прошли.
Сравнительные агрегаты сверены с закрытыми результатами обеих моделей.
Closes #46
## Результат
- В одной паре Sortformer обработал три фрагмента за `67,433` с против `103,242` с у W0: ускорение `34,68%`.
- Ожидалось `2 / 2 / 3` кластера. Sortformer получил `2 / 2 / 3`, W0 — `2 / 2 / 2`.
- Mapped purity кандидата выше на обоих размеченных фрагментах.
- Sortformer оставил без говорящего `92` слова против `73` у W0 и использовал около `551` МиБ RSS против `325` МиБ.
- Обе ячейки задели swap; одной пары недостаточно для устойчивой оценки разброса.
Sortformer выглядит перспективным кандидатом для следующего эксперимента. Перед внедрением нужны повторные пары без активности swap и слуховая проверка неназначенных слов.
## Что изменено
- Свежая основа связывает числа голосов с source hash и принимает отсутствующую опорную разметку.
- Active swap определяется изменением `sin`/`sout` во время ячейки.
- Добавлен отчет с прямым сравнением скорости, кластеров, purity и памяти.
- Новые материалы `.scratch/` исключены из Git; общие диагностические скрипты сохранены.
## Проверка
- `uv run pytest -q`: 460 passed, 2 skipped.
- Обязательный набор перед моделью: 113 passed.
- Приватный runner: 18 passed; `--validate-only`, C ABI/config и live guard прошли.
- Сравнительные агрегаты сверены с закрытыми результатами обеих моделей.
Зачем:
- не допустить загрузку W0 и Sortformer без отдельного принятия трёх референсов владельцем
- связать manifest с точными байтами listening package и owner-authored record
Что:
- добавлены строгие схемы трёх reference rows и четырёх решений Step 3
- все внешние файлы проверяются через held fd без symlink и TOCTOU
- добавлены negative tests для подмен, неточных JSON-типов и небезопасных путей
Проверка:
- uv run pytest -q (532 passed, 2 skipped)
- uv run ruff check src/local_transcriber/streaming_sortformer_experiment.py tests/test_streaming_sortformer_experiment.py
- git diff --check
Зачем:
- хранить локальные handoff и launcher в постоянном каталоге без риска случайного коммита
- не терять временно закрепленный стенд диаризации между компьютерами
Что:
- весь корневой .scratch добавлен в ignore
- существующие диагностические скрипты оставлены отслеживаемыми
- описание локальных и переносимых артефактов приведено к новой политике
Проверка:
- git check-ignore -v --no-index .scratch/new-local-artifact
- git ls-files .scratch
- git diff --check
- Зачем:
- канонический Ryzen-прогон не должен повторно запрашивать уже данное решение владельца до порога 30%.
- Что:
- восстановлен короткий контракт approval и удалена лишняя схема owner-package.
- разрешена парная nullable-опора для диагностик без ослабления обязательных gates.
- NUL в путях отклоняется обезличенной ошибкой до загрузки моделей.
- Проверка:
- uv run pytest -q: 457 passed, 2 skipped.
- обязательный набор эксперимента: 110 passed; целевой Ruff пройден.
- независимые code и task/taste review закрыты.
- Зачем:
- задача #46 должна завершиться воспроизводимым решением по каноническому Ryzen-эксперименту.
- Что:
- записан stop из-за несовпадения числа кластеров свежего W0.
- сохранены безопасные агрегаты W0 и вторичный провал проверки swap.
- отмечено, что Sortformer не запускался и данных об ускорении нет.
- Проверка:
- uv run pytest -q.
- независимая сверка отчета с закрытым результатом и проверка литературного русского.
- Зачем:
- формальный stop W0 не отвечал на практический вопрос о скорости и качестве кандидата.
- Что:
- добавлены результаты одной диагностической пары на трех фрагментах.
- сопоставлены скорость, число кластеров, purity, слова без говорящего и память.
- границы вывода отделены от формального расписания эксперимента.
- Проверка:
- сравнительные агрегаты сверены с закрытыми результатами обеих моделей.
- git diff --check.
ddmitry
changed title from experiment(diarization): завершён Ryzen-прогон Sortformer to experiment(diarization): сопоставлены W0 и Sortformer на Ryzen2026-09-04 22:03:20 +03:00
ddmitry
merged commit f3d0293120 into master2026-09-04 22:08:04 +03:00
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
Closes #46
Результат
67,433с против103,242с у W0: ускорение34,68%.2 / 2 / 3кластера. Sortformer получил2 / 2 / 3, W0 —2 / 2 / 2.92слова против73у W0 и использовал около551МиБ RSS против325МиБ.Sortformer выглядит перспективным кандидатом для следующего эксперимента. Перед внедрением нужны повторные пары без активности swap и слуховая проверка неназначенных слов.
Что изменено
sin/soutво время ячейки..scratch/исключены из Git; общие диагностические скрипты сохранены.Проверка
uv run pytest -q: 460 passed, 2 skipped.--validate-only, C ABI/config и live guard прошли.experiment(diarization): завершён Ryzen-прогон Sortformerto experiment(diarization): сопоставлены W0 и Sortformer на Ryzen