Мне нужно десериализовать результаты Azure Form Recognizer, сериализованные в формате json, в объекты python FormRecognizer (из пакета azure-ai-formrecognizer==3.1.0b1), и я не вижу никакого API для выполнения этой десериализации. Любая помощь будет оценена по достоинству.
Я унаследовал большой объем кода Python, который принимает объект RecognizedForm и выполняет его дальнейшую обработку/анализ, а также базу данных объектов RecognizedForm, сериализованных в формате json. Некоторые из этих сериализованных в json объектов RecognizedForm были успешно проанализированы/обработаны, а некоторые нет. Мне нужно создать объекты RecognizedForm из этих сериализованных данных, чтобы я мог запускать неразобранные объекты через код, который дополнительно обрабатывает/анализирует объекты RecognizedForm.
В зависимости от того, как вы анализируете, если вам просто нужно получить доступ к атрибутам RecognizedForm и не нужен настоящий объект RecognizedForm (другими словами, просто форма объекта RecognizedForm), это может сработать для вас:
import json
from types import SimpleNamespace
recognized_form = json.loads(recognized_form_json, object_hook=lambda fields: SimpleNamespace(**fields))
В противном случае мы можем вручную десериализовать его обратно в RecognizedForm. См. этот суть для примера (не полностью протестировано).
Вау, спасибо за суть, это очень полезно (и да, для этого нужен доступ к атрибутам свойства)!
Какие проблемы у вас возникают с ответом json, из-за которого вы хотите преобразовать его в объект SDK? SDK в настоящее время не предоставляет общедоступную поверхность для десериализации ответа REST на RecognizedForm.