Регулярное распознавание изображений и PDF-документов из бакета Object Storage
В этом руководстве вы с помощью Yandex Vision OCR настроите автоматическое распознавание изображений в поддерживаемых форматах и PDF-документов, регулярно загружаемых в бакет Yandex Object Storage.
Процесс распознавания
- Пользователь загружает изображения или документы в бакет Yandex Object Storage, в директорию (префикс)
input
. - Триггер Yandex Cloud Functions запускается по таймеру и проверяет наличие файлов в папке
input
. После этого файлы отправляются на распознавание в контейнер Yandex Serverless Containers. - Идет процесс распознавания файлов, идентификатор операции сохраняется в папке
process
в исходном бакете. - После успешного завершения операции, результаты распознавания сохраняются в папке
result
в виде JSON и TXT файлов. Идентификатор успешно выполненной операции удаляется из папкиprocess
.
Для создания инфраструктуры используется Terraform-провайдер Yandex Cloud
Чтобы настроить автоматическое распознавание изображения с помощью Vision OCR:
- Подготовьте облако к работе.
- Создайте инфраструктуру.
- Загрузите файлы для распознавания и проверьте работу сервиса.
Если созданные ресурсы вам больше не нужны, удалите их.
Подготовьте облако к работе
Зарегистрируйтесь в Yandex Cloud и создайте платежный аккаунт:
- Перейдите в консоль управления
, затем войдите в Yandex Cloud или зарегистрируйтесь. - На странице Yandex Cloud Billing
убедитесь, что у вас подключен платежный аккаунт, и он находится в статусеACTIVE
илиTRIAL_ACTIVE
. Если платежного аккаунта нет, создайте его и привяжите к нему облако.
Если у вас есть активный платежный аккаунт, вы можете создать или выбрать каталог, в котором будет работать ваша инфраструктура, на странице облака
Подробнее об облаках и каталогах.
Необходимые платные ресурсы
В стоимость поддержки инфраструктуры для регулярного распознавания изображений и документов входят:
- плата за хранение данных в бакете и операции с ними (см. тарифы Object Storage);
- плата за использование Vision OCR (см. тарифы для Vision OCR);
- плата за количество вызовов контейнера, вычислительные ресурсы, выделенные для выполнения приложения, и исходящий трафик (см. тарифы Serverless Containers);
- плата за хранение и операции с секретом (см. тарифы Yandex Lockbox).
Создайте инфраструктуру
Terraform
Terraform распространяется под лицензией Business Source License
Подробную информацию о ресурсах провайдера смотрите в документации на сайте Terraform
Для создания инфраструктуры с помощью Terraform:
-
Установите Terraform, получите данные для аутентификации и укажите источник для установки провайдера Yandex Cloud (раздел Настройте провайдер, шаг 1).
-
Подготовьте файлы с описанием инфраструктуры:
-
Клонируйте репозиторий с конфигурационными файлами.
git clone https://github.com/yandex-cloud-examples/yc-vision-ocr-recognizer.git
-
Перейдите в директорию
terraform
внутри репозитория. -
В файле
variables.auto.tfvars
задайте пользовательские параметры:cloud_id
— идентификатор облака.folder_id
— идентификатор каталога.zone
— зона доступности.
-
-
Создайте ресурсы:
-
В терминале перейдите в папку, где вы отредактировали конфигурационный файл.
-
Проверьте корректность конфигурационного файла с помощью команды:
terraform validate
Если конфигурация является корректной, появится сообщение:
Success! The configuration is valid.
-
Выполните команду:
terraform plan
В терминале будет выведен список ресурсов с параметрами. На этом этапе изменения не будут внесены. Если в конфигурации есть ошибки, Terraform на них укажет.
-
Примените изменения конфигурации:
terraform apply
-
Подтвердите изменения: введите в терминале слово
yes
и нажмите Enter.
-
Будет создан бакет с именем в формате ocr-recognition-...
.
Загрузите файлы для распознавания и проверьте работу сервиса
- Загрузите файлы для распознавания в папку
input
внутри бакета, созданного ранее. - Откройте в бакете папку
result
— там должны отобразиться результаты распознавания в виде файлов с расширением .txt и .json.
Как удалить созданные ресурсы
Чтобы перестать платить за созданные ресурсы:
-
Удалите файлы из бакета.
-
Откройте конфигурационный файл
main.tf
и удалите описание создаваемой инфраструктуры из файла. -
Примените изменения:
-
В терминале перейдите в папку, где вы отредактировали конфигурационный файл.
-
Проверьте корректность конфигурационного файла с помощью команды:
terraform validate
Если конфигурация является корректной, появится сообщение:
Success! The configuration is valid.
-
Выполните команду:
terraform plan
В терминале будет выведен список ресурсов с параметрами. На этом этапе изменения не будут внесены. Если в конфигурации есть ошибки, Terraform на них укажет.
-
Примените изменения конфигурации:
terraform apply
-
Подтвердите изменения: введите в терминале слово
yes
и нажмите Enter.
-