gimlet-api 0.0.7__py3-none-any.whl → 0.0.9__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {gimlet_api-0.0.7.dist-info → gimlet_api-0.0.9.dist-info}/METADATA +1 -1
- {gimlet_api-0.0.7.dist-info → gimlet_api-0.0.9.dist-info}/RECORD +19 -18
- gml/client.py +9 -8
- gml/compile.py +13 -93
- gml/device.py +5 -7
- gml/hf.py +302 -32
- gml/model.py +2 -1
- gml/pipelines.py +146 -7
- gml/preprocessing.py +2 -1
- gml/proto/src/api/corepb/v1/controlplane_pb2.py +40 -20
- gml/proto/src/api/corepb/v1/cp_edge_pb2.py +43 -49
- gml/proto/src/api/corepb/v1/device_info_pb2.py +19 -7
- gml/proto/src/api/corepb/v1/gem_config_pb2.py +24 -15
- gml/proto/src/api/corepb/v1/mediastream_pb2.py +23 -19
- gml/proto/src/api/corepb/v1/model_exec_pb2.py +131 -112
- gml/proto/src/controlplane/compiler/cpb/v1/cpb_pb2.py +10 -11
- gml/register_submodules.py +134 -0
- gml/tensor.py +6 -1
- {gimlet_api-0.0.7.dist-info → gimlet_api-0.0.9.dist-info}/WHEEL +0 -0
@@ -15,7 +15,7 @@ from gml.proto.gogoproto import gogo_pb2 as gogoproto_dot_gogo__pb2
|
|
15
15
|
from google.protobuf import wrappers_pb2 as google_dot_protobuf_dot_wrappers__pb2
|
16
16
|
|
17
17
|
|
18
|
-
DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n#src/api/corepb/v1/mediastream.proto\x12\x18gml.internal.api.core.v1\x1a\x14gogoproto/gogo.proto\x1a\x1egoogle/protobuf/wrappers.proto\"3\n\x05Label\x12\x14\n\x05label\x18\x01 \x01(\tR\x05label\x12\x14\n\x05score\x18\x02 \x01(\x02R\x05score\"d\n\x14NormalizedCenterRect\x12\x0e\n\x02xc\x18\x01 \x01(\x02R\x02xc\x12\x0e\n\x02yc\x18\x02 \x01(\x02R\x02yc\x12\x14\n\x05width\x18\x03 \x01(\x02R\x05width\x12\x16\n\x06height\x18\x04 \x01(\x02R\x06height\"G\n\x0e\x43lassification\x12\x35\n\x05label\x18\x01 \x03(\x0b\x32\x1f.gml.internal.api.core.v1.LabelR\x05label\"\xcd\x01\n\tDetection\x12\x35\n\x05label\x18\x01 \x03(\x0b\x32\x1f.gml.internal.api.core.v1.LabelR\x05label\x12Q\n\x0c\x62ounding_box\x18\x02 \x01(\x0b\x32..gml.internal.api.core.v1.NormalizedCenterRectR\x0b\x62oundingBox\x12\x36\n\x08track_id\x18\x03 \x01(\x0b\x32\x1b.google.protobuf.Int64ValueR\x07trackId\"R\n\rDetectionList\x12\x41\n\tdetection\x18\x01 \x03(\x0b\x32#.gml.internal.api.core.v1.DetectionR\tdetection\"<\n\x0eTracksMetadata\x12*\n\x11removed_track_ids\x18\x01 \x03(\x03R\x0fremovedTrackIds\"X\n\x10SegmentationMask\x12\x14\n\x05label\x18\x01 \x01(\tR\x05label\x12.\n\x13run_length_encoding\x18\x02 \x03(\x05R\x11runLengthEncoding\"~\n\x0cSegmentation\x12@\n\x05masks\x18\x01 \x03(\x0b\x32*.gml.internal.api.core.v1.SegmentationMaskR\x05masks\x12\x14\n\x05width\x18\x02 \x01(\x03R\x05width\x12\x16\n\x06height\x18\x03 \x01(\x03R\x06height\"8\n\nRegression\x12\x14\n\x05label\x18\x01 \x01(\tR\x05label\x12\x14\n\x05value\x18\x02 \x01(\x01R\x05value\"\xbb\x01\n\x0eImageHistogram\x12\x45\n\x07\x63hannel\x18\x01 \x01(\x0e\x32+.gml.internal.api.core.v1.ImageColorChannelR\x07\x63hannel\x12\x10\n\x03min\x18\x02 \x01(\x01R\x03min\x12\x10\n\x03max\x18\x03 \x01(\x01R\x03max\x12\x10\n\x03num\x18\x04 \x01(\x03R\x03num\x12\x10\n\x03sum\x18\x05 \x01(\x01R\x03sum\x12\x1a\n\x06\x62ucket\x18\x06 \x03(\x03\x42\x02\x10\x01R\x06\x62ucket\"_\n\x13ImageHistogramBatch\x12H\n\nhistograms\x18\x01 \x03(\x0b\x32(.gml.internal.api.core.v1.ImageHistogramR\nhistograms\"e\n\x13ImageQualityMetrics\x12#\n\rbrisque_score\x18\x01 \x01(\x01R\x0c\x62risqueScore\x12)\n\x10\x62lurriness_score\x18\x02 \x01(\x01R\x0f\x62lurrinessScore\"\
|
18
|
+
DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n#src/api/corepb/v1/mediastream.proto\x12\x18gml.internal.api.core.v1\x1a\x14gogoproto/gogo.proto\x1a\x1egoogle/protobuf/wrappers.proto\"3\n\x05Label\x12\x14\n\x05label\x18\x01 \x01(\tR\x05label\x12\x14\n\x05score\x18\x02 \x01(\x02R\x05score\"d\n\x14NormalizedCenterRect\x12\x0e\n\x02xc\x18\x01 \x01(\x02R\x02xc\x12\x0e\n\x02yc\x18\x02 \x01(\x02R\x02yc\x12\x14\n\x05width\x18\x03 \x01(\x02R\x05width\x12\x16\n\x06height\x18\x04 \x01(\x02R\x06height\"G\n\x0e\x43lassification\x12\x35\n\x05label\x18\x01 \x03(\x0b\x32\x1f.gml.internal.api.core.v1.LabelR\x05label\"\xcd\x01\n\tDetection\x12\x35\n\x05label\x18\x01 \x03(\x0b\x32\x1f.gml.internal.api.core.v1.LabelR\x05label\x12Q\n\x0c\x62ounding_box\x18\x02 \x01(\x0b\x32..gml.internal.api.core.v1.NormalizedCenterRectR\x0b\x62oundingBox\x12\x36\n\x08track_id\x18\x03 \x01(\x0b\x32\x1b.google.protobuf.Int64ValueR\x07trackId\"R\n\rDetectionList\x12\x41\n\tdetection\x18\x01 \x03(\x0b\x32#.gml.internal.api.core.v1.DetectionR\tdetection\"<\n\x0eTracksMetadata\x12*\n\x11removed_track_ids\x18\x01 \x03(\x03R\x0fremovedTrackIds\"X\n\x10SegmentationMask\x12\x14\n\x05label\x18\x01 \x01(\tR\x05label\x12.\n\x13run_length_encoding\x18\x02 \x03(\x05R\x11runLengthEncoding\"~\n\x0cSegmentation\x12@\n\x05masks\x18\x01 \x03(\x0b\x32*.gml.internal.api.core.v1.SegmentationMaskR\x05masks\x12\x14\n\x05width\x18\x02 \x01(\x03R\x05width\x12\x16\n\x06height\x18\x03 \x01(\x03R\x06height\"F\n\x16PerPixelRegressionMask\x12\x14\n\x05label\x18\x01 \x01(\tR\x05label\x12\x16\n\x06values\x18\x02 \x03(\x01R\x06values\"\x8a\x01\n\x12PerPixelRegression\x12\x46\n\x05masks\x18\x01 \x03(\x0b\x32\x30.gml.internal.api.core.v1.PerPixelRegressionMaskR\x05masks\x12\x14\n\x05width\x18\x02 \x01(\x03R\x05width\x12\x16\n\x06height\x18\x03 \x01(\x03R\x06height\"8\n\nRegression\x12\x14\n\x05label\x18\x01 \x01(\tR\x05label\x12\x14\n\x05value\x18\x02 \x01(\x01R\x05value\"\xbb\x01\n\x0eImageHistogram\x12\x45\n\x07\x63hannel\x18\x01 \x01(\x0e\x32+.gml.internal.api.core.v1.ImageColorChannelR\x07\x63hannel\x12\x10\n\x03min\x18\x02 \x01(\x01R\x03min\x12\x10\n\x03max\x18\x03 \x01(\x01R\x03max\x12\x10\n\x03num\x18\x04 \x01(\x03R\x03num\x12\x10\n\x03sum\x18\x05 \x01(\x01R\x03sum\x12\x1a\n\x06\x62ucket\x18\x06 \x03(\x03\x42\x02\x10\x01R\x06\x62ucket\"_\n\x13ImageHistogramBatch\x12H\n\nhistograms\x18\x01 \x03(\x0b\x32(.gml.internal.api.core.v1.ImageHistogramR\nhistograms\"e\n\x13ImageQualityMetrics\x12#\n\rbrisque_score\x18\x01 \x01(\x01R\x0c\x62risqueScore\x12)\n\x10\x62lurriness_score\x18\x02 \x01(\x01R\x0f\x62lurrinessScore\"\x91\x04\n\x11ImageOverlayChunk\x12\x31\n\x08\x66rame_ts\x18\x01 \x01(\x03\x42\x16\xe2\xde\x1f\x07\x46rameTS\xea\xde\x1f\x07\x66rameTSR\x07\x66rameTS\x12\x19\n\x03\x65of\x18\x02 \x01(\x08\x42\x07\xe2\xde\x1f\x03\x45OFR\x03\x65of\x12I\n\ndetections\x18\x64 \x01(\x0b\x32\'.gml.internal.api.core.v1.DetectionListH\x00R\ndetections\x12L\n\x0csegmentation\x18\x65 \x01(\x0b\x32&.gml.internal.api.core.v1.SegmentationH\x00R\x0csegmentation\x12P\n\nhistograms\x18\xc8\x01 \x01(\x0b\x32-.gml.internal.api.core.v1.ImageHistogramBatchH\x00R\nhistograms\x12U\n\rimage_quality\x18\xac\x02 \x01(\x0b\x32-.gml.internal.api.core.v1.ImageQualityMetricsH\x00R\x0cimageQuality\x12\x61\n\x14per_pixel_regression\x18\x90\x03 \x01(\x0b\x32,.gml.internal.api.core.v1.PerPixelRegressionH\x00R\x12perPixelRegressionB\t\n\x07overlay\"\x81\x01\n\tH264Chunk\x12\x31\n\x08\x66rame_ts\x18\x01 \x01(\x03\x42\x16\xe2\xde\x1f\x07\x46rameTS\xea\xde\x1f\x07\x66rameTSR\x07\x66rameTS\x12\x19\n\x03\x65of\x18\x02 \x01(\x08\x42\x07\xe2\xde\x1f\x03\x45OFR\x03\x65of\x12&\n\x08nal_data\x18\x03 \x01(\x0c\x42\x0b\xe2\xde\x1f\x07NALDataR\x07nalData\"A\n\x0bVideoHeader\x12\x14\n\x05width\x18\x01 \x01(\x03R\x05width\x12\x16\n\x06height\x18\x02 \x01(\x03R\x06heightJ\x04\x08\x03\x10\x04\":\n\tTextBatch\x12\x12\n\x04text\x18\x01 \x01(\tR\x04text\x12\x19\n\x03\x65os\x18\x02 \x01(\x08\x42\x07\xe2\xde\x1f\x03\x45OSR\x03\x65os*\xac\x01\n\x11ImageColorChannel\x12\x1f\n\x1bIMAGE_COLOR_CHANNEL_UNKNOWN\x10\x00\x12\x1c\n\x18IMAGE_COLOR_CHANNEL_GRAY\x10\x01\x12\x1b\n\x17IMAGE_COLOR_CHANNEL_RED\x10\x02\x12\x1d\n\x19IMAGE_COLOR_CHANNEL_GREEN\x10\x03\x12\x1c\n\x18IMAGE_COLOR_CHANNEL_BLUE\x10\x04\x42/Z-gimletlabs.ai/gimlet/src/api/corepb/v1;corepbb\x06proto3')
|
19
19
|
|
20
20
|
_builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, globals())
|
21
21
|
_builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'src.api.corepb.v1.mediastream_pb2', globals())
|
@@ -37,8 +37,8 @@ if _descriptor._USE_C_DESCRIPTORS == False:
|
|
37
37
|
_H264CHUNK.fields_by_name['nal_data']._serialized_options = b'\342\336\037\007NALData'
|
38
38
|
_TEXTBATCH.fields_by_name['eos']._options = None
|
39
39
|
_TEXTBATCH.fields_by_name['eos']._serialized_options = b'\342\336\037\003EOS'
|
40
|
-
_IMAGECOLORCHANNEL._serialized_start=
|
41
|
-
_IMAGECOLORCHANNEL._serialized_end=
|
40
|
+
_IMAGECOLORCHANNEL._serialized_start=2372
|
41
|
+
_IMAGECOLORCHANNEL._serialized_end=2544
|
42
42
|
_LABEL._serialized_start=119
|
43
43
|
_LABEL._serialized_end=170
|
44
44
|
_NORMALIZEDCENTERRECT._serialized_start=172
|
@@ -55,20 +55,24 @@ if _descriptor._USE_C_DESCRIPTORS == False:
|
|
55
55
|
_SEGMENTATIONMASK._serialized_end=789
|
56
56
|
_SEGMENTATION._serialized_start=791
|
57
57
|
_SEGMENTATION._serialized_end=917
|
58
|
-
|
59
|
-
|
60
|
-
|
61
|
-
|
62
|
-
|
63
|
-
|
64
|
-
|
65
|
-
|
66
|
-
|
67
|
-
|
68
|
-
|
69
|
-
|
70
|
-
|
71
|
-
|
72
|
-
|
73
|
-
|
58
|
+
_PERPIXELREGRESSIONMASK._serialized_start=919
|
59
|
+
_PERPIXELREGRESSIONMASK._serialized_end=989
|
60
|
+
_PERPIXELREGRESSION._serialized_start=992
|
61
|
+
_PERPIXELREGRESSION._serialized_end=1130
|
62
|
+
_REGRESSION._serialized_start=1132
|
63
|
+
_REGRESSION._serialized_end=1188
|
64
|
+
_IMAGEHISTOGRAM._serialized_start=1191
|
65
|
+
_IMAGEHISTOGRAM._serialized_end=1378
|
66
|
+
_IMAGEHISTOGRAMBATCH._serialized_start=1380
|
67
|
+
_IMAGEHISTOGRAMBATCH._serialized_end=1475
|
68
|
+
_IMAGEQUALITYMETRICS._serialized_start=1477
|
69
|
+
_IMAGEQUALITYMETRICS._serialized_end=1578
|
70
|
+
_IMAGEOVERLAYCHUNK._serialized_start=1581
|
71
|
+
_IMAGEOVERLAYCHUNK._serialized_end=2110
|
72
|
+
_H264CHUNK._serialized_start=2113
|
73
|
+
_H264CHUNK._serialized_end=2242
|
74
|
+
_VIDEOHEADER._serialized_start=2244
|
75
|
+
_VIDEOHEADER._serialized_end=2309
|
76
|
+
_TEXTBATCH._serialized_start=2311
|
77
|
+
_TEXTBATCH._serialized_end=2369
|
74
78
|
# @@protoc_insertion_point(module_scope)
|
@@ -17,12 +17,13 @@ try:
|
|
17
17
|
mediapipe_dot_framework_dot_calculator__options__pb2 = mediapipe_dot_framework_dot_calculator__pb2.mediapipe_dot_framework_dot_calculator__options__pb2
|
18
18
|
except AttributeError:
|
19
19
|
mediapipe_dot_framework_dot_calculator__options__pb2 = mediapipe_dot_framework_dot_calculator__pb2.mediapipe.framework.calculator_options_pb2
|
20
|
-
from gml.proto.src.common.typespb import uuid_pb2 as src_dot_common_dot_typespb_dot_uuid__pb2
|
21
20
|
from google.protobuf import timestamp_pb2 as google_dot_protobuf_dot_timestamp__pb2
|
22
21
|
from google.protobuf import wrappers_pb2 as google_dot_protobuf_dot_wrappers__pb2
|
22
|
+
from gml.proto.src.common.typespb import uuid_pb2 as src_dot_common_dot_typespb_dot_uuid__pb2
|
23
|
+
from gml.proto.src.api.corepb.v1 import device_info_pb2 as src_dot_api_dot_corepb_dot_v1_dot_device__info__pb2
|
23
24
|
|
24
25
|
|
25
|
-
DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\"src/api/corepb/v1/model_exec.proto\x12\x18gml.internal.api.core.v1\x1a\x14gogoproto/gogo.proto\x1a$mediapipe/framework/calculator.proto\x1a\x1dsrc/common/typespb/uuid.proto\x1a\x1fgoogle/protobuf/timestamp.proto\x1a\x1egoogle/protobuf/wrappers.proto\"\xa7\x02\n\x0f\x42oundingBoxInfo\x12Z\n\nbox_format\x18\x01 \x01(\x0e\x32;.gml.internal.api.core.v1.BoundingBoxInfo.BoundingBoxFormatR\tboxFormat\x12%\n\x0e\x62ox_normalized\x18\x02 \x01(\x08R\rboxNormalized\"\x90\x01\n\x11\x42oundingBoxFormat\x12\x1f\n\x1b\x42OUNDING_BOX_FORMAT_UNKNOWN\x10\x00\x12\x1e\n\x1a\x42OUNDING_BOX_FORMAT_CXCYWH\x10\x01\x12\x1c\n\x18\x42OUNDING_BOX_FORMAT_YXYX\x10\x02\x12\x1c\n\x18\x42OUNDING_BOX_FORMAT_XYXY\x10\x03\"\xb5\x08\n\x16ImagePreprocessingStep\x12[\n\x04kind\x18\x01 \x01(\x0e\x32G.gml.internal.api.core.v1.ImagePreprocessingStep.ImagePreprocessingKindR\x04kind\x12s\n\x11\x63onversion_params\x18\x02 \x01(\x0b\x32\x46.gml.internal.api.core.v1.ImagePreprocessingStep.ImageConversionParamsR\x10\x63onversionParams\x12g\n\rresize_params\x18\x03 \x01(\x0b\x32\x42.gml.internal.api.core.v1.ImagePreprocessingStep.ImageResizeParamsR\x0cresizeParams\x12v\n\x12standardize_params\x18\x04 \x01(\x0b\x32G.gml.internal.api.core.v1.ImagePreprocessingStep.ImageStandardizeParamsR\x11standardizeParams\x1an\n\x15ImageConversionParams\x12\x14\n\x05scale\x18\x01 \x01(\x08R\x05scale\x12?\n\x0cscale_factor\x18\x02 \x01(\x0b\x32\x1c.google.protobuf.DoubleValueR\x0bscaleFactor\x1a\xed\x01\n\x11ImageResizeParams\x12\x66\n\x04kind\x18\x01 \x01(\x0e\x32R.gml.internal.api.core.v1.ImagePreprocessingStep.ImageResizeParams.ImageResizeKindR\x04kind\"p\n\x0fImageResizeKind\x12\x1d\n\x19IMAGE_RESIZE_KIND_UNKNOWN\x10\x00\x12\x1d\n\x19IMAGE_RESIZE_KIND_STRETCH\x10\x01\x12\x1f\n\x1bIMAGE_RESIZE_KIND_LETTERBOX\x10\x02\x1aH\n\x16ImageStandardizeParams\x12\x14\n\x05means\x18\x01 \x03(\x02R\x05means\x12\x18\n\x07stddevs\x18\x02 \x03(\x02R\x07stddevs\"\xbd\x01\n\x16ImagePreprocessingKind\x12$\n IMAGE_PREPROCESSING_KIND_UNKNOWN\x10\x00\x12.\n*IMAGE_PREPROCESSING_KIND_CONVERT_TO_TENSOR\x10\x01\x12#\n\x1fIMAGE_PREPROCESSING_KIND_RESIZE\x10\x02\x12(\n$IMAGE_PREPROCESSING_KIND_STANDARDIZE\x10\x03\"\x95\x15\n\x12\x44imensionSemantics\x12W\n\x04kind\x18\x01 \x01(\x0e\x32\x43.gml.internal.api.core.v1.DimensionSemantics.DimensionSemanticsKindR\x04kind\x12q\n\x14image_channel_params\x18\x02 \x01(\x0b\x32?.gml.internal.api.core.v1.DimensionSemantics.ImageChannelParamsR\x12imageChannelParams\x12\x86\x01\n\x1b\x64\x65tection_candidates_params\x18\x03 \x01(\x0b\x32\x46.gml.internal.api.core.v1.DimensionSemantics.DetectionCandidatesParamsR\x19\x64\x65tectionCandidatesParams\x12z\n\x17\x64\x65tection_output_params\x18\x04 \x01(\x0b\x32\x42.gml.internal.api.core.v1.DimensionSemantics.DetectionOutputParamsR\x15\x64\x65tectionOutputParams\x12}\n\x18segmentation_mask_params\x18\x05 \x01(\x0b\x32\x43.gml.internal.api.core.v1.DimensionSemantics.SegmentationMaskParamsR\x16segmentationMaskParams\x12j\n\x11regression_params\x18\x06 \x01(\x0b\x32=.gml.internal.api.core.v1.DimensionSemantics.RegressionParamsR\x10regressionParams\x1a\xf4\x01\n\x12ImageChannelParams\x12j\n\x06\x66ormat\x18\x01 \x01(\x0e\x32R.gml.internal.api.core.v1.DimensionSemantics.ImageChannelParams.ImageChannelFormatR\x06\x66ormat\"r\n\x12ImageChannelFormat\x12 \n\x1cIMAGE_CHANNEL_FORMAT_UNKNOWN\x10\x00\x12\x1c\n\x18IMAGE_CHANNEL_FORMAT_RGB\x10\x01\x12\x1c\n\x18IMAGE_CHANNEL_FORMAT_BGR\x10\x02\x1a=\n\x19\x44\x65tectionCandidatesParams\x12 \n\x0cis_nms_boxes\x18\x01 \x01(\x08R\nisNmsBoxes\x1a\x8b\x04\n\x15\x44\x65tectionOutputParams\x12\x7f\n\x14\x62ox_coordinate_range\x18\x01 \x01(\x0b\x32M.gml.internal.api.core.v1.DimensionSemantics.DetectionOutputParams.IndexRangeR\x12\x62oxCoordinateRange\x12H\n\nbox_format\x18\x02 \x01(\x0b\x32).gml.internal.api.core.v1.BoundingBoxInfoR\tboxFormat\x12\x30\n\x14\x62ox_confidence_index\x18\x03 \x01(\x05R\x12\x62oxConfidenceIndex\x12\x1f\n\x0b\x63lass_index\x18\x04 \x01(\x05R\nclassIndex\x12p\n\x0cscores_range\x18\x05 \x01(\x0b\x32M.gml.internal.api.core.v1.DimensionSemantics.DetectionOutputParams.IndexRangeR\x0bscoresRange\x12*\n\x11scores_are_logits\x18\x06 \x01(\x08R\x0fscoresAreLogits\x1a\x36\n\nIndexRange\x12\x14\n\x05start\x18\x01 \x01(\x05R\x05start\x12\x12\n\x04size\x18\x02 \x01(\x05R\x04size\x1a\xd1\x02\n\x16SegmentationMaskParams\x12l\n\x04kind\x18\x01 \x01(\x0e\x32X.gml.internal.api.core.v1.DimensionSemantics.SegmentationMaskParams.SegmentationMaskKindR\x04kind\"\xc8\x01\n\x14SegmentationMaskKind\x12\"\n\x1eSEGMENTATION_MASK_KIND_UNKNOWN\x10\x00\x12&\n\"SEGMENTATION_MASK_KIND_CLASS_LABEL\x10\x01\x12\x1f\n\x1bSEGMENTATION_MASK_KIND_BOOL\x10\x02\x12 \n\x1cSEGMENTATION_MASK_KIND_SCORE\x10\x03\x12!\n\x1dSEGMENTATION_MASK_KIND_LOGITS\x10\x04\x1a\\\n\x10RegressionParams\x12\x14\n\x05label\x18\x01 \x01(\tR\x05label\x12\x32\n\x05scale\x18\x02 \x01(\x0b\x32\x1c.google.protobuf.DoubleValueR\x05scale\"\xcc\x05\n\x16\x44imensionSemanticsKind\x12$\n DIMENSION_SEMANTICS_KIND_UNKNOWN\x10\x00\x12\"\n\x1e\x44IMENSION_SEMANTICS_KIND_BATCH\x10\x01\x12#\n\x1f\x44IMENSION_SEMANTICS_KIND_IGNORE\x10\x02\x12*\n&DIMENSION_SEMANTICS_KIND_IMAGE_CHANNEL\x10\x03\x12)\n%DIMENSION_SEMANTICS_KIND_IMAGE_HEIGHT\x10\x04\x12(\n$DIMENSION_SEMANTICS_KIND_IMAGE_WIDTH\x10\x05\x12\x31\n-DIMENSION_SEMANTICS_KIND_DETECTION_CANDIDATES\x10\x06\x12-\n)DIMENSION_SEMANTICS_KIND_DETECTION_OUTPUT\x10\x07\x12)\n%DIMENSION_SEMANTICS_KIND_CLASS_SCORES\x10\x08\x12\x36\n2DIMENSION_SEMANTICS_KIND_SEGMENTATION_MASK_CHANNEL\x10\t\x12)\n%DIMENSION_SEMANTICS_KIND_CLASS_LABELS\x10\n\x12-\n)DIMENSION_SEMANTICS_KIND_REGRESSION_VALUE\x10\x0b\x12#\n\x1f\x44IMENSION_SEMANTICS_KIND_TOKENS\x10\x0c\x12+\n\'DIMENSION_SEMANTICS_KIND_ATTENTION_MASK\x10\r\x12)\n%DIMENSION_SEMANTICS_KIND_VOCAB_LOGITS\x10\x0e\x12&\n\"DIMENSION_SEMANTICS_KIND_EMBEDDING\x10\x0f\"\xe9\x02\n\x0fTensorSemantics\x12L\n\ndimensions\x18\x01 \x03(\x0b\x32,.gml.internal.api.core.v1.DimensionSemanticsR\ndimensions\x12Q\n\x04kind\x18\x02 \x01(\x0e\x32=.gml.internal.api.core.v1.TensorSemantics.TensorSemanticsKindR\x04kind\"\xb4\x01\n\x13TensorSemanticsKind\x12!\n\x1dTENSOR_SEMANTICS_KIND_UNKNOWN\x10\x00\x12 \n\x1cTENSOR_SEMANTICS_KIND_UNUSED\x10\x01\x12#\n\x1fTENSOR_SEMANTICS_KIND_DIMENSION\x10\x02\x12\x33\n/TENSOR_SEMANTICS_KIND_ATTENTION_KEY_VALUE_CACHE\x10\x03\"6\n\x10GenerationConfig\x12\"\n\reos_token_ids\x18\x01 \x03(\x03R\x0b\x65osTokenIds\"\xc7\n\n\tModelInfo\x12\x12\n\x04name\x18\x01 \x01(\tR\x04name\x12\x41\n\x04kind\x18\x02 \x01(\x0e\x32-.gml.internal.api.core.v1.ModelInfo.ModelKindR\x04kind\x12N\n\x06\x66ormat\x18\x03 \x01(\x0e\x32\x36.gml.internal.api.core.v1.ModelInfo.ModelStorageFormatR\x06\x66ormat\x12T\n\x0b\x66ile_assets\x18\x04 \x03(\x0b\x32\x33.gml.internal.api.core.v1.ModelInfo.FileAssetsEntryR\nfileAssets\x12_\n\x16input_tensor_semantics\x18\x05 \x03(\x0b\x32).gml.internal.api.core.v1.TensorSemanticsR\x14inputTensorSemantics\x12\x61\n\x17output_tensor_semantics\x18\x06 \x03(\x0b\x32).gml.internal.api.core.v1.TensorSemanticsR\x15outputTensorSemantics\x12!\n\x0c\x63lass_labels\x18\x64 \x03(\tR\x0b\x63lassLabels\x12\x46\n\tbbox_info\x18\x65 \x01(\x0b\x32).gml.internal.api.core.v1.BoundingBoxInfoR\x08\x62\x62oxInfo\x12l\n\x19image_preprocessing_steps\x18\x66 \x03(\x0b\x32\x30.gml.internal.api.core.v1.ImagePreprocessingStepR\x17imagePreprocessingSteps\x12W\n\x11generation_config\x18g \x01(\x0b\x32*.gml.internal.api.core.v1.GenerationConfigR\x10generationConfig\x1aN\n\x0f\x46ileAssetsEntry\x12\x10\n\x03key\x18\x01 \x01(\tR\x03key\x12%\n\x05value\x18\x02 \x01(\x0b\x32\x0f.gml.types.UUIDR\x05value:\x02\x38\x01\"\xc0\x01\n\tModelKind\x12\x16\n\x12MODEL_KIND_UNKNOWN\x10\x00\x12\x14\n\x10MODEL_KIND_TORCH\x10\x01\x12\x1a\n\x16MODEL_KIND_TORCHSCRIPT\x10\x02\x12\x13\n\x0fMODEL_KIND_ONNX\x10\x03\x12\x15\n\x11MODEL_KIND_TFLITE\x10\x04\x12\x17\n\x13MODEL_KIND_OPENVINO\x10\x05\x12$\n MODEL_KIND_HUGGINGFACE_TOKENIZER\x10\x06\"\xb3\x02\n\x12ModelStorageFormat\x12 \n\x1cMODEL_STORAGE_FORMAT_UNKNOWN\x10\x00\x12&\n\"MODEL_STORAGE_FORMAT_MLIR_BYTECODE\x10\x01\x12\"\n\x1eMODEL_STORAGE_FORMAT_MLIR_TEXT\x10\x02\x12!\n\x1dMODEL_STORAGE_FORMAT_PROTOBUF\x10\x03\x12#\n\x1fMODEL_STORAGE_FORMAT_PROTO_TEXT\x10\x04\x12#\n\x1fMODEL_STORAGE_FORMAT_FLATBUFFER\x10\x05\x12!\n\x1dMODEL_STORAGE_FORMAT_OPENVINO\x10\x06\x12\x1f\n\x1bMODEL_STORAGE_FORMAT_OPAQUE\x10\x07\"\xa8\x02\n\x04Node\x12\x12\n\x04name\x18\x01 \x01(\tR\x04name\x12\x45\n\x04kind\x18\x02 \x01(\x0e\x32\x31.gml.internal.api.core.v1.LogicalPipelineNodeKindR\x04kind\x12H\n\nattributes\x18\x03 \x03(\x0b\x32(.gml.internal.api.core.v1.NodeAttributesR\nattributes\x12;\n\x06inputs\x18\x04 \x03(\x0b\x32#.gml.internal.api.core.v1.NodeInputR\x06inputs\x12>\n\x07outputs\x18\x05 \x03(\x0b\x32$.gml.internal.api.core.v1.NodeOutputR\x07outputs\"\x1e\n\x08ParamRef\x12\x12\n\x04name\x18\x01 \x01(\tR\x04name\"\xab\x04\n\x05Value\x12!\n\x0bstring_data\x18\x01 \x01(\tH\x00R\nstringData\x12\x1f\n\nint64_data\x18\x02 \x01(\x03H\x00R\tint64Data\x12!\n\x0b\x64ouble_data\x18\x03 \x01(\x01H\x00R\ndoubleData\x12\x1d\n\tbool_data\x18\x04 \x01(\x08H\x00R\x08\x62oolData\x12I\n\x0blambda_data\x18\x05 \x01(\x0b\x32&.gml.internal.api.core.v1.Value.LambdaH\x00R\nlambdaData\x12I\n\nmodel_data\x18\x06 \x01(\x0b\x32(.gml.internal.api.core.v1.Value.ModelRefH\x00R\tmodelData\x12\x43\n\nparam_data\x18\x07 \x01(\x0b\x32\".gml.internal.api.core.v1.ParamRefH\x00R\tparamData\x1aG\n\x08ModelRef\x12\x12\n\x04name\x18\x01 \x01(\tR\x04name\x12\'\n\x02id\x18\x02 \x01(\x0b\x32\x0f.gml.types.UUIDB\x06\xe2\xde\x1f\x02IDR\x02id\x1ap\n\x06Lambda\x12\x16\n\x06inputs\x18\x01 \x03(\tR\x06inputs\x12\x18\n\x07outputs\x18\x02 \x03(\tR\x07outputs\x12\x34\n\x05nodes\x18\x03 \x03(\x0b\x32\x1e.gml.internal.api.core.v1.NodeR\x05nodesB\x06\n\x04\x64\x61ta\"[\n\x0eNodeAttributes\x12\x12\n\x04name\x18\x01 \x01(\tR\x04name\x12\x35\n\x05value\x18\x02 \x01(\x0b\x32\x1f.gml.internal.api.core.v1.ValueR\x05value\"\x9c\x03\n\tNodeInput\x12\x12\n\x04name\x18\x01 \x01(\tR\x04name\x12\x45\n\x0bparam_value\x18\x02 \x01(\x0b\x32\".gml.internal.api.core.v1.ParamRefH\x00R\nparamValue\x12_\n\x11node_output_value\x18\x03 \x01(\x0b\x32\x31.gml.internal.api.core.v1.NodeInput.NodeOutputRefH\x00R\x0fnodeOutputValue\x12\x62\n\x12lambda_input_value\x18\x04 \x01(\x0b\x32\x32.gml.internal.api.core.v1.NodeInput.LambdaInputRefH\x00R\x10lambdaInputValue\x1a@\n\rNodeOutputRef\x12\x1b\n\tnode_name\x18\x01 \x01(\tR\x08nodeName\x12\x12\n\x04name\x18\x02 \x01(\tR\x04name\x1a$\n\x0eLambdaInputRef\x12\x12\n\x04name\x18\x01 \x01(\tR\x04nameB\x07\n\x05value\" \n\nNodeOutput\x12\x12\n\x04name\x18\x01 \x01(\tR\x04name\"a\n\x05Param\x12\x12\n\x04name\x18\x01 \x01(\tR\x04name\x12\x44\n\rdefault_value\x18\x02 \x01(\x0b\x32\x1f.gml.internal.api.core.v1.ValueR\x0c\x64\x65\x66\x61ultValue\"\xbc\x01\n\x0fLogicalPipeline\x12\x37\n\x06params\x18\x01 \x03(\x0b\x32\x1f.gml.internal.api.core.v1.ParamR\x06params\x12\x34\n\x05nodes\x18\x02 \x03(\x0b\x32\x1e.gml.internal.api.core.v1.NodeR\x05nodes\x12:\n\tmodel_ids\x18\x03 \x03(\x0b\x32\x0f.gml.types.UUIDB\x0c\xe2\xde\x1f\x08ModelIDsR\x08modelIds\"\xab\x04\n\x12PipelineDeployment\x12\'\n\x02id\x18\x01 \x01(\x0b\x32\x0f.gml.types.UUIDB\x06\xe2\xde\x1f\x02IDR\x02id\x12V\n\x13logical_pipeline_id\x18\x02 \x01(\x0b\x32\x0f.gml.types.UUIDB\x15\xe2\xde\x1f\x11LogicalPipelineIDR\x11logicalPipelineId\x12\x37\n\x08\x66leet_id\x18\x03 \x01(\x0b\x32\x0f.gml.types.UUIDB\x0b\xe2\xde\x1f\x07\x46leetIDR\x07\x66leetId\x12\x39\n\ncreated_at\x18\x04 \x01(\x0b\x32\x1a.google.protobuf.TimestampR\tcreatedAt\x12\x39\n\nupdated_at\x18\x05 \x01(\x0b\x32\x1a.google.protobuf.TimestampR\tupdatedAt\x12\x18\n\x07version\x18\x06 \x01(\x03R\x07version\x12\x44\n\x04spec\x18\x07 \x01(\x0b\x32\x30.gml.internal.api.core.v1.PipelineDeploymentSpecR\x04spec\x12J\n\x06status\x18\x08 \x01(\x0b\x32\x32.gml.internal.api.core.v1.PipelineDeploymentStatusR\x06status\x12\x39\n\ndeleted_at\x18\t \x01(\x0b\x32\x1a.google.protobuf.TimestampR\tdeletedAt\"W\n\x16PipelineDeploymentSpec\x12=\n\x05state\x18\x01 \x01(\x0e\x32\'.gml.internal.api.core.v1.PipelineStateR\x05state\"q\n\x18PipelineDeploymentStatus\x12=\n\x05state\x18\x01 \x01(\x0e\x32\'.gml.internal.api.core.v1.PipelineStateR\x05state\x12\x16\n\x06reason\x18\x02 \x01(\tR\x06reason\"\xdc\x03\n\x10PhysicalPipeline\x12\'\n\x02id\x18\x01 \x01(\x0b\x32\x0f.gml.types.UUIDB\x06\xe2\xde\x1f\x02IDR\x02id\x12_\n\x16pipeline_deployment_id\x18\x02 \x01(\x0b\x32\x0f.gml.types.UUIDB\x18\xe2\xde\x1f\x14PipelineDeploymentIDR\x14pipelineDeploymentId\x12:\n\tdevice_id\x18\x03 \x01(\x0b\x32\x0f.gml.types.UUIDB\x0c\xe2\xde\x1f\x08\x44\x65viceIDR\x08\x64\x65viceId\x12\x39\n\ncreated_at\x18\x04 \x01(\x0b\x32\x1a.google.protobuf.TimestampR\tcreatedAt\x12\x39\n\nupdated_at\x18\x05 \x01(\x0b\x32\x1a.google.protobuf.TimestampR\tupdatedAt\x12\x42\n\x04spec\x18\x06 \x01(\x0b\x32..gml.internal.api.core.v1.PhysicalPipelineSpecR\x04spec\x12H\n\x06status\x18\x07 \x01(\x0b\x32\x30.gml.internal.api.core.v1.PhysicalPipelineStatusR\x06status\"\xfa\x01\n\x14PhysicalPipelineSpec\x12=\n\x05state\x18\x01 \x01(\x0e\x32\'.gml.internal.api.core.v1.PipelineStateR\x05state\x12\x18\n\x07version\x18\x02 \x01(\x03R\x07version\x12=\n\x05graph\x18\x03 \x01(\x0b\x32\'.gml.internal.api.core.v1.ExecutionSpecR\x05graph\x12\x18\n\x07runtime\x18\x04 \x01(\tR\x07runtime\x12\x30\n\x14\x64\x65vice_resource_hash\x18\x05 \x01(\tR\x12\x64\x65viceResourceHash\"\xd5\x01\n\x16PhysicalPipelineStatus\x12=\n\x05state\x18\x01 \x01(\x0e\x32\'.gml.internal.api.core.v1.PipelineStateR\x05state\x12\x18\n\x07version\x18\x02 \x01(\x03R\x07version\x12\x18\n\x07runtime\x18\x03 \x01(\tR\x07runtime\x12\x16\n\x06reason\x18\x04 \x01(\tR\x06reason\x12\x30\n\x14\x64\x65vice_resource_hash\x18\x05 \x01(\tR\x12\x64\x65viceResourceHash\"\x84\x01\n\x0c\x46ileResource\x12\x34\n\x07\x66ile_id\x18\x01 \x01(\x0b\x32\x0f.gml.types.UUIDB\n\xe2\xde\x1f\x06\x46ileIDR\x06\x66ileId\x12\x1d\n\nsize_bytes\x18\x02 \x01(\x04R\tsizeBytes\x12\x1f\n\x0bsha256_hash\x18\x03 \x01(\tR\nsha256Hash\"\x8b\x01\n\rExecutionSpec\x12\x36\n\x05graph\x18\x01 \x01(\x0b\x32 .mediapipe.CalculatorGraphConfigR\x05graph\x12\x42\n\nmodel_spec\x18\x02 \x03(\x0b\x32#.gml.internal.api.core.v1.ModelSpecR\tmodelSpec\"\\\n\nNamedAsset\x12\x12\n\x04name\x18\x01 \x01(\tR\x04name\x12:\n\x04\x66ile\x18\x02 \x01(\x0b\x32&.gml.internal.api.core.v1.FileResourceR\x04\x66ile\"\xd0\x03\n\tModelSpec\x12\x12\n\x04name\x18\x01 \x01(\tR\x04name\x12\x33\n\ronnx_blob_key\x18\x02 \x01(\tB\x0f\xe2\xde\x1f\x0bONNXBlobKeyR\x0bonnxBlobKey\x12Q\n\tonnx_file\x18\x03 \x01(\x0b\x32&.gml.internal.api.core.v1.FileResourceB\x0c\xe2\xde\x1f\x08ONNXFileR\x08onnxFile\x12\x45\n\x0bnamed_asset\x18\x04 \x03(\x0b\x32$.gml.internal.api.core.v1.NamedAssetR\nnamedAsset\x12\x18\n\x07runtime\x18\x32 \x01(\tR\x07runtime\x12\x62\n\rtensorrt_spec\x18\x64 \x01(\x0b\x32+.gml.internal.api.core.v1.TensorRTModelSpecB\x10\xe2\xde\x1f\x0cTensorRTSpecR\x0ctensorrtSpec\x12\x62\n\ropenvino_spec\x18\x65 \x01(\x0b\x32+.gml.internal.api.core.v1.OpenVINOModelSpecB\x10\xe2\xde\x1f\x0cOpenVINOSpecR\x0copenvinoSpec\"\xfe\x01\n\x11TensorRTModelSpec\x12h\n\x14optimization_profile\x18\x01 \x03(\x0b\x32\x35.gml.internal.api.core.v1.TensorRTOptimizationProfileR\x13optimizationProfile\x12&\n\x0f\x65ngine_blob_key\x18\x02 \x01(\tR\rengineBlobKey\x12W\n\x0fmem_pool_limits\x18\x03 \x01(\x0b\x32/.gml.internal.api.core.v1.TensorRTMemPoolLimitsR\rmemPoolLimits\"\x7f\n\x1bTensorRTOptimizationProfile\x12`\n\x12tensor_shape_range\x18\x01 \x03(\x0b\x32\x32.gml.internal.api.core.v1.TensorRTTensorShapeRangeR\x10tensorShapeRange\"M\n\x18TensorRTTensorShapeRange\x12\x1f\n\x0btensor_name\x18\x01 \x01(\tR\ntensorName\x12\x10\n\x03\x64im\x18\x02 \x03(\x05R\x03\x64im\"5\n\x15TensorRTMemPoolLimits\x12\x1c\n\tworkspace\x18\x01 \x01(\x03R\tworkspace\"\x8e\x01\n\x11OpenVINOModelSpec\x12X\n\x0binput_shape\x18\x01 \x03(\x0b\x32\x37.gml.internal.api.core.v1.OpenVINOModelSpec.TensorShapeR\ninputShape\x1a\x1f\n\x0bTensorShape\x12\x10\n\x03\x64im\x18\x01 \x03(\x05R\x03\x64im*\xec\x07\n\x17LogicalPipelineNodeKind\x12&\n\"LOGICAL_PIPELINE_NODE_KIND_UNKNOWN\x10\x00\x12,\n(LOGICAL_PIPELINE_NODE_KIND_CAMERA_SOURCE\x10\n\x12\x31\n-LOGICAL_PIPELINE_NODE_KIND_TEXT_STREAM_SOURCE\x10\x0b\x12&\n!LOGICAL_PIPELINE_NODE_KIND_DETECT\x10\xe8\x07\x12(\n#LOGICAL_PIPELINE_NODE_KIND_CLASSIFY\x10\xe9\x07\x12\'\n\"LOGICAL_PIPELINE_NODE_KIND_SEGMENT\x10\xea\x07\x12\x33\n.LOGICAL_PIPELINE_NODE_KIND_MULTI_PURPOSE_MODEL\x10\xeb\x07\x12\'\n\"LOGICAL_PIPELINE_NODE_KIND_REGRESS\x10\xec\x07\x12%\n LOGICAL_PIPELINE_NODE_KIND_TRACK\x10\xed\x07\x12/\n*LOGICAL_PIPELINE_NODE_KIND_GENERATE_TOKENS\x10\xee\x07\x12(\n#LOGICAL_PIPELINE_NODE_KIND_TOKENIZE\x10\xef\x07\x12*\n%LOGICAL_PIPELINE_NODE_KIND_DETOKENIZE\x10\xf0\x07\x12%\n LOGICAL_PIPELINE_NODE_KIND_EMBED\x10\xf1\x07\x12\x35\n0LOGICAL_PIPELINE_NODE_KIND_TEMPLATE_CHAT_MESSAGE\x10\xf2\x07\x12,\n\'LOGICAL_PIPELINE_NODE_KIND_FOR_EACH_ROI\x10\xdf\x0b\x12-\n(LOGICAL_PIPELINE_NODE_KIND_VECTOR_SEARCH\x10\xe0\x0b\x12\x31\n,LOGICAL_PIPELINE_NODE_KIND_VIDEO_STREAM_SINK\x10\xd0\x0f\x12\x37\n2LOGICAL_PIPELINE_NODE_KIND_DETECTIONS_METRICS_SINK\x10\xd1\x0f\x12\x34\n/LOGICAL_PIPELINE_NODE_KIND_LATENCY_METRICS_SINK\x10\xd2\x0f\x12\x32\n-LOGICAL_PIPELINE_NODE_KIND_FRAME_METRICS_SINK\x10\xd3\x0f\x12\x30\n+LOGICAL_PIPELINE_NODE_KIND_TEXT_STREAM_SINK\x10\xd4\x0f*\xd7\x01\n\rPipelineState\x12\x1a\n\x16PIPELINE_STATE_UNKNOWN\x10\x00\x12\x1a\n\x16PIPELINE_STATE_PENDING\x10\x01\x12\x18\n\x14PIPELINE_STATE_READY\x10\x02\x12\x1a\n\x16PIPELINE_STATE_RUNNING\x10\x03\x12\x1e\n\x1aPIPELINE_STATE_TERMINATING\x10\x04\x12\x1d\n\x19PIPELINE_STATE_TERMINATED\x10\x05\x12\x19\n\x15PIPELINE_STATE_FAILED\x10\x06\x42/Z-gimletlabs.ai/gimlet/src/api/corepb/v1;corepbb\x06proto3')
|
26
|
+
DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\"src/api/corepb/v1/model_exec.proto\x12\x18gml.internal.api.core.v1\x1a\x14gogoproto/gogo.proto\x1a$mediapipe/framework/calculator.proto\x1a\x1fgoogle/protobuf/timestamp.proto\x1a\x1egoogle/protobuf/wrappers.proto\x1a\x1dsrc/common/typespb/uuid.proto\x1a#src/api/corepb/v1/device_info.proto\"\xa7\x02\n\x0f\x42oundingBoxInfo\x12Z\n\nbox_format\x18\x01 \x01(\x0e\x32;.gml.internal.api.core.v1.BoundingBoxInfo.BoundingBoxFormatR\tboxFormat\x12%\n\x0e\x62ox_normalized\x18\x02 \x01(\x08R\rboxNormalized\"\x90\x01\n\x11\x42oundingBoxFormat\x12\x1f\n\x1b\x42OUNDING_BOX_FORMAT_UNKNOWN\x10\x00\x12\x1e\n\x1a\x42OUNDING_BOX_FORMAT_CXCYWH\x10\x01\x12\x1c\n\x18\x42OUNDING_BOX_FORMAT_YXYX\x10\x02\x12\x1c\n\x18\x42OUNDING_BOX_FORMAT_XYXY\x10\x03\"\xb5\x08\n\x16ImagePreprocessingStep\x12[\n\x04kind\x18\x01 \x01(\x0e\x32G.gml.internal.api.core.v1.ImagePreprocessingStep.ImagePreprocessingKindR\x04kind\x12s\n\x11\x63onversion_params\x18\x02 \x01(\x0b\x32\x46.gml.internal.api.core.v1.ImagePreprocessingStep.ImageConversionParamsR\x10\x63onversionParams\x12g\n\rresize_params\x18\x03 \x01(\x0b\x32\x42.gml.internal.api.core.v1.ImagePreprocessingStep.ImageResizeParamsR\x0cresizeParams\x12v\n\x12standardize_params\x18\x04 \x01(\x0b\x32G.gml.internal.api.core.v1.ImagePreprocessingStep.ImageStandardizeParamsR\x11standardizeParams\x1an\n\x15ImageConversionParams\x12\x14\n\x05scale\x18\x01 \x01(\x08R\x05scale\x12?\n\x0cscale_factor\x18\x02 \x01(\x0b\x32\x1c.google.protobuf.DoubleValueR\x0bscaleFactor\x1a\xed\x01\n\x11ImageResizeParams\x12\x66\n\x04kind\x18\x01 \x01(\x0e\x32R.gml.internal.api.core.v1.ImagePreprocessingStep.ImageResizeParams.ImageResizeKindR\x04kind\"p\n\x0fImageResizeKind\x12\x1d\n\x19IMAGE_RESIZE_KIND_UNKNOWN\x10\x00\x12\x1d\n\x19IMAGE_RESIZE_KIND_STRETCH\x10\x01\x12\x1f\n\x1bIMAGE_RESIZE_KIND_LETTERBOX\x10\x02\x1aH\n\x16ImageStandardizeParams\x12\x14\n\x05means\x18\x01 \x03(\x02R\x05means\x12\x18\n\x07stddevs\x18\x02 \x03(\x02R\x07stddevs\"\xbd\x01\n\x16ImagePreprocessingKind\x12$\n IMAGE_PREPROCESSING_KIND_UNKNOWN\x10\x00\x12.\n*IMAGE_PREPROCESSING_KIND_CONVERT_TO_TENSOR\x10\x01\x12#\n\x1fIMAGE_PREPROCESSING_KIND_RESIZE\x10\x02\x12(\n$IMAGE_PREPROCESSING_KIND_STANDARDIZE\x10\x03\"\xba\x15\n\x12\x44imensionSemantics\x12W\n\x04kind\x18\x01 \x01(\x0e\x32\x43.gml.internal.api.core.v1.DimensionSemantics.DimensionSemanticsKindR\x04kind\x12q\n\x14image_channel_params\x18\x02 \x01(\x0b\x32?.gml.internal.api.core.v1.DimensionSemantics.ImageChannelParamsR\x12imageChannelParams\x12\x86\x01\n\x1b\x64\x65tection_candidates_params\x18\x03 \x01(\x0b\x32\x46.gml.internal.api.core.v1.DimensionSemantics.DetectionCandidatesParamsR\x19\x64\x65tectionCandidatesParams\x12z\n\x17\x64\x65tection_output_params\x18\x04 \x01(\x0b\x32\x42.gml.internal.api.core.v1.DimensionSemantics.DetectionOutputParamsR\x15\x64\x65tectionOutputParams\x12}\n\x18segmentation_mask_params\x18\x05 \x01(\x0b\x32\x43.gml.internal.api.core.v1.DimensionSemantics.SegmentationMaskParamsR\x16segmentationMaskParams\x12j\n\x11regression_params\x18\x06 \x01(\x0b\x32=.gml.internal.api.core.v1.DimensionSemantics.RegressionParamsR\x10regressionParams\x1a\x99\x02\n\x12ImageChannelParams\x12j\n\x06\x66ormat\x18\x01 \x01(\x0e\x32R.gml.internal.api.core.v1.DimensionSemantics.ImageChannelParams.ImageChannelFormatR\x06\x66ormat\"\x96\x01\n\x12ImageChannelFormat\x12 \n\x1cIMAGE_CHANNEL_FORMAT_UNKNOWN\x10\x00\x12\x1c\n\x18IMAGE_CHANNEL_FORMAT_RGB\x10\x01\x12\x1c\n\x18IMAGE_CHANNEL_FORMAT_BGR\x10\x02\x12\"\n\x1eIMAGE_CHANNEL_FORMAT_GRAYSCALE\x10\x03\x1a=\n\x19\x44\x65tectionCandidatesParams\x12 \n\x0cis_nms_boxes\x18\x01 \x01(\x08R\nisNmsBoxes\x1a\x8b\x04\n\x15\x44\x65tectionOutputParams\x12\x7f\n\x14\x62ox_coordinate_range\x18\x01 \x01(\x0b\x32M.gml.internal.api.core.v1.DimensionSemantics.DetectionOutputParams.IndexRangeR\x12\x62oxCoordinateRange\x12H\n\nbox_format\x18\x02 \x01(\x0b\x32).gml.internal.api.core.v1.BoundingBoxInfoR\tboxFormat\x12\x30\n\x14\x62ox_confidence_index\x18\x03 \x01(\x05R\x12\x62oxConfidenceIndex\x12\x1f\n\x0b\x63lass_index\x18\x04 \x01(\x05R\nclassIndex\x12p\n\x0cscores_range\x18\x05 \x01(\x0b\x32M.gml.internal.api.core.v1.DimensionSemantics.DetectionOutputParams.IndexRangeR\x0bscoresRange\x12*\n\x11scores_are_logits\x18\x06 \x01(\x08R\x0fscoresAreLogits\x1a\x36\n\nIndexRange\x12\x14\n\x05start\x18\x01 \x01(\x05R\x05start\x12\x12\n\x04size\x18\x02 \x01(\x05R\x04size\x1a\xd1\x02\n\x16SegmentationMaskParams\x12l\n\x04kind\x18\x01 \x01(\x0e\x32X.gml.internal.api.core.v1.DimensionSemantics.SegmentationMaskParams.SegmentationMaskKindR\x04kind\"\xc8\x01\n\x14SegmentationMaskKind\x12\"\n\x1eSEGMENTATION_MASK_KIND_UNKNOWN\x10\x00\x12&\n\"SEGMENTATION_MASK_KIND_CLASS_LABEL\x10\x01\x12\x1f\n\x1bSEGMENTATION_MASK_KIND_BOOL\x10\x02\x12 \n\x1cSEGMENTATION_MASK_KIND_SCORE\x10\x03\x12!\n\x1dSEGMENTATION_MASK_KIND_LOGITS\x10\x04\x1a\\\n\x10RegressionParams\x12\x14\n\x05label\x18\x01 \x01(\tR\x05label\x12\x32\n\x05scale\x18\x02 \x01(\x0b\x32\x1c.google.protobuf.DoubleValueR\x05scale\"\xcc\x05\n\x16\x44imensionSemanticsKind\x12$\n DIMENSION_SEMANTICS_KIND_UNKNOWN\x10\x00\x12\"\n\x1e\x44IMENSION_SEMANTICS_KIND_BATCH\x10\x01\x12#\n\x1f\x44IMENSION_SEMANTICS_KIND_IGNORE\x10\x02\x12*\n&DIMENSION_SEMANTICS_KIND_IMAGE_CHANNEL\x10\x03\x12)\n%DIMENSION_SEMANTICS_KIND_IMAGE_HEIGHT\x10\x04\x12(\n$DIMENSION_SEMANTICS_KIND_IMAGE_WIDTH\x10\x05\x12\x31\n-DIMENSION_SEMANTICS_KIND_DETECTION_CANDIDATES\x10\x06\x12-\n)DIMENSION_SEMANTICS_KIND_DETECTION_OUTPUT\x10\x07\x12)\n%DIMENSION_SEMANTICS_KIND_CLASS_SCORES\x10\x08\x12\x36\n2DIMENSION_SEMANTICS_KIND_SEGMENTATION_MASK_CHANNEL\x10\t\x12)\n%DIMENSION_SEMANTICS_KIND_CLASS_LABELS\x10\n\x12-\n)DIMENSION_SEMANTICS_KIND_REGRESSION_VALUE\x10\x0b\x12#\n\x1f\x44IMENSION_SEMANTICS_KIND_TOKENS\x10\x0c\x12+\n\'DIMENSION_SEMANTICS_KIND_ATTENTION_MASK\x10\r\x12)\n%DIMENSION_SEMANTICS_KIND_VOCAB_LOGITS\x10\x0e\x12&\n\"DIMENSION_SEMANTICS_KIND_EMBEDDING\x10\x0f\"\xe9\x02\n\x0fTensorSemantics\x12L\n\ndimensions\x18\x01 \x03(\x0b\x32,.gml.internal.api.core.v1.DimensionSemanticsR\ndimensions\x12Q\n\x04kind\x18\x02 \x01(\x0e\x32=.gml.internal.api.core.v1.TensorSemantics.TensorSemanticsKindR\x04kind\"\xb4\x01\n\x13TensorSemanticsKind\x12!\n\x1dTENSOR_SEMANTICS_KIND_UNKNOWN\x10\x00\x12 \n\x1cTENSOR_SEMANTICS_KIND_UNUSED\x10\x01\x12#\n\x1fTENSOR_SEMANTICS_KIND_DIMENSION\x10\x02\x12\x33\n/TENSOR_SEMANTICS_KIND_ATTENTION_KEY_VALUE_CACHE\x10\x03\"6\n\x10GenerationConfig\x12\"\n\reos_token_ids\x18\x01 \x03(\x03R\x0b\x65osTokenIds\"i\n\x05Model\x12\'\n\x02id\x18\x01 \x01(\x0b\x32\x0f.gml.types.UUIDB\x06\xe2\xde\x1f\x02IDR\x02id\x12\x37\n\x04info\x18\x02 \x01(\x0b\x32#.gml.internal.api.core.v1.ModelInfoR\x04info\"\xfd\n\n\tModelInfo\x12\x12\n\x04name\x18\x01 \x01(\tR\x04name\x12\x41\n\x04kind\x18\x02 \x01(\x0e\x32-.gml.internal.api.core.v1.ModelInfo.ModelKindR\x04kind\x12N\n\x06\x66ormat\x18\x03 \x01(\x0e\x32\x36.gml.internal.api.core.v1.ModelInfo.ModelStorageFormatR\x06\x66ormat\x12T\n\x0b\x66ile_assets\x18\x04 \x03(\x0b\x32\x33.gml.internal.api.core.v1.ModelInfo.FileAssetsEntryR\nfileAssets\x12_\n\x16input_tensor_semantics\x18\x05 \x03(\x0b\x32).gml.internal.api.core.v1.TensorSemanticsR\x14inputTensorSemantics\x12\x61\n\x17output_tensor_semantics\x18\x06 \x03(\x0b\x32).gml.internal.api.core.v1.TensorSemanticsR\x15outputTensorSemantics\x12!\n\x0c\x63lass_labels\x18\x64 \x03(\tR\x0b\x63lassLabels\x12\x46\n\tbbox_info\x18\x65 \x01(\x0b\x32).gml.internal.api.core.v1.BoundingBoxInfoR\x08\x62\x62oxInfo\x12l\n\x19image_preprocessing_steps\x18\x66 \x03(\x0b\x32\x30.gml.internal.api.core.v1.ImagePreprocessingStepR\x17imagePreprocessingSteps\x12W\n\x11generation_config\x18g \x01(\x0b\x32*.gml.internal.api.core.v1.GenerationConfigR\x10generationConfig\x1aN\n\x0f\x46ileAssetsEntry\x12\x10\n\x03key\x18\x01 \x01(\tR\x03key\x12%\n\x05value\x18\x02 \x01(\x0b\x32\x0f.gml.types.UUIDR\x05value:\x02\x38\x01\"\xd8\x01\n\tModelKind\x12\x16\n\x12MODEL_KIND_UNKNOWN\x10\x00\x12\x14\n\x10MODEL_KIND_TORCH\x10\x01\x12\x1a\n\x16MODEL_KIND_TORCHSCRIPT\x10\x02\x12\x13\n\x0fMODEL_KIND_ONNX\x10\x03\x12\x15\n\x11MODEL_KIND_TFLITE\x10\x04\x12\x17\n\x13MODEL_KIND_OPENVINO\x10\x05\x12$\n MODEL_KIND_HUGGINGFACE_TOKENIZER\x10\x06\x12\x16\n\x12MODEL_KIND_HAILORT\x10\x07\"\xd1\x02\n\x12ModelStorageFormat\x12 \n\x1cMODEL_STORAGE_FORMAT_UNKNOWN\x10\x00\x12&\n\"MODEL_STORAGE_FORMAT_MLIR_BYTECODE\x10\x01\x12\"\n\x1eMODEL_STORAGE_FORMAT_MLIR_TEXT\x10\x02\x12!\n\x1dMODEL_STORAGE_FORMAT_PROTOBUF\x10\x03\x12#\n\x1fMODEL_STORAGE_FORMAT_PROTO_TEXT\x10\x04\x12#\n\x1fMODEL_STORAGE_FORMAT_FLATBUFFER\x10\x05\x12!\n\x1dMODEL_STORAGE_FORMAT_OPENVINO\x10\x06\x12\x1f\n\x1bMODEL_STORAGE_FORMAT_OPAQUE\x10\x07\x12\x1c\n\x18MODEL_STORAGE_FORMAT_HEF\x10\x08\"\xa8\x02\n\x04Node\x12\x12\n\x04name\x18\x01 \x01(\tR\x04name\x12\x45\n\x04kind\x18\x02 \x01(\x0e\x32\x31.gml.internal.api.core.v1.LogicalPipelineNodeKindR\x04kind\x12H\n\nattributes\x18\x03 \x03(\x0b\x32(.gml.internal.api.core.v1.NodeAttributesR\nattributes\x12;\n\x06inputs\x18\x04 \x03(\x0b\x32#.gml.internal.api.core.v1.NodeInputR\x06inputs\x12>\n\x07outputs\x18\x05 \x03(\x0b\x32$.gml.internal.api.core.v1.NodeOutputR\x07outputs\"\x1e\n\x08ParamRef\x12\x12\n\x04name\x18\x01 \x01(\tR\x04name\"\xab\x04\n\x05Value\x12!\n\x0bstring_data\x18\x01 \x01(\tH\x00R\nstringData\x12\x1f\n\nint64_data\x18\x02 \x01(\x03H\x00R\tint64Data\x12!\n\x0b\x64ouble_data\x18\x03 \x01(\x01H\x00R\ndoubleData\x12\x1d\n\tbool_data\x18\x04 \x01(\x08H\x00R\x08\x62oolData\x12I\n\x0blambda_data\x18\x05 \x01(\x0b\x32&.gml.internal.api.core.v1.Value.LambdaH\x00R\nlambdaData\x12I\n\nmodel_data\x18\x06 \x01(\x0b\x32(.gml.internal.api.core.v1.Value.ModelRefH\x00R\tmodelData\x12\x43\n\nparam_data\x18\x07 \x01(\x0b\x32\".gml.internal.api.core.v1.ParamRefH\x00R\tparamData\x1aG\n\x08ModelRef\x12\x12\n\x04name\x18\x01 \x01(\tR\x04name\x12\'\n\x02id\x18\x02 \x01(\x0b\x32\x0f.gml.types.UUIDB\x06\xe2\xde\x1f\x02IDR\x02id\x1ap\n\x06Lambda\x12\x16\n\x06inputs\x18\x01 \x03(\tR\x06inputs\x12\x18\n\x07outputs\x18\x02 \x03(\tR\x07outputs\x12\x34\n\x05nodes\x18\x03 \x03(\x0b\x32\x1e.gml.internal.api.core.v1.NodeR\x05nodesB\x06\n\x04\x64\x61ta\"[\n\x0eNodeAttributes\x12\x12\n\x04name\x18\x01 \x01(\tR\x04name\x12\x35\n\x05value\x18\x02 \x01(\x0b\x32\x1f.gml.internal.api.core.v1.ValueR\x05value\"\x9c\x03\n\tNodeInput\x12\x12\n\x04name\x18\x01 \x01(\tR\x04name\x12\x45\n\x0bparam_value\x18\x02 \x01(\x0b\x32\".gml.internal.api.core.v1.ParamRefH\x00R\nparamValue\x12_\n\x11node_output_value\x18\x03 \x01(\x0b\x32\x31.gml.internal.api.core.v1.NodeInput.NodeOutputRefH\x00R\x0fnodeOutputValue\x12\x62\n\x12lambda_input_value\x18\x04 \x01(\x0b\x32\x32.gml.internal.api.core.v1.NodeInput.LambdaInputRefH\x00R\x10lambdaInputValue\x1a@\n\rNodeOutputRef\x12\x1b\n\tnode_name\x18\x01 \x01(\tR\x08nodeName\x12\x12\n\x04name\x18\x02 \x01(\tR\x04name\x1a$\n\x0eLambdaInputRef\x12\x12\n\x04name\x18\x01 \x01(\tR\x04nameB\x07\n\x05value\" \n\nNodeOutput\x12\x12\n\x04name\x18\x01 \x01(\tR\x04name\"a\n\x05Param\x12\x12\n\x04name\x18\x01 \x01(\tR\x04name\x12\x44\n\rdefault_value\x18\x02 \x01(\x0b\x32\x1f.gml.internal.api.core.v1.ValueR\x0c\x64\x65\x66\x61ultValue\"\xbc\x01\n\x0fLogicalPipeline\x12\x37\n\x06params\x18\x01 \x03(\x0b\x32\x1f.gml.internal.api.core.v1.ParamR\x06params\x12\x34\n\x05nodes\x18\x02 \x03(\x0b\x32\x1e.gml.internal.api.core.v1.NodeR\x05nodes\x12:\n\tmodel_ids\x18\x03 \x03(\x0b\x32\x0f.gml.types.UUIDB\x0c\xe2\xde\x1f\x08ModelIDsR\x08modelIds\"\xab\x04\n\x12PipelineDeployment\x12\'\n\x02id\x18\x01 \x01(\x0b\x32\x0f.gml.types.UUIDB\x06\xe2\xde\x1f\x02IDR\x02id\x12V\n\x13logical_pipeline_id\x18\x02 \x01(\x0b\x32\x0f.gml.types.UUIDB\x15\xe2\xde\x1f\x11LogicalPipelineIDR\x11logicalPipelineId\x12\x37\n\x08\x66leet_id\x18\x03 \x01(\x0b\x32\x0f.gml.types.UUIDB\x0b\xe2\xde\x1f\x07\x46leetIDR\x07\x66leetId\x12\x39\n\ncreated_at\x18\x04 \x01(\x0b\x32\x1a.google.protobuf.TimestampR\tcreatedAt\x12\x39\n\nupdated_at\x18\x05 \x01(\x0b\x32\x1a.google.protobuf.TimestampR\tupdatedAt\x12\x18\n\x07version\x18\x06 \x01(\x03R\x07version\x12\x44\n\x04spec\x18\x07 \x01(\x0b\x32\x30.gml.internal.api.core.v1.PipelineDeploymentSpecR\x04spec\x12J\n\x06status\x18\x08 \x01(\x0b\x32\x32.gml.internal.api.core.v1.PipelineDeploymentStatusR\x06status\x12\x39\n\ndeleted_at\x18\t \x01(\x0b\x32\x1a.google.protobuf.TimestampR\tdeletedAt\"W\n\x16PipelineDeploymentSpec\x12=\n\x05state\x18\x01 \x01(\x0e\x32\'.gml.internal.api.core.v1.PipelineStateR\x05state\"q\n\x18PipelineDeploymentStatus\x12=\n\x05state\x18\x01 \x01(\x0e\x32\'.gml.internal.api.core.v1.PipelineStateR\x05state\x12\x16\n\x06reason\x18\x02 \x01(\tR\x06reason\"\xdc\x03\n\x10PhysicalPipeline\x12\'\n\x02id\x18\x01 \x01(\x0b\x32\x0f.gml.types.UUIDB\x06\xe2\xde\x1f\x02IDR\x02id\x12_\n\x16pipeline_deployment_id\x18\x02 \x01(\x0b\x32\x0f.gml.types.UUIDB\x18\xe2\xde\x1f\x14PipelineDeploymentIDR\x14pipelineDeploymentId\x12:\n\tdevice_id\x18\x03 \x01(\x0b\x32\x0f.gml.types.UUIDB\x0c\xe2\xde\x1f\x08\x44\x65viceIDR\x08\x64\x65viceId\x12\x39\n\ncreated_at\x18\x04 \x01(\x0b\x32\x1a.google.protobuf.TimestampR\tcreatedAt\x12\x39\n\nupdated_at\x18\x05 \x01(\x0b\x32\x1a.google.protobuf.TimestampR\tupdatedAt\x12\x42\n\x04spec\x18\x06 \x01(\x0b\x32..gml.internal.api.core.v1.PhysicalPipelineSpecR\x04spec\x12H\n\x06status\x18\x07 \x01(\x0b\x32\x30.gml.internal.api.core.v1.PhysicalPipelineStatusR\x06status\"\xcd\x02\n\x14PhysicalPipelineSpec\x12=\n\x05state\x18\x01 \x01(\x0e\x32\'.gml.internal.api.core.v1.PipelineStateR\x05state\x12\x18\n\x07version\x18\x02 \x01(\x03R\x07version\x12=\n\x05graph\x18\x03 \x01(\x0b\x32\'.gml.internal.api.core.v1.ExecutionSpecR\x05graph\x12\x30\n\x14\x64\x65vice_resource_hash\x18\x05 \x01(\tR\x12\x64\x65viceResourceHash\x12M\n\x0c\x65xec_runtime\x18\x06 \x01(\x0e\x32*.gml.internal.api.core.v1.ModelRuntimeTypeR\x0b\x65xecRuntime\x12\x1c\n\x07runtime\x18\x04 \x01(\tB\x02\x18\x01R\x07runtime\"\x88\x04\n\x16PhysicalPipelineStatus\x12=\n\x05state\x18\x01 \x01(\x0e\x32\'.gml.internal.api.core.v1.PipelineStateR\x05state\x12\x18\n\x07version\x18\x02 \x01(\x03R\x07version\x12\x16\n\x06reason\x18\x04 \x01(\tR\x06reason\x12\x30\n\x14\x64\x65vice_resource_hash\x18\x05 \x01(\tR\x12\x64\x65viceResourceHash\x12\x66\n\rruntime_specs\x18\x07 \x03(\x0b\x32\x41.gml.internal.api.core.v1.PhysicalPipelineStatus.ModelRuntimeSpecR\x0cruntimeSpecs\x12\x1c\n\x07runtime\x18\x03 \x01(\tB\x02\x18\x01R\x07runtime\x12S\n\rexec_runtimes\x18\x06 \x03(\x0e\x32*.gml.internal.api.core.v1.ModelRuntimeTypeB\x02\x18\x01R\x0c\x65xecRuntimes\x1ap\n\x10ModelRuntimeSpec\x12\x44\n\x07runtime\x18\x01 \x01(\x0e\x32*.gml.internal.api.core.v1.ModelRuntimeTypeR\x07runtime\x12\x16\n\x06\x64\x65vice\x18\x02 \x01(\tR\x06\x64\x65vice\"\x84\x01\n\x0c\x46ileResource\x12\x34\n\x07\x66ile_id\x18\x01 \x01(\x0b\x32\x0f.gml.types.UUIDB\n\xe2\xde\x1f\x06\x46ileIDR\x06\x66ileId\x12\x1d\n\nsize_bytes\x18\x02 \x01(\x04R\tsizeBytes\x12\x1f\n\x0bsha256_hash\x18\x03 \x01(\tR\nsha256Hash\"\x8b\x01\n\rExecutionSpec\x12\x36\n\x05graph\x18\x01 \x01(\x0b\x32 .mediapipe.CalculatorGraphConfigR\x05graph\x12\x42\n\nmodel_spec\x18\x02 \x03(\x0b\x32#.gml.internal.api.core.v1.ModelSpecR\tmodelSpec\"\\\n\nNamedAsset\x12\x12\n\x04name\x18\x01 \x01(\tR\x04name\x12:\n\x04\x66ile\x18\x02 \x01(\x0b\x32&.gml.internal.api.core.v1.FileResourceR\x04\x66ile\"\xfc\x04\n\tModelSpec\x12\x12\n\x04name\x18\x01 \x01(\tR\x04name\x12\x33\n\ronnx_blob_key\x18\x02 \x01(\tB\x0f\xe2\xde\x1f\x0bONNXBlobKeyR\x0bonnxBlobKey\x12Q\n\tonnx_file\x18\x03 \x01(\x0b\x32&.gml.internal.api.core.v1.FileResourceB\x0c\xe2\xde\x1f\x08ONNXFileR\x08onnxFile\x12\x45\n\x0bnamed_asset\x18\x04 \x03(\x0b\x32$.gml.internal.api.core.v1.NamedAssetR\nnamedAsset\x12M\n\x0c\x65xec_runtime\x18\x33 \x01(\x0e\x32*.gml.internal.api.core.v1.ModelRuntimeTypeR\x0b\x65xecRuntime\x12\x62\n\rtensorrt_spec\x18\x64 \x01(\x0b\x32+.gml.internal.api.core.v1.TensorRTModelSpecB\x10\xe2\xde\x1f\x0cTensorRTSpecR\x0ctensorrtSpec\x12\x62\n\ropenvino_spec\x18\x65 \x01(\x0b\x32+.gml.internal.api.core.v1.OpenVINOModelSpecB\x10\xe2\xde\x1f\x0cOpenVINOSpecR\x0copenvinoSpec\x12W\n\tiree_spec\x18\x66 \x01(\x0b\x32\'.gml.internal.api.core.v1.IREEModelSpecB\x11\xe2\xde\x1f\rIREEModelSpecR\x08ireeSpec\x12\x1c\n\x07runtime\x18\x32 \x01(\tB\x02\x18\x01R\x07runtime\"\xfe\x01\n\x11TensorRTModelSpec\x12h\n\x14optimization_profile\x18\x01 \x03(\x0b\x32\x35.gml.internal.api.core.v1.TensorRTOptimizationProfileR\x13optimizationProfile\x12&\n\x0f\x65ngine_blob_key\x18\x02 \x01(\tR\rengineBlobKey\x12W\n\x0fmem_pool_limits\x18\x03 \x01(\x0b\x32/.gml.internal.api.core.v1.TensorRTMemPoolLimitsR\rmemPoolLimits\"\x7f\n\x1bTensorRTOptimizationProfile\x12`\n\x12tensor_shape_range\x18\x01 \x03(\x0b\x32\x32.gml.internal.api.core.v1.TensorRTTensorShapeRangeR\x10tensorShapeRange\"M\n\x18TensorRTTensorShapeRange\x12\x1f\n\x0btensor_name\x18\x01 \x01(\tR\ntensorName\x12\x10\n\x03\x64im\x18\x02 \x03(\x05R\x03\x64im\"5\n\x15TensorRTMemPoolLimits\x12\x1c\n\tworkspace\x18\x01 \x01(\x03R\tworkspace\"\xab\x01\n\x11OpenVINOModelSpec\x12X\n\x0binput_shape\x18\x01 \x03(\x0b\x32\x37.gml.internal.api.core.v1.OpenVINOModelSpec.TensorShapeR\ninputShape\x12\x1b\n\tdevice_id\x18\x02 \x01(\tR\x08\x64\x65viceId\x1a\x1f\n\x0bTensorShape\x12\x10\n\x03\x64im\x18\x01 \x03(\x05R\x03\x64im\"M\n\rIREEModelSpec\x12\x1f\n\x0b\x64river_name\x18\x01 \x01(\tR\ndriverName\x12\x1b\n\tdevice_id\x18\x02 \x01(\x04R\x08\x64\x65viceId*\xd2\x08\n\x17LogicalPipelineNodeKind\x12&\n\"LOGICAL_PIPELINE_NODE_KIND_UNKNOWN\x10\x00\x12,\n(LOGICAL_PIPELINE_NODE_KIND_CAMERA_SOURCE\x10\n\x12\x31\n-LOGICAL_PIPELINE_NODE_KIND_TEXT_STREAM_SOURCE\x10\x0b\x12&\n!LOGICAL_PIPELINE_NODE_KIND_DETECT\x10\xe8\x07\x12(\n#LOGICAL_PIPELINE_NODE_KIND_CLASSIFY\x10\xe9\x07\x12\'\n\"LOGICAL_PIPELINE_NODE_KIND_SEGMENT\x10\xea\x07\x12\x33\n.LOGICAL_PIPELINE_NODE_KIND_MULTI_PURPOSE_MODEL\x10\xeb\x07\x12\'\n\"LOGICAL_PIPELINE_NODE_KIND_REGRESS\x10\xec\x07\x12%\n LOGICAL_PIPELINE_NODE_KIND_TRACK\x10\xed\x07\x12/\n*LOGICAL_PIPELINE_NODE_KIND_GENERATE_TOKENS\x10\xee\x07\x12(\n#LOGICAL_PIPELINE_NODE_KIND_TOKENIZE\x10\xef\x07\x12*\n%LOGICAL_PIPELINE_NODE_KIND_DETOKENIZE\x10\xf0\x07\x12%\n LOGICAL_PIPELINE_NODE_KIND_EMBED\x10\xf1\x07\x12\x35\n0LOGICAL_PIPELINE_NODE_KIND_TEMPLATE_CHAT_MESSAGE\x10\xf2\x07\x12.\n)LOGICAL_PIPELINE_NODE_KIND_ESTIMATE_DEPTH\x10\xf3\x07\x12,\n\'LOGICAL_PIPELINE_NODE_KIND_FOR_EACH_ROI\x10\xdf\x0b\x12-\n(LOGICAL_PIPELINE_NODE_KIND_VECTOR_SEARCH\x10\xe0\x0b\x12\x34\n/LOGICAL_PIPELINE_NODE_KIND_FILTER_MOVING_TRACKS\x10\xe1\x0b\x12\x31\n,LOGICAL_PIPELINE_NODE_KIND_VIDEO_STREAM_SINK\x10\xd0\x0f\x12\x37\n2LOGICAL_PIPELINE_NODE_KIND_DETECTIONS_METRICS_SINK\x10\xd1\x0f\x12\x34\n/LOGICAL_PIPELINE_NODE_KIND_LATENCY_METRICS_SINK\x10\xd2\x0f\x12\x32\n-LOGICAL_PIPELINE_NODE_KIND_FRAME_METRICS_SINK\x10\xd3\x0f\x12\x30\n+LOGICAL_PIPELINE_NODE_KIND_TEXT_STREAM_SINK\x10\xd4\x0f*\xd7\x01\n\rPipelineState\x12\x1a\n\x16PIPELINE_STATE_UNKNOWN\x10\x00\x12\x1a\n\x16PIPELINE_STATE_PENDING\x10\x01\x12\x18\n\x14PIPELINE_STATE_READY\x10\x02\x12\x1a\n\x16PIPELINE_STATE_RUNNING\x10\x03\x12\x1e\n\x1aPIPELINE_STATE_TERMINATING\x10\x04\x12\x1d\n\x19PIPELINE_STATE_TERMINATED\x10\x05\x12\x19\n\x15PIPELINE_STATE_FAILED\x10\x06\x42/Z-gimletlabs.ai/gimlet/src/api/corepb/v1;corepbb\x06proto3')
|
26
27
|
|
27
28
|
_builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, globals())
|
28
29
|
_builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'src.api.corepb.v1.model_exec_pb2', globals())
|
@@ -30,6 +31,8 @@ if _descriptor._USE_C_DESCRIPTORS == False:
|
|
30
31
|
|
31
32
|
DESCRIPTOR._options = None
|
32
33
|
DESCRIPTOR._serialized_options = b'Z-gimletlabs.ai/gimlet/src/api/corepb/v1;corepb'
|
34
|
+
_MODEL.fields_by_name['id']._options = None
|
35
|
+
_MODEL.fields_by_name['id']._serialized_options = b'\342\336\037\002ID'
|
33
36
|
_MODELINFO_FILEASSETSENTRY._options = None
|
34
37
|
_MODELINFO_FILEASSETSENTRY._serialized_options = b'8\001'
|
35
38
|
_VALUE_MODELREF.fields_by_name['id']._options = None
|
@@ -48,6 +51,12 @@ if _descriptor._USE_C_DESCRIPTORS == False:
|
|
48
51
|
_PHYSICALPIPELINE.fields_by_name['pipeline_deployment_id']._serialized_options = b'\342\336\037\024PipelineDeploymentID'
|
49
52
|
_PHYSICALPIPELINE.fields_by_name['device_id']._options = None
|
50
53
|
_PHYSICALPIPELINE.fields_by_name['device_id']._serialized_options = b'\342\336\037\010DeviceID'
|
54
|
+
_PHYSICALPIPELINESPEC.fields_by_name['runtime']._options = None
|
55
|
+
_PHYSICALPIPELINESPEC.fields_by_name['runtime']._serialized_options = b'\030\001'
|
56
|
+
_PHYSICALPIPELINESTATUS.fields_by_name['runtime']._options = None
|
57
|
+
_PHYSICALPIPELINESTATUS.fields_by_name['runtime']._serialized_options = b'\030\001'
|
58
|
+
_PHYSICALPIPELINESTATUS.fields_by_name['exec_runtimes']._options = None
|
59
|
+
_PHYSICALPIPELINESTATUS.fields_by_name['exec_runtimes']._serialized_options = b'\030\001'
|
51
60
|
_FILERESOURCE.fields_by_name['file_id']._options = None
|
52
61
|
_FILERESOURCE.fields_by_name['file_id']._serialized_options = b'\342\336\037\006FileID'
|
53
62
|
_MODELSPEC.fields_by_name['onnx_blob_key']._options = None
|
@@ -58,114 +67,124 @@ if _descriptor._USE_C_DESCRIPTORS == False:
|
|
58
67
|
_MODELSPEC.fields_by_name['tensorrt_spec']._serialized_options = b'\342\336\037\014TensorRTSpec'
|
59
68
|
_MODELSPEC.fields_by_name['openvino_spec']._options = None
|
60
69
|
_MODELSPEC.fields_by_name['openvino_spec']._serialized_options = b'\342\336\037\014OpenVINOSpec'
|
61
|
-
|
62
|
-
|
63
|
-
|
64
|
-
|
65
|
-
|
66
|
-
|
67
|
-
|
68
|
-
|
69
|
-
|
70
|
-
|
71
|
-
|
72
|
-
|
73
|
-
|
74
|
-
|
75
|
-
|
76
|
-
|
77
|
-
|
78
|
-
|
79
|
-
|
80
|
-
|
81
|
-
|
82
|
-
|
83
|
-
|
84
|
-
|
85
|
-
|
86
|
-
|
87
|
-
|
88
|
-
|
89
|
-
|
90
|
-
|
91
|
-
|
92
|
-
|
93
|
-
|
94
|
-
|
95
|
-
|
96
|
-
|
97
|
-
|
98
|
-
|
99
|
-
|
100
|
-
|
101
|
-
|
102
|
-
|
103
|
-
|
104
|
-
|
105
|
-
|
106
|
-
|
107
|
-
|
108
|
-
|
109
|
-
|
110
|
-
|
111
|
-
|
112
|
-
|
113
|
-
|
114
|
-
|
115
|
-
|
116
|
-
|
117
|
-
|
118
|
-
|
119
|
-
|
120
|
-
|
121
|
-
|
122
|
-
|
123
|
-
|
124
|
-
|
125
|
-
|
126
|
-
|
127
|
-
|
128
|
-
|
129
|
-
|
130
|
-
|
131
|
-
|
132
|
-
|
133
|
-
|
134
|
-
|
135
|
-
|
136
|
-
|
137
|
-
|
138
|
-
|
139
|
-
|
140
|
-
|
141
|
-
|
142
|
-
|
143
|
-
|
144
|
-
|
145
|
-
|
146
|
-
|
147
|
-
|
148
|
-
|
149
|
-
|
150
|
-
|
151
|
-
|
152
|
-
|
153
|
-
|
154
|
-
|
155
|
-
|
156
|
-
|
157
|
-
|
158
|
-
|
159
|
-
|
160
|
-
|
161
|
-
|
162
|
-
|
163
|
-
|
164
|
-
|
165
|
-
|
166
|
-
|
167
|
-
|
168
|
-
|
169
|
-
|
170
|
-
|
70
|
+
_MODELSPEC.fields_by_name['iree_spec']._options = None
|
71
|
+
_MODELSPEC.fields_by_name['iree_spec']._serialized_options = b'\342\336\037\rIREEModelSpec'
|
72
|
+
_MODELSPEC.fields_by_name['runtime']._options = None
|
73
|
+
_MODELSPEC.fields_by_name['runtime']._serialized_options = b'\030\001'
|
74
|
+
_LOGICALPIPELINENODEKIND._serialized_start=11924
|
75
|
+
_LOGICALPIPELINENODEKIND._serialized_end=13030
|
76
|
+
_PIPELINESTATE._serialized_start=13033
|
77
|
+
_PIPELINESTATE._serialized_end=13248
|
78
|
+
_BOUNDINGBOXINFO._serialized_start=258
|
79
|
+
_BOUNDINGBOXINFO._serialized_end=553
|
80
|
+
_BOUNDINGBOXINFO_BOUNDINGBOXFORMAT._serialized_start=409
|
81
|
+
_BOUNDINGBOXINFO_BOUNDINGBOXFORMAT._serialized_end=553
|
82
|
+
_IMAGEPREPROCESSINGSTEP._serialized_start=556
|
83
|
+
_IMAGEPREPROCESSINGSTEP._serialized_end=1633
|
84
|
+
_IMAGEPREPROCESSINGSTEP_IMAGECONVERSIONPARAMS._serialized_start=1017
|
85
|
+
_IMAGEPREPROCESSINGSTEP_IMAGECONVERSIONPARAMS._serialized_end=1127
|
86
|
+
_IMAGEPREPROCESSINGSTEP_IMAGERESIZEPARAMS._serialized_start=1130
|
87
|
+
_IMAGEPREPROCESSINGSTEP_IMAGERESIZEPARAMS._serialized_end=1367
|
88
|
+
_IMAGEPREPROCESSINGSTEP_IMAGERESIZEPARAMS_IMAGERESIZEKIND._serialized_start=1255
|
89
|
+
_IMAGEPREPROCESSINGSTEP_IMAGERESIZEPARAMS_IMAGERESIZEKIND._serialized_end=1367
|
90
|
+
_IMAGEPREPROCESSINGSTEP_IMAGESTANDARDIZEPARAMS._serialized_start=1369
|
91
|
+
_IMAGEPREPROCESSINGSTEP_IMAGESTANDARDIZEPARAMS._serialized_end=1441
|
92
|
+
_IMAGEPREPROCESSINGSTEP_IMAGEPREPROCESSINGKIND._serialized_start=1444
|
93
|
+
_IMAGEPREPROCESSINGSTEP_IMAGEPREPROCESSINGKIND._serialized_end=1633
|
94
|
+
_DIMENSIONSEMANTICS._serialized_start=1636
|
95
|
+
_DIMENSIONSEMANTICS._serialized_end=4382
|
96
|
+
_DIMENSIONSEMANTICS_IMAGECHANNELPARAMS._serialized_start=2359
|
97
|
+
_DIMENSIONSEMANTICS_IMAGECHANNELPARAMS._serialized_end=2640
|
98
|
+
_DIMENSIONSEMANTICS_IMAGECHANNELPARAMS_IMAGECHANNELFORMAT._serialized_start=2490
|
99
|
+
_DIMENSIONSEMANTICS_IMAGECHANNELPARAMS_IMAGECHANNELFORMAT._serialized_end=2640
|
100
|
+
_DIMENSIONSEMANTICS_DETECTIONCANDIDATESPARAMS._serialized_start=2642
|
101
|
+
_DIMENSIONSEMANTICS_DETECTIONCANDIDATESPARAMS._serialized_end=2703
|
102
|
+
_DIMENSIONSEMANTICS_DETECTIONOUTPUTPARAMS._serialized_start=2706
|
103
|
+
_DIMENSIONSEMANTICS_DETECTIONOUTPUTPARAMS._serialized_end=3229
|
104
|
+
_DIMENSIONSEMANTICS_DETECTIONOUTPUTPARAMS_INDEXRANGE._serialized_start=3175
|
105
|
+
_DIMENSIONSEMANTICS_DETECTIONOUTPUTPARAMS_INDEXRANGE._serialized_end=3229
|
106
|
+
_DIMENSIONSEMANTICS_SEGMENTATIONMASKPARAMS._serialized_start=3232
|
107
|
+
_DIMENSIONSEMANTICS_SEGMENTATIONMASKPARAMS._serialized_end=3569
|
108
|
+
_DIMENSIONSEMANTICS_SEGMENTATIONMASKPARAMS_SEGMENTATIONMASKKIND._serialized_start=3369
|
109
|
+
_DIMENSIONSEMANTICS_SEGMENTATIONMASKPARAMS_SEGMENTATIONMASKKIND._serialized_end=3569
|
110
|
+
_DIMENSIONSEMANTICS_REGRESSIONPARAMS._serialized_start=3571
|
111
|
+
_DIMENSIONSEMANTICS_REGRESSIONPARAMS._serialized_end=3663
|
112
|
+
_DIMENSIONSEMANTICS_DIMENSIONSEMANTICSKIND._serialized_start=3666
|
113
|
+
_DIMENSIONSEMANTICS_DIMENSIONSEMANTICSKIND._serialized_end=4382
|
114
|
+
_TENSORSEMANTICS._serialized_start=4385
|
115
|
+
_TENSORSEMANTICS._serialized_end=4746
|
116
|
+
_TENSORSEMANTICS_TENSORSEMANTICSKIND._serialized_start=4566
|
117
|
+
_TENSORSEMANTICS_TENSORSEMANTICSKIND._serialized_end=4746
|
118
|
+
_GENERATIONCONFIG._serialized_start=4748
|
119
|
+
_GENERATIONCONFIG._serialized_end=4802
|
120
|
+
_MODEL._serialized_start=4804
|
121
|
+
_MODEL._serialized_end=4909
|
122
|
+
_MODELINFO._serialized_start=4912
|
123
|
+
_MODELINFO._serialized_end=6317
|
124
|
+
_MODELINFO_FILEASSETSENTRY._serialized_start=5680
|
125
|
+
_MODELINFO_FILEASSETSENTRY._serialized_end=5758
|
126
|
+
_MODELINFO_MODELKIND._serialized_start=5761
|
127
|
+
_MODELINFO_MODELKIND._serialized_end=5977
|
128
|
+
_MODELINFO_MODELSTORAGEFORMAT._serialized_start=5980
|
129
|
+
_MODELINFO_MODELSTORAGEFORMAT._serialized_end=6317
|
130
|
+
_NODE._serialized_start=6320
|
131
|
+
_NODE._serialized_end=6616
|
132
|
+
_PARAMREF._serialized_start=6618
|
133
|
+
_PARAMREF._serialized_end=6648
|
134
|
+
_VALUE._serialized_start=6651
|
135
|
+
_VALUE._serialized_end=7206
|
136
|
+
_VALUE_MODELREF._serialized_start=7013
|
137
|
+
_VALUE_MODELREF._serialized_end=7084
|
138
|
+
_VALUE_LAMBDA._serialized_start=7086
|
139
|
+
_VALUE_LAMBDA._serialized_end=7198
|
140
|
+
_NODEATTRIBUTES._serialized_start=7208
|
141
|
+
_NODEATTRIBUTES._serialized_end=7299
|
142
|
+
_NODEINPUT._serialized_start=7302
|
143
|
+
_NODEINPUT._serialized_end=7714
|
144
|
+
_NODEINPUT_NODEOUTPUTREF._serialized_start=7603
|
145
|
+
_NODEINPUT_NODEOUTPUTREF._serialized_end=7667
|
146
|
+
_NODEINPUT_LAMBDAINPUTREF._serialized_start=7669
|
147
|
+
_NODEINPUT_LAMBDAINPUTREF._serialized_end=7705
|
148
|
+
_NODEOUTPUT._serialized_start=7716
|
149
|
+
_NODEOUTPUT._serialized_end=7748
|
150
|
+
_PARAM._serialized_start=7750
|
151
|
+
_PARAM._serialized_end=7847
|
152
|
+
_LOGICALPIPELINE._serialized_start=7850
|
153
|
+
_LOGICALPIPELINE._serialized_end=8038
|
154
|
+
_PIPELINEDEPLOYMENT._serialized_start=8041
|
155
|
+
_PIPELINEDEPLOYMENT._serialized_end=8596
|
156
|
+
_PIPELINEDEPLOYMENTSPEC._serialized_start=8598
|
157
|
+
_PIPELINEDEPLOYMENTSPEC._serialized_end=8685
|
158
|
+
_PIPELINEDEPLOYMENTSTATUS._serialized_start=8687
|
159
|
+
_PIPELINEDEPLOYMENTSTATUS._serialized_end=8800
|
160
|
+
_PHYSICALPIPELINE._serialized_start=8803
|
161
|
+
_PHYSICALPIPELINE._serialized_end=9279
|
162
|
+
_PHYSICALPIPELINESPEC._serialized_start=9282
|
163
|
+
_PHYSICALPIPELINESPEC._serialized_end=9615
|
164
|
+
_PHYSICALPIPELINESTATUS._serialized_start=9618
|
165
|
+
_PHYSICALPIPELINESTATUS._serialized_end=10138
|
166
|
+
_PHYSICALPIPELINESTATUS_MODELRUNTIMESPEC._serialized_start=10026
|
167
|
+
_PHYSICALPIPELINESTATUS_MODELRUNTIMESPEC._serialized_end=10138
|
168
|
+
_FILERESOURCE._serialized_start=10141
|
169
|
+
_FILERESOURCE._serialized_end=10273
|
170
|
+
_EXECUTIONSPEC._serialized_start=10276
|
171
|
+
_EXECUTIONSPEC._serialized_end=10415
|
172
|
+
_NAMEDASSET._serialized_start=10417
|
173
|
+
_NAMEDASSET._serialized_end=10509
|
174
|
+
_MODELSPEC._serialized_start=10512
|
175
|
+
_MODELSPEC._serialized_end=11148
|
176
|
+
_TENSORRTMODELSPEC._serialized_start=11151
|
177
|
+
_TENSORRTMODELSPEC._serialized_end=11405
|
178
|
+
_TENSORRTOPTIMIZATIONPROFILE._serialized_start=11407
|
179
|
+
_TENSORRTOPTIMIZATIONPROFILE._serialized_end=11534
|
180
|
+
_TENSORRTTENSORSHAPERANGE._serialized_start=11536
|
181
|
+
_TENSORRTTENSORSHAPERANGE._serialized_end=11613
|
182
|
+
_TENSORRTMEMPOOLLIMITS._serialized_start=11615
|
183
|
+
_TENSORRTMEMPOOLLIMITS._serialized_end=11668
|
184
|
+
_OPENVINOMODELSPEC._serialized_start=11671
|
185
|
+
_OPENVINOMODELSPEC._serialized_end=11842
|
186
|
+
_OPENVINOMODELSPEC_TENSORSHAPE._serialized_start=11811
|
187
|
+
_OPENVINOMODELSPEC_TENSORSHAPE._serialized_end=11842
|
188
|
+
_IREEMODELSPEC._serialized_start=11844
|
189
|
+
_IREEMODELSPEC._serialized_end=11921
|
171
190
|
# @@protoc_insertion_point(module_scope)
|
@@ -13,11 +13,12 @@ _sym_db = _symbol_database.Default()
|
|
13
13
|
|
14
14
|
from gml.proto.src.api.corepb.v1 import model_exec_pb2 as src_dot_api_dot_corepb_dot_v1_dot_model__exec__pb2
|
15
15
|
from gml.proto.src.api.corepb.v1 import cp_edge_pb2 as src_dot_api_dot_corepb_dot_v1_dot_cp__edge__pb2
|
16
|
+
from gml.proto.src.api.corepb.v1 import gem_config_pb2 as src_dot_api_dot_corepb_dot_v1_dot_gem__config__pb2
|
16
17
|
from gml.proto.src.common.typespb import uuid_pb2 as src_dot_common_dot_typespb_dot_uuid__pb2
|
17
18
|
from gml.proto.gogoproto import gogo_pb2 as gogoproto_dot_gogo__pb2
|
18
19
|
|
19
20
|
|
20
|
-
DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n*src/controlplane/compiler/cpb/v1/cpb.proto\x12%gml.internal.controlplane.compiler.v1\x1a\"src/api/corepb/v1/model_exec.proto\x1a\x1fsrc/api/corepb/v1/cp_edge.proto\x1a\x1dsrc/common/typespb/uuid.proto\x1a\x14gogoproto/gogo.proto\"
|
21
|
+
DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n*src/controlplane/compiler/cpb/v1/cpb.proto\x12%gml.internal.controlplane.compiler.v1\x1a\"src/api/corepb/v1/model_exec.proto\x1a\x1fsrc/api/corepb/v1/cp_edge.proto\x1a\"src/api/corepb/v1/gem_config.proto\x1a\x1dsrc/common/typespb/uuid.proto\x1a\x14gogoproto/gogo.proto\"\xa9\x03\n\x0e\x43ompileRequest\x12V\n\x13logical_pipeline_id\x18\x01 \x01(\x0b\x32\x0f.gml.types.UUIDB\x15\xe2\xde\x1f\x11LogicalPipelineIDR\x11logicalPipelineId\x12T\n\x10logical_pipeline\x18\x02 \x01(\x0b\x32).gml.internal.api.core.v1.LogicalPipelineR\x0flogicalPipeline\x12]\n\x13\x64\x65vice_capabilities\x18\x03 \x01(\x0b\x32,.gml.internal.api.core.v1.DeviceCapabilitiesR\x12\x64\x65viceCapabilities\x12\x37\n\x06models\x18\x04 \x03(\x0b\x32\x1f.gml.internal.api.core.v1.ModelR\x06models\x12Q\n\ngem_config\x18\x05 \x01(\x0b\x32#.gml.internal.api.core.v1.GEMConfigB\r\xe2\xde\x1f\tGEMConfigR\tgemConfig\"W\n\x0f\x43ompileResponse\x12\x44\n\texec_spec\x18\x01 \x01(\x0b\x32\'.gml.internal.api.core.v1.ExecutionSpecR\x08\x65xecSpec2\x8b\x01\n\x0f\x43ompilerService\x12x\n\x07\x43ompile\x12\x35.gml.internal.controlplane.compiler.v1.CompileRequest\x1a\x36.gml.internal.controlplane.compiler.v1.CompileResponseB;Z9gimletlabs.ai/gimlet/src/controlplane/compiler/cpb/v1;cpbb\x06proto3')
|
21
22
|
|
22
23
|
_builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, globals())
|
23
24
|
_builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'src.controlplane.compiler.cpb.v1.cpb_pb2', globals())
|
@@ -25,16 +26,14 @@ if _descriptor._USE_C_DESCRIPTORS == False:
|
|
25
26
|
|
26
27
|
DESCRIPTOR._options = None
|
27
28
|
DESCRIPTOR._serialized_options = b'Z9gimletlabs.ai/gimlet/src/controlplane/compiler/cpb/v1;cpb'
|
28
|
-
_MODEL.fields_by_name['id']._options = None
|
29
|
-
_MODEL.fields_by_name['id']._serialized_options = b'\342\336\037\002ID'
|
30
29
|
_COMPILEREQUEST.fields_by_name['logical_pipeline_id']._options = None
|
31
30
|
_COMPILEREQUEST.fields_by_name['logical_pipeline_id']._serialized_options = b'\342\336\037\021LogicalPipelineID'
|
32
|
-
|
33
|
-
|
34
|
-
_COMPILEREQUEST._serialized_start=
|
35
|
-
_COMPILEREQUEST._serialized_end=
|
36
|
-
_COMPILERESPONSE._serialized_start=
|
37
|
-
_COMPILERESPONSE._serialized_end=
|
38
|
-
_COMPILERSERVICE._serialized_start=
|
39
|
-
_COMPILERSERVICE._serialized_end=
|
31
|
+
_COMPILEREQUEST.fields_by_name['gem_config']._options = None
|
32
|
+
_COMPILEREQUEST.fields_by_name['gem_config']._serialized_options = b'\342\336\037\tGEMConfig'
|
33
|
+
_COMPILEREQUEST._serialized_start=244
|
34
|
+
_COMPILEREQUEST._serialized_end=669
|
35
|
+
_COMPILERESPONSE._serialized_start=671
|
36
|
+
_COMPILERESPONSE._serialized_end=758
|
37
|
+
_COMPILERSERVICE._serialized_start=761
|
38
|
+
_COMPILERSERVICE._serialized_end=900
|
40
39
|
# @@protoc_insertion_point(module_scope)
|
@@ -0,0 +1,134 @@
|
|
1
|
+
# Copyright 2023- Gimlet Labs, Inc.
|
2
|
+
#
|
3
|
+
# Licensed under the Apache License, Version 2.0 (the "License");
|
4
|
+
# you may not use this file except in compliance with the License.
|
5
|
+
# You may obtain a copy of the License at
|
6
|
+
#
|
7
|
+
# http://www.apache.org/licenses/LICENSE-2.0
|
8
|
+
#
|
9
|
+
# Unless required by applicable law or agreed to in writing, software
|
10
|
+
# distributed under the License is distributed on an "AS IS" BASIS,
|
11
|
+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
12
|
+
# See the License for the specific language governing permissions and
|
13
|
+
# limitations under the License.
|
14
|
+
#
|
15
|
+
# SPDX-License-Identifier: Apache-2.0
|
16
|
+
|
17
|
+
|
18
|
+
import copy
|
19
|
+
|
20
|
+
import torch
|
21
|
+
|
22
|
+
|
23
|
+
def _to_module_list(val):
|
24
|
+
if isinstance(val, torch.nn.Module):
|
25
|
+
return val
|
26
|
+
|
27
|
+
converted = []
|
28
|
+
for item in val:
|
29
|
+
c = _to_module_container(item)
|
30
|
+
if c is None:
|
31
|
+
return None
|
32
|
+
converted.append(c)
|
33
|
+
if not converted:
|
34
|
+
return None
|
35
|
+
return torch.nn.ModuleList(converted)
|
36
|
+
|
37
|
+
|
38
|
+
def _to_module_dict(val):
|
39
|
+
if isinstance(val, torch.nn.Module):
|
40
|
+
return val
|
41
|
+
|
42
|
+
converted = dict()
|
43
|
+
for k, v in val.items():
|
44
|
+
c = _to_module_container(v)
|
45
|
+
if c is None:
|
46
|
+
return None
|
47
|
+
converted[k] = v
|
48
|
+
if not converted:
|
49
|
+
return None
|
50
|
+
return torch.nn.ModuleDict(converted)
|
51
|
+
|
52
|
+
|
53
|
+
def _to_module_container(val, root=False):
|
54
|
+
if isinstance(val, torch.nn.Module) and not root:
|
55
|
+
# We deepcopy the module here because in some situations, torch export()
|
56
|
+
# will overwrite the tensor values with FakeTensors due to a bug in a tracing step.
|
57
|
+
#
|
58
|
+
# This happens for models written in the following way:
|
59
|
+
#
|
60
|
+
# ```
|
61
|
+
# self.layers = [module1, module2, module3]
|
62
|
+
# for i, module in enumerate(self.layers):
|
63
|
+
# self.add_module(f"layer_{i}", module)
|
64
|
+
# ```
|
65
|
+
# such as here:
|
66
|
+
# https://github.com/huggingface/transformers/blob/f51ac9e059a78049362803c1d606a2c6a8160ee4/src/transformers/models/maskformer/modeling_maskformer.py#L1142
|
67
|
+
#
|
68
|
+
# The _replace_containers_with_torch_containers function will replace the list
|
69
|
+
# with a ModuleList, but the layers will point to the same Modules.
|
70
|
+
#
|
71
|
+
# During tracing, there is a reparameterization step where
|
72
|
+
# 1. real tensors are replaced with FakeTensors,
|
73
|
+
# 2. some tracing work is done, and then
|
74
|
+
# 3. the FakeTensors get replaced with the original tensors.
|
75
|
+
#
|
76
|
+
# However, when you have a double-registered module like the above, the dictionary holding the original tensors
|
77
|
+
# gets overwritten during the 1. real tensor -> FakeTensor conversion which means during the 3.
|
78
|
+
# FakeTensor -> original_tensor replacement, FakeTensors are incorrectly returned, causing downstream errors
|
79
|
+
# when trying to use FakeTensors as real tensors.
|
80
|
+
#
|
81
|
+
# Note that this entire codepath is not hit for many models because models tend to use the ModuleList/ModuleDict
|
82
|
+
# pattern.
|
83
|
+
return copy.deepcopy(val)
|
84
|
+
if isinstance(val, dict):
|
85
|
+
return _to_module_dict(val)
|
86
|
+
if isinstance(val, list) or isinstance(val, tuple):
|
87
|
+
return _to_module_list(val)
|
88
|
+
|
89
|
+
return None
|
90
|
+
|
91
|
+
|
92
|
+
def _replace_containers_with_torch_containers(mod: torch.nn.Module):
|
93
|
+
"""Replaces any lists, dict, or nested combinations of lists/dicts that are attributes of `mod` with torch.nn.ModuleList/torch.nn.ModuleDict
|
94
|
+
|
95
|
+
This fixes some `module is not installed as a submodule` errors.
|
96
|
+
."""
|
97
|
+
_excludes = set(["_modules"])
|
98
|
+
replacements = dict()
|
99
|
+
for name, val in mod.__dict__.items():
|
100
|
+
if name in _excludes:
|
101
|
+
continue
|
102
|
+
c = _to_module_container(val, root=True)
|
103
|
+
if c is None:
|
104
|
+
continue
|
105
|
+
replacements[name] = c
|
106
|
+
|
107
|
+
for name, repl in replacements.items():
|
108
|
+
setattr(mod, name, repl)
|
109
|
+
|
110
|
+
|
111
|
+
def _ensure_submodules_accessed_through_getattr(mod: torch.nn.Module):
|
112
|
+
"""This removes any registered modules from `mod.__dict__`.
|
113
|
+
|
114
|
+
This ensures that all accesses of submodules go through torch's __getattr__ infra,
|
115
|
+
preventing certain cases of `module is not installed as a submodule` errors.
|
116
|
+
"""
|
117
|
+
if not hasattr(mod, "_modules"):
|
118
|
+
return
|
119
|
+
for name in mod._modules:
|
120
|
+
if name in mod.__dict__:
|
121
|
+
del mod.__dict__[name]
|
122
|
+
|
123
|
+
|
124
|
+
def submodule_registration_workarounds(mod: torch.nn.Module):
|
125
|
+
"""Apply submodule registration workarounds recursively to all submodules of `mod`."""
|
126
|
+
_ensure_submodules_accessed_through_getattr(mod)
|
127
|
+
_replace_containers_with_torch_containers(mod)
|
128
|
+
# We intentionally don't use `mod.modules()` (which returns all recursive submodules) here because we want only
|
129
|
+
# the direct dependencies of `mod`. So that we get a pre-order traversal, ensuring the workarounds are applied
|
130
|
+
# before we check for submodules.
|
131
|
+
for submod in mod._modules.values():
|
132
|
+
if submod is None or submod is mod:
|
133
|
+
continue
|
134
|
+
submodule_registration_workarounds(submod)
|