# -*- coding: utf-8 -*-
# Generated by the protocol buffer compiler.  DO NOT EDIT!
# source: ml-worker.proto
"""Generated protocol buffer code."""
from google.protobuf.internal import enum_type_wrapper
from google.protobuf import descriptor as _descriptor
from google.protobuf import descriptor_pool as _descriptor_pool
from google.protobuf import message as _message
from google.protobuf import reflection as _reflection
from google.protobuf import symbol_database as _symbol_database
# @@protoc_insertion_point(imports)

_sym_db = _symbol_database.Default()


from google.protobuf import any_pb2 as google_dot_protobuf_dot_any__pb2
from google.protobuf import wrappers_pb2 as google_dot_protobuf_dot_wrappers__pb2
from google.protobuf import empty_pb2 as google_dot_protobuf_dot_empty__pb2


DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x0fml-worker.proto\x12\x06worker\x1a\x19google/protobuf/any.proto\x1a\x1egoogle/protobuf/wrappers.proto\x1a\x1bgoogle/protobuf/empty.proto\",\n\x13MLWorkerInfoRequest\x12\x15\n\rlist_packages\x18\x01 \x01(\x08\"\xc3\x02\n\x0cMLWorkerInfo\x12&\n\x08platform\x18\x01 \x01(\x0b\x32\x14.worker.PlatformInfo\x12\x13\n\x0binterpreter\x18\x02 \x01(\t\x12\x1b\n\x13interpreter_version\x18\x03 \x01(\t\x12G\n\x12installed_packages\x18\x04 \x03(\x0b\x32+.worker.MLWorkerInfo.InstalledPackagesEntry\x12\x1a\n\x12internal_grpc_port\x18\x05 \x01(\r\x12\x11\n\tis_remote\x18\x06 \x01(\x08\x12\x0b\n\x03pid\x18\x07 \x01(\r\x12\x1a\n\x12process_start_time\x18\x08 \x01(\x04\x1a\x38\n\x16InstalledPackagesEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"r\n\x0cPlatformInfo\x12\x0f\n\x07machine\x18\x01 \x01(\t\x12\x0c\n\x04node\x18\x02 \x01(\t\x12\x11\n\tprocessor\x18\x03 \x01(\t\x12\x0f\n\x07release\x18\x04 \x01(\t\x12\x0e\n\x06system\x18\x05 \x01(\t\x12\x0f\n\x07version\x18\x06 \x01(\t\"n\n\x11\x46ileUploadRequest\x12.\n\x08metadata\x18\x01 \x01(\x0b\x32\x1a.worker.FileUploadMetadataH\x00\x12\x1e\n\x05\x63hunk\x18\x02 \x01(\x0b\x32\r.worker.ChunkH\x00\x42\t\n\x07request\"\"\n\x12\x46ileUploadMetadata\x12\x0c\n\x04name\x18\x01 \x01(\t\"\x16\n\x07\x45\x63hoMsg\x12\x0b\n\x03msg\x18\x01 \x01(\t\"\xd8\x01\n\x0e\x45xplainRequest\x12-\n\x05model\x18\x01 \x01(\x0b\x32\x1e.worker.SerializedGiskardModel\x12\x31\n\x07\x64\x61taset\x18\x02 \x01(\x0b\x32 .worker.SerializedGiskardDataset\x12\x34\n\x07\x63olumns\x18\x03 \x03(\x0b\x32#.worker.ExplainRequest.ColumnsEntry\x1a.\n\x0c\x43olumnsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"\xd0\x02\n\x12\x45xplainTextRequest\x12-\n\x05model\x18\x01 \x01(\x0b\x32\x1e.worker.SerializedGiskardModel\x12\x14\n\x0c\x66\x65\x61ture_name\x18\x02 \x01(\t\x12\x38\n\x07\x63olumns\x18\x03 \x03(\x0b\x32\'.worker.ExplainTextRequest.ColumnsEntry\x12\x43\n\rfeature_types\x18\x04 \x03(\x0b\x32,.worker.ExplainTextRequest.FeatureTypesEntry\x12\x11\n\tn_samples\x18\x05 \x01(\r\x1a.\n\x0c\x43olumnsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\x1a\x33\n\x11\x46\x65\x61tureTypesEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"\xb9\x02\n\x0f\x45xplainResponse\x12?\n\x0c\x65xplanations\x18\x01 \x03(\x0b\x32).worker.ExplainResponse.ExplanationsEntry\x1a\x8a\x01\n\x0b\x45xplanation\x12H\n\x0bper_feature\x18\x01 \x03(\x0b\x32\x33.worker.ExplainResponse.Explanation.PerFeatureEntry\x1a\x31\n\x0fPerFeatureEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\x02:\x02\x38\x01\x1aX\n\x11\x45xplanationsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\x32\n\x05value\x18\x02 \x01(\x0b\x32#.worker.ExplainResponse.Explanation:\x02\x38\x01\"\x8f\x01\n\x13\x45xplainTextResponse\x12\x43\n\x0c\x65xplanations\x18\x01 \x03(\x0b\x32-.worker.ExplainTextResponse.ExplanationsEntry\x1a\x33\n\x11\x45xplanationsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"\x8d\x01\n\x1cRunModelForDataFrameResponse\x12*\n\x0f\x61ll_predictions\x18\x01 \x01(\x0b\x32\x11.worker.DataFrame\x12\x12\n\nprediction\x18\x02 \x03(\t\x12\x15\n\rprobabilities\x18\x03 \x03(\x02\x12\x16\n\x0eraw_prediction\x18\x04 \x03(\x02\"h\n\x07\x44\x61taRow\x12-\n\x07\x63olumns\x18\x01 \x03(\x0b\x32\x1c.worker.DataRow.ColumnsEntry\x1a.\n\x0c\x43olumnsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"*\n\tDataFrame\x12\x1d\n\x04rows\x18\x01 \x03(\x0b\x32\x0f.worker.DataRow\"\x85\x03\n\x1bRunModelForDataFrameRequest\x12-\n\x05model\x18\x01 \x01(\x0b\x32\x1e.worker.SerializedGiskardModel\x12$\n\tdataframe\x18\x02 \x01(\x0b\x32\x11.worker.DataFrame\x12\x0e\n\x06target\x18\x03 \x01(\t\x12L\n\rfeature_types\x18\x04 \x03(\x0b\x32\x35.worker.RunModelForDataFrameRequest.FeatureTypesEntry\x12J\n\x0c\x63olumn_types\x18\x05 \x03(\x0b\x32\x34.worker.RunModelForDataFrameRequest.ColumnTypesEntry\x1a\x33\n\x11\x46\x65\x61tureTypesEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\x1a\x32\n\x10\x43olumnTypesEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"s\n\x0fRunModelRequest\x12-\n\x05model\x18\x01 \x01(\x0b\x32\x1e.worker.SerializedGiskardModel\x12\x31\n\x07\x64\x61taset\x18\x02 \x01(\x0b\x32 .worker.SerializedGiskardDataset\"?\n\x10RunModelResponse\x12\x13\n\x0bresults_csv\x18\x01 \x01(\t\x12\x16\n\x0e\x63\x61lculated_csv\x18\x02 \x01(\t\"\xba\x01\n\x0eRunTestRequest\x12\x0c\n\x04\x63ode\x18\x01 \x01(\t\x12-\n\x05model\x18\x02 \x01(\x0b\x32\x1e.worker.SerializedGiskardModel\x12\x33\n\tactual_ds\x18\x03 \x01(\x0b\x32 .worker.SerializedGiskardDataset\x12\x36\n\x0creference_ds\x18\x04 \x01(\x0b\x32 .worker.SerializedGiskardDataset\"\xbe\x02\n\x18SerializedGiskardDataset\x12\x0e\n\x06target\x18\x02 \x01(\t\x12I\n\rfeature_types\x18\x03 \x03(\x0b\x32\x32.worker.SerializedGiskardDataset.FeatureTypesEntry\x12G\n\x0c\x63olumn_types\x18\x05 \x03(\x0b\x32\x31.worker.SerializedGiskardDataset.ColumnTypesEntry\x12\x15\n\rserialized_df\x18\x04 \x01(\x0c\x1a\x33\n\x11\x46\x65\x61tureTypesEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\x1a\x32\n\x10\x43olumnTypesEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"\x1f\n\x0fRunTestResponse\x12\x0c\n\x04name\x18\x01 \x01(\t\"9\n\x19Partial_unexpected_counts\x12\r\n\x05value\x18\x01 \x03(\r\x12\r\n\x05\x63ount\x18\x02 \x01(\r\"O\n\x15NamedSingleTestResult\x12\x0c\n\x04name\x18\x01 \x01(\t\x12(\n\x06result\x18\x02 \x01(\x0b\x32\x18.worker.SingleTestResult\"B\n\x0bTestMessage\x12%\n\x04type\x18\x01 \x01(\x0e\x32\x17.worker.TestMessageType\x12\x0c\n\x04text\x18\x02 \x01(\t\"\x98\x06\n\x10SingleTestResult\x12\x0e\n\x06passed\x18\r \x01(\x08\x12%\n\x08messages\x18\x10 \x03(\x0b\x32\x13.worker.TestMessage\x12\x32\n\x05props\x18\x0e \x03(\x0b\x32#.worker.SingleTestResult.PropsEntry\x12\x0e\n\x06metric\x18\x0f \x01(\x02\x12\x32\n\rmissing_count\x18\x02 \x01(\x0b\x32\x1b.google.protobuf.Int32Value\x12\x35\n\x0fmissing_percent\x18\x03 \x01(\x0b\x32\x1c.google.protobuf.DoubleValue\x12\x35\n\x10unexpected_count\x18\x04 \x01(\x0b\x32\x1b.google.protobuf.Int32Value\x12\x38\n\x12unexpected_percent\x18\x05 \x01(\x0b\x32\x1c.google.protobuf.DoubleValue\x12>\n\x18unexpected_percent_total\x18\x06 \x01(\x0b\x32\x1c.google.protobuf.DoubleValue\x12\x43\n\x1dunexpected_percent_nonmissing\x18\x07 \x01(\x0b\x32\x1c.google.protobuf.DoubleValue\x12%\n\x1dpartial_unexpected_index_list\x18\t \x03(\r\x12\x44\n\x19partial_unexpected_counts\x18\n \x03(\x0b\x32!.worker.Partial_unexpected_counts\x12\x1d\n\x15unexpected_index_list\x18\x0c \x03(\r\x12\x11\n\toutput_df\x18\x12 \x01(\x0c\x12 \n\x18number_of_perturbed_rows\x18\x14 \x01(\r\x12\x1a\n\x12\x61\x63tual_slices_size\x18\x15 \x03(\r\x12\x1d\n\x15reference_slices_size\x18\x16 \x03(\r\x1a,\n\nPropsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"C\n\x11TestResultMessage\x12.\n\x07results\x18\x01 \x03(\x0b\x32\x1d.worker.NamedSingleTestResult\"\xbb\x01\n\x16SerializedGiskardModel\x12&\n\x1eserialized_prediction_function\x18\x01 \x01(\x0c\x12\x12\n\nmodel_type\x18\x02 \x01(\t\x12/\n\tthreshold\x18\x03 \x01(\x0b\x32\x1c.google.protobuf.DoubleValue\x12\x15\n\rfeature_names\x18\x04 \x03(\t\x12\x1d\n\x15\x63lassification_labels\x18\x05 \x03(\t\"\x18\n\x05\x43hunk\x12\x0f\n\x07\x63ontent\x18\x01 \x01(\x0c\"6\n\x0cUploadStatus\x12&\n\x04\x63ode\x18\x01 \x01(\x0e\x32\x18.worker.UploadStatusCode*&\n\x0fTestMessageType\x12\t\n\x05\x45RROR\x10\x00\x12\x08\n\x04INFO\x10\x01*3\n\x10UploadStatusCode\x12\x0b\n\x07Unknown\x10\x00\x12\x06\n\x02Ok\x10\x01\x12\n\n\x06\x46\x61iled\x10\x02\x32\xa3\x04\n\x08MLWorker\x12>\n\x07getInfo\x12\x1b.worker.MLWorkerInfoRequest\x1a\x14.worker.MLWorkerInfo\"\x00\x12>\n\x07runTest\x12\x16.worker.RunTestRequest\x1a\x19.worker.TestResultMessage\"\x00\x12?\n\x08runModel\x12\x17.worker.RunModelRequest\x1a\x18.worker.RunModelResponse\"\x00\x12\x63\n\x14runModelForDataFrame\x12#.worker.RunModelForDataFrameRequest\x1a$.worker.RunModelForDataFrameResponse\"\x00\x12<\n\x07\x65xplain\x12\x16.worker.ExplainRequest\x1a\x17.worker.ExplainResponse\"\x00\x12H\n\x0b\x65xplainText\x12\x1a.worker.ExplainTextRequest\x1a\x1b.worker.ExplainTextResponse\"\x00\x12*\n\x04\x65\x63ho\x12\x0f.worker.EchoMsg\x1a\x0f.worker.EchoMsg\"\x00\x12=\n\x06upload\x12\x19.worker.FileUploadRequest\x1a\x14.worker.UploadStatus\"\x00(\x01\x42(\n\x11\x61i.giskard.workerB\x0bWorkerProtoP\x01\xa2\x02\x03WRKb\x06proto3')

_TESTMESSAGETYPE = DESCRIPTOR.enum_types_by_name['TestMessageType']
TestMessageType = enum_type_wrapper.EnumTypeWrapper(_TESTMESSAGETYPE)
_UPLOADSTATUSCODE = DESCRIPTOR.enum_types_by_name['UploadStatusCode']
UploadStatusCode = enum_type_wrapper.EnumTypeWrapper(_UPLOADSTATUSCODE)
ERROR = 0
INFO = 1
Unknown = 0
Ok = 1
Failed = 2


_MLWORKERINFOREQUEST = DESCRIPTOR.message_types_by_name['MLWorkerInfoRequest']
_MLWORKERINFO = DESCRIPTOR.message_types_by_name['MLWorkerInfo']
_MLWORKERINFO_INSTALLEDPACKAGESENTRY = _MLWORKERINFO.nested_types_by_name['InstalledPackagesEntry']
_PLATFORMINFO = DESCRIPTOR.message_types_by_name['PlatformInfo']
_FILEUPLOADREQUEST = DESCRIPTOR.message_types_by_name['FileUploadRequest']
_FILEUPLOADMETADATA = DESCRIPTOR.message_types_by_name['FileUploadMetadata']
_ECHOMSG = DESCRIPTOR.message_types_by_name['EchoMsg']
_EXPLAINREQUEST = DESCRIPTOR.message_types_by_name['ExplainRequest']
_EXPLAINREQUEST_COLUMNSENTRY = _EXPLAINREQUEST.nested_types_by_name['ColumnsEntry']
_EXPLAINTEXTREQUEST = DESCRIPTOR.message_types_by_name['ExplainTextRequest']
_EXPLAINTEXTREQUEST_COLUMNSENTRY = _EXPLAINTEXTREQUEST.nested_types_by_name['ColumnsEntry']
_EXPLAINTEXTREQUEST_FEATURETYPESENTRY = _EXPLAINTEXTREQUEST.nested_types_by_name['FeatureTypesEntry']
_EXPLAINRESPONSE = DESCRIPTOR.message_types_by_name['ExplainResponse']
_EXPLAINRESPONSE_EXPLANATION = _EXPLAINRESPONSE.nested_types_by_name['Explanation']
_EXPLAINRESPONSE_EXPLANATION_PERFEATUREENTRY = _EXPLAINRESPONSE_EXPLANATION.nested_types_by_name['PerFeatureEntry']
_EXPLAINRESPONSE_EXPLANATIONSENTRY = _EXPLAINRESPONSE.nested_types_by_name['ExplanationsEntry']
_EXPLAINTEXTRESPONSE = DESCRIPTOR.message_types_by_name['ExplainTextResponse']
_EXPLAINTEXTRESPONSE_EXPLANATIONSENTRY = _EXPLAINTEXTRESPONSE.nested_types_by_name['ExplanationsEntry']
_RUNMODELFORDATAFRAMERESPONSE = DESCRIPTOR.message_types_by_name['RunModelForDataFrameResponse']
_DATAROW = DESCRIPTOR.message_types_by_name['DataRow']
_DATAROW_COLUMNSENTRY = _DATAROW.nested_types_by_name['ColumnsEntry']
_DATAFRAME = DESCRIPTOR.message_types_by_name['DataFrame']
_RUNMODELFORDATAFRAMEREQUEST = DESCRIPTOR.message_types_by_name['RunModelForDataFrameRequest']
_RUNMODELFORDATAFRAMEREQUEST_FEATURETYPESENTRY = _RUNMODELFORDATAFRAMEREQUEST.nested_types_by_name['FeatureTypesEntry']
_RUNMODELFORDATAFRAMEREQUEST_COLUMNTYPESENTRY = _RUNMODELFORDATAFRAMEREQUEST.nested_types_by_name['ColumnTypesEntry']
_RUNMODELREQUEST = DESCRIPTOR.message_types_by_name['RunModelRequest']
_RUNMODELRESPONSE = DESCRIPTOR.message_types_by_name['RunModelResponse']
_RUNTESTREQUEST = DESCRIPTOR.message_types_by_name['RunTestRequest']
_SERIALIZEDGISKARDDATASET = DESCRIPTOR.message_types_by_name['SerializedGiskardDataset']
_SERIALIZEDGISKARDDATASET_FEATURETYPESENTRY = _SERIALIZEDGISKARDDATASET.nested_types_by_name['FeatureTypesEntry']
_SERIALIZEDGISKARDDATASET_COLUMNTYPESENTRY = _SERIALIZEDGISKARDDATASET.nested_types_by_name['ColumnTypesEntry']
_RUNTESTRESPONSE = DESCRIPTOR.message_types_by_name['RunTestResponse']
_PARTIAL_UNEXPECTED_COUNTS = DESCRIPTOR.message_types_by_name['Partial_unexpected_counts']
_NAMEDSINGLETESTRESULT = DESCRIPTOR.message_types_by_name['NamedSingleTestResult']
_TESTMESSAGE = DESCRIPTOR.message_types_by_name['TestMessage']
_SINGLETESTRESULT = DESCRIPTOR.message_types_by_name['SingleTestResult']
_SINGLETESTRESULT_PROPSENTRY = _SINGLETESTRESULT.nested_types_by_name['PropsEntry']
_TESTRESULTMESSAGE = DESCRIPTOR.message_types_by_name['TestResultMessage']
_SERIALIZEDGISKARDMODEL = DESCRIPTOR.message_types_by_name['SerializedGiskardModel']
_CHUNK = DESCRIPTOR.message_types_by_name['Chunk']
_UPLOADSTATUS = DESCRIPTOR.message_types_by_name['UploadStatus']
MLWorkerInfoRequest = _reflection.GeneratedProtocolMessageType('MLWorkerInfoRequest', (_message.Message,), {
  'DESCRIPTOR' : _MLWORKERINFOREQUEST,
  '__module__' : 'ml_worker_pb2'
  # @@protoc_insertion_point(class_scope:worker.MLWorkerInfoRequest)
  })
_sym_db.RegisterMessage(MLWorkerInfoRequest)

MLWorkerInfo = _reflection.GeneratedProtocolMessageType('MLWorkerInfo', (_message.Message,), {

  'InstalledPackagesEntry' : _reflection.GeneratedProtocolMessageType('InstalledPackagesEntry', (_message.Message,), {
    'DESCRIPTOR' : _MLWORKERINFO_INSTALLEDPACKAGESENTRY,
    '__module__' : 'ml_worker_pb2'
    # @@protoc_insertion_point(class_scope:worker.MLWorkerInfo.InstalledPackagesEntry)
    })
  ,
  'DESCRIPTOR' : _MLWORKERINFO,
  '__module__' : 'ml_worker_pb2'
  # @@protoc_insertion_point(class_scope:worker.MLWorkerInfo)
  })
_sym_db.RegisterMessage(MLWorkerInfo)
_sym_db.RegisterMessage(MLWorkerInfo.InstalledPackagesEntry)

PlatformInfo = _reflection.GeneratedProtocolMessageType('PlatformInfo', (_message.Message,), {
  'DESCRIPTOR' : _PLATFORMINFO,
  '__module__' : 'ml_worker_pb2'
  # @@protoc_insertion_point(class_scope:worker.PlatformInfo)
  })
_sym_db.RegisterMessage(PlatformInfo)

FileUploadRequest = _reflection.GeneratedProtocolMessageType('FileUploadRequest', (_message.Message,), {
  'DESCRIPTOR' : _FILEUPLOADREQUEST,
  '__module__' : 'ml_worker_pb2'
  # @@protoc_insertion_point(class_scope:worker.FileUploadRequest)
  })
_sym_db.RegisterMessage(FileUploadRequest)

FileUploadMetadata = _reflection.GeneratedProtocolMessageType('FileUploadMetadata', (_message.Message,), {
  'DESCRIPTOR' : _FILEUPLOADMETADATA,
  '__module__' : 'ml_worker_pb2'
  # @@protoc_insertion_point(class_scope:worker.FileUploadMetadata)
  })
_sym_db.RegisterMessage(FileUploadMetadata)

EchoMsg = _reflection.GeneratedProtocolMessageType('EchoMsg', (_message.Message,), {
  'DESCRIPTOR' : _ECHOMSG,
  '__module__' : 'ml_worker_pb2'
  # @@protoc_insertion_point(class_scope:worker.EchoMsg)
  })
_sym_db.RegisterMessage(EchoMsg)

ExplainRequest = _reflection.GeneratedProtocolMessageType('ExplainRequest', (_message.Message,), {

  'ColumnsEntry' : _reflection.GeneratedProtocolMessageType('ColumnsEntry', (_message.Message,), {
    'DESCRIPTOR' : _EXPLAINREQUEST_COLUMNSENTRY,
    '__module__' : 'ml_worker_pb2'
    # @@protoc_insertion_point(class_scope:worker.ExplainRequest.ColumnsEntry)
    })
  ,
  'DESCRIPTOR' : _EXPLAINREQUEST,
  '__module__' : 'ml_worker_pb2'
  # @@protoc_insertion_point(class_scope:worker.ExplainRequest)
  })
_sym_db.RegisterMessage(ExplainRequest)
_sym_db.RegisterMessage(ExplainRequest.ColumnsEntry)

ExplainTextRequest = _reflection.GeneratedProtocolMessageType('ExplainTextRequest', (_message.Message,), {

  'ColumnsEntry' : _reflection.GeneratedProtocolMessageType('ColumnsEntry', (_message.Message,), {
    'DESCRIPTOR' : _EXPLAINTEXTREQUEST_COLUMNSENTRY,
    '__module__' : 'ml_worker_pb2'
    # @@protoc_insertion_point(class_scope:worker.ExplainTextRequest.ColumnsEntry)
    })
  ,

  'FeatureTypesEntry' : _reflection.GeneratedProtocolMessageType('FeatureTypesEntry', (_message.Message,), {
    'DESCRIPTOR' : _EXPLAINTEXTREQUEST_FEATURETYPESENTRY,
    '__module__' : 'ml_worker_pb2'
    # @@protoc_insertion_point(class_scope:worker.ExplainTextRequest.FeatureTypesEntry)
    })
  ,
  'DESCRIPTOR' : _EXPLAINTEXTREQUEST,
  '__module__' : 'ml_worker_pb2'
  # @@protoc_insertion_point(class_scope:worker.ExplainTextRequest)
  })
_sym_db.RegisterMessage(ExplainTextRequest)
_sym_db.RegisterMessage(ExplainTextRequest.ColumnsEntry)
_sym_db.RegisterMessage(ExplainTextRequest.FeatureTypesEntry)

ExplainResponse = _reflection.GeneratedProtocolMessageType('ExplainResponse', (_message.Message,), {

  'Explanation' : _reflection.GeneratedProtocolMessageType('Explanation', (_message.Message,), {

    'PerFeatureEntry' : _reflection.GeneratedProtocolMessageType('PerFeatureEntry', (_message.Message,), {
      'DESCRIPTOR' : _EXPLAINRESPONSE_EXPLANATION_PERFEATUREENTRY,
      '__module__' : 'ml_worker_pb2'
      # @@protoc_insertion_point(class_scope:worker.ExplainResponse.Explanation.PerFeatureEntry)
      })
    ,
    'DESCRIPTOR' : _EXPLAINRESPONSE_EXPLANATION,
    '__module__' : 'ml_worker_pb2'
    # @@protoc_insertion_point(class_scope:worker.ExplainResponse.Explanation)
    })
  ,

  'ExplanationsEntry' : _reflection.GeneratedProtocolMessageType('ExplanationsEntry', (_message.Message,), {
    'DESCRIPTOR' : _EXPLAINRESPONSE_EXPLANATIONSENTRY,
    '__module__' : 'ml_worker_pb2'
    # @@protoc_insertion_point(class_scope:worker.ExplainResponse.ExplanationsEntry)
    })
  ,
  'DESCRIPTOR' : _EXPLAINRESPONSE,
  '__module__' : 'ml_worker_pb2'
  # @@protoc_insertion_point(class_scope:worker.ExplainResponse)
  })
_sym_db.RegisterMessage(ExplainResponse)
_sym_db.RegisterMessage(ExplainResponse.Explanation)
_sym_db.RegisterMessage(ExplainResponse.Explanation.PerFeatureEntry)
_sym_db.RegisterMessage(ExplainResponse.ExplanationsEntry)

ExplainTextResponse = _reflection.GeneratedProtocolMessageType('ExplainTextResponse', (_message.Message,), {

  'ExplanationsEntry' : _reflection.GeneratedProtocolMessageType('ExplanationsEntry', (_message.Message,), {
    'DESCRIPTOR' : _EXPLAINTEXTRESPONSE_EXPLANATIONSENTRY,
    '__module__' : 'ml_worker_pb2'
    # @@protoc_insertion_point(class_scope:worker.ExplainTextResponse.ExplanationsEntry)
    })
  ,
  'DESCRIPTOR' : _EXPLAINTEXTRESPONSE,
  '__module__' : 'ml_worker_pb2'
  # @@protoc_insertion_point(class_scope:worker.ExplainTextResponse)
  })
_sym_db.RegisterMessage(ExplainTextResponse)
_sym_db.RegisterMessage(ExplainTextResponse.ExplanationsEntry)

RunModelForDataFrameResponse = _reflection.GeneratedProtocolMessageType('RunModelForDataFrameResponse', (_message.Message,), {
  'DESCRIPTOR' : _RUNMODELFORDATAFRAMERESPONSE,
  '__module__' : 'ml_worker_pb2'
  # @@protoc_insertion_point(class_scope:worker.RunModelForDataFrameResponse)
  })
_sym_db.RegisterMessage(RunModelForDataFrameResponse)

DataRow = _reflection.GeneratedProtocolMessageType('DataRow', (_message.Message,), {

  'ColumnsEntry' : _reflection.GeneratedProtocolMessageType('ColumnsEntry', (_message.Message,), {
    'DESCRIPTOR' : _DATAROW_COLUMNSENTRY,
    '__module__' : 'ml_worker_pb2'
    # @@protoc_insertion_point(class_scope:worker.DataRow.ColumnsEntry)
    })
  ,
  'DESCRIPTOR' : _DATAROW,
  '__module__' : 'ml_worker_pb2'
  # @@protoc_insertion_point(class_scope:worker.DataRow)
  })
_sym_db.RegisterMessage(DataRow)
_sym_db.RegisterMessage(DataRow.ColumnsEntry)

DataFrame = _reflection.GeneratedProtocolMessageType('DataFrame', (_message.Message,), {
  'DESCRIPTOR' : _DATAFRAME,
  '__module__' : 'ml_worker_pb2'
  # @@protoc_insertion_point(class_scope:worker.DataFrame)
  })
_sym_db.RegisterMessage(DataFrame)

RunModelForDataFrameRequest = _reflection.GeneratedProtocolMessageType('RunModelForDataFrameRequest', (_message.Message,), {

  'FeatureTypesEntry' : _reflection.GeneratedProtocolMessageType('FeatureTypesEntry', (_message.Message,), {
    'DESCRIPTOR' : _RUNMODELFORDATAFRAMEREQUEST_FEATURETYPESENTRY,
    '__module__' : 'ml_worker_pb2'
    # @@protoc_insertion_point(class_scope:worker.RunModelForDataFrameRequest.FeatureTypesEntry)
    })
  ,

  'ColumnTypesEntry' : _reflection.GeneratedProtocolMessageType('ColumnTypesEntry', (_message.Message,), {
    'DESCRIPTOR' : _RUNMODELFORDATAFRAMEREQUEST_COLUMNTYPESENTRY,
    '__module__' : 'ml_worker_pb2'
    # @@protoc_insertion_point(class_scope:worker.RunModelForDataFrameRequest.ColumnTypesEntry)
    })
  ,
  'DESCRIPTOR' : _RUNMODELFORDATAFRAMEREQUEST,
  '__module__' : 'ml_worker_pb2'
  # @@protoc_insertion_point(class_scope:worker.RunModelForDataFrameRequest)
  })
_sym_db.RegisterMessage(RunModelForDataFrameRequest)
_sym_db.RegisterMessage(RunModelForDataFrameRequest.FeatureTypesEntry)
_sym_db.RegisterMessage(RunModelForDataFrameRequest.ColumnTypesEntry)

RunModelRequest = _reflection.GeneratedProtocolMessageType('RunModelRequest', (_message.Message,), {
  'DESCRIPTOR' : _RUNMODELREQUEST,
  '__module__' : 'ml_worker_pb2'
  # @@protoc_insertion_point(class_scope:worker.RunModelRequest)
  })
_sym_db.RegisterMessage(RunModelRequest)

RunModelResponse = _reflection.GeneratedProtocolMessageType('RunModelResponse', (_message.Message,), {
  'DESCRIPTOR' : _RUNMODELRESPONSE,
  '__module__' : 'ml_worker_pb2'
  # @@protoc_insertion_point(class_scope:worker.RunModelResponse)
  })
_sym_db.RegisterMessage(RunModelResponse)

RunTestRequest = _reflection.GeneratedProtocolMessageType('RunTestRequest', (_message.Message,), {
  'DESCRIPTOR' : _RUNTESTREQUEST,
  '__module__' : 'ml_worker_pb2'
  # @@protoc_insertion_point(class_scope:worker.RunTestRequest)
  })
_sym_db.RegisterMessage(RunTestRequest)

SerializedGiskardDataset = _reflection.GeneratedProtocolMessageType('SerializedGiskardDataset', (_message.Message,), {

  'FeatureTypesEntry' : _reflection.GeneratedProtocolMessageType('FeatureTypesEntry', (_message.Message,), {
    'DESCRIPTOR' : _SERIALIZEDGISKARDDATASET_FEATURETYPESENTRY,
    '__module__' : 'ml_worker_pb2'
    # @@protoc_insertion_point(class_scope:worker.SerializedGiskardDataset.FeatureTypesEntry)
    })
  ,

  'ColumnTypesEntry' : _reflection.GeneratedProtocolMessageType('ColumnTypesEntry', (_message.Message,), {
    'DESCRIPTOR' : _SERIALIZEDGISKARDDATASET_COLUMNTYPESENTRY,
    '__module__' : 'ml_worker_pb2'
    # @@protoc_insertion_point(class_scope:worker.SerializedGiskardDataset.ColumnTypesEntry)
    })
  ,
  'DESCRIPTOR' : _SERIALIZEDGISKARDDATASET,
  '__module__' : 'ml_worker_pb2'
  # @@protoc_insertion_point(class_scope:worker.SerializedGiskardDataset)
  })
_sym_db.RegisterMessage(SerializedGiskardDataset)
_sym_db.RegisterMessage(SerializedGiskardDataset.FeatureTypesEntry)
_sym_db.RegisterMessage(SerializedGiskardDataset.ColumnTypesEntry)

RunTestResponse = _reflection.GeneratedProtocolMessageType('RunTestResponse', (_message.Message,), {
  'DESCRIPTOR' : _RUNTESTRESPONSE,
  '__module__' : 'ml_worker_pb2'
  # @@protoc_insertion_point(class_scope:worker.RunTestResponse)
  })
_sym_db.RegisterMessage(RunTestResponse)

Partial_unexpected_counts = _reflection.GeneratedProtocolMessageType('Partial_unexpected_counts', (_message.Message,), {
  'DESCRIPTOR' : _PARTIAL_UNEXPECTED_COUNTS,
  '__module__' : 'ml_worker_pb2'
  # @@protoc_insertion_point(class_scope:worker.Partial_unexpected_counts)
  })
_sym_db.RegisterMessage(Partial_unexpected_counts)

NamedSingleTestResult = _reflection.GeneratedProtocolMessageType('NamedSingleTestResult', (_message.Message,), {
  'DESCRIPTOR' : _NAMEDSINGLETESTRESULT,
  '__module__' : 'ml_worker_pb2'
  # @@protoc_insertion_point(class_scope:worker.NamedSingleTestResult)
  })
_sym_db.RegisterMessage(NamedSingleTestResult)

TestMessage = _reflection.GeneratedProtocolMessageType('TestMessage', (_message.Message,), {
  'DESCRIPTOR' : _TESTMESSAGE,
  '__module__' : 'ml_worker_pb2'
  # @@protoc_insertion_point(class_scope:worker.TestMessage)
  })
_sym_db.RegisterMessage(TestMessage)

SingleTestResult = _reflection.GeneratedProtocolMessageType('SingleTestResult', (_message.Message,), {

  'PropsEntry' : _reflection.GeneratedProtocolMessageType('PropsEntry', (_message.Message,), {
    'DESCRIPTOR' : _SINGLETESTRESULT_PROPSENTRY,
    '__module__' : 'ml_worker_pb2'
    # @@protoc_insertion_point(class_scope:worker.SingleTestResult.PropsEntry)
    })
  ,
  'DESCRIPTOR' : _SINGLETESTRESULT,
  '__module__' : 'ml_worker_pb2'
  # @@protoc_insertion_point(class_scope:worker.SingleTestResult)
  })
_sym_db.RegisterMessage(SingleTestResult)
_sym_db.RegisterMessage(SingleTestResult.PropsEntry)

TestResultMessage = _reflection.GeneratedProtocolMessageType('TestResultMessage', (_message.Message,), {
  'DESCRIPTOR' : _TESTRESULTMESSAGE,
  '__module__' : 'ml_worker_pb2'
  # @@protoc_insertion_point(class_scope:worker.TestResultMessage)
  })
_sym_db.RegisterMessage(TestResultMessage)

SerializedGiskardModel = _reflection.GeneratedProtocolMessageType('SerializedGiskardModel', (_message.Message,), {
  'DESCRIPTOR' : _SERIALIZEDGISKARDMODEL,
  '__module__' : 'ml_worker_pb2'
  # @@protoc_insertion_point(class_scope:worker.SerializedGiskardModel)
  })
_sym_db.RegisterMessage(SerializedGiskardModel)

Chunk = _reflection.GeneratedProtocolMessageType('Chunk', (_message.Message,), {
  'DESCRIPTOR' : _CHUNK,
  '__module__' : 'ml_worker_pb2'
  # @@protoc_insertion_point(class_scope:worker.Chunk)
  })
_sym_db.RegisterMessage(Chunk)

UploadStatus = _reflection.GeneratedProtocolMessageType('UploadStatus', (_message.Message,), {
  'DESCRIPTOR' : _UPLOADSTATUS,
  '__module__' : 'ml_worker_pb2'
  # @@protoc_insertion_point(class_scope:worker.UploadStatus)
  })
_sym_db.RegisterMessage(UploadStatus)

_MLWORKER = DESCRIPTOR.services_by_name['MLWorker']
if _descriptor._USE_C_DESCRIPTORS == False:

  DESCRIPTOR._options = None
  DESCRIPTOR._serialized_options = b'\n\021ai.giskard.workerB\013WorkerProtoP\001\242\002\003WRK'
  _MLWORKERINFO_INSTALLEDPACKAGESENTRY._options = None
  _MLWORKERINFO_INSTALLEDPACKAGESENTRY._serialized_options = b'8\001'
  _EXPLAINREQUEST_COLUMNSENTRY._options = None
  _EXPLAINREQUEST_COLUMNSENTRY._serialized_options = b'8\001'
  _EXPLAINTEXTREQUEST_COLUMNSENTRY._options = None
  _EXPLAINTEXTREQUEST_COLUMNSENTRY._serialized_options = b'8\001'
  _EXPLAINTEXTREQUEST_FEATURETYPESENTRY._options = None
  _EXPLAINTEXTREQUEST_FEATURETYPESENTRY._serialized_options = b'8\001'
  _EXPLAINRESPONSE_EXPLANATION_PERFEATUREENTRY._options = None
  _EXPLAINRESPONSE_EXPLANATION_PERFEATUREENTRY._serialized_options = b'8\001'
  _EXPLAINRESPONSE_EXPLANATIONSENTRY._options = None
  _EXPLAINRESPONSE_EXPLANATIONSENTRY._serialized_options = b'8\001'
  _EXPLAINTEXTRESPONSE_EXPLANATIONSENTRY._options = None
  _EXPLAINTEXTRESPONSE_EXPLANATIONSENTRY._serialized_options = b'8\001'
  _DATAROW_COLUMNSENTRY._options = None
  _DATAROW_COLUMNSENTRY._serialized_options = b'8\001'
  _RUNMODELFORDATAFRAMEREQUEST_FEATURETYPESENTRY._options = None
  _RUNMODELFORDATAFRAMEREQUEST_FEATURETYPESENTRY._serialized_options = b'8\001'
  _RUNMODELFORDATAFRAMEREQUEST_COLUMNTYPESENTRY._options = None
  _RUNMODELFORDATAFRAMEREQUEST_COLUMNTYPESENTRY._serialized_options = b'8\001'
  _SERIALIZEDGISKARDDATASET_FEATURETYPESENTRY._options = None
  _SERIALIZEDGISKARDDATASET_FEATURETYPESENTRY._serialized_options = b'8\001'
  _SERIALIZEDGISKARDDATASET_COLUMNTYPESENTRY._options = None
  _SERIALIZEDGISKARDDATASET_COLUMNTYPESENTRY._serialized_options = b'8\001'
  _SINGLETESTRESULT_PROPSENTRY._options = None
  _SINGLETESTRESULT_PROPSENTRY._serialized_options = b'8\001'
  _TESTMESSAGETYPE._serialized_start=4550
  _TESTMESSAGETYPE._serialized_end=4588
  _UPLOADSTATUSCODE._serialized_start=4590
  _UPLOADSTATUSCODE._serialized_end=4641
  _MLWORKERINFOREQUEST._serialized_start=115
  _MLWORKERINFOREQUEST._serialized_end=159
  _MLWORKERINFO._serialized_start=162
  _MLWORKERINFO._serialized_end=485
  _MLWORKERINFO_INSTALLEDPACKAGESENTRY._serialized_start=429
  _MLWORKERINFO_INSTALLEDPACKAGESENTRY._serialized_end=485
  _PLATFORMINFO._serialized_start=487
  _PLATFORMINFO._serialized_end=601
  _FILEUPLOADREQUEST._serialized_start=603
  _FILEUPLOADREQUEST._serialized_end=713
  _FILEUPLOADMETADATA._serialized_start=715
  _FILEUPLOADMETADATA._serialized_end=749
  _ECHOMSG._serialized_start=751
  _ECHOMSG._serialized_end=773
  _EXPLAINREQUEST._serialized_start=776
  _EXPLAINREQUEST._serialized_end=992
  _EXPLAINREQUEST_COLUMNSENTRY._serialized_start=946
  _EXPLAINREQUEST_COLUMNSENTRY._serialized_end=992
  _EXPLAINTEXTREQUEST._serialized_start=995
  _EXPLAINTEXTREQUEST._serialized_end=1331
  _EXPLAINTEXTREQUEST_COLUMNSENTRY._serialized_start=946
  _EXPLAINTEXTREQUEST_COLUMNSENTRY._serialized_end=992
  _EXPLAINTEXTREQUEST_FEATURETYPESENTRY._serialized_start=1280
  _EXPLAINTEXTREQUEST_FEATURETYPESENTRY._serialized_end=1331
  _EXPLAINRESPONSE._serialized_start=1334
  _EXPLAINRESPONSE._serialized_end=1647
  _EXPLAINRESPONSE_EXPLANATION._serialized_start=1419
  _EXPLAINRESPONSE_EXPLANATION._serialized_end=1557
  _EXPLAINRESPONSE_EXPLANATION_PERFEATUREENTRY._serialized_start=1508
  _EXPLAINRESPONSE_EXPLANATION_PERFEATUREENTRY._serialized_end=1557
  _EXPLAINRESPONSE_EXPLANATIONSENTRY._serialized_start=1559
  _EXPLAINRESPONSE_EXPLANATIONSENTRY._serialized_end=1647
  _EXPLAINTEXTRESPONSE._serialized_start=1650
  _EXPLAINTEXTRESPONSE._serialized_end=1793
  _EXPLAINTEXTRESPONSE_EXPLANATIONSENTRY._serialized_start=1742
  _EXPLAINTEXTRESPONSE_EXPLANATIONSENTRY._serialized_end=1793
  _RUNMODELFORDATAFRAMERESPONSE._serialized_start=1796
  _RUNMODELFORDATAFRAMERESPONSE._serialized_end=1937
  _DATAROW._serialized_start=1939
  _DATAROW._serialized_end=2043
  _DATAROW_COLUMNSENTRY._serialized_start=946
  _DATAROW_COLUMNSENTRY._serialized_end=992
  _DATAFRAME._serialized_start=2045
  _DATAFRAME._serialized_end=2087
  _RUNMODELFORDATAFRAMEREQUEST._serialized_start=2090
  _RUNMODELFORDATAFRAMEREQUEST._serialized_end=2479
  _RUNMODELFORDATAFRAMEREQUEST_FEATURETYPESENTRY._serialized_start=1280
  _RUNMODELFORDATAFRAMEREQUEST_FEATURETYPESENTRY._serialized_end=1331
  _RUNMODELFORDATAFRAMEREQUEST_COLUMNTYPESENTRY._serialized_start=2429
  _RUNMODELFORDATAFRAMEREQUEST_COLUMNTYPESENTRY._serialized_end=2479
  _RUNMODELREQUEST._serialized_start=2481
  _RUNMODELREQUEST._serialized_end=2596
  _RUNMODELRESPONSE._serialized_start=2598
  _RUNMODELRESPONSE._serialized_end=2661
  _RUNTESTREQUEST._serialized_start=2664
  _RUNTESTREQUEST._serialized_end=2850
  _SERIALIZEDGISKARDDATASET._serialized_start=2853
  _SERIALIZEDGISKARDDATASET._serialized_end=3171
  _SERIALIZEDGISKARDDATASET_FEATURETYPESENTRY._serialized_start=1280
  _SERIALIZEDGISKARDDATASET_FEATURETYPESENTRY._serialized_end=1331
  _SERIALIZEDGISKARDDATASET_COLUMNTYPESENTRY._serialized_start=2429
  _SERIALIZEDGISKARDDATASET_COLUMNTYPESENTRY._serialized_end=2479
  _RUNTESTRESPONSE._serialized_start=3173
  _RUNTESTRESPONSE._serialized_end=3204
  _PARTIAL_UNEXPECTED_COUNTS._serialized_start=3206
  _PARTIAL_UNEXPECTED_COUNTS._serialized_end=3263
  _NAMEDSINGLETESTRESULT._serialized_start=3265
  _NAMEDSINGLETESTRESULT._serialized_end=3344
  _TESTMESSAGE._serialized_start=3346
  _TESTMESSAGE._serialized_end=3412
  _SINGLETESTRESULT._serialized_start=3415
  _SINGLETESTRESULT._serialized_end=4207
  _SINGLETESTRESULT_PROPSENTRY._serialized_start=4163
  _SINGLETESTRESULT_PROPSENTRY._serialized_end=4207
  _TESTRESULTMESSAGE._serialized_start=4209
  _TESTRESULTMESSAGE._serialized_end=4276
  _SERIALIZEDGISKARDMODEL._serialized_start=4279
  _SERIALIZEDGISKARDMODEL._serialized_end=4466
  _CHUNK._serialized_start=4468
  _CHUNK._serialized_end=4492
  _UPLOADSTATUS._serialized_start=4494
  _UPLOADSTATUS._serialized_end=4548
  _MLWORKER._serialized_start=4644
  _MLWORKER._serialized_end=5191
# @@protoc_insertion_point(module_scope)
