Rust Ai -Stream Analyzer Twitch Bot
RSLLM - это AI Pipeline 100% в Rust для кода трансформатора/тензора, который использует фреймворк свечей от HuggingFace. Он представляет собой подход языка системного программирования для взаимодействия модели ИИ и анализа потока. Он может работать локально на графических процессорах, он сосредоточен на поддержке устройств MacOS, оснащенных графическими процессорами M1/M2/M3. Этот трубопровод AI предназначен для разработчиков и исследователей, стремящихся интегрировать локальные модели на крупных языках (LLMS) с ржавчиной, обходить необходимость в внешних зависимостях и код Python для чат -ботов и других программ искусственного интеллекта. По своей сути RSLLM подчеркивает использование локальных LLM для генерации текста, изображений и речи в среде ржавчины, предлагая надежный набор функций для анализа потока данных в реальном времени и создания контента, управляемого AI. RSLLM может запустить Twitch Channell Chat Bot и видео/аудио сгенерированных стабильных диффузионных изображений и вывода речи TTS через программное обеспечение, совместимое с NDI. Вы можете настроить Obs для получения канала NDI и настроить свой канал Twitch, а затем получить полный чат и разговорной/изображения, генерирующий настраиваемый канал Twitch. Полностью управляемый ИИ, вы можете несколько автоматизировать стример Twitch. Кроме того, вы также можете проанализировать потоки MPEGT или статистику системы ОС, если это необходимо, вы можете объединить их и попросить пользователей чата комментировать и запросить поток, анализирующий его эффективно.
Ключевые функции
- Local LLM : использует LLM на основе ржавчины Candle, Mistral и Gemma для прямых и эффективных взаимодействий с ИИ, что приоритет локальному исполнению, чтобы использовать полную мощность графических процессоров MacOS.
- Комплексный анализатор ИИ : внедряет сложный анализатор ИИ, способный обрабатывать входы и генерировать выходы через текст, голос, речь и изображения, способствуя бесшовному потоку контента, сгенерированного ИИ. (Работа в процессе)
- Интеграция голоса и речи : планирует включить Whisper для голосовых взаимодействий, сродни Alexa, позволяя пользователям общаться с инструментарием, используя голосовые команды и получать потоковые текстовые входы в ответ. (Запланированная функция)
- Генерация изображений и вывод NDI : поддерживает генерацию изображений из описаний текста и вывода через NDI для широкого спектра приложений, включая создание контента в реальном времени и вещание. (В бета -тестировании)
- Поддержка TTS : Candle реализует TTS с использованием Metavoice (по умолчанию, WIP), Openai TTS API (высококачественный, в режиме реального времени) и Mimic3 TTS API (местный, бесплатный). Metavoice оптимизируется для металлических графических процессоров, в то время как API Openai TTS генерирует премиальную речь за счет. Mimic3 TTS API требует запуска Mimic3-Server, но предлагает хорошую альтернативу API Openai. Mimic3 GitHub
- Twitch Interactive AI : Integrated Twitch Chat для взаимодействия с ИИ в реальном времени, что позволяет пользователям взаимодействовать с инструментом через команды чата и получать сгенерированные AI ответы.
- Стабильная диффузионная генерация изображений : поддерживает либо стабильную диффузию свечей, либо API -сервер Automatic11111111111111111111111111111111111111111111111111111111111111111111111111. https://github.com/automatic1111/stable-diffusion-webui/
Основные компоненты
Интеграция фреймворта свечи
Candle, проект Huggingface, предлагает ненужные LLM, такие как Мистраль и Джемма, оптимизированный для металлических графических процессоров на macOS. Эта интеграция облегчает локальное выполнение LLMS, обеспечивая высокую производительность и низкую задержку во взаимодействиях модели искусственного интеллекта.
Поддержка API OpenAI для бэкэнда сервера LLAMA.CPP LLM
В то время как основное внимание RSLLM сосредоточено на запуске локальных LLMS, он также обеспечивает поддержку API OpenAI, что позволяет пользователям использовать внешние модели ИИ, когда это необходимо. Эта функция обеспечивает универсальность и широкую применимость в различных проектах, управляемых искусственным интеллектом, с использованием пользовательских моделей.
Анализ ИИ в реальном времени и генерация контента
RSLLM превосходит анализ потоков данных в реальном времени и генерации контента, управляемого AI, включая текст, изображения и речь. Он направлен на создание модели динамического взаимодействия, в которой голосовые входы могут быть преобразованы в текстовые команды для LLM, а сгенерированные выходы могут быть переданы обратно в виде голоса или визуального содержания.
Установка и конфигурация
Предварительные условия
- Убедитесь, что ржавчина и груз установлены. Рувнаторский руководство по установке.
- В идеале система macOS с графическим процессором M1/M2/M3. NVIDIA может работать, нужен кто -то, чтобы исправить это, так как у меня нет графических процессоров NVIDIA.
- Библиотека NDI для потокового вывода OBS NDI. Это необязательно.
Руководство по настройке
Клонировать репозиторий :
git clone https://github.com/groovybits/rsllm.git
Перейдите к каталогу проекта :
Скомпилируйте с поддержкой металлического графического процессора и поддержкой NDI SDK :
./scripts/compile.sh # Script handles NDI SDK dependency and DYLD_LIBRARY_PATH
Конфигурация
- Скопируйте
.env.example to .env и настройте настройки, включая ключ API OpenAI, если они намереваются использовать внешние модели ИИ.
Использование
RSLLM предназначен для облегчения широкого спектра операций, управляемых AI, от генерации текстового контента до анализа сетевых потоков и обработки визуальных и аудиооходов. Расширенные функции, такие как аудио-вывод NDI и обработка ввода голоса в тексте, находятся в разработке, с целью расширения интерактивных возможностей инструментария.
Пример команд
Используйте сценарии в каталоге ./scripts.
./scripts/compile.sh # Build RsLLM
./scripts/broadcast_personality.sh # Full command line shown for most features (use personalities in ./personalities dir as an arg)
./scripts/mpeg_analyzer.sh # Experimental MpegTS Analyzer mode (WIP)
./scripts/mpeg_poetry.sh # Fun poetry about MpegTS Broadcasting with stream input prompt injection
./scripts/system_health.sh # System health status from OS Stats prompt injection
Трансляция в Obs с NDI с полным трубопроводом :
./scripts/broadcast_personality.sh buddha
Запуск со статистикой свечей и ОС для анализа системы ИИ :
cargo run --release --features fonts,ndi,mps,metavoice,audioplayer --
--candle_llm gemma
--model-id " 2b-it "
--max-tokens 800
--temperature 0.8
--ai-os-stats
--sd-image
--ndi-images
--ndi-audio
--system-prompt " You create image prompts from OS system stats health state. "
--query " How is my system doing? Create a report on the system health as visual image descriptions. "
Улучшенные возможности выходных данных и предстоящие функции
Вывод NDI для изображений и речевого звука TTS
RSLLM расширяет свои выходные возможности, чтобы включить поддержку NDI (интерфейс сетевого устройства) для изображений и звука TTS (текстовый в речь), способствуя высококачественной потоковой передаче видео с низкой задержкой в сетях IP.
- (Необязательно) Установка NDI SDK : сценарий compile.sh загрузит для вас libndi.dylib. При желании вы можете скачать и установить NDI SDK отсюда. Этот SDK полезен для просмотра вывода NDI и изучения других инструментов.
- Шаги конфигурации :
- Добавить
--features ndi в команду сборки груза, чтобы включить поддержку NDI в вашу сборку. - Запустите
scripts/compile.sh , который будет извлекать libndi.dylib, который лучше всего подходит для macOS. - Чтобы библиотека была правильно распознана при строительстве с
cargo --features=ndi , установите переменную среды DYLD_LIBRARY_PATH :
export DYLD_LIBRARY_PATH= ` pwd ` : $DYLD_LIBRARY_PATH
- Дополнительная конфигурация : войти в центр Huggingface через CLI может разрешить некоторые потенциальные предупреждения. Выполнить
huggingface-cli login для аутентификации.
Metavoice TTS Текст на речь (WIP)
Candle, наша основная структура ржавчины для взаимодействия LLM, теперь включает Metavoice, новаторскую технологию текста в речь (TTS). По мере того, как эта функция улучшится, она позволит LLM на основе чистой ржавчины, TTI (текст к изображению) и функциональности TTS, легко интегрированные с оптимизацией графических процессоров металла для MacOS.
- Статус разработки : интеграция Metavoice выполняется и оптимизируется в свече, чтобы соответствовать качеству эталонной реализации.
- Ожидаемые преимущества : после полной оптимизации Metavoice значительно улучшит способность инструментария генерировать жизнь в жизни из текста без затрат и с низкой задержкой на локальном LLM. Это также обеспечит возможность одного выстрела выучить голос от небольшого клипа и генерировать от него речь. На данный момент вы можете использовать Openai для качества/поколения речевого звука в реальном времени.
Миссия RSLLM состоит в том, чтобы исследовать и исследовать реализацию универсального, высокопроизводительного инструментария для создания и анализа контента, управляемого искусственным интеллектом, используя весь потенциал металлических графических процессоров и эффективности Rust.
Дорожная карта
Приоритет:
- Сохранить историю с использованием локальной базы данных (например, SQLite или MongoDB) и подайте ее в Croma DB для тряпки.
- MPEGTS Chat для бесплатного анализа по текущим и историческим данным потока MPEG-TS.
- Улучшить задержку изображения/TTS и асинхронную координацию вывода. Используйте предварительную проблему NDI для изображений и аудио, чтобы обеспечить синхронизацию и минимизировать задержку.
- Реализуйте RAG (извлечение дополненного поколения) с использованием хрома для кэширования и встраивания документов, предоставляя контекст LLM на основе дополненной документации.
- Merge Metavoice исправляет свечу, когда они становятся доступными (WIP).
- Реализуйте восприятия хэши (на основе DCT64) для отпечатков кадров, чтобы обнаружить изменения в видео кадрах, распознавание и изучение повторяющихся последовательностей контента, проверить коммерческие разрывы и обнаружить вставки AD. Интегрируйте SCTE-35 и поддерживайте базу данных контента с отпечатками пальцев для различных проверок качества, подтверждения верности логотипа и обнаружения присутствия.
- Включите режим Daemon для запуска и прослушивания запросов с помощью входа Zeromq и передавать на вывод.
- Разверните варианты для LLMS и API OpenAI.
Будущие улучшения:
- Используйте ffmpeg-next-sys для обработки видео и аудио в режиме реального времени для создания кадров, аудио и текста-видео, а также для преобразования видео и создания видеороликов или тематических историй. Исследуйте возможности объединения LLM с FFMPEG.
- Увеличить анализатор MPEGTS для анализа в реальном времени потоков MPEG-TS, отчетности и обнаружения проблем, основанных на искусственном интеллекте.
- Улучшить сетевые и системные анализаторы.
- Используйте Chroma DB для RAG с документами для расширения подсказок с соответствующей информацией.
- Реализуйте CAP'N Proto для сериализации, пустыни и модульной связи протокола Zeromq.
- Интегрировать метамуза для поколения музыки на основе настроения на основе результатов.
- Разработать генерацию видео с головой с постоянным контекстом кадров, обеспечивая, чтобы объекты оставались такими же в кадрах.
- Реализуйте речь к тексту, используя Whisper Candle для аудио ввода, проглатывания LLM и видео-субтитров.
- Разрешить параметры ввода свободных форм для LLM для интерпретации намерений пользователей.
- Исследуйте генерацию динамического кода в Python для новых задач, таких как обработка видео (рассмотрите риски).
- Реализуйте итерационные и много поколений с указаниями, ведущими к нескольким проходам, пока не будет достигнут конечный результат.
- Используйте речь в текст с Whisper Candle для аудио ввода, позволяя голосовым командам в LLM для разговорного ИИ.
Внося
Вклад тепло приветствуется, особенно в таких областях, как разработка функций, оптимизация производительности и документация. Ваш опыт может значительно улучшить возможности инструментария и пользовательский опыт.
Лицензия
Этот проект лицензирован по лицензии MIT. См. Файл лицензии для получения подробной информации.
Благодарности
- Трансформеры/тензоры ржавчины свеча
- OpenAI для спецификаций API: OpenAI
- OpenAI для TTS Integration: OpenAI
- Metavoice для интеграции TTS: Metavoice
- MIMIC3 для интеграции TTS: MIMIC3
- Шепотом для речи в текст: шепот
- Google Gemini LLM: Gemini
- Мишстраль Л.Л.: Мистраль
Автор
Крис Кеннеди, возглавляющий разработку инновационных решений искусственного интеллекта с помощью инструментария MacOS Metal GPU Rust LLM. Февраль 2024 г.
Мы стремимся раздвинуть границы интеграции искусственного интеллекта с помощью видеотехнологии и мультимодального ввода/вывода на процессорах MacOS Arm в чистой ржавчине, обеспечивая, чтобы разработчики и исследователи медиа имели доступ к мощным, эффективным и универсальным инструментам для своих проектов, управляемых ИИ.