Перейти к содержимому

T-Forge

T-Forge, Training Forge (Кузница обучения) от Erebros, по адресу /t-forge. В нём два инструмента: Course Studio, который учит системе, и Interactive Diagrams, который её рисует.

T-Forge, Erebros

  • Course Studio (/t-forge/course-studio), один промпт или ваши собственные материалы превращаются в полноценный класс: план, озвученные сцены, тесты и живую аудиторию, в которой можно сидеть. Построен на встроенном движке openmaic.
  • Interactive Diagrams (/t-forge/diagrams), модель пишет типизированный документ (IR), описывающий систему, и этот документ проверяется прежде, чем что-либо рисуется. Сам движок диаграмм встроен (vendored) и не вызывает модель, он только проверяет и рисует то, что написала модель.

Класс, а не набор слайдов. Каждая сцена, один из четырёх видов:

Сцена Что это
Slides Озвученный слайд, преподаватель подсвечивает то, о чём говорит
Quiz Вопросы с выбором и письменные, оцениваются по мере ответа
Interactive Симуляция, диаграмма, игра или 3D-сцена, сгенерированная под этот урок
Project Роли, вехи и микрозадачи, проходятся вместе с классом

Учит его преподаватель плюс два-три одноклассника, сгенерированные под этот курс, со своими именами, персонами и голосами. Они рассказывают, обсуждают и отвечают на поднятую руку, опираясь на то, что показано на экране.

Один вопрос: чему должен научить класс? Можно прикрепить уже имеющиеся документы, PowerPoint, PDF, Word, OpenDocument, EPUB, таблицы, Markdown или обычный текст. Они конвертируются в текст тем же движком, что использует D-Forge, и планировщик читает их прежде, чем что-либо написать, так что курс строится на вашем материале, а не на общих знаниях модели. Вставка текста тоже работает, отдельно или вместе с вложениями.

Прежде чем что-либо будет написано, вы выбираете:

  • Шаблон (Template), maritime.studio (каждая строка проходит через humanizer и линтер нарратива) или general (текст пайплайна как есть, быстрее и дешевле, без прохода переписывания).
  • Язык, английский, русский или украинский (для этих трёх у humanizer есть свои навыки), либо любой другой, который вы впишете сами. Он попадает в планировщик, в каждую сцену, в нарратив и в диалог самого класса, так что русский курс пишется на русском, а не переводится в конце.
  • Длительность, от 30 минут до трёх дней. После примерно часа студия сначала планирует модулями, а потом сцены внутри каждого.

Два переключателя: веб-поиск (Tavily или Firecrawl) и deep interactive, который позволяет планировщику использовать симуляции и 3D-сцены вместо того, чтобы держаться слайдов. Подходит любая модель, которую поддерживает эта установка.

План, редактируемый план курса: меняйте название, меняйте вид сцены, переставляйте, удаляйте, добавляйте, прежде чем сцены будут реально построены, ведь исправить план намного дешевле, чем исправлять уже собранный курс. Рядом с планом показан состав класса.

Сборка идёт в фоне: уходите со страницы, возвращайтесь, курс продолжает строиться. Каждая сцена записывается на диск сразу после завершения, так что прерванный запуск не теряет ничего до момента остановки, а Continue building продолжает с того места, где остановились, вместо повторной оплаты. Сцена занимает пару вызовов модели и несколько минут; Build может строить от одной до восьми сцен одновременно, каждая со своей моделью, что полезно и для скорости, и чтобы распределить длинный запуск по лимитам нескольких аккаунтов.

Аудитория (classroom), место, где курс преподаётся. Сцена несёт список действий (verbs), которые аудитория выполняет по порядку: произнести строку, подсветить элемент, направить указку, выкатить доску, рисовать на ней, редактировать или очистить блок кода, задать вопрос классу, потыкать симуляцию. Нарратив записывается во время сборки курса, а не при первом воспроизведении, так что готовый курс начинает говорить в момент, когда вы нажимаете play; бесплатный локальный голос Supertonic покрывает английский, русский и украинский. Вопрос посреди урока получает настоящий ответ, привязанный к тому, что на экране, а преподаватель честно говорит, если чего-то нет в материале, вместо того чтобы это выдумывать.

  • Page, класс как один офлайн HTML-файл, плеер, а не документ: одна сцена на экране за раз, встроенный нарратив, отвечаемые тесты, интерактивные сцены по-прежнему в песочнице и работают. Без сервера, без сети, воспроизводится с общего диска или USB-накопителя.
  • Deck, слайды в виде .pptx, нарратив в заметках докладчика, а ответы в заметках, а не на самом слайде.

~/Obsidian/Erebros/T-Forge/Courses/<имя>/:

  • course.json, класс: его агенты, его план, то, что вы попросили.
  • scenes/01-….json и далее, по одному файлу на сцену, в порядке преподавания.
  • audio/, нарратив, кешируется по произнесённым словам.

Типизированный документ и, из него, самодостаточную HTML-страницу с диаграммой внутри. Пять видов:

Тип Для чего
Architecture Компоненты, сервисы, облачные и security-границы
Workflow Процессы, точки согласования, runbook’и, CI/CD
Sequence Цепочки вызовов, жизненный цикл запроса, асинхронные трассы
Data flow Пайплайны, ETL/ELT, происхождение данных, потребители
Lifecycle Состояния, повторы, ожидание и конечные состояния

Свежая установка начинается с пяти диаграмм-примеров, по одной на тип, которые можно редактировать или удалить, чтобы увидеть, как выглядит каждый тип. Всё хранится под T-Forge/Diagrams/<имя>/ как ir.json плюс последний отрисованный артефакт.

T-Forge diagrams, Erebros

Опишите, что делает система, простыми предложениями или цепочкой вроде Browser -> API -> Redis -> Postgres. Выберите тип диаграммы, выберите модель, нажмите Generate:

  1. Ваш текст уходит модели вместе со схемой для этого типа и одним готовым примером, и она отвечает документом.
  2. Движок его проверяет: сначала схему, потом раскладку, затем рендерит страницу и прогоняет девять именованных проверок.
  3. Если проверка не проходит, собственная жалоба движка (какая метка, какой узел, что бы это исправило) уходит обратно модели, и та чинит документ. До трёх раундов, и процесс останавливается раньше, если два раунда подряд не улучшают лучший из уже полученных результатов.

Генерация идёт как фоновая задача, так что можно уйти и вернуться к результату. У движка есть строгий профиль представления showcase, который также запрещает пересекающиеся связи и общие коридоры; диаграмма может не пройти его и всё равно оставаться корректной, и в этом случае T-Forge перепроверяет её по более мягкому профилю standard и сохраняет уже в нём.

Сам документ редактируется вручную как JSON, и Validate & apply раскладывает его на канвас, никогда не отказывая в сохранении недописанной диаграммы.

Канвас рисует ту же проекцию, что разделяют все типы: дорожки по бокам, ранги поперёк, так что документ можно исследовать прямо во время написания. Пять режимов: Select, клик по узлу открывает его паспорт и позволяет проследить вверх или вниз по потоку; Route (R), кратчайший авторский маршрут между двумя узлами; Lens (L), сколько узлов и связей остаются внутри одной или двух выбранных дорожек; Story (P), пошаговый проход по авторским видам, которые несёт документ; Delta (D), что изменилось с последнего сохранения документа.

Ничего не додумывается: восходящие и нисходящие связи, маршруты и счётчики lens следуют только авторским рёбрам, а два компонента без ребра между ними считаются несвязанными, а не связанными по догадке.

  • Render the artifact now, создаёт страницу и сохраняет её рядом с документом.
  • Open the rendered page, самодостаточная страница размером около 700 КБ, несущая собственный экспорт в PNG, SVG и WebM внутри себя.
  • Diagram source (.json), сам документ.

Редактирование документа удаляет отрисованный из него артефакт, так что экспорт никогда не оказывается устаревшей диаграммой.

Оба инструмента работают на любой модели, настроенной в этой установке; отдельный ключ для самих движков не нужен. Голосовой движок Course Studio следует тому, что вы настроили для нарратива в остальном Erebros; бесплатный локальный голос Supertonic покрывает английский, русский и украинский без ключа. Веб-поиск в Compose требует TAVILY_API_KEY или настроенный Firecrawl.

Пайплайн Course Studio принадлежит OpenMAIC (MIT), встроен в vendor/openmaic; он владеет контрактом урока и промптами и обращается к выбранной вами модели через одну инжектируемую функцию. Движок диаграмм, archify (MIT), встроен в vendor/archify без runtime npm-зависимостей, так что работает офлайн и переносится прямо в архиве релиза.

  • Набросайте план курса, прежде чем тратиться на полную сборку, исправить шесть строк дешевле, чем исправлять уже собранный курс.
  • Для нарратива не на английском бесплатный локальный голос Supertonic уже покрывает русский и украинский.
  • Если диаграмма не проходит строгие проверки showcase, сначала проверьте, не сохранилась ли она в режиме standard, прежде чем считать, что нужна переделка.
  • Два компонента без линии между ними на диаграмме не связаны; канвас так и скажет, вместо того чтобы намекать на связь, которую никто не написал.
  • P-Forge, родственный инструмент для презентаций и курсов-дек без живой аудитории.
  • Journal, чтобы увидеть точные вызовы модели за курсом или диаграммой.