Aracılığıyla paylaş


FormTrainingClient Sınıf

FormTrainingClient, özel modelleri oluşturmak ve yönetmek için kullanılacak Form Tanıma arabirimidir. Sağladığınız formlardaki eğitim modellerinin yanı sıra modelleri görüntüleme ve silme, hesap özelliklerine erişme, modelleri başka bir Form Tanıma kaynağına kopyalama ve etiketlerle eğitilmiş mevcut modeller koleksiyonundan model oluşturma yöntemleri sağlar.

Not

FormTrainingClient, =v2.1 API sürümleriyle <kullanılmalıdır.

2022-08-31 ve daha yeni API sürümlerini kullanmak için DocumentModelAdministrationClient örneği oluşturun.

Devralma
azure.ai.formrecognizer._form_base_client.FormRecognizerClientBase
FormTrainingClient

Oluşturucu

FormTrainingClient(endpoint: str, credential: AzureKeyCredential | TokenCredential, **kwargs: Any)

Parametreler

endpoint
str
Gerekli

Desteklenen Bilişsel Hizmetler uç noktaları (protokol ve konak adı, örneğin: https://westus2.api.cognitive.microsoft.com).

credential
AzureKeyCredential veya TokenCredential
Gerekli

İstemcinin Azure'a bağlanması için gereken kimlik bilgileri. Api anahtarı veya belirteç identitykimlik bilgisi kullanılıyorsa, bu AzureKeyCredential örneğidir.

api_version
str veya FormRecognizerApiVersion

İstekler için kullanılacak hizmetin API sürümü. Varsayılan olarak API sürüm v2.1'e ayarlanır. Eski bir sürüme ayar yapmak özellik uyumluluğunu azaltabilir. Desteklenen en son API sürümünü ve özelliklerini kullanmak için bunun yerine bir DocumentModelAdministrationClient örneği oluşturun.

Örnekler

FormTrainingClient'ı bir uç nokta ve API anahtarıyla oluşturma.


   from azure.core.credentials import AzureKeyCredential
   from azure.ai.formrecognizer import FormTrainingClient
   endpoint = os.environ["AZURE_FORM_RECOGNIZER_ENDPOINT"]
   key = os.environ["AZURE_FORM_RECOGNIZER_KEY"]

   form_training_client = FormTrainingClient(endpoint, AzureKeyCredential(key))

Belirteç kimlik bilgileriyle FormTrainingClient oluşturma.


   """DefaultAzureCredential will use the values from these environment
   variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, AZURE_CLIENT_SECRET
   """
   from azure.ai.formrecognizer import FormTrainingClient
   from azure.identity import DefaultAzureCredential

   endpoint = os.environ["AZURE_FORM_RECOGNIZER_ENDPOINT"]
   credential = DefaultAzureCredential()

   form_training_client = FormTrainingClient(endpoint, credential)

Yöntemler

begin_copy_model

Bu kaynakta (kaynak) depolanan özel modeli kullanıcı tarafından belirtilen hedef Form Tanıma kaynağına kopyalayın. Bu, kaynak Form Tanıma kaynağıyla (kopyalanması amaçlanan modelle) çağrılmalıdır. Hedef parametre, hedef kaynağın yöntemi çağrılır get_copy_authorization çıkışından sağlanmalıdır.

begin_create_composed_model

Etiketlerle eğitilmiş mevcut modeller koleksiyonundan oluşturulmuş bir model oluşturur.

Oluşturulan model, tek bir model kimliğiyle birden çok modelin çağrılmasını sağlar. Oluşturulan model kimliğiyle analiz edilecek bir belge gönderildiğinde, önce doğru özel modele yönlendirmek için bir sınıflandırma adımı gerçekleştirilir.

Sürüm v2.1'de yeni: begin_create_composed_model istemci yöntemi

begin_training

Özel model oluşturma ve eğitma. İstek, dışarıdan erişilebilir bir Azure depolama blob kapsayıcısı URI'sine (tercihen Paylaşılan Erişim İmzası URI'sine) sahip bir training_files_url parametresi içermelidir. Kapsayıcı URI'sinin (SAS olmadan) yalnızca kapsayıcı genel olduğunda veya yönetilen kimliği yapılandırıldığında kabul edildiğine dikkat edin. Yönetilen kimlikleri Form Tanıma çalışacak şekilde yapılandırma hakkında daha fazla bilgi için buraya bakın: https://docs.microsoft.com/azure/applied-ai-services/form-recognizer/managed-identities. Modeller şu içerik türünde belgeler kullanılarak eğitilir: 'application/pdf', 'image/jpeg', 'image/png', 'image/tiff' veya 'image/bmp'. Kapsayıcıdaki diğer içerik türleri yoksayılır.

Sürüm v2.1'de yeni: model_name anahtar sözcük bağımsız değişkeni

close

FormTrainingClient Oturumu kapatın.

delete_model

Modeli silinmek üzere işaretleyin. Model yapıtları önceden belirlenmiş bir süre içinde kalıcı olarak kaldırılır.

get_account_properties

Form tanıyıcı hesabındaki modeller hakkında bilgi edinin.

get_copy_authorization

Özel modeli hedef Form Tanıma kaynağına kopyalamak için yetkilendirme oluşturun. Bu hedef kaynak tarafından çağrılmalıdır (modelin kopyalandığı yer) ve çıkış hedef parametresi olarak içine begin_copy_modelgeçirilebilir.

get_custom_model

Tanıyabileceği form türleri ve her form türü için ayıklayacakları alanlar da dahil olmak üzere özel modelin açıklamasını alın.

get_form_recognizer_client

FormTrainingClient'dan FormRecognizerClient örneğini alın.

list_custom_models

Model kimliği, model durumu ve ne zaman oluşturulduğu ve son değiştirildiği gibi her model için liste bilgileri.

send_request

İstemcinin mevcut işlem hattını kullanarak bir ağ isteği çalıştırır.

İstek URL'si temel URL'ye göre olabilir. İstek için kullanılan hizmet API'sinin sürümü, aksi belirtilmedikçe istemcinin sürümüyle aynıdır. İstemcinin yapılandırılmış API sürümünü göreli URL'de geçersiz kılma, 2022-08-31 ve üzeri API sürümüne sahip istemcide desteklenir. Herhangi bir API sürümüyle istemcide desteklenen mutlak URL'de geçersiz kılma. Yanıt bir hataysa bu yöntem tetiklenmez; özel durum tetiklemek için döndürülen yanıt nesnesinde raise_for_status() öğesini çağırın. Bu yöntemle özel istek gönderme hakkında daha fazla bilgi için bkz https://aka.ms/azsdk/dpcodegen/python/send_request. .

begin_copy_model

Bu kaynakta (kaynak) depolanan özel modeli kullanıcı tarafından belirtilen hedef Form Tanıma kaynağına kopyalayın. Bu, kaynak Form Tanıma kaynağıyla (kopyalanması amaçlanan modelle) çağrılmalıdır. Hedef parametre, hedef kaynağın yöntemi çağrılır get_copy_authorization çıkışından sağlanmalıdır.

begin_copy_model(model_id: str, target: Dict[str, str | int], **kwargs: Any) -> LROPoller[CustomFormModelInfo]

Parametreler

model_id
str
Gerekli

Hedef kaynağa kopyalanacak modelin model tanımlayıcısı.

target
Dict[str, Union[str, int]]
Gerekli

Hedef kaynağın çağrısından oluşturulan kopyalama yetkilendirmesi get_copy_authorization.

continuation_token
str

Bir poller'ı kaydedilmiş durumdan yeniden başlatmak için bir devamlılık belirteci.

Döndürülenler

LROPoller örneği. Bir CustomFormModelInfodöndürmek için poller nesnesinde result() öğesini çağırın.

Dönüş türü

Özel durumlar

Örnekler

Kaynak kaynaktan hedef kaynağa model kopyalama


   source_client = FormTrainingClient(endpoint=source_endpoint, credential=AzureKeyCredential(source_key))

   poller = source_client.begin_copy_model(
       model_id=source_model_id,
       target=target  # output from target client's call to get_copy_authorization()
   )
   copied_over_model = poller.result()

   print("Model ID: {}".format(copied_over_model.model_id))
   print("Status: {}".format(copied_over_model.status))

begin_create_composed_model

Etiketlerle eğitilmiş mevcut modeller koleksiyonundan oluşturulmuş bir model oluşturur.

Oluşturulan model, tek bir model kimliğiyle birden çok modelin çağrılmasını sağlar. Oluşturulan model kimliğiyle analiz edilecek bir belge gönderildiğinde, önce doğru özel modele yönlendirmek için bir sınıflandırma adımı gerçekleştirilir.

Sürüm v2.1'de yeni: begin_create_composed_model istemci yöntemi

begin_create_composed_model(model_ids: List[str], **kwargs: Any) -> LROPoller[CustomFormModel]

Parametreler

model_ids
list[str]
Gerekli

Oluşturulan modelde kullanılacak model kimliklerinin listesi.

model_name
str

Modelinizle ilişkilendirilecek isteğe bağlı, kullanıcı tanımlı bir ad.

continuation_token
str

Bir poller'ı kaydedilmiş durumdan yeniden başlatmak için bir devamlılık belirteci.

Döndürülenler

LROPoller örneği. Bir CustomFormModeldöndürmek için poller nesnesinde result() öğesini çağırın.

Dönüş türü

Özel durumlar

Örnekler

Oluşturulan model oluşturma


   from azure.core.credentials import AzureKeyCredential
   from azure.ai.formrecognizer import FormTrainingClient

   endpoint = os.environ["AZURE_FORM_RECOGNIZER_ENDPOINT"]
   key = os.environ["AZURE_FORM_RECOGNIZER_KEY"]
   po_supplies = os.environ['PURCHASE_ORDER_OFFICE_SUPPLIES_SAS_URL_V2']
   po_equipment = os.environ['PURCHASE_ORDER_OFFICE_EQUIPMENT_SAS_URL_V2']
   po_furniture = os.environ['PURCHASE_ORDER_OFFICE_FURNITURE_SAS_URL_V2']
   po_cleaning_supplies = os.environ['PURCHASE_ORDER_OFFICE_CLEANING_SUPPLIES_SAS_URL_V2']

   form_training_client = FormTrainingClient(endpoint=endpoint, credential=AzureKeyCredential(key))
   supplies_poller = form_training_client.begin_training(
       po_supplies, use_training_labels=True, model_name="Purchase order - Office supplies"
   )
   equipment_poller = form_training_client.begin_training(
       po_equipment, use_training_labels=True, model_name="Purchase order - Office Equipment"
   )
   furniture_poller = form_training_client.begin_training(
       po_furniture, use_training_labels=True, model_name="Purchase order - Furniture"
   )
   cleaning_supplies_poller = form_training_client.begin_training(
       po_cleaning_supplies, use_training_labels=True, model_name="Purchase order - Cleaning Supplies"
   )
   supplies_model = supplies_poller.result()
   equipment_model = equipment_poller.result()
   furniture_model = furniture_poller.result()
   cleaning_supplies_model = cleaning_supplies_poller.result()

   models_trained_with_labels = [
       supplies_model.model_id,
       equipment_model.model_id,
       furniture_model.model_id,
       cleaning_supplies_model.model_id
   ]

   poller = form_training_client.begin_create_composed_model(
       models_trained_with_labels, model_name="Office Supplies Composed Model"
   )
   model = poller.result()

   print("Office Supplies Composed Model Info:")
   print("Model ID: {}".format(model.model_id))
   print("Model name: {}".format(model.model_name))
   print("Is this a composed model?: {}".format(model.properties.is_composed_model))
   print("Status: {}".format(model.status))
   print("Composed model creation started on: {}".format(model.training_started_on))
   print("Creation completed on: {}".format(model.training_completed_on))


begin_training

Özel model oluşturma ve eğitma. İstek, dışarıdan erişilebilir bir Azure depolama blob kapsayıcısı URI'sine (tercihen Paylaşılan Erişim İmzası URI'sine) sahip bir training_files_url parametresi içermelidir. Kapsayıcı URI'sinin (SAS olmadan) yalnızca kapsayıcı genel olduğunda veya yönetilen kimliği yapılandırıldığında kabul edildiğine dikkat edin. Yönetilen kimlikleri Form Tanıma çalışacak şekilde yapılandırma hakkında daha fazla bilgi için buraya bakın: https://docs.microsoft.com/azure/applied-ai-services/form-recognizer/managed-identities. Modeller şu içerik türünde belgeler kullanılarak eğitilir: 'application/pdf', 'image/jpeg', 'image/png', 'image/tiff' veya 'image/bmp'. Kapsayıcıdaki diğer içerik türleri yoksayılır.

Sürüm v2.1'de yeni: model_name anahtar sözcük bağımsız değişkeni

begin_training(training_files_url: str, use_training_labels: bool, **kwargs: Any) -> LROPoller[CustomFormModel]

Parametreler

training_files_url
str
Gerekli

Azure Depolama blob kapsayıcısı SAS URI'si. Kapsayıcı genelse veya yönetilen kimliği yapılandırılmışsa kapsayıcı URI'sini (SAS olmadan) kullanabilirsiniz. Eğitim veri kümesi ayarlama hakkında daha fazla bilgi için bkz. https://aka.ms/azsdk/formrecognizer/buildtrainingset.

use_training_labels
bool
Gerekli

Etiketlerle eğitilip eğitilmeyeceği. True olarak ayarlanırsa blob kapsayıcısında karşılık gelen etiketli dosyalar bulunmalıdır.

prefix
str

Eğitim için kaynak yoldaki belgeleri filtrelemek için büyük/küçük harfe duyarlı bir ön ek dizesi. Örneğin, Azure depolama blobu URI'sini kullanırken, eğitim için alt klasörleri kısıtlamak için ön eki kullanın.

include_subfolders
bool

Ön ek klasörleri kümesindeki alt klasörlerin önceden işlenecek içerik aranırken de eklenmesi gerekip gerekmediğini belirten bir bayrak. Etiketlerle eğitim varsa desteklenmez.

model_name
str

Modelinizle ilişkilendirilecek isteğe bağlı, kullanıcı tanımlı bir ad.

continuation_token
str

Bir poller'ı kaydedilmiş durumdan yeniden başlatmak için bir devamlılık belirteci.

Döndürülenler

LROPoller örneği. Bir CustomFormModeldöndürmek için poller nesnesinde result() öğesini çağırın.

Dönüş türü

Özel durumlar

Eğitim başarısız olursa özel durum oluşturulur, ancak "geçersiz" durumuna sahip bir model oluşturulmaya devam eder. Bu modeli arayarak silebilirsiniz

Örnekler

Modeli özel formlarınızla eğitin (etiketler olmadan).


   from azure.ai.formrecognizer import FormTrainingClient
   from azure.core.credentials import AzureKeyCredential

   endpoint = os.environ["AZURE_FORM_RECOGNIZER_ENDPOINT"]
   key = os.environ["AZURE_FORM_RECOGNIZER_KEY"]
   container_sas_url = os.environ["CONTAINER_SAS_URL_V2"]

   form_training_client = FormTrainingClient(endpoint, AzureKeyCredential(key))
   poller = form_training_client.begin_training(container_sas_url, use_training_labels=False)
   model = poller.result()

   # Custom model information
   print("Model ID: {}".format(model.model_id))
   print("Status: {}".format(model.status))
   print("Model name: {}".format(model.model_name))
   print("Training started on: {}".format(model.training_started_on))
   print("Training completed on: {}".format(model.training_completed_on))

   print("Recognized fields:")
   # Looping through the submodels, which contains the fields they were trained on
   for submodel in model.submodels:
       print("...The submodel has form type '{}'".format(submodel.form_type))
       for name, field in submodel.fields.items():
           print("...The model found field '{}' to have label '{}'".format(
               name, field.label
           ))

close

FormTrainingClient Oturumu kapatın.

close() -> None

Özel durumlar

delete_model

Modeli silinmek üzere işaretleyin. Model yapıtları önceden belirlenmiş bir süre içinde kalıcı olarak kaldırılır.

delete_model(model_id: str, **kwargs: Any) -> None

Parametreler

model_id
str
Gerekli

Model tanımlayıcısı.

Dönüş türü

Özel durumlar

Örnekler

Özel modeli silme.


   form_training_client.delete_model(model_id=custom_model.model_id)

   try:
       form_training_client.get_custom_model(model_id=custom_model.model_id)
   except ResourceNotFoundError:
       print("Successfully deleted model with id {}".format(custom_model.model_id))

get_account_properties

Form tanıyıcı hesabındaki modeller hakkında bilgi edinin.

get_account_properties(**kwargs: Any) -> AccountProperties

Döndürülenler

Hesapta modellerin özeti - özel model sayısı, özel model sınırı.

Dönüş türü

Özel durumlar

Örnekler

Form tanıyıcı hesabının özelliklerini alma.


   form_training_client = FormTrainingClient(endpoint=endpoint, credential=AzureKeyCredential(key))
   # First, we see how many custom models we have, and what our limit is
   account_properties = form_training_client.get_account_properties()
   print("Our account has {} custom models, and we can have at most {} custom models\n".format(
       account_properties.custom_model_count, account_properties.custom_model_limit
   ))

get_copy_authorization

Özel modeli hedef Form Tanıma kaynağına kopyalamak için yetkilendirme oluşturun. Bu hedef kaynak tarafından çağrılmalıdır (modelin kopyalandığı yer) ve çıkış hedef parametresi olarak içine begin_copy_modelgeçirilebilir.

get_copy_authorization(resource_id: str, resource_region: str, **kwargs: Any) -> Dict[str, str | int]

Parametreler

resource_id
str
Gerekli

Modelin kopyalandığı hedef Form Tanıma kaynağının Azure Kaynak Kimliği.

resource_region
str
Gerekli

Hedef Form Tanıma kaynağının konumu. Bilişsel Hizmetler tarafından desteklenen geçerli bir Azure bölgesi adı. Örneğin, 'westus', 'eastus' vb. Bilişsel Hizmetler'in bölgesel kullanılabilirliği için bkz https://azure.microsoft.com/global-infrastructure/services/?products=cognitive-services .

Döndürülenler

Kopyalama yetkilendirmesi için değerleri olan bir sözlük - "modelId", "accessToken", "resourceId", "resourceRegion" ve "expirationDateTimeTicks".

Dönüş türü

Özel durumlar

Örnekler

Hedef kaynağı kopyalanan modeli alacak şekilde yetkilendirme


   target_client = FormTrainingClient(endpoint=target_endpoint, credential=AzureKeyCredential(target_key))

   target = target_client.get_copy_authorization(
       resource_region=target_region,
       resource_id=target_resource_id
   )
   # model ID that target client will use to access the model once copy is complete
   print("Model ID: {}".format(target["modelId"]))

get_custom_model

Tanıyabileceği form türleri ve her form türü için ayıklayacakları alanlar da dahil olmak üzere özel modelin açıklamasını alın.

get_custom_model(model_id: str, **kwargs: Any) -> CustomFormModel

Parametreler

model_id
str
Gerekli

Model tanımlayıcısı.

Döndürülenler

CustomFormModel

Dönüş türü

Özel durumlar

Örnekler

Model kimliğine sahip özel bir model alın.


   custom_model = form_training_client.get_custom_model(model_id=model.model_id)
   print("\nModel ID: {}".format(custom_model.model_id))
   print("Status: {}".format(custom_model.status))
   print("Model name: {}".format(custom_model.model_name))
   print("Is this a composed model?: {}".format(custom_model.properties.is_composed_model))
   print("Training started on: {}".format(custom_model.training_started_on))
   print("Training completed on: {}".format(custom_model.training_completed_on))

get_form_recognizer_client

FormTrainingClient'dan FormRecognizerClient örneğini alın.

get_form_recognizer_client(**kwargs: Any) -> FormRecognizerClient

Döndürülenler

A FormRecognizerClient

Dönüş türü

Özel durumlar

list_custom_models

Model kimliği, model durumu ve ne zaman oluşturulduğu ve son değiştirildiği gibi her model için liste bilgileri.

list_custom_models(**kwargs: Any) -> ItemPaged[CustomFormModelInfo]

Döndürülenler

ItemPaged[CustomFormModelInfo]

Dönüş türü

Özel durumlar

Örnekler

Hesapta her model için model bilgilerini listeleyin.


   custom_models = form_training_client.list_custom_models()

   print("We have models with the following IDs:")
   for model_info in custom_models:
       print(model_info.model_id)

send_request

İstemcinin mevcut işlem hattını kullanarak bir ağ isteği çalıştırır.

İstek URL'si temel URL'ye göre olabilir. İstek için kullanılan hizmet API'sinin sürümü, aksi belirtilmedikçe istemcinin sürümüyle aynıdır. İstemcinin yapılandırılmış API sürümünü göreli URL'de geçersiz kılma, 2022-08-31 ve üzeri API sürümüne sahip istemcide desteklenir. Herhangi bir API sürümüyle istemcide desteklenen mutlak URL'de geçersiz kılma. Yanıt bir hataysa bu yöntem tetiklenmez; özel durum tetiklemek için döndürülen yanıt nesnesinde raise_for_status() öğesini çağırın. Bu yöntemle özel istek gönderme hakkında daha fazla bilgi için bkz https://aka.ms/azsdk/dpcodegen/python/send_request. .

send_request(request: HttpRequest, *, stream: bool = False, **kwargs) -> HttpResponse

Parametreler

request
HttpRequest
Gerekli

Yapmak istediğiniz ağ isteği.

stream
bool

Yanıt yükünün akışla aktarılıp aktarılmayacağı. Varsayılan değer False'tur.

Döndürülenler

Ağ çağrınızın yanıtı. Yanıtınızda hata işleme yapmaz.

Dönüş türü

Özel durumlar