Запусти интерактивное приложение ИИ с помощью Streamlit и Ultralytics YOLO11
Узнай, как запускать инференс YOLO11 внутри интерфейса Streamlit и создавать интерактивный интерфейс ИИ для задач компьютерного зрения без навыков программирования.

Модели компьютерного зрения — это эффективные инструменты AI, которые позволяют машинам интерпретировать и анализировать визуальные данные, выполняя такие задачи, как обнаружение объектов, классификация изображений и сегментация экземпляров с высокой точностью. Однако для их развертывания и предоставления доступа более широкой аудитории иногда требуются дополнительные технические знания, например навыки веб-разработки или создания мобильных приложений.
Возьмем, к примеру, Ultralytics YOLO11. Это модель, поддерживающая различные задачи и полезная в самых разных приложениях. Однако без определенных знаний во front-end разработке создание и развертывание удобного интерфейса для беспрепятственного взаимодействия может показаться некоторым AI-инженерам немного сложным.
Streamlit — это фреймворк с открытым исходным кодом, призванный упростить этот процесс. Это инструмент на базе Python для создания интерактивных приложений без сложной front-end разработки. В сочетании с Ultralytics YOLO11 он позволяет пользователям загружать изображения, обрабатывать видео и визуализировать результаты в реальном времени с минимальными усилиями.
Ultralytics делает еще один шаг вперед благодаря решению Live Inference, еще больше упрощая интеграцию со Streamlit. С помощью одной команды пользователи могут запустить готовое приложение Streamlit для YOLO11, избавившись от необходимости вручную настраивать и писать код.
В этой статье мы разберем, как настроить и запустить YOLO11 с использованием решения Ultralytics Live Inference и Streamlit, чтобы сделать развертывание AI в реальном времени быстрее и доступнее.
Что такое Streamlit?#
Streamlit — это фреймворк Python, упрощающий создание интерактивных веб-приложений. AI-разработчики могут создавать приложения на базе AI, не погружаясь в тонкости front-end разработки.
Он разработан для бесшовной работы с моделями AI и машинного обучения. Всего с несколькими строками кода на Python разработчики могут создать интерфейс, в котором пользователи смогут загружать изображения, обрабатывать видео и взаимодействовать с моделями AI.

Рис. 1. Ключевые возможности Streamlit. Изображение автора.
Одна из его ключевых возможностей — динамический рендеринг. Когда пользователи вносят изменения, приложение автоматически обновляется без необходимости вручную перезагружать страницы.
Кроме того, благодаря легкости и простоте использования Streamlit эффективно работает как на локальных машинах, так и на облачных платформах. Это делает его отличным выбором для развертывания AI-приложений, обмена моделями с другими пользователями и создания интуитивно понятного интерактивного пользовательского интерфейса.
Ultralytics YOLO11: универсальная модель Vision AI#
Прежде чем перейти к запуску инференса в реальном времени с Ultralytics YOLO11 в приложении Streamlit, давай подробнее рассмотрим, что делает YOLO11 такой надежной моделью.
Ultralytics YOLO11 — это модель, предназначенная для выполнения задач компьютерного зрения в реальном времени, таких как обнаружение объектов, сегментация экземпляров и оценка позы. Она обеспечивает высокую скорость работы и впечатляющую точность.

Рис. 2. Пример использования YOLO11 для обнаружения объектов.
Одно из главных преимуществ YOLO11 — простота использования. Сложная настройка не требуется: разработчики могут установить пакет Ultralytics для Python и начать выполнять предсказания всего с несколькими строками кода.
Пакет Ultralytics для Python предоставляет широкий набор возможностей, позволяя пользователям дообучать модели и настраивать параметры обнаружения. Он также помогает оптимизировать производительность на разных устройствах для более плавного развертывания.
Помимо гибкости, пакет Ultralytics для Python поддерживает [интеграции](https://ultralytics-translation-0.invalid с множеством платформ, включая периферийные устройства, облачные среды и системы с GPU NVIDIA. Независимо от того, развернута ли модель на небольшом встроенном устройстве или крупном облачном сервере, YOLO11 легко адаптируется, делая передовые технологии Vision AI доступнее, чем когда-либо.
Преимущества использования Streamlit с Ultralytics YOLO11#
Возможно, ты задаешься вопросом: как понять, подходит ли мне Streamlit для развертывания? Если тебе нужен простой и эффективный с точки зрения кода способ запуска Ultralytics YOLO11 без front-end разработки, Streamlit — хороший вариант, особенно для прототипирования, проектов по проверке концепции (PoC) или развертываний, рассчитанных на небольшое число пользователей.
Он упрощает работу с Ultralytics YOLO11, устраняя ненужную сложность и предоставляя интуитивно понятный интерфейс для взаимодействия в реальном времени. Вот еще несколько ключевых преимуществ:
-
Настраиваемые элементы управления AI: Ты можешь добавлять в интерфейс ползунки, раскрывающиеся списки и кнопки, позволяя пользователям точно настраивать параметры обнаружения и легко фильтровать определенные объекты.
-
Интеграция с другими инструментами AI: Streamlit поддерживает интеграцию с NumPy, OpenCV, Matplotlib и другими библиотеками машинного обучения, расширяя возможности рабочих процессов AI.
-
Интерактивная визуализация данных: Встроенная поддержка диаграмм и графиков позволяет пользователям без труда визуализировать результаты обнаружения объектов и сегментации, а также данные трекинга.
-
Удобство совместной работы: Приложениями Streamlit легко делиться с членами команды, заинтересованными сторонами или клиентами с помощью простой ссылки, обеспечивая мгновенную обратную связь и итеративную доработку.
Пошаговое руководство по развертыванию Ultralytics YOLO11 в веб-приложении Streamlit#
Теперь, когда мы рассмотрели преимущества использования Streamlit с Ultralytics YOLO11, давай разберем, как выполнять задачи компьютерного зрения в реальном времени в браузере с помощью Streamlit и YOLO11.
Установка пакета Ultralytics для Python#
Первый шаг — установить пакет Ultralytics для Python. Для этого используй следующую команду:
После установки YOLO11 готова к использованию без сложной настройки. Если при установке необходимых пакетов возникнут проблемы, обратись к нашему руководству по распространенным проблемам, чтобы найти советы и решения для устранения неполадок.
Запуск приложения Streamlit с Ultralytics YOLO11#
Обычно для запуска YOLO11 тебе пришлось бы разработать скрипт на Python с использованием компонентов Streamlit. Однако Ultralytics предлагает простой способ запуска YOLO11 со Streamlit.
Запуск следующего скрипта на Python мгновенно откроет приложение Streamlit в браузере по умолчанию:
Дополнительная настройка не требуется. Интерфейс приложения Streamlit включает раздел для загрузки изображений и видео, раскрывающийся список для выбора интересующего тебя варианта модели Ultralytics YOLO11 и ползунки для настройки уверенности обнаружения. Все аккуратно организовано, поэтому пользователи могут без труда запускать инференс, не написав ни строчки дополнительного кода.
Запуск инференса с использованием Ultralytics YOLO11 в приложении Streamlit#
Теперь, когда приложение Streamlit запущено в браузере, давай разберемся, как использовать его для запуска инференса с Ultralytics YOLO11.
Представим, что мы хотим проанализировать видеофайл для обнаружения объектов. Вот шаги, необходимые для загрузки файла, выбора модели и просмотра результатов в реальном времени:
- Загрузи видеофайл: Выбери «video» в раскрывающемся списке конфигурации пользователя, чтобы приложение обрабатывало предварительно записанный файл, а не поток с веб-камеры.
- Выбери модель YOLO11: Выбери «YOLO11l» в раскрывающемся списке моделей для обнаружения объектов с помощью крупной модели YOLO11.
- Запусти процесс обнаружения: Нажми «Start», чтобы Ultralytics YOLO11 анализировала видео покадрово и обнаруживала объекты в реальном времени.
- Просмотри обработанное видео: Следи за видео на экране с обновлениями в реальном времени, где обнаруженные объекты отображаются с ограничивающими рамками.
- Взаимодействуй с результатами в Streamlit: Используй интерфейс для настройки параметров или анализа обнаруженных объектов без дополнительной настройки и написания кода.

Рис. 3. Интерфейс приложения Ultralytics YOLO Streamlit.
Варианты использования Streamlit и Ultralytics YOLO11#
Мы рассмотрели, как Streamlit подходит для создания прототипов, исследовательских инструментов и приложений малого и среднего масштаба. Он предоставляет простой способ развертывания моделей AI без сложной front-end разработки.
Однако запуск YOLO11 со Streamlit не всегда работает сразу — если только ты не используешь приложение Ultralytics YOLO Streamlit, настроенное на описанных выше шагах. В большинстве случаев для адаптации приложения под конкретные задачи потребуется определенная разработка. Хотя Streamlit упрощает развертывание, тебе все равно нужно настроить необходимые компоненты, чтобы YOLO11 работала стабильно.
Давай рассмотрим два практических примера эффективного развертывания Ultralytics YOLO11 со Streamlit в реальных сценариях.
Подсчет объектов для проверки запасов с использованием Ultralytics YOLO11#
Учет запасов в розничных магазинах, складских помещениях или зонах хранения офисных принадлежностей может занимать много времени и приводить к ошибкам. С помощью Ultralytics YOLO11 и Streamlit компании могут быстро и эффективно автоматизировать подсчет объектов, что делает это решение отличным вариантом для проверки концепции (PoC) перед переходом к масштабному развертыванию.
При такой настройке пользователи могут загрузить изображение или использовать поток с камеры в реальном времени, а Ultralytics YOLO11 поможет мгновенно обнаруживать и подсчитывать объекты. Результат подсчета в реальном времени можно отображать в интерфейсе Streamlit, обеспечивая простой способ отслеживать уровень запасов без ручной работы.
Например, владелец магазина может просканировать полку и сразу увидеть, сколько на ней бутылок, коробок или упакованных товаров, не пересчитывая их вручную. Используя Ultralytics YOLO11 и Streamlit, компании могут сократить объем ручной работы, повысить точность и исследовать возможности автоматизации с минимальными инвестициями.

Рис. 4. Обнаружение бутылок в холодильнике с использованием Ultralytics YOLO11.
Повышение безопасности с помощью Ultralytics YOLO11 и Streamlit#
Обеспечить безопасность зон с ограниченным доступом в офисах, на складах или в местах проведения мероприятий может быть сложно, особенно при ручном мониторинге. С помощью Ultralytics YOLO11 и Streamlit компании могут создать простую систему безопасности на базе AI для обнаружения несанкционированного доступа в реальном времени.
Поток с камеры можно подключить к интерфейсу Streamlit, где Ultralytics YOLO11 будет использоваться для обнаружения и отслеживания людей, входящих в зоны ограниченного доступа. Если будет обнаружен посторонний человек, система сможет отправить оповещение или записать событие для последующего анализа.
Например, управляющий складом может контролировать доступ в зоны хранения с повышенными требованиями к безопасности, а офис — отслеживать перемещения в закрытых секциях без постоянного надзора.
Это может стать полезным и показательным проектом для компаний, желающих изучить возможности мониторинга безопасности на базе Vision AI, прежде чем переходить к более крупной полностью автоматизированной системе. Интегрируя Ultralytics YOLO11 со Streamlit, компании могут повысить безопасность, сократить объем ручного мониторинга и эффективнее реагировать на несанкционированный доступ.
Советы по мониторингу интерактивного AI-приложения со Streamlit#
Использование таких инструментов, как Streamlit, для развертывания моделей компьютерного зрения помогает создать интерактивный и удобный интерфейс. Однако после настройки интерфейса реального времени важно убедиться, что система эффективно работает и со временем выдает точные результаты.
Вот несколько ключевых факторов, которые следует учитывать после развертывания:
- Регулярный мониторинг: Отслеживай точность обнаружения, скорость инференса и использование ресурсов. Если производительность снижается, настрой параметры модели или модернизируй оборудование.
- Управление несколькими пользователями и масштабируемость: По мере роста спроса со стороны пользователей оптимизация инфраструктуры становится ключевой для поддержания производительности. Облачные платформы и масштабируемые решения для развертывания помогают обеспечить стабильную работу.
- Поддержание модели в актуальном состоянии: Обновление модели и библиотек повышает точность и безопасность, а также открывает доступ к новым возможностям.
Основные выводы#
Ultralytics упрощает развертывание YOLO11 благодаря готовому к использованию интерфейсу Streamlit для инференса в реальном времени, который запускается одной командой — без написания кода. Это позволяет пользователям мгновенно начать обнаруживать объекты в реальном времени.
Интерфейс также включает встроенные возможности настройки, позволяя пользователям переключать модели, регулировать точность обнаружения и легко фильтровать объекты. Все управляется в простом и удобном интерфейсе, поэтому ручная разработка UI не требуется. Объединяя
возможности Ultralytics YOLO11 с простотой развертывания Streamlit, компании и разработчики могут быстро создавать прототипы, тестировать и совершенствовать приложения на базе AI.
Присоединяйся к нашему сообществу и изучай наш репозиторий на GitHub, чтобы узнать больше об ИИ. Посети страницы наших решений, чтобы подробнее ознакомиться с такими инновациями, как ИИ в производстве и компьютерное зрение в здравоохранении. Ознакомься с нашими вариантами лицензирования и начни уже сегодня!









