Содержание
С последним релизом Home Assistant у вас теперь может быть полностью локальный ИИ, который поможет вам управлять вашим умным домом. Это стало возможным благодаря интеграции Home Assistant Assist и Ollama. Давайте рассмотрим, как работает эта настройка, ее плюсы и минусы, и можно ли ее использовать на данном этапе. Я также поделюсь тем, как ее настроить, чтобы вы могли попробовать сами. Давайте погрузимся в это!
Настройка Home Assistant и Ollama
Шаг 1: Подготовка среды
Во-первых, убедитесь, что Home Assistant запущен и работает. Подойдет любой тип установки Home Assistant.
Шаг 2: Локальный запуск Ollama
Затем вам нужно запустить Ollama на устройстве, которое находится в той же сети, что и ваш Home Assistant.
- Настройте Ollama: Загрузите клиент Ollama с сайта Сайт Оллама. Он доступен для Windows, Linux и Mac. Я использую Mac с процессором M1, и он работает на нем достаточно прилично для тестов и игр.
После загрузки Ollama запустите проект. Вы должны увидеть симпатичную иконку Ollama, указывающую на то, что проект запущен (по крайней мере, я вижу ее на Mac, я почти уверен, что она такая же на Windows и, вероятно, на Linux).
Затем откройте доступ к настройкам Ollama в локальной сети, чтобы Home Assistant мог подключиться к ней:
- Экспорт на хост: Используйте команду экспорта, чтобы сделать Ollama доступным по локальной сети. Следуйте инструкциям для вашей ОС по этой ссылке:
https://github.com/ollama/ollama/blob/main/docs/faq.md#how-do-i-configure-ollama-server - Перезапустите ваше приложение Ollama
- Установите IP и порт: Обычно вы используете IP-адрес вашего ноутбука и порт по умолчанию (например, 11434).
Шаг 3: Интеграция Ollama с Home Assistant
Чтобы интегрировать Ollama с Home Assistant:
- Добавьте интеграцию Ollama:
- Ввод IP и порта: Введите IP-адрес и порт устройства, на котором запущен Ollama. Порт Ollama по умолчанию — 11434, а IP-адрес моего ноутбука — 192.168.8.38, и вот что я ввел:
- Выберите модель LLM: Выберите лучшую доступную модель, например llama3.1:latest. Эта модель мощная и исходит от Meta. Если вы читаете это по прошествии некоторого времени, выберите llama4 или 5 или любую другую, которая является самой новой версией.
- Отредактируйте свой Home Assistant Pipeline: Нажмите на Помочь кнопка (вверху справа) > стрелка вниз > Управлять помощниками и выберите ламаX.X (в настоящее время llama3.1, в будущем кто знает) в качестве агента разговора.
- Нажмите на кнопку колеса настроек.
- Добавить инструкции: Добавьте конкретные инструкции, если вы хотите, чтобы ваш помощник действовал определенным образом (например, Гарри Поттер, Супер Марио, пассивно-агрессивный и т. д.)
- Выбирайте Помочь, если вы хотите разрешить Assist управлять вашими устройствами или Нет контроля если вы хотите только запросить информацию и статусы.
Глоссарий
Вот некоторые термины, которые могут помочь вам лучше понять эту установку:
- Home Assistant: Платформа домашней автоматизации с открытым исходным кодом, ориентированная на конфиденциальность и локальный контроль.
- Ollama: Локальный клиент ИИ, который интегрируется с Home Assistant для обеспечения автоматизации на базе ИИ.
- LLM (Большая языковая модель): Тип модели ИИ, предназначенный для понимания и генерации человеческого языка.
- Мета: Компания, ранее известная как Facebook, которая разработала модели искусственного интеллекта LLaMA.
Расширенная конфигурация
Устройства управления
Для управления устройствами с помощью Home Assistant Assist и локального ИИ:
- Включать переключатель: Установить переключатель в положение «включен» для устройств, которыми вы хотите управлять. Вы можете найти меню, нажав на интересующее вас устройство > колесо настроек > голосовые помощники. Или перейдите на Настройки > Голосовые помощники > Expose для массового контроля
Определение псевдонимов
Вы можете помочь Home Assistant Assist лучше идентифицировать устройства, задав псевдонимы:
- Выберите устройство: Нажмите на объект, затем на колесо настроек.
- Определить псевдонимы: Добавьте столько псевдонимов, сколько хотите, для лучшего распознавания Home Assistant Assist и локальным искусственным интеллектом.
Тестирование локального ИИ
Основные команды
В моей тестовой среде все готово к использованию. Я нажал кнопку Assist и начал вводить команды. Вот несколько примеров:
- Команда: «У меня болят глаза, можете остановить шоу?»
- Результат: ИИ выключил все устройства в гостиной, хотя я хотел выключить только телевизор.
- Команда: «Мне скучно, можешь развлечь меня в гостиной?»
- Результат: ИИ включил все устройства в гостиной, включая свет. Так что, вероятно, он думает, что если есть свет, то я должен развлекаться.
Непоследовательные ответы
Ответы Ollama и локальной модели ИИ противоречивы. Иногда он понимает команду правильно, а иногда нет. Вот некоторые наблюдения:
- Правильные ответы: Иногда он делает именно то, что я прошу.
- Неправильные ответы: Часто он либо включает/выключает все в комнате, либо сообщает, что не может помочь.
- Галлюцинации: ИИ иногда выдумывает информацию, например, говорит, что свет выключен, когда на самом деле это не так.
Развлечения с ИИ
Я настроил свой ИИ на ответ в дерзком и пассивно-агрессивном стиле ради забавы. Хотя он не всегда так реагирует, это забавно, когда это происходит. Если вы хотите сделать то же самое:
- Редактировать конвейер: Перейдите в раздел «Управление помощниками» и нажмите кнопку настроек рядом с полем «Агент разговора».
- Добавить инструкции: Добавьте к существующим инструкциям что-то вроде «будь дерзким и пассивно-агрессивным».
Можно ли использовать локальный ИИ в жизни?
Хотя интеграция локального ИИ Ollama с полным контролем в Home Assistant является значительным шагом вперед, она пока не надежна для использования в производстве. Она отлично подходит для игр и тестирования, но недостаточно последовательна для ежедневного использования. Поэтому, за исключением экспериментов в безопасной песочнице, я рекомендую пока отложить использование ИИ в Home Assistant.
Возможно, предстоящее сотрудничество Home Assistant и Nvidia позволит создать продукт, который будет достаточно быстро обрабатывать локальные LLM, и появится оптимизированный для Home Assistant LLM, который будет достаточно умным, но, полагаю, нам придется подождать и посмотреть.