Примечание
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Поддержка контейнеров в настоящее время доступна в версии 2022-08-31 (GA)
интеллектуального анализа документов для всех моделей, в версии 2023-07-31 (GA)
для моделей Чтение, Макет, Счет, Квитанция и ID Документ, а также в версии 2024-11-30 (GA)
для моделей Чтение и Макет.
-
REST API
2022-08-31 (GA)
-
REST API
2023-07-31 (GA)
-
REST API
2024-11-30 (GA)
-
Целевые клиентские библиотеки
REST API 2022-08-31 (GA)
-
Целевые клиентские библиотеки
REST API 2023-07-31 (GA)
-
Целевые клиентские библиотеки
REST API 2024-11-30 (GA)
✔️ См. статью "Настройка контейнеров аналитики документов версии 3.0" или "Настройка контейнеров аналитики документов версии3.1 " или "Настройка контейнеров аналитики документов версии 4.0 " для поддерживаемых версий документации по контейнерам.
Следующее содержимое относится к:версия 3.0 (GA)
версия 3.1 (GA)
версия 4.0 (GA)
С помощью контейнеров Аналитики документов можно создать архитектуру приложения, оптимизированную для использования как надежных облачных возможностей, так и пограничной локальности. Контейнеры обеспечивают минималистичную и изолированную среду, которую можно легко развернуть как в локальной сети, так и в облаке. В этой статье показано, как настроить среду выполнения контейнера Аналитики документов с помощью docker compose
аргументов команд. Функции аналитики документов поддерживаются семи контейнерами функций аналитики документов: чтение, макет, визитная карточка, идентификатор документа, квитанция, счет, настраиваемый. У контейнеров есть как обязательные, так и необязательные параметры. Несколько примеров смотрите в разделе с примером файла docker-compose.yml.
Внимание
В настоящее время контейнер Document Intelligence версии 4.0 доступен только для модели чтения и модели макета.
Параметры конфигурации
К каждому контейнеру применяются следующие параметры конфигурации:
Обязательное поле | Настройки | Цель |
---|---|---|
Да | Ключ | Отслеживает информацию о счетах. |
Да | Выставление счетов | Задает URI конечной точки для ресурса службы в Azure. Дополнительные сведения см. в разделе"Выставление счетов". Дополнительные сведения и полный список региональных конечных точек см. в разделе"Пользовательские имена поддомена" для служб ИИ Azure. |
Да | Лицензионное соглашение | Указывает, что вы приняли условия лицензии для контейнера. |
Нет | ApplicationInsights | Включает добавление поддержки клиентов Azure Application Insights для вашего контейнера. |
Нет | Fluentd | Записывает данные в журнал и при необходимости передает метрики на сервер Fluentd. |
Нет | Прокси-сервер HTTP: | Настраивает прокси-сервер HTTP для исходящих запросов. |
Нет | Журналирование | Обеспечивает поддержку ведения журнала ASP.NET Core для вашего контейнера. |
Внимание
Параметры Key
, Billing
и Eula
используются совместно. Для всех трех параметров необходимо указать допустимые значения. В противном случае контейнеры не запустятся. Дополнительные сведения об использовании этих параметров конфигурации для создания экземпляра контейнера см. в разделе Выставление счетов.
Настройка параметров конфигурации ключа и биллинга
Этот Key
параметр задает ключ ресурса Azure, используемый для отслеживания сведений о выставлении счетов для контейнера. Значение ключа должно быть допустимым ключом для ресурса, указанного Billing
в разделе "Настройка конфигурации выставления счетов".
Этот Billing
параметр задает URI конечной точки ресурса в Azure, который используется для учета информации о выставлении счетов для контейнера. Значением этого параметра конфигурации должен быть допустимый URI конечной точки для ресурса в Azure. Контейнер сообщает об использовании примерно каждые 10—15 минут.
Эти параметры находятся на странице Ключи и конечная точка портала Azure.
Настройка EULA
Параметр Eula
указывает, что вы приняли условия лицензии для контейнера. Для этого параметра конфигурации необходимо указать значение accept
.
Обязательное поле | Имя. | Тип данных | Описание |
---|---|---|---|
Да | Eula |
Строка | Принятие условий лицензионного соглашения Пример: Eula=accept |
Контейнеры служб искусственного интеллекта Azure лицензируются в соответствии с вашим соглашением , определяющим использование Azure. Если вы не заключали соглашение, регламентирующее использование Azure, вы подтверждаете, что ваше соглашение об использовании Azure является соглашением Microsoft Online Subscription, которое содержит условия использования веб-служб. Что касается предварительных версий, вы также соглашаетесь с Дополнительными условиями использования предварительных версий Microsoft Azure. Факт использования вами контейнера подтверждает ваше согласие с этими условиями.
Параметр ApplicationInsights.
Параметр ApplicationInsights
позволяет добавить в контейнер поддержку телеметрии Azure Application Insights. Служба Application Insights обеспечивает детализированный мониторинг контейнера. Вы можете легко отслеживать доступность, производительность и использование своего контейнера. Вы также можете быстро идентифицировать и диагностировать ошибки в контейнере.
В следующей таблице описаны параметры конфигурации, поддерживаемые в разделе ApplicationInsights
.
Обязательное поле | Имя. | Тип данных | Описание |
---|---|---|---|
Нет | InstrumentationKey |
Строка | Ключ инструментирования экземпляра Application Insights, в который отправляются телеметрические данные контейнера. Дополнительные сведения см. в статье Application Insights для ASP.NET Core. Пример: InstrumentationKey=123456789 |
Параметры Fluentd
Fluentd — это сборщик данных с открытым кодом для унифицированного ведения журнала. Параметры Fluentd
управляют подключением контейнера к серверу Fluentd. В состав контейнера входит поставщик ведения журнала Fluentd, который позволяет контейнеру записывать данные журналов и (необязательно) данные метрик на сервер Fluentd.
В следующей таблице описаны параметры конфигурации, поддерживаемые в разделе Fluentd
.
Имя. | Тип данных | Описание |
---|---|---|
Host |
Строка | IP-адрес или имя узла DNS сервера Fluentd. |
Port |
Целое число | Порт сервера Fluentd. Значение по умолчанию — 24224. |
HeartbeatMs |
Целое число | Интервал пульса в миллисекундах. Если до окончания этого интервала не отправлялся никакой трафик событий, пульс отправляется на сервер Fluentd. Значение по умолчанию — 60 000 миллисекунд (1 минута). |
SendBufferSize |
Целое число | Место в сетевом буфере (в байтах), выделенное для операций отправки. Значение по умолчанию — 32768 байт (32 килобайта). |
TlsConnectionEstablishmentTimeoutMs |
Целое число | Время ожидания (в миллисекундах) до установки соединения по протоколу SSL/TLS с сервером Fluentd. Значение по умолчанию — 10 000 миллисекунд (10 секунд). Если для параметра UseTLS задано значение false, то это значение игнорируется. |
UseTLS |
Логический | Указывает, должен ли контейнер использовать протокол SSL/TLS для связи с сервером Fluentd. По умолчанию используется значение false. |
Параметры учетных данных прокси-сервера HTTP
Чтобы настроить прокси-сервер HTTP для исходящих запросов, используйте следующие два аргумента.
Имя. | Тип данных | Описание |
---|---|---|
HTTP_PROXY | строка | Используемый прокси-сервер, например http://proxy:8888 .<proxy-url> |
HTTP_PROXY_CREDS | строка | Любые учетные данные, необходимые для выполнения аутентификации на прокси-сервере, например username:password . Это значение должно быть в нижнем регистре. |
<proxy-user> |
строка | Пользователь прокси-сервера. |
<proxy-password> |
строка | Пароль, связанный с параметром <proxy-user> прокси-сервера. |
docker run --rm -it -p 5000:5000 \
--memory 2g --cpus 1 \
--mount type=bind,src=/home/azureuser/output,target=/output \
<registry-location>/<image-name> \
Eula=accept \
Billing=<endpoint> \
ApiKey=<api-key> \
HTTP_PROXY=<proxy-url> \
HTTP_PROXY_CREDS=<proxy-user>:<proxy-password> \
Параметры ведения журнала
Параметры Logging
управляют поддержкой ведения журнала ASP.NET Core для контейнера. Вы можете использовать для контейнера те же параметры конфигурации и значения, что и для приложения ASP.NET Core.
Контейнер поддерживает указанных ниже поставщиков ведения журналов.
Поставщик | Цель |
---|---|
Консоль | Поставщик ведения журнала Console для ASP.NET Core. Для этого поставщика ведения журнала поддерживаются все параметры конфигурации ASP.NET Core и значения по умолчанию. |
Отлаживать | Поставщик ведения журнала Debug для ASP.NET Core. Для этого поставщика ведения журнала поддерживаются все параметры конфигурации ASP.NET Core и значения по умолчанию. |
Диск | Поставщик логирования в формате JSON. Поставщик ведения журнала записывает данные журнала в выходное подключение. |
В этой команде для контейнера хранятся сведения о ведении журнала в формате JSON для выходного подключения:
docker run --rm -it -p 5000:5000 \
--memory 2g --cpus 1 \
--mount type=bind,src=/home/azureuser/output,target=/output \
<registry-location>/<image-name> \
Eula=accept \
Billing=<endpoint> \
ApiKey=<api-key> \
Logging:Disk:Format=json \
Mounts:Output=/output
Во время выполнения контейнера в этой команде для контейнера отображается отладочная информация с префиксом dbug
:
docker run --rm -it -p 5000:5000 \
--memory 2g --cpus 1 \
<registry-location>/<image-name> \
Eula=accept \
Billing=<endpoint> \
ApiKey=<api-key> \
Logging:Console:LogLevel:Default=Debug
Ведение журнала диска
Поставщик ведения журнала Disk
поддерживает перечисленные ниже параметры конфигурации:
Имя. | Тип данных | Описание |
---|---|---|
Format |
Строка | Выходной формат файлов журналов. Примечание. Чтобы включить поставщика ведения журнала, для этого параметра необходимо задать значение json . Если это значение задано без указания выходного подключения, при создании экземпляра контейнера возникает ошибка. |
MaxFileSize |
Целое число | Максимальный размер файла журнала в мегабайтах (МБ). Когда размер текущего файла журнала достигает этого значения или превышает его, поставщик ведения журнала начинает новый файл журнала. Если задано значение –1, то размер файла журнала ограничивается только максимальным размером файла (если он задан) для выходного подключения. Значение по умолчанию равно 1. |
Дополнительные сведения о настройке поддержки ведения журналов для ASP.NET Core см. в разделе Настройка файла параметров.
Настройки громкости
Используйте тома для чтения данных из контейнера и записи в него. Тома являются предпочтительными для сохранения данных, создаваемых и используемых контейнерами Docker. Можно указать входное подключение или выходное подключение, включив volumes
type
параметр и указав (привязку), source
(путь к папке) и target
(параметр пути к файлу).
Для контейнера аналитики документов требуется входной том и выходной том. Входной том может быть доступен только для чтения (ro
) и необходим для доступа к данным, используемым для обучения и оценки. Выходной том должен обеспечивать возможность записи. Он предназначен для хранения моделей и временных данных.
Точный синтаксис расположения тома к узлу зависит от операционной системы узла. Кроме того, расположение тома на главном компьютере может оказаться недоступным из-за конфликта между разрешениями для учетной записи службы Docker и разрешениями для расположения подключения к узлу.
Пример файла docker-compose.yml
Метод docker compose состоит из трех шагов:
- Создание Dockerfile.
- Определите службы в docker-compose.yml, чтобы их можно было запускать вместе в изолированной среде.
- Запустите
docker-compose up
для запуска и выполнения служб.
Пример одного контейнера
В этом примере введите значения {FORM_RECOGNIZER_ENDPOINT_URI} и {FORM_RECOGNIZER_KEY} для экземпляра контейнера Layout.
Контейнер "Макет"
version: "3.9"
services:
azure-cognitive-service-layout:
container_name: azure-cognitive-service-layout
image: mcr.microsoft.com/azure-cognitive-services/form-recognizer/layout
environment:
- EULA=accept
- billing={FORM_RECOGNIZER_ENDPOINT_URI}
- key={FORM_RECOGNIZER_KEY}
ports:
- "5000"
networks:
- ocrvnet
networks:
ocrvnet:
driver: bridge
Пример нескольких контейнеров
Прием и OCR-распознавание контейнеров
В этом примере введите значения {FORM_RECOGNIZER_ENDPOINT_URI} и {FORM_RECOGNIZER_KEY} для контейнера для обработки квитанций, а также значения {COMPUTER_VISION_ENDPOINT_URI} и {COMPUTER_VISION_KEY} для контейнера Azure AI Vision Read.
version: "3"
services:
azure-cognitive-service-receipt:
container_name: azure-cognitive-service-receipt
image: cognitiveservicespreview.azurecr.io/microsoft/cognitive-services-form-recognizer-receipt:2.1
environment:
- EULA=accept
- billing={FORM_RECOGNIZER_ENDPOINT_URI}
- key={FORM_RECOGNIZER_KEY}
- AzureCognitiveServiceReadHost=http://azure-cognitive-service-read:5000
ports:
- "5000:5050"
networks:
- ocrvnet
azure-cognitive-service-read:
container_name: azure-cognitive-service-read
image: mcr.microsoft.com/azure-cognitive-services/vision/read:3.2
environment:
- EULA=accept
- billing={COMPUTER_VISION_ENDPOINT_URI}
- key={COMPUTER_VISION_KEY}
networks:
- ocrvnet
networks:
ocrvnet:
driver: bridge