В этой статье описываются решения Azure для создания, обучения, развертывания и использования пользовательских моделей обработки документов. Эти службы Azure также предлагают возможности пользовательского интерфейса для выполнения меток или тегов для обработки текста.
Архитектура
Скачайте файл Visio для этой архитектуры.
Поток данных
Оркестраторы, такие как Azure Logic Apps, Фабрика данных Azure или Функции Azure прием сообщений и вложений с почтовых серверов и файлов с FTP-серверов или веб-приложений.
Функции Azure и Logic Apps обеспечивают бессерверные рабочие нагрузки. Выбранная служба зависит от возможностей службы, таких как разработка, соединители, контекст управления и выполнения. Дополнительные сведения см. в статье Сравнение служб "Функции Azure" и Azure Logic Apps.
Рекомендуется использовать Фабрика данных Azure для перемещения массовых данных.
Оркестраторы отправляют данные приема в Хранилище BLOB-объектов Azure или Data Lake Storage, упорядочивая данные между хранилищами данных на основе характеристик, таких как расширения файлов или клиенты.
Различные службы, которые можно использовать для обучения документов и создания пользовательских моделей в Azure независимо или в различных сочетаниях для решения различных вариантов использования:
Studio Document Intelligence Studio. Если документу требуется извлечь пары "ключ-значение" или создать настраиваемую таблицу из формата изображения или PDF, используйте Document Intelligence Studio для тегов данных и обучения пользовательской модели. Аналогичным образом, если существует требование определить тип документа (классификация документов) перед вызовом правильной модели извлечения, используйте Document Intelligent Studio для маркировки документов и создания моделей.
Language Studio: для классификации документов на основе содержимого или извлечения сущностей для конкретного домена можно обучить пользовательскую классификацию текста или модель распознавания именованных сущностей (NER) в Language Studio.
студии машинного обучения Azure. Если вы хотите пометить данные для классификации текста или извлечения сущностей, которые можно использовать с платформами с открытым кодом, такими как PyTorch или TensorFlow, используйте Студии машинного обучения или пакет SDK Python, Azure CLI или REST API. Студия машинного обучения Azure предоставляет каталог моделей базовых моделей. Эти базовые модели имеют возможности точной настройки для различных задач, таких как классификация текста, ответы на вопросы, сводка и т. д. Чтобы точно настроить базовые модели, используйте пользовательского интерфейса студии машинного обучения или кода.
Azure OpenAI Service. Для точной настройки моделей Azure OpenAI на собственных данных или доменах для различных задач, таких как сводка текста, ответы на вопросы, использование [портала Azure AI Foundry]((https://ai.azure.com/) или пакета SDK для Python или REST API.
Чтобы развернуть пользовательские модели и использовать их для вывода:
Служба "Аналитика документов Azure" имеет встроенное развертывание модели. Используйте пакеты SDK для аналитики документов или REST API для применения пользовательских моделей для вывода. Добавьте идентификатор модели или имя пользовательской модели в URL-адрес запроса аналитики документов в зависимости от версии API. Аналитика документов не требует дальнейших шагов развертывания.
Language Studio предоставляет возможность развертывания пользовательских языковых моделей. Получите URL-адрес прогнозирования конечной точки REST, выбрав модель для развертывания. Вы можете выполнять вывод модели с помощью конечной точки REST или клиентских библиотек пакета SDK Azure.
Машинное обучение развертывает пользовательские модели в сети или пакетной Машинное обучение управляемых конечных точек. Пакет SDK машинного обучения можно также использовать для развертывания в службе Azure Kubernetes (AKS) в качестве веб-службы. Встроенные базовые модели развертываются из каталога моделей двумя способами: управляемыми вычислительными ресурсами и бессерверным API. Модели, развернутые с помощью управляемых вычислений, можно определить с помощью управляемых конечных точек — сетевые конечные точки для вывода в режиме реального времени и конечных точек пакетной службы для пакетного вывода.
Azure AI Foundry предоставляет возможность развернуть точно настроенную модель Azure OpenAI. Вы также можете развернуть детализированные модели Azure OpenAI с помощью пакета SDK для Python или REST API.
Компоненты
Logic Apps входит в состав Служб Azure Integration Services. Logic Apps создает автоматизированные рабочие процессы, которые интегрируют приложения, данные, службы и системы. С помощью управляемых соединителей для таких служб, как служба хранилища Azure и Microsoft 365, можно активировать рабочие процессы при получении файловых ресурсов в учетной записи хранения или электронной почте.
Фабрика данных — это управляемая облачная служба извлечения, преобразования, загрузки (ETL) для интеграции и преобразования данных. Фабрика данных может добавлять действия преобразования в конвейер, включающий вызов конечной точки REST или выполнение записной книжки для приема данных.
Функции Azure — это бессерверная служба вычислений, которая может размещать рабочие нагрузки на основе событий с короткими процессами.
Хранилище BLOB-объектов — это решение хранилища объектов для необработанных файлов в этом сценарии. Хранилище BLOB-объектов поддерживает библиотеки для нескольких языков, таких как .NET, Node.js и Python. Приложения могут получать доступ к файлам в хранилище BLOB-объектов через HTTP/HTTPS. Хранилище BLOB-объектов имеет горячие, холодные и архивные уровни доступа для поддержки оптимизации затрат для хранения больших объемов данных.
Data Lake Storage — это набор возможностей, основанных на Хранилище BLOB-объектов Azure для аналитики больших данных. Data Lake Storage сохраняет экономичность хранилища BLOB-объектов и предоставляет такие функции, как безопасность на уровне файлов и семантика файловой системы с иерархическим пространством имен.
Аналитика документов является частью служб ИИ Azure. Аналитика документов имеет встроенные возможности анализа документов, которые можно использовать для извлечения печатных и рукописных пар, таблиц и пар "ключ-значение". Аналитика документов имеет предварительно созданные модели для извлечения данных из счетов, документов, квитанций, идентификаторов и визитных карточек. Аналитика документов также содержит пользовательскую модель формы шаблона и пользовательскую модель нейронного документа, которую можно использовать для обучения и развертывания пользовательских моделей.
- Document Intelligence Studio предоставляет пользовательский интерфейс, который можно использовать для изучения функций и моделей аналитики документов, а также для создания, тега, обучения и развертывания пользовательских моделей.
Язык ИИ Azure объединяет службы обработки естественного языка Azure. Набор предлагает предварительно созданные и настраиваемые параметры. Дополнительные сведения см. в доступных функциях языка искусственного интеллекта Azure.
- Language Studio предоставляет пользовательский интерфейс для изучения и анализа функций языка ИИ Azure. Language Studio также предоставляет возможности создания, добавления тегов, обучения и развертывания пользовательских моделей.
машинного обучения Azure — это управляемая платформа машинного обучения для разработки и развертывания моделей в масштабе.
- Студия машинного обучения Azure предоставляет параметры маркировки данных для изображений и текста.
- Экспортируйте помеченные данные как COCO или Машинное обучение Azure наборы данных. Наборы данных можно использовать для обучения и развертывания моделей в Машинное обучение Azure записных книжек.
Azure OpenAI Service предлагает мощные языковые модели , многомодальные модели в качестве REST API, которые используются для выполнения различных задач. Некоторые из предлагаемых моделей также можно точно повысить производительность модели на данных, которые не присутствовали или не представлены при первоначальной подготовке базовой модели.
Альтернативные варианты
В этот сценарий можно добавить дополнительные рабочие процессы на основе конкретных вариантов использования.
Если документ находится в формате изображения или PDF, вы можете извлечь данные с помощью компьютерного зрения Azure, API чтения документов или библиотек с открытым кодом.
Сводные данные по документам и беседам можно выполнять с помощью предварительно созданной модели на языке искусственного интеллекта Azure.
Используйте предварительный код для выполнения действий по обработке текста. К этим шагам относятся очистка, удаление слов остановки, лемматизация, стебливание и сводка текста по извлеченным данным в соответствии с требованиями к обработке документов. Вы можете предоставить код в виде REST API для автоматизации. Выполните эти действия вручную или автоматизировать их, интегрируя с Logic Apps или Функции Azure процесс приема.
Портал Azure AI Foundry можно использовать для точной настройки, развертывания базовых моделей (отличных от моделей Azure OpenAI) и создания созданных приложений ИИ.
Так как между Машинным обучением Azure и Azure AI Foundry есть некоторые перекрытия, необходимо оценить свои возможности и выбрать оптимальную платформу для вашего сценария.
Вы также можете использовать azure AI Content Understanding для создания пользовательского анализатора, определив схему полей для извлечения структурированных данных из документа.
Подробности сценария
Обработка документов — это широкая область. Вам может быть трудно удовлетворить все потребности в обработке документов с предварительно созданными моделями, доступными в службе "Аналитика документов" и "Язык ИИ Azure". Возможно, потребуется создать пользовательские модели для автоматизации обработки документов для различных приложений и доменов.
К основным проблемам при настройке модели относятся следующие:
- Маркировка или добавление текстовых данных с соответствующими сущностями пары "ключ-значение", чтобы классифицировать текст для извлечения.
- Управление инфраструктурой обучения, например вычислительными ресурсами и хранилищем, а также их интеграцией.
- Безопасное развертывание моделей в масштабе для простой интеграции с потребляющими приложениями.
Потенциальные варианты использования
Следующие варианты использования могут использовать пользовательские модели для обработки документов:
- Создание пользовательских моделей классификации NER и текста на основе платформ с открытым исходным кодом.
- Извлеките пользовательские ключевые значения из документов для различных отраслевых вертикали, таких как страхование и здравоохранение.
- Пометьте и извлеките определенные сущности, зависящие от домена, помимо предварительно созданных моделей NER, для таких доменов, как безопасность или финансы.
- Создание настраиваемых таблиц из документов.
- Извлечение подписей.
- Метка и классификация сообщений электронной почты или других документов на основе содержимого.
- Сводка документов или настраиваемый вопрос и ответы на данные.
Рекомендации
Эти рекомендации реализуют основные принципы платформы Azure Well-Architected Framework, которая является набором руководящих принципов, которые можно использовать для улучшения качества рабочей нагрузки. Дополнительные сведения см. в статье Microsoft Azure Well-Architected Framework.
В этом примере рабочей нагрузки реализация каждого компонента зависит от оптимальной настройки и использования каждой службы Azure компонентов.
Надежность
Надежность гарантирует, что ваше приложение позволит вам выполнить ваши обязательства перед клиентами. Дополнительные сведения см . в контрольном списке проверки конструктора для обеспечения надежности.
Availability
Ознакомьтесь с соглашениями об уровне обслуживания (соглашения об уровне обслуживания) для каждого компонента архитектуры в соглашениях об уровне обслуживания (SLA) для веб-служб.
Параметры конфигурации для разработки приложений с высоким уровнем доступности с помощью учетных записей служба хранилища Azure см. в статье "Использование геоизбыточности для разработки высокодоступных приложений".
Устойчивость
Обработка режимов сбоев отдельных служб, таких как Функции Azure и служба хранилища Azure, чтобы обеспечить устойчивость вычислительных служб и хранилищ данных в этом сценарии. Дополнительные сведения см . в контрольном списке устойчивости для конкретных служб Azure.
Для аналитики документов создайте резервную копию и восстановите модели аналитики документов.
Для пользовательской классификации текста с помощью языка ИИ Azure создайте резервную копию и восстановление пользовательских моделей классификации текста.
Для пользовательского NER на языке ИИ Azure создайте резервную копию и восстановление пользовательских моделей NER.
Машинное обучение Azure зависит от составляющих служб, таких как хранилище BLOB-объектов, вычислительные службы и Служба Azure Kubernetes (AKS). Чтобы обеспечить устойчивость для Машинное обучение Azure, настройте каждую из этих служб, чтобы обеспечить устойчивость. Дополнительные сведения см. в разделе "Отработка отказа" для обеспечения непрерывности бизнес-процессов и аварийного восстановления.
Для Azure OpenAI, чтобы служба всегда была доступна двумя или более ресурсами Azure OpenAI в другом регионе, чтобы в случае ошибки вы отработки отказа в другой регион. Дополнительные сведения см. в статье BCDR сAzure OpenAI.
Безопасность
Безопасность обеспечивает гарантии от преднамеренного нападения и злоупотребления ценными данными и системами. Дополнительные сведения см. в контрольном списке проверки конструктора для безопасности.
- Реализуйте рекомендации по защите данных, управлению удостоверениями и доступом, а также рекомендациям
по обеспечению безопасности сети для хранилища BLOB-объектовслужбами ИИ для аналитики документов и языковой студии,Машинного обучения Azure иAzure OpenAI .
Оптимизация затрат
Оптимизация затрат заключается в том, чтобы подумать о способах сокращения ненужных расходов и повышения эффективности работы. Дополнительные сведения см . в контрольном списке проверки конструктора для оптимизации затрат.
Общая стоимость реализации этого решения зависит от ценообразования выбранной службы.
Основные затраты на это решение:
Затраты на вычисления, связанные с обучением и развертыванием моделей Машинное обучение.
Выберите нужный тип узла, размер кластера и количество узлов, чтобы оптимизировать затраты. Для обучения Машинное обучение предоставляет параметры, чтобы задать минимальное количество узлов вычислительного кластера равным нулю и задать время простоя до уменьшения масштаба. Дополнительные сведения см. в разделе "Управление и оптимизация Машинное обучение затрат".
Длительность и действия оркестрации данных. Для Фабрика данных Azure плата за действия копирования в среде выполнения интеграции Azure зависит от количества единиц интеграции данных (DIUs) и длительности выполнения. Добавленные запуски оркестрации также взимается в зависимости от их числа.
Планы ценообразования Logic Apps зависят от ресурсов, которые вы создаете и используете. В следующих статьях вы можете выбрать подходящий план для конкретных вариантов использования:
Дополнительные сведения о ценах на определенные компоненты см. в следующих ресурсах:
- Цены на аналитику документов ВИ Azure
- Цены на решение "Функции Azure"
- Цены на Logic Apps
- Цены на Фабрику данных Azure
- Цены на Хранилище BLOB-объектов
- Цены на язык ИИ Azure
- Цены на Машинное обучение Azure
- цен на Azure OpenAI
Используйте калькулятор цен Azure, чтобы добавить выбранные варианты компонентов и оценить общую стоимость решения.
Уровень производительности
Эффективность производительности — это возможность масштабирования рабочей нагрузки в соответствии с требованиями, заданными пользователями. Дополнительные сведения см . в контрольном списке проверки конструктора для повышения эффективности.
Масштабируемость
Чтобы масштабировать Функции Azure автоматически или вручную, выберите правильный план размещения.
Аналитика документов поддерживает 15 одновременных запросов в секунду по умолчанию. Чтобы запросить увеличенную квоту, создайте запрос поддержка Azure.
Для Машинное обучение Azure пользовательских моделей, размещенных как веб-службы в AKS,
azureml-fe
интерфейс автоматически масштабируется по мере необходимости. Этот компонент также направляет входящие запросы вывода в развернутые службы.Для развертываний в качестве управляемых конечных точек поддержка автомасштабирования путем интеграции с функцией автомасштабирования Azure Monitor.
Ограничения службы API для пользовательской классификации NER и пользовательской классификации текста для вывода составляют 20 запросов GET или POST в минуту.
Соавторы
Эта статья поддерживается корпорацией Майкрософт. Первоначально он был написан следующим участником.
Автор субъекта:
- Jyotsna Ravi | Старший инженер клиента
Чтобы просмотреть недоступные профили LinkedIn, войдите в LinkedIn.
Следующие шаги
- Начало работы: Document Intelligence Studio
- Использование моделей аналитики документов с помощью пакетов SDK или REST API
- Краткое руководство. Начало работы с Language Studio
- Что такое оптическое распознавание символов (OCR)?
- Настройка Функции Azure с виртуальной сетью