Як локальна LLM перехопила керування відеодзвінком: погляд у майбутнє смарт-камер

Як локальна LLM перехопила керування відеодзвінком: погляд у майбутнє смарт-камер 1

Створення локального ШІ-помічника для відеодомофона: досвід ентузіаста

Деякі моделі відеодомофонів Ring оснащені функціями штучного інтелекту, які дозволяють взаємодіяти з відвідувачами, навіть коли вас немає вдома. Я вирішив замінити свій Ring на домофон Reolink, який повністю працює локально, і задумався, чи можна відтворити подібну функціональність за допомогою локальної великої мовної моделі (LLM). Частково мені це вдалося.

Як локальна LLM перехопила керування відеодзвінком: погляд у майбутнє смарт-камер 2

Створюючи обліковий запис, ви погоджуєтеся з нашими Умовами використання та Політикою конфіденційності. Ви також погоджуєтеся отримувати наші розсилки; ви можете відписатися будь-коли.

Продовжити читання Як локальна LLM перехопила керування відеодзвінком: погляд у майбутнє смарт-камер 3

Увійти

Забули пароль?

Створити обліковий запис

*Обов’язково: 8 символів, 1 велика літера, 1 цифра

Створити обліковий запис

Продовжити зGoogle Продовжити зOpenPass або Продовжити зEmail

Продовжити

Створюючи обліковий запис, ви погоджуєтеся з нашими Умовами використання та Політикою конфіденційності. Ви також погоджуєтеся отримувати наші розсилки; ви можете відписатися будь-коли.

ШІ-помічник для вашого дому

Як локальна LLM перехопила керування відеодзвінком: погляд у майбутнє смарт-камер 4

Ідея здавалася цілком реалістичною. Коли хтось дзвонить у двері, а система Home Assistant фіксує відсутність людей вдома, домофон мав би повідомити відвідувача, що всі відсутні, попросити назвати своє ім’я та мету візиту. Потім він мав би прослухати відповідь, обробити її та реагувати відповідно.

Використовуючи хмарну LLM, це завдання здавалося досяжним. Перетворення тексту на мову (TTS) та мови на текст (STT) є відносно простими завданнями для хмарних сервісів. LLM виступала б посередником, отримуючи на вхід мову відвідувача та генеруючи відповіді для відтворення через динамік домофона.

Я розумів, що реалізація цього за допомогою локальної LLM буде складнішою. Моє відносно слабке обладнання дозволяє запускати лише менші моделі, які можуть виявитися недостатньо потужними для такого завдання. Однак я вирішив спробувати, щоб побачити, чи вдасться мені все це налаштувати локально.

Як я це налаштував

TTS на вихід, Whisper на вхід, Ollama посередині

Для реалізації цієї ідеї мені знадобилося три основні компоненти. По-перше, система для перетворення тексту на мову (TTS), щоб домофон міг озвучувати повідомлення. По-друге, система для перетворення мови на текст (STT), щоб запис голосу відвідувача перетворювався на текст для обробки LLM. І, по-третє, засіб для запуску локальної LLM, яка б виконувала роль «мозку» всієї системи.

На щастя, Home Assistant пропонує чудові рішення для кожного з цих завдань. Piper — це локальний TTS-рушій, який може перетворювати текст на аудіо, яке я потім відтворював через динамік свого домофона. Він працює повністю локально і є достатньо легким, щоб його можна було запустити навіть на Raspberry Pi 4.

Автор: Adam Davidson

Whisper забезпечує еквівалентний локальний STT-компонент. Він може приймати аудіозапис з камери домофона, коли говорить відвідувач, і перетворювати його на текст, який потім передається локальній LLM. Знову ж таки, це рішення працює повністю локально, що було моєю основною метою.

Останнім елементом пазла є Ollama. Це інструмент, який дозволяє запускати локальні великі мовні моделі на вашому власному обладнанні. Існує інтеграція з Home Assistant, яка дозволяє легко підключити Ollama до вашої системи.

Обмеженням тут є потужність самої LLM. Слабка апаратна частина може запускати лише менші, менш функціональні моделі, а чим більшу модель ви намагаєтеся використовувати, тим повільнішими будуть відповіді. Мені довелося використовувати досить компактну модель, щоб забезпечити прийнятний час генерації відповідей.

Реальність не виправдала сподівань

Концепція чудова, але реалізація кульгає

Як локальна LLM перехопила керування відеодзвінком: погляд у майбутнє смарт-камер 5

Налаштування зайняло певний час. Як це часто буває з Home Assistant, більшу частину роботи вже зробили інші користувачі. Я знайшов корисний Gist на GitHub, який пояснював, як відтворювати аудіо та використовувати TTS через мій домофон Reolink, що значно допомогло.

У мене виникли певні проблеми з тим, що запис аудіо починався ще до завершення відтворення привітання домофоном, що створювало плутанину. Однак згодом я знайшов спосіб обійти цю проблему.

Перші етапи мого задуму спрацювали добре. Коли хтось натискав кнопку дзвінка, LLM генерувала голосове привітання, яке відтворювалося через динамік домофона. Вона повідомляла, що всі відсутні, і просила відвідувача назвати своє ім’я та мету візиту.

Потім домофон записував відповідь відвідувача, а STT перетворював її на текст. До цього моменту все працювало чудово.

Проблема полягала в тому, що спроба вести двосторонню розмову з ШІ-домофоном просто не вдавалася. Невелика LLM плуталася, починала говорити нісенітниці, а відповіді надходили із затримкою.

Ймовірно, ця концепція працювала б набагато краще з достатньо потужною LLM. Але поки я не виграю в лотерею, мені доводиться працювати з тим, що маю.

Я створив робочу альтернативу

Насправді це доволі надійне рішення

Як локальна LLM перехопила керування відеодзвінком: погляд у майбутнє смарт-камер 6

Оскільки основною перешкодою була спроба вести діалог із відвідувачем, я просто вилучив цю частину процесу. Натомість, коли відвідувач називає своє ім’я та причину візиту, STT перетворює це на текст, і цей текст надсилається як сповіщення на мій телефон. Після цього домофон повідомляє, що передасть повідомлення, і завершує «розмову».

Це означає, що щоразу, коли хтось дзвонить у двері, коли нас немає вдома, я отримую сповіщення з інформацією про те, хто це був і чому вони телефонували. Загалом, це працює досить добре, хоча іноді трапляються кумедні повідомлення через збої. Але в більшості випадків це дійсно корисна функція.

Це напрямок, куди рухається світ

Сьогодні спостерігається тенденція до інтеграції ШІ в усі пристрої, і цей процес, схоже, не сповільнюється. Хоча ШІ-помічник від Ring є корисним, компанія не має найкращої репутації щодо конфіденційності. Хороша новина полягає в тому, що, доклавши певних зусиль, можна відтворити принаймні частину цих функцій повністю локально.

Порада від Soft Portal: Цей експеримент показує, як можна значно розширити функціональність вашого відеодомофона, зробивши його розумнішим та інтерактивнішим. Навіть якщо повна реалізація діалогу поки що залишається викликом, отримання сповіщень з інформацією про відвідувача та його мету візиту є надзвичайно зручною функцією для будь-якого власника сучасного дому.

Подробиці можна знайти на сайті: www.howtogeek.com

Залишити відповідь

Ваша e-mail адреса не оприлюднюватиметься. Обов’язкові поля позначені *