checkpoint before checking out main

This commit is contained in:
Leonid Pershin
2026-08-20 14:43:00 +03:00
parent 477f8cf6c9
commit 5d46550f12
18 changed files with 429 additions and 64 deletions
@@ -0,0 +1,39 @@
# Фаза 61. LoRA и embeddings
## Зависимости
Фаза 60 (каталог моделей и слои промпта). Ветка от `phase/60-portrait-models`.
## Зачем
LoRA и embeddings можно поставить на модель, на пресет и на тип кадра. Swarm получает
их тем каналом, который реально загружает сеть.
## Задачи
- [ ] Discovery: список `embeddings` из Swarm (`models.Embedding`)
- [ ] Списки LoRA и embeddings (name + weight) на модели, пресете и avatar/custom/full.
Склейка модель → пресет → кадр. Пустые списки в шаблоне
- [ ] Генерация: все LoRA в `loras` и `loraweights`; embeddings в positive/negative как
`<embed:name>`. Не писать `<lora:>` в промпт
- [ ] UI: комбобоксы из discovery на модели, в спойлере пресета и в секции кадра. `t(...)`
- [ ] HTTP в [`protocol.md`](../../protocol.md), сокет не бампить
## Тесты, без которых фаза не закрыта
- [ ] Discovery парсит embeddings; офлайн — пустой список
- [ ] Склейка LoRA/embed: модель + пресет + kind
- [ ] Промпт содержит `<embed:…>` и не содержит `<lora:`
- [ ] Generate шлёт `loras` и `loraweights` раздельно
- [ ] Диалог: поля embeddings у модели и у вида кадра
## Критерий готовности
- В диалоге создания школы LoRA и embedding можно добавить на модель, в оверрайд пресета
и на аватар / свой промпт / полный рост
- Список имён — из Swarm, как у LoRA сейчас
- «Показать промпт» показывает embed-теги; LoRA в тексте промпта нет
## Стоп
Не бампить сокет. Не включать конкретные embeds в дефолтный шаблон. Не трогать ControlNet.