low code что это
Экосистема Low-Code решений
Просто невероятно, какое множество инструментов появилось в последнее время для почти мгновенного создания бизнес приложений.
Я бы хотел рассмотреть, что это за инструменты, как именно они помогают, и какие выглядят наиболее многообещающе.
Переведено в компании 8base.
Что такое low code?
В моем понимании, к low code можно отнести инструменты, которые способны экономить разработчику существенное время, и которые могут быть реализованы с помощью кода. Области применения:
Инструменты Low Code
Генератор мобильных приложений
Дополнения и всплывающие окна
Подписки и марктеплейсы
Эти инструменты помогают быстро настроить маркетплейс или сайт, основанный на модели подписки.
Бэкенд как сервис
Эти инструменты устраняют проблемы, связанные с управлением данными, хранением данных, управлением пользователями и хранением файлов.
Простой бэкенд как сервис
Эти продукты обеспечивают действительно простой сервис, но позволяют легко преобразовать статический сайт в динамический.
Таблицы в качестве базы данных
Быстрый и простой способ начать, но нужно изучить вопрос безопасности.
Генераторы приложений и SaaS
Дают неплохое подспорье на старте.
Автоматически сгенерированные панели администрирования
Используют схему для создания пользовательского интерфейса, который позволяет администраторам управлять данными и пользователями.
Продвинутые таблицы
Эти инструменты работают как внутренние панели администратора, добавляя расширенные возможности в модель электронных таблиц.
Быстрое и простое прототипирование
Я не сразу решился добавить этот раздел, но думаю, что он актуален. Хотя бы потому, что я считаю, что цель большинства low code инструментов состоит в том, чтобы создание полноценных приложений больше походило на создание прототипов. Итак, посмотрите на эти инструменты, чтобы узнать, чего могут в будущем достигнуть продукты для разработки.
Простые визуальные конструкторы веб-приложений
Эти продукты ориентированы на легкое достижение единственной цели.
Сложные визуальные конструкторы веб-приложений
Они делают некоторые вещи проще, но не дают особой гибкости. Я думаю, что они пригодятся в основном для создания бэк-офис приложений, а не приложений, ориентированных на пользователя. Также они могут быть не годны для использования на мобильных устройствах.
Конструкторы для конструкторов визуальных веб приложений
Упрощаем разработку, вводим новые концепции
Некоторые из самых интересных и революционных инструментов попали именно в эту категорию. Эти инструменты обеспечивают большую гибкость при сокращении по крайней мере одного этапа разработки продукта (например, базы данных, серверной части, инструмента сборки, передачи).
Преобразование статического дизайна в приложение
Это кажется довольно трудным в реализации, но если они смогут это выполнить, будет круто.
Упрощаем стек — современные версии
Эти решения пытаются сохранить преимущества современных фреймворков (эргономика, обновления в реальном времени, компоненты интерфейса), устраняя при этом головную боль (нагромождение ресурсов или рендеринг на стороне сервера или просто слишком много всего, за чем надо следить).
Новые типы инструментов
Инструменты, которые сильно отличаются от обычных, и могут сэкономить массу времени.
Запрос базы данных к приложению
Эти инструменты позволяют генерировать интерфейс приложений из запросов к базе данных.
Упрощаем стек — традиционно, но современно
Интересные фреймворки и стеки
Это одни из самых интересных сочетаний в мире фреймворков.
Фреймворки для быстрой разработки приложений
Эти инструменты ориентированы прежде всего на скорость. Они могут страдать в плане гибкости, но ваша способность быстро выйти на рынок и проверить свою идею компенсирует это.
Фреймворки для быстрой разработки API
Эти инструменты позволяют очень быстро генерировать API из базы данных, что потенциально экономит годы работы.
Конвертируем сторонние сайты в API
Эти инструменты сканируют сторонние веб-сайты, собирают их информацию в структурированном формате и позволяют использовать данные в своем веб-приложении.
Фреймворки в процессе разработке
Классные новые фреймворки, которые пока не вышли.
Языки определения веб-приложений
Эти инструменты позволяют вам создавать высокоуровневую концепцию вашего приложения, которое затем легко переносится на выбранный вами язык / фреймворк.
Обычно не подходят для создания полноценного веб-приложения, но отлично подходит для управления конструктором веб-сайтов.
Высокоуровневая / простая CMS
Эти инструменты позволяют больше сосредоточиться высокоуровневых компонентах, позволяя вам определять контент, не вдаваясь в детали.
Шаблоны лендинговых страниц
Эти инструменты помогут запустить ваш маркетинговый веб-сайт, предоставив вам HTML и CSS. Вам нужно будет отредактировать его и организовать хостинг самостоятельно.
CMS с уникальным подходом
Использует нативные веб-инструменты (например, онлайн таблицы), которые знакомы пользователям и могут легко подключаться к нескольким платформам в качестве серверной части.
CMS для блогов
Электронная таблица на сайт
Конструкторы рабочих процессов (управление процессами)
Конструкторы рабочих процессов (автоматизация маркетинга)
Headless CMS
Упрощает управление данными, поэтому вы можете сосредоточиться на их отображении.
Сверх CMS
Более мощные, чем стандартные CMS, системы.
Эндпоинты для форм
Эти сервисы позволяют собирать информацию о посетителях и, возможно, отображать ее где-то еще.
Быстрое создание пользовательского интерфейса (предварительно созданные компоненты пользовательского интерфейса)
Эти пользовательские фреймворки содержат предварительно созданные страницы и компоненты, поэтому вы можете просто собрать их вместе, как пазл, для создания отличного веб-приложения.
Быстрое создание пользовательского интерфейса (собери сам)
Вам все еще нужно заниматься бэкендом, но эти простые в использовании библиотеки сделают ваш фронтенд красивым не прилагая значительных усилий.
Быстрое создание пользовательского интерфейса (генерируем UI компоненты)
Эти UI фреймворки идут частично предварительно собранными или позволяют создавать пользовательский интерфейс с помощью визуального компоновщика.
Быстрая генерация фронтенда (уникальные инструменты)
Эти инструменты используют новый подход к генерации фронтенд кода, что дает вам преимущество, и в то же время они весьма гибки.
Специализированные приложения
Эти инструменты помогут вам реализовать какую-то одну функцию действительно хорошо с минимальными усилиями.
Инструменты для сбора обратной связи
Генератор конфигурации
Комментарии и советы
«Комбинируйте Hasura (автоматический GraphQL поверх PostgreSQL) с React Admin (low code CRUD приложение) и вы можете за считанные часы создать весь административный пакет или приложение для бэк-офиса (API эндпоинты и фронтенд администратора)» — cpursley на HN.
«В итоге мы использовали AppSync, и это впечатляет. Я настоятельно рекомендую всем, кто работает в экосистеме AWS, проверить это. AppSync очень легко интегрируется со многими другими сервисами AWS (Cognito, S3) и позволяет использовать Dynamo / Aurora / RDS / Elastic в качестве источников данных. Кроме того, вы также можете использовать Lambda для реализации резолверов, которым требуется более сильная бизнес-логика, делающая сервис невероятно мощным» — afvictory на HN.
«PostgREST является производительным, стабильным и прозрачным. Он позволяет нам действительно быстро загружать проекты и фокусироваться на наших данных и приложениях, а не на создании слоя ORM» — Анупам Гарг из отзыва.
Заключение от переводчика
Несомненно, автор не перечислил все возможные решения. Если бы он поставил такую цель, то размер статьи вырос бы в 3-4-5 и тд раз. Он упомянул знакомые ему, наиболее привычные и удобные инструменты. Надеюсь, часть из них пригодится и вам. Будет здорово, если в комментариях вы расскажете об аналогичных продуктах, которыми пользуетесь вы сами.
Перевод выполнен в компании 8base
8base – это готовый к использованию GraphQL backend-as-a-service, который постепенно превращается в полноценную low code платформу разработки. Наша цель – дать возможность разработчикам, обладающим навыками front-end или мобильной разработки, создавать масштабируемые бизнес-приложения.
Дизайн сайтов без программирования: как работают технологии No-Code и Low-Code
Сделать сайт для крупной компании за пару дней (почти) без программирования? Вполне реально!
Оля Ежак для Skillbox Media
Что такое No-Code?
No-Code — технология создания сайтов с помощью инструментов визуальной вёрстки (ещё их называют визуальными редакторами или конструкторами сайтов). С ними можно смотреть на страницы сайта или приложения как обычный пользователь, видеть все блоки, заголовки и кнопки, но при этом иметь возможность их редактировать. Такой метод называется WYSIWYG : что видишь, то и получаешь. А программировать не нужно.
Пишет о дизайне в Skillbox, а в перерывах и сама орудует графическим планшетом. Влюблена в советские шрифты, японскую рекламу и русский язык.
И сайт, собранный в конструкторе, ничем не отличается от обычного?
По функциональности и графике No-Code-разработка уступает обычной. Скажем, сложную вёрстку трудно адаптировать для разных экранов, а некоторые моушн-эффекты будут слишком медленно загружаться. Многие функции — например, создание личного кабинета — никак нельзя реализовать без кода. Зато No-Code даёт возможность сделать полноценный веб-ресурс от начала до конца без умения программировать. Нужны только знания дизайна и навыки работы в каком-нибудь конструкторе.
Можно посмотреть, как выглядит интерфейс конструктора?
Конечно. Вот так, например, работает Tilda:
Tilda — что-то знакомое. Её часто используют?
Да, пожалуй, это самый известный конструктор. Чаще всего на Tilda делают лендинги — одностраничные сайты, которые нужны в маркетинге для продвижения товаров и услуг. На лендинге размещают тексты, видео, изображения, делают формы заявки, приводят ссылки для регистрации или покупки на сторонних ресурсах.
При необходимости многостраничные сайты на Tilda тоже можно делать — даже интернет-магазины с возможностью принимать оплату. Платформа хороша тем, что в ней много готовых шаблонов: необязательно собирать свой сайт с нуля. Можно использовать готовые макеты, только слегка изменяя их под свои нужды, — поэтому Tilda часто выбирают начинающие дизайнеры.
А есть другие конструкторы?
Их очень много! Популярная альтернатива Tilda — Readymag: в нём шаблонов не так много, зато больше разных опций для вёрстки и анимации. Есть Wix — один из самых дешёвых для использования редакторов. Самый продвинутый в возможностях кастомизации — WebFlow. Ещё есть Squarespace, Jimdo и другие конструкторы.
Немало! No-Code-разработка востребована?
Да, её популяризацию подстегнула, в частности, пандемия. Компаниям потребовалось переносить бизнес в интернет и создавать несложные веб-ресурсы. Впрочем, No-Code выбирают не только малый бизнес и стартапы, но и крупные компании. Сайты, собранные в конструкторах, — это вполне серьёзный бизнес-инструмент.
А можно взглянуть на такие сайты у крупных брендов?
Почему же компании выбирают No-Сode, если в нём куча ограничений?
Функциональности вполне хватает, например, для рекламных кампаний, спецпроектов или создания простенького интернет-магазина. А плюсов довольно много:
Что касается ограничений работы в визуальных редакторах, частично эта проблема решаема — с помощью технологии Low-Code.
Что же это такое?
Основу сайта собирают в конструкторе, но для выполнения отдельных задач используют полноценное программирование. Можно дать пользователям возможность заходить в личные кабинеты, оставлять заказы с выбором разных опций. Можно организовать обработку данных, их передачу или автоматическую визуализацию в графиках на сайте. Иногда это отдельные интеграции, а бывает, что весь бэкенд прописывают кодом.
Не проще ли сразу кодить обычный сайт?
Зачастую Low-Code всё равно получается быстрее и дешевле кастомной разработки. Но, конечно, не для всех задач это подходит: если нужен сайт с очень широким функционалом для крупной компании, используют исключительно программирование.
Для Low-Code тоже есть специальные редакторы?
Да, есть редакторы, заточенные на добавление кода. В них разберётся только программист. Но в большинстве платформ, которые мы упомянули, также есть возможность интегрировать код.
Скажем, в Tilda, Readymag или Webflow можно работать в визуальном редакторе, а можно добавить программирование при необходимости. Это полезно для постепенного развития веб-ресурса: позволяет создать MVP в No-Code, а затем, по мере роста потребностей, добавлять нужные функции кодом.
Хорошо! А какие минусы у No-Code-разработки помимо того, что сложные функции недоступны без программирования?
Собранные в визуальных редакторах сайты проигрывают обычным в производительности и стабильности работы, но не слишком значительно. Ощутимый минус — тарифы на платформах обычно зависят от числа пользователей сайта: поэтому для масштабных проектов конструкторы не всегда подходят. Наконец, визуальных редакторов просто очень много — и это отчасти тоже недостаток, потому что каждый хорош для своих целей и важно не ошибиться с выбором.
Их действительно много! С какой платформы лучше начинать учиться?
Tilda наиболее дружелюбна к новичкам — у неё удобный интерфейс, много готовых шаблонов, а при необходимости есть возможности кастомизации — в том числе с помощью кода. К тому же это одна из самых известных платформ. Она на слуху у владельцев бизнеса — поэтому создание сайтов на Tilda востребовано.
Low-Code разработка и применение искусственного интеллекта Microsoft AI Builder в приложениях без кода
Всем привет, друзья! Сразу скажу, что данной статьей хотелось бы завершить цикл публикаций затрагивающих тему использования различных моделей искусственного интеллекта Microsoft AI Builder в тесной интеграции с приложениями Microsoft Power Platform. Мне захотелось как то подытожить всю имеющуюся у меня информацию по сервису AI Builder и свести всё это в одну статью, где можно было бы развернуто рассказать почти про каждую модель а также в целом затронуть тему Low-Code разработки. Надеюсь, что у меня это получится и будет интересно. Поехали. И начнем с Low-Code разработки и так называемого Citizen Development’а.
Кто такой Citizen Developer?
Давайте взглянем на официальное определение от агентства Gartner.
Citizen developer это непрофессиональный разработчик, не относящийся напрямую к IT сфере, который создает приложения без кода для себя и других людей в организации. Для создания таких приложений обычно используются low-code или no-code платформы. Основное преимущество в том, что не нужно писать ни строчки кода, либо это несложный код в виде различных готовых функций, которые можно вызывать, передавая нужные параметры. Для этого используются специальные среды разработки, так называемые No Code или Low Code платформы, которые позволяют специалистам проектировать и создавать мощные приложения, которые могут быстро адаптироваться в соответствии с потребностями бизнеса.
В общем, если коротко, то CITIZEN DEVELOPER – это человек, который создает программные приложения, не используя классические средства разработки.
Low-Code / No Code
Однако, что же такое в принципе, Low-Code или No-Code? Low-Code и No-Code это способ разработки приложений с минимальным использованием программирования. Данное направление также еще называется Zero Coding. Low-Code / No-Code решает одну из главных проблем IT — ускорение цикла от появления идеи до работающего бизнес-процесса, снижая time-to-market.
Low-Code / No-Code не заменяет профессиональных разработчиков, но позволяет сократить время создания продукта или дополнить его новыми возможностями
С точки зрения преимуществ Low-Code и No-Code платформ, можно отметить несколько положительных сторон:
Какие существуют Low-Code и No-Code платформы?
Пришло время поговорить про различные примеры Low-Code и No-Code платформ, которые на текущий момент существуют и представляют определенный интерес.
Nintex
Первая платформа, о которой хочется сказать пару слов это набор сервисов от австралийской компании Nintex. В числе сервисов Nintex присутствует сервис Nintex Forms, по настройке форм мобильных приложений. Вся настройка сводится к расположению нужных объектов на экране и описанию логики поведения через встроенный язык формул.
Второй сервис от этой же компании — это сервис Nintex Workflows, по созданию процессов. Процесс создается на базе готовых соединителей к различным сервисам, с помощью которых можно выстраивать логику поведения бизнес-процесса. Например, получить данные из CRM системы, проверить значение поля и в зависимости от значения направить уведомление либо одной группе пользователей, либо другой. Настройка также происходит через графический интерфейс.
SystemZ
Российская Low-Code платформа, состоящая из нескольких основных сервисов.
Первый из них это ZForms — редактор для создания экранных форм. Настройка производится в браузере с помощью подготовленных компонентов-кубиков.
Второй продукт это ZFlow — редактор для создания процессов взаимодействия с данными. Конфигурируется всё в редакторе схемы потока из преднастроенных блоков.
Webcon BPS
Еще один пример Low-Code редактора — это редактор под названием Webcon BPS. В нем настройка приложения происходит в пошаговом визарде, где вы шаг за шагом настраивате что будет отображаться и происходить. Все настраивается мышкой и минимумом касаний клавиатуры.
K2 Process Automation
Платформа K2 Process Automation примерно похожа на предыдущий пример, смысл практически такой же. Пошаговый редактор, набор объектов, которые могут быть связаны между собой и область настройки каждого выбранного объекта с помощью готовых блоков настроек или с помощью встроенного языка.
Google AppSheet
И у Гугла есть своя Low-Code платформа, если вдруг кто-то не знал) Называется данная платформа Google AppSheet и предоставляет целый комплекс готовых блоков для настройки интерфейса, поведения, автоматизированных процессов, безопасности и возможность подключения к различным источникам данных, например к тем же Гугл таблицам. Всё это позволяет создавать мобильные и веб-приложения для разных целей, например, как показано на картинке – пример приложения адресной книги и журнала звонков.
Microsoft Power Platform
У Microsoft тоже есть своя линейка Low-Code платформ, на которой остановимся чуть-чуть подробнее. Low-Code платформа от Microsoft называется Microsoft Power Platform и состоит из нескольких сервисов. В первую очередь это сервис Microsoft Power Apps, который используется для создания мобильных и веб-приложений. Вся настройка, как и в предыдущих примерах производится в графическом редакторе с использованием встроенных блоков-компонентов. Также есть возможность писать код на встроенном языке, который очень напоминает формулы в Excel. Созданным приложением можно поделиться с другими участниками и установить себе на телефон или планшет.
Второй сервис линейки Power Platform называется Power Automate и с помощью него можно создавать процессы, запускаемые по определенным событиям. Например, событием может быть изменение файла, получение письма на почту, расписание или нажатие на кнопку. И запустившись по событию процесс, может обрабатывать данные из разных источников, подключаясь к ним через дата коннекторы – соединители к различным сервисам и службам.
Для аналитики данных используется сервис Power BI, при помощи которого можно визуализировать данные в виде различных отчетов и дашбордов.
Данный сервис состоит из трёх интегрированных компонентов:
Power Query (редактор запросов) — выполняет загрузку и очистку данных;
PowerPivot (наборы данных и модели данных) — интерфейс работы с табличными данными в оперативной памяти где выполняются запросы к данным, агрегация, расчёты и т. п.;
Power View — подсистема визуализации и построения отчётов (Reporting).
Логика работы с данным сервисом примерно такая же как и в других сервисах – подключаемся к данным, выбираем нужный объект визуализации и настраиваем его отображение.
И финальный сервис линейки Power Platform — это сервис Power Virtual Agents, с помощью которого можно создавать чат-ботов. Вся настройка производится в графическом интерфейсе, где доступны блоки для построения диалога с пользователем. Любой диалог начинается с триггер фразы, а далее можно задать вопрос, в зависимости от ответа двинуться на ту или иную ветку, отобразить сообщение, выполнить действие. При настройке тут же можно прогонять диалоги и проверять правильность настроенной логики.
Ну и кажется пришло время переходить к теме искусственного интеллекта, сменим фокус и обсудим как можно использовать искусственный интеллект и приложения без кода. А можно ли это делать вообще? Давайте разбираться.
Искусственный интеллект
Термин «искусственный интеллект» (ИИ) означает способность машины имитировать разумное поведение человека. Он охватывает множество сфер, таких как обработка естественного языка, машинное обучение, управление знаниями, машинное зрение, решение проблем и так далее.
Мы не будем сегодня говорить в целом про искусственный интеллект и его влияние на развитие всех сфер жизни, а сосредоточимся скорее на частных случаях ИИ – моделях искусственного интеллекта, которые позволят решать задачи применительно к приложениям без кода, сделанных на базе Low-Code конструкторов.
Какие есть примеры моделей искусственного интеллекта, применимых к приложениям без кода?
Как пример использования моделей ИИ в реальной жизни привести одну кофейню, которая полностью построена с учетом использования искусственного интеллекта. Кофейня использует алгоритмы нейросетей для того, чтобы распознавать ряд эмоций (радость, грусть, усталость, удивление и другие) и в зависимости от него выдает бариста несколько подходящих вариантов на выбор, чтобы он мог предложить их посетителю. Для предсказания спроса используется машинное обучение (предиктивная аналитика). Система анализирует несколько факторов: погодные условия, день недели и время года, проведение рядом с кофейней каких-либо мероприятий и другие.
Microsot AI Builder
Рассмотрим сервис Microsoft AI Builder, который может быть использован совместно с приложениями, сделанными на базе Power Platform. Microsoft AI Builder — это набор инструментов, который дает возможность приложениям Microsoft Power Platform обрабатывать информацию с использованием моделей искусственного интеллекта, таких как прогнозирование, обработка форм, обнаружение объектов, классификация категорий, а также извлечение объектов, через достаточно простой и понятный интерфейс. Кроме этого, можно использовать готовые экземпляры моделей и сразу приступить к обработке данных с помощью подготовленных сценариев ИИ, включая извлечение ключевых фраз, определение языка, анализ тональности, распознавание текста (OCR), считывание визитных карточек, обработку квитанций и прочих сценариев. Причем некоторые модели AI Buider требуют предварительного обучения на базе примеров файлов, а некоторые готовы к употреблению сразу.
Распознавание текста
Первый сценарий — это распознавание текста. Данная модель искусственного интеллекта AI Builder не требует предварительного обучения и предназначена для считывания текста с фотографий и документов. Можно использовать любые изображения, главное, чтобы на них был читаемый текст на существующем в мире языке)
Пример использования данной модели довольно прост – делаем мобильное приложение на базе редактора Microsoft Power Apps и внедряем в него компонент «распознавание текста». Далее, через интерфейс самого приложения загружаем файл, в моем случае это был скриншот из википедии, и ниже в текстовом блоке отображается считанный текст. Извлечение текста из изображения делается с помощью одной формулы, в которой мы обращаемся к компоненту TextRecognizer.
В качестве второго варианта применения модели распознавания текста в Low-Code приложениях, можно рассмотреть создание Microsoft Power Automate потока, который запускается по событию поступления письма на почтовый ящик и последующий прогон вложений из письма через обученную модель AI Buider. Результаты обработки используются для создания шаблона документа Microsoft Word.
Анализ тональности
Следующая модель — это анализ тональности. Так же, как и с распознаванием текста, эта модель не требует обучения. Как правило, данная модель используется для автоматического понимания положительного, отрицательного или нейтрального тона текста. Как пример использования – анализ писем от клиентов и автоматическая эскалация в случае отрицательной тональности.
В качестве примера можно привести настроенный в сервисе Microsoft Power Virtual Agents диалог с пользователем, где в конце общения можно задать вопрос из разряда «оставьте ваш отзыв о качестве сервиса». Диалог ожидает ответа, полученный ответ сохраняем в переменную varFeedback и эту переменную передаем в Power Automate поток для дальнейшей обработки текста.
Прогоняем через Power Automate поток, который анализирует текст на признак тональности. И в зависимости от результата анализа мы направляем наш диалог на одну из трех ветвей, где в случае отрицательной тональности идет эскалация на руководителя.
Возвращаем результат обратно в диалог чат бота, где уже после получения результатов анализа идет направление на нужную ветвь диалога. Проанализировали фидбэк, получили тип тональности и либо сказали «спасибо, было приятно с вами общаться» либо «извините пожалуйста, скоро с вами свяжется менеджер и разрулит ситуацию».
Обработка форм
А на очереди у нас обработка форм – модель, которая позволяет извлекать тэгированные данные из различных документов. Например, организация получает много файлов, которые имеют одинаковую структуру, но разный набор данных, к примеру счета или акты и было бы неплохо автоматизировать извлечение данных из подобного типа документов. Попробуем применить такой шаблон к какому-нибудь набору документов.
Предположим, что нам на почту присылают файлы PDF, в которых в формализованной таблице описывается возникшая при использовании системы проблема. Пример таблицы на экране. Слева заголовки, справа значения. Соответственно, таких писем в день мы можем получать немало и хочется, чтобы информация из таких таблиц извлекалась самостоятельно.
В отличие от предыдущих моделей, данная модель уже требует предварительного обучения и для обучения необходимо загрузить 5 файлов-примеров. Файлы должны иметь одинаковую структуру, но разный контент. Процесс обучения модели занимает несколько минут, в ходе которого как правило требуется помощь живого человека в обучении.
Запускается обучение модели. При обучении модель может попросить протэгировать нужные данные, которые предполагаются к извлечению из документов. Выделяем мышкой фрагменты текста, назначаем тэги и переходим к следующему документу, с которым у модели в процессе обучения возникли вопросы. В таком ключе производим обработку всех документов, на основе которых планируем обучать модель.
После того как все тэги проставлены, мы должны запустить обучение модели с помощью нажатия на кнопку «Поезд». Судя по всему, это артефакт машинного перевода на русский язык, так как в оригинале там написано «Train». Обучение модели и анализ данных занимает некоторое время. После окончания анализа можно применять данную модель и для применения можно также использовать поток Power Automate, который запустится по событию получения электронной почты на определенный ящик, в цикле произведем обработку каждого вложения из письма и прогоним файл через только что обученную модель AI Buider по обработке форм. На выходе из обработки мы будем иметь тэги с данными, которые можем использовать далее в виде подстановки для создания записи в таблице базы данных, CRM системе и так далее.
Обработка визитных карточек
Еще один пример модели искусственного интеллекта AI Builder, которая не требует обучения это модель автоматической обработки визитных карточек. Довольно простой пример, но о нем тоже стоит рассказать. Данная модель позволяет извлекать в автоматическом режиме данные с загруженной визитки в виде файла или фотографии. По факту эта модель содержит уже настроенную функциональность определения с визитки ФИО, номера телефона, должности и почты.
Применить такую модель довольно просто. Создаем приложение и добавляем в него готовый компонент по считыванию визиток. Также, чуть ниже располагаем несколько текстовых контролов, в которые будем автоматически писать данные со считанной визитки. Создаем в онлайн редакторе визитку. Русский кот Шлёпа смотрится очень аутентично рядом с моим номером телефона. Загружаем фотографию в блок считывания визитки и тут же происходит извлечение данных из файла. Данные раскладываем по соответствующим контролам нашего приложения. Заодно можно прикрутить кнопку для сохранения контакта опять же в какую-нибудь CRM систему. Однако у вас может возникнуть вопрос, а как мы записываем извлеченные данные в контролы? Приложение же само не понимает куда и что ему надо записать.
Всё очень даже несложно, в редакторе создания нашего приложения выбираем нужный контрол, например EmailTextBox и в свойстве Default пишем ссылку на объект считывания визитной карточки. Ставим точку и обращаемся к одному из нескольких предустановленных свойств – Department, Email, Fax, Phone, Name и так далее. Приложение готово.
Обнаружение объектов
Ну и финальный пример модели искусственного интеллекта, которую можно попытаться внедрить в приложение это модель обнаружения и распознавания объектов. Используется данная модель для считывания и определения различных объектов на фотографии или в документе. Из сценариев применения могу выделить допустим проведение инвентаризации на складе или в торговом зале с помощью камеры смартфона, чтение штрихкодов, определение деталей машин и станков на производстве.
Для проверки работы модели мне пришлось наведаться в ближайший магазин и скопировать данные с первых попавшихся ценников, чтобы занести в свою собственную базу. Под покровом ночи, я свистнул данные с трех ценников товаров, которые предоставляют для меня максимальный интерес и создал три строки в своей базе – Свекла вареная, сахар советский и хлопья Ясно солнышко.
Я планировал создать приложение, которое сможет по фотографии ценника извлечь данные штрихкода, сделать запрос к базе данных и вернуть из нее актуальную цену товара, по аналогии как это делают сканеры проверки цены в магазинах.
Итак, создаем приложение и добавляем в него компонент искусственного интеллекта по считыванию объектов. Также размещаем несколько вспомогательных контролов – контрол отображения кода товара, текущая цена из базы и возможность ввести код товара вручную, если штрихкод не читается.
На кнопку «Проверить цены» вешаем функцию, которая обращается к моей таблице «Базовая цена товаров» и возвращает данные о цене продукта по штрихкоду. Сама формула выглядит как показано на экране. Ну и пора проверять. Фотографируем ценник, модель AI Builder определяет, где на ценнике находится штрихкод товара, преобразовывает его в текст, кладет в контрол «Код товара», на который опирается наш запрос. И в контроле «Текущая цена из базы» отображается наша цена, полученная в результате запроса. Осталось подключить приложение к реальной базе товаров и можно будет проверять цены на товары просто фотографируя ценники из приложения. Разве не круто?)