К содержанию
fohbookбета/ TouchDesigner

Речь, текст и языковые модели

Голос, текст и языковые модели — слой, который работает в масштабе секунд. Web Client DAT или Python в потоке, ключ вне проекта, модерация, запасной ответ и локальные модели для долгих инсталляций.

Ветка вашего пульта:
Быстрый выбор:

Речь и языковые модели приходят через сетевой API или локальный запуск. Слой медленный — секунды, а не кадры, — и строят его с этим в голове.

Задача Чем
Распознать речь Whisper и родня, API или локально
Диалог, текст Языковая модель в облаке или на своём сервере
Синтез речи Облачный TTS или локальная модель
Картинка по тексту ComfyUI или API
Намерения в тексте Маленькая локальная модель

Web Client DAT шлёт запрос асинхронно, ответ ловит колбэком, JSON разбирает json — ставить ничего не надо, Веб. Локальный сервер моделей с HTTP-API вроде Ollama подключается так же, только адрес свой. Библиотека сервиса (openai и прочие) удобнее для потоковых ответов, но просит окружение (Внешние модули и окружения) и обязательно отдельный поток, иначе встанет кадр, Отложенный запуск и потоки.

Звук на распознавание пишут Audio File Out CHOP в файл или берут кусок CHOP массивом numpyArray() для локальной модели. Синтезированный голос играет Audio File In CHOP, Звук наружу.

Ключ — не в .toe

Проект переносят на площадку, в архив, на стрим. Ключ хранится файлом рядом (не в системе контроля версий) или в переменной окружения и читается при старте. Лимит расходов у сервиса обязателен: цикл с запросом каждый кадр стоит дорого.

Что работает

Голос как ввод: зритель говорит, текст правит промпт, сцену, надпись, и пауза в секунду-две терпима — его же «слушают». Текст как контент: строки модели в Text TOP, Текст в кадре. Промпт из простых слов зрителя для диффузии. Разбор свободного текста — классификация, извлечение параметров для чат-бота, который управляет инсталляцией.

Обязательно: тайм-аут и заготовленный ответ на молчание сервиса; модерация на входе и выходе — публичная инсталляция получит всё, что можно получить; лимит частоты, потому что облачный запрос платный; офлайн-режим, потому что интернет на площадке пропадает.

Локально небольшие модели и Whisper не берут денег за запрос, не зависят от сети и не выносят данные зрителей наружу, а взамен просят настройки и видеокарту, которую делит шоу. Для инсталляции на годы — локально и на отдельной машине.

Художнику

В шумном зале голос распознаётся плохо, а две секунды между репликой и ответом разрушают диалог. Идею проверяют на реальном шуме до того, как строить на ней работу.

Нашли в статье ошибку, устаревшее или непонятное место?

рядом по смыслу