Evaluate a processor version

Evaluate a processor version with a supplied dataset.

Explore further

For detailed documentation that includes this code sample, see the following:

Code sample

Python

For more information, see the Document AI Python API reference documentation .

To authenticate to Document AI, set up Application Default Credentials. For more information, see Set up authentication for a local development environment .

  from 
  
 google.api_core.client_options 
  
 import 
 ClientOptions 
 from 
  
 google.cloud 
  
 import 
 documentai 
 # type: ignore 
 # TODO(developer): Uncomment these variables before running the sample. 
 # project_id = 'YOUR_PROJECT_ID' 
 # location = 'YOUR_PROCESSOR_LOCATION' # Format is 'us' or 'eu' 
 # processor_id = 'YOUR_PROCESSOR_ID' 
 # processor_version_id = 'YOUR_PROCESSOR_VERSION_ID' 
 # gcs_input_uri = # Format: gs://bucket/directory/ 
 def 
  
 evaluate_processor_version_sample 
 ( 
 project_id 
 : 
 str 
 , 
 location 
 : 
 str 
 , 
 processor_id 
 : 
 str 
 , 
 processor_version_id 
 : 
 str 
 , 
 gcs_input_uri 
 : 
 str 
 , 
 ) 
 - 
> None 
 : 
 # You must set the api_endpoint if you use a location other than 'us', e.g.: 
 opts 
 = 
 ClientOptions 
 ( 
 api_endpoint 
 = 
 f 
 " 
 { 
 location 
 } 
 -documentai.googleapis.com" 
 ) 
 client 
 = 
 documentai 
 . 
  DocumentProcessorServiceClient 
 
 ( 
 client_options 
 = 
 opts 
 ) 
 # The full resource name of the processor version 
 # e.g. `projects/{project_id}/locations/{location}/processors/{processor_id}/processorVersions/{processor_version_id}` 
 name 
 = 
 client 
 . 
  processor_version_path 
 
 ( 
 project_id 
 , 
 location 
 , 
 processor_id 
 , 
 processor_version_id 
 ) 
 evaluation_documents 
 = 
 documentai 
 . 
  BatchDocumentsInputConfig 
 
 ( 
 gcs_prefix 
 = 
 documentai 
 . 
  GcsPrefix 
 
 ( 
 gcs_uri_prefix 
 = 
 gcs_input_uri 
 ) 
 ) 
 # NOTE: Alternatively, specify a list of GCS Documents 
 # 
 # gcs_input_uri = "gs://bucket/directory/file.pdf" 
 # input_mime_type = "application/pdf" 
 # 
 # gcs_document = documentai.GcsDocument( 
 #     gcs_uri=gcs_input_uri, mime_type=input_mime_type 
 # ) 
 # gcs_documents = [gcs_document] 
 # evaluation_documents = documentai.BatchDocumentsInputConfig( 
 #     gcs_documents=documentai.GcsDocuments(documents=gcs_documents) 
 # ) 
 # 
 request 
 = 
 documentai 
 . 
  EvaluateProcessorVersionRequest 
 
 ( 
 processor_version 
 = 
 name 
 , 
 evaluation_documents 
 = 
 evaluation_documents 
 , 
 ) 
 # Make EvaluateProcessorVersion request 
 # Continually polls the operation until it is complete. 
 # This could take some time for larger files 
 operation 
 = 
 client 
 . 
  evaluate_processor_version 
 
 ( 
 request 
 = 
 request 
 ) 
 # Print operation details 
 # Format: projects/PROJECT_NUMBER/locations/LOCATION/operations/OPERATION_ID 
 print 
 ( 
 f 
 "Waiting for operation 
 { 
 operation 
 . 
 operation 
 . 
 name 
 } 
 to complete..." 
 ) 
 # Wait for operation to complete 
 response 
 = 
 documentai 
 . 
  EvaluateProcessorVersionResponse 
 
 ( 
 operation 
 . 
 result 
 ()) 
 # After the operation is complete, 
 # Print evaluation ID from operation response 
 print 
 ( 
 f 
 "Evaluation Complete: 
 { 
 response 
 . 
 evaluation 
 } 
 " 
 ) 
 

What's next

To search and filter code samples for other Google Cloud products, see the Google Cloud sample browser .

Create a Mobile Website
View Site in Mobile | Classic
Share by: