diff --git a/semantic_model_generator/protos/semantic_model.proto b/semantic_model_generator/protos/semantic_model.proto index f5331fe3..f0018ef6 100644 --- a/semantic_model_generator/protos/semantic_model.proto +++ b/semantic_model_generator/protos/semantic_model.proto @@ -289,6 +289,8 @@ message SemanticModel { repeated Relationship relationships = 5 [(optional) = true]; // List of verified queries for this semantic model. repeated VerifiedQuery verified_queries = 6 [(optional) = true]; + // Custom instructions that will be applied to the final SQL generation. + string custom_instructions = 7 [(optional) = true]; } // VerifiedQuery represents a (question, sql) pair that has been manually diff --git a/semantic_model_generator/protos/semantic_model_pb2.py b/semantic_model_generator/protos/semantic_model_pb2.py index c66fe0ee..e79f0612 100644 --- a/semantic_model_generator/protos/semantic_model_pb2.py +++ b/semantic_model_generator/protos/semantic_model_pb2.py @@ -1,13 +1,12 @@ # -*- coding: utf-8 -*- # Generated by the protocol buffer compiler. DO NOT EDIT! # source: semantic_model.proto -# Protobuf Python Version: 5.26.1 +# Protobuf Python Version: 4.25.1 """Generated protocol buffer code.""" from google.protobuf import descriptor as _descriptor from google.protobuf import descriptor_pool as _descriptor_pool from google.protobuf import symbol_database as _symbol_database from google.protobuf.internal import builder as _builder - # @@protoc_insertion_point(imports) _sym_db = _symbol_database.Default() @@ -16,277 +15,165 @@ from google.protobuf import descriptor_pb2 as google_dot_protobuf_dot_descriptor__pb2 -DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile( - b'\n\x14semantic_model.proto\x12\x18semantic_model_generator\x1a google/protobuf/descriptor.proto"/\n\x0fRetrievalResult\x12\r\n\x05value\x18\x01 \x01(\t\x12\r\n\x05score\x18\x02 \x01(\x02"\xcb\x03\n\x06\x43olumn\x12\x12\n\x04name\x18\x01 \x01(\tB\x04\xa0\x82\x19\x01\x12\x16\n\x08synonyms\x18\x02 \x03(\tB\x04\x90\x82\x19\x01\x12\x19\n\x0b\x64\x65scription\x18\x03 \x01(\tB\x04\x90\x82\x19\x01\x12\x12\n\x04\x65xpr\x18\x04 \x01(\tB\x04\x98\x82\x19\x01\x12\x11\n\tdata_type\x18\x05 \x01(\t\x12\x32\n\x04kind\x18\x06 \x01(\x0e\x32$.semantic_model_generator.ColumnKind\x12\x14\n\x06unique\x18\x07 \x01(\x08\x42\x04\x90\x82\x19\x01\x12L\n\x13\x64\x65\x66\x61ult_aggregation\x18\x08 \x01(\x0e\x32).semantic_model_generator.AggregationTypeB\x04\x90\x82\x19\x01\x12\x1b\n\rsample_values\x18\t \x03(\tB\x04\x90\x82\x19\x01\x12\'\n\x19index_and_retrieve_values\x18\n \x01(\x08\x42\x04\x90\x82\x19\x01\x12K\n\x12retrieved_literals\x18\x0b \x03(\x0b\x32).semantic_model_generator.RetrievalResultB\x04\x90\x82\x19\x01\x12(\n\x1a\x63ortex_search_service_name\x18\x0c \x01(\tB\x04\x90\x82\x19\x01"\xd6\x01\n\tDimension\x12\x12\n\x04name\x18\x01 \x01(\tB\x04\xa0\x82\x19\x01\x12\x16\n\x08synonyms\x18\x02 \x03(\tB\x04\x90\x82\x19\x01\x12\x19\n\x0b\x64\x65scription\x18\x03 \x01(\tB\x04\x90\x82\x19\x01\x12\x12\n\x04\x65xpr\x18\x04 \x01(\tB\x04\x98\x82\x19\x01\x12\x11\n\tdata_type\x18\x05 \x01(\t\x12\x14\n\x06unique\x18\x06 \x01(\x08\x42\x04\x90\x82\x19\x01\x12\x1b\n\rsample_values\x18\x07 \x03(\tB\x04\x90\x82\x19\x01\x12(\n\x1a\x63ortex_search_service_name\x18\t \x01(\tB\x04\x90\x82\x19\x01"\xb0\x01\n\rTimeDimension\x12\x12\n\x04name\x18\x01 \x01(\tB\x04\xa0\x82\x19\x01\x12\x16\n\x08synonyms\x18\x02 \x03(\tB\x04\x90\x82\x19\x01\x12\x19\n\x0b\x64\x65scription\x18\x03 \x01(\tB\x04\x90\x82\x19\x01\x12\x12\n\x04\x65xpr\x18\x04 \x01(\tB\x04\x98\x82\x19\x01\x12\x11\n\tdata_type\x18\x05 \x01(\t\x12\x14\n\x06unique\x18\x06 \x01(\x08\x42\x04\x90\x82\x19\x01\x12\x1b\n\rsample_values\x18\x07 \x03(\tB\x04\x90\x82\x19\x01"\xe2\x01\n\x07Measure\x12\x12\n\x04name\x18\x01 \x01(\tB\x04\xa0\x82\x19\x01\x12\x16\n\x08synonyms\x18\x02 \x03(\tB\x04\x90\x82\x19\x01\x12\x19\n\x0b\x64\x65scription\x18\x03 \x01(\tB\x04\x90\x82\x19\x01\x12\x12\n\x04\x65xpr\x18\x04 \x01(\tB\x04\x98\x82\x19\x01\x12\x11\n\tdata_type\x18\x05 \x01(\t\x12L\n\x13\x64\x65\x66\x61ult_aggregation\x18\x06 \x01(\x0e\x32).semantic_model_generator.AggregationTypeB\x04\x90\x82\x19\x01\x12\x1b\n\rsample_values\x18\x07 \x03(\tB\x04\x90\x82\x19\x01"b\n\x0bNamedFilter\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x16\n\x08synonyms\x18\x02 \x03(\tB\x04\x90\x82\x19\x01\x12\x19\n\x0b\x64\x65scription\x18\x03 \x01(\tB\x04\x90\x82\x19\x01\x12\x12\n\x04\x65xpr\x18\x04 \x01(\tB\x04\x98\x82\x19\x01"F\n\x13\x46ullyQualifiedTable\x12\x10\n\x08\x64\x61tabase\x18\x01 \x01(\t\x12\x0e\n\x06schema\x18\x02 \x01(\t\x12\r\n\x05table\x18\x03 \x01(\t"\x1d\n\nPrimaryKey\x12\x0f\n\x07\x63olumns\x18\x01 \x03(\t"\x8b\x04\n\x05Table\x12\x12\n\x04name\x18\x01 \x01(\tB\x04\xa0\x82\x19\x01\x12\x16\n\x08synonyms\x18\x02 \x03(\tB\x04\x90\x82\x19\x01\x12\x19\n\x0b\x64\x65scription\x18\x03 \x01(\tB\x04\x90\x82\x19\x01\x12\x41\n\nbase_table\x18\x04 \x01(\x0b\x32-.semantic_model_generator.FullyQualifiedTable\x12\x37\n\x07\x63olumns\x18\x05 \x03(\x0b\x32 .semantic_model_generator.ColumnB\x04\x90\x82\x19\x01\x12=\n\ndimensions\x18\t \x03(\x0b\x32#.semantic_model_generator.DimensionB\x04\x90\x82\x19\x01\x12\x46\n\x0ftime_dimensions\x18\n \x03(\x0b\x32\'.semantic_model_generator.TimeDimensionB\x04\x90\x82\x19\x01\x12\x39\n\x08measures\x18\x0b \x03(\x0b\x32!.semantic_model_generator.MeasureB\x04\x90\x82\x19\x01\x12?\n\x0bprimary_key\x18\x06 \x01(\x0b\x32$.semantic_model_generator.PrimaryKeyB\x04\x90\x82\x19\x01\x12<\n\x07\x66ilters\x18\x08 \x03(\x0b\x32%.semantic_model_generator.NamedFilterB\x04\x90\x82\x19\x01"\xa2\x01\n\x06Metric\x12\x12\n\x04name\x18\x01 \x01(\tB\x04\xa0\x82\x19\x01\x12\x16\n\x08synonyms\x18\x02 \x03(\tB\x04\x90\x82\x19\x01\x12\x19\n\x0b\x64\x65scription\x18\x03 \x01(\tB\x04\x90\x82\x19\x01\x12\x12\n\x04\x65xpr\x18\x04 \x01(\tB\x04\x98\x82\x19\x01\x12=\n\x06\x66ilter\x18\x05 \x01(\x0b\x32\'.semantic_model_generator.MetricsFilterB\x04\x90\x82\x19\x01"#\n\rMetricsFilter\x12\x12\n\x04\x65xpr\x18\x01 \x01(\tB\x04\x98\x82\x19\x01"8\n\x0bRelationKey\x12\x13\n\x0bleft_column\x18\x01 \x01(\t\x12\x14\n\x0cright_column\x18\x02 \x01(\t"\x88\x02\n\x0cRelationship\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x12\n\nleft_table\x18\x02 \x01(\t\x12\x13\n\x0bright_table\x18\x03 \x01(\t\x12\x43\n\x14relationship_columns\x18\x07 \x03(\x0b\x32%.semantic_model_generator.RelationKey\x12\x35\n\tjoin_type\x18\x05 \x01(\x0e\x32".semantic_model_generator.JoinType\x12\x45\n\x11relationship_type\x18\x06 \x01(\x0e\x32*.semantic_model_generator.RelationshipType"\xb0\x02\n\rSemanticModel\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x19\n\x0b\x64\x65scription\x18\x02 \x01(\tB\x04\x90\x82\x19\x01\x12/\n\x06tables\x18\x03 \x03(\x0b\x32\x1f.semantic_model_generator.Table\x12\x37\n\x07metrics\x18\x04 \x03(\x0b\x32 .semantic_model_generator.MetricB\x04\x90\x82\x19\x01\x12\x43\n\rrelationships\x18\x05 \x03(\x0b\x32&.semantic_model_generator.RelationshipB\x04\x90\x82\x19\x01\x12G\n\x10verified_queries\x18\x06 \x03(\x0b\x32\'.semantic_model_generator.VerifiedQueryB\x04\x90\x82\x19\x01"\xc5\x01\n\rVerifiedQuery\x12\x0c\n\x04name\x18\x01 \x01(\t\x12!\n\x13semantic_model_name\x18\x02 \x01(\tB\x04\x90\x82\x19\x01\x12\x10\n\x08question\x18\x03 \x01(\t\x12\x11\n\x03sql\x18\x04 \x01(\tB\x04\x98\x82\x19\x01\x12\x19\n\x0bverified_at\x18\x05 \x01(\x03\x42\x04\x90\x82\x19\x01\x12\x19\n\x0bverified_by\x18\x06 \x01(\tB\x04\x90\x82\x19\x01\x12(\n\x1ause_as_onboarding_question\x18\x07 \x01(\x08\x42\x04\x90\x82\x19\x01"\\\n\x17VerifiedQueryRepository\x12\x41\n\x10verified_queries\x18\x01 \x03(\x0b\x32\'.semantic_model_generator.VerifiedQuery*~\n\x0f\x41ggregationType\x12\x1c\n\x18\x61ggregation_type_unknown\x10\x00\x12\x07\n\x03sum\x10\x01\x12\x07\n\x03\x61vg\x10\x02\x12\n\n\x06median\x10\x07\x12\x07\n\x03min\x10\x03\x12\x07\n\x03max\x10\x04\x12\t\n\x05\x63ount\x10\x05\x12\x12\n\x0e\x63ount_distinct\x10\x06*U\n\nColumnKind\x12\x17\n\x13\x63olumn_kind_unknown\x10\x00\x12\r\n\tdimension\x10\x01\x12\x0b\n\x07measure\x10\x02\x12\x12\n\x0etime_dimension\x10\x03*<\n\x08JoinType\x12\x15\n\x11join_type_unknown\x10\x00\x12\t\n\x05inner\x10\x01\x12\x0e\n\nleft_outer\x10\x02*R\n\x10RelationshipType\x12\x1d\n\x19relationship_type_unknown\x10\x00\x12\x0e\n\none_to_one\x10\x01\x12\x0f\n\x0bmany_to_one\x10\x02:4\n\x08optional\x12\x1d.google.protobuf.FieldOptions\x18\xa2\x90\x03 \x01(\x08\x88\x01\x01::\n\x0esql_expression\x12\x1d.google.protobuf.FieldOptions\x18\xa3\x90\x03 \x01(\x08\x88\x01\x01:4\n\x08id_field\x12\x1d.google.protobuf.FieldOptions\x18\xa4\x90\x03 \x01(\x08\x88\x01\x01\x62\x06proto3' -) +DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x14semantic_model.proto\x12\x18semantic_model_generator\x1a google/protobuf/descriptor.proto\"/\n\x0fRetrievalResult\x12\r\n\x05value\x18\x01 \x01(\t\x12\r\n\x05score\x18\x02 \x01(\x02\"\xcb\x03\n\x06\x43olumn\x12\x12\n\x04name\x18\x01 \x01(\tB\x04\xa0\x82\x19\x01\x12\x16\n\x08synonyms\x18\x02 \x03(\tB\x04\x90\x82\x19\x01\x12\x19\n\x0b\x64\x65scription\x18\x03 \x01(\tB\x04\x90\x82\x19\x01\x12\x12\n\x04\x65xpr\x18\x04 \x01(\tB\x04\x98\x82\x19\x01\x12\x11\n\tdata_type\x18\x05 \x01(\t\x12\x32\n\x04kind\x18\x06 \x01(\x0e\x32$.semantic_model_generator.ColumnKind\x12\x14\n\x06unique\x18\x07 \x01(\x08\x42\x04\x90\x82\x19\x01\x12L\n\x13\x64\x65\x66\x61ult_aggregation\x18\x08 \x01(\x0e\x32).semantic_model_generator.AggregationTypeB\x04\x90\x82\x19\x01\x12\x1b\n\rsample_values\x18\t \x03(\tB\x04\x90\x82\x19\x01\x12\'\n\x19index_and_retrieve_values\x18\n \x01(\x08\x42\x04\x90\x82\x19\x01\x12K\n\x12retrieved_literals\x18\x0b \x03(\x0b\x32).semantic_model_generator.RetrievalResultB\x04\x90\x82\x19\x01\x12(\n\x1a\x63ortex_search_service_name\x18\x0c \x01(\tB\x04\x90\x82\x19\x01\"\xd6\x01\n\tDimension\x12\x12\n\x04name\x18\x01 \x01(\tB\x04\xa0\x82\x19\x01\x12\x16\n\x08synonyms\x18\x02 \x03(\tB\x04\x90\x82\x19\x01\x12\x19\n\x0b\x64\x65scription\x18\x03 \x01(\tB\x04\x90\x82\x19\x01\x12\x12\n\x04\x65xpr\x18\x04 \x01(\tB\x04\x98\x82\x19\x01\x12\x11\n\tdata_type\x18\x05 \x01(\t\x12\x14\n\x06unique\x18\x06 \x01(\x08\x42\x04\x90\x82\x19\x01\x12\x1b\n\rsample_values\x18\x07 \x03(\tB\x04\x90\x82\x19\x01\x12(\n\x1a\x63ortex_search_service_name\x18\t \x01(\tB\x04\x90\x82\x19\x01\"\xb0\x01\n\rTimeDimension\x12\x12\n\x04name\x18\x01 \x01(\tB\x04\xa0\x82\x19\x01\x12\x16\n\x08synonyms\x18\x02 \x03(\tB\x04\x90\x82\x19\x01\x12\x19\n\x0b\x64\x65scription\x18\x03 \x01(\tB\x04\x90\x82\x19\x01\x12\x12\n\x04\x65xpr\x18\x04 \x01(\tB\x04\x98\x82\x19\x01\x12\x11\n\tdata_type\x18\x05 \x01(\t\x12\x14\n\x06unique\x18\x06 \x01(\x08\x42\x04\x90\x82\x19\x01\x12\x1b\n\rsample_values\x18\x07 \x03(\tB\x04\x90\x82\x19\x01\"\xe2\x01\n\x07Measure\x12\x12\n\x04name\x18\x01 \x01(\tB\x04\xa0\x82\x19\x01\x12\x16\n\x08synonyms\x18\x02 \x03(\tB\x04\x90\x82\x19\x01\x12\x19\n\x0b\x64\x65scription\x18\x03 \x01(\tB\x04\x90\x82\x19\x01\x12\x12\n\x04\x65xpr\x18\x04 \x01(\tB\x04\x98\x82\x19\x01\x12\x11\n\tdata_type\x18\x05 \x01(\t\x12L\n\x13\x64\x65\x66\x61ult_aggregation\x18\x06 \x01(\x0e\x32).semantic_model_generator.AggregationTypeB\x04\x90\x82\x19\x01\x12\x1b\n\rsample_values\x18\x07 \x03(\tB\x04\x90\x82\x19\x01\"b\n\x0bNamedFilter\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x16\n\x08synonyms\x18\x02 \x03(\tB\x04\x90\x82\x19\x01\x12\x19\n\x0b\x64\x65scription\x18\x03 \x01(\tB\x04\x90\x82\x19\x01\x12\x12\n\x04\x65xpr\x18\x04 \x01(\tB\x04\x98\x82\x19\x01\"F\n\x13\x46ullyQualifiedTable\x12\x10\n\x08\x64\x61tabase\x18\x01 \x01(\t\x12\x0e\n\x06schema\x18\x02 \x01(\t\x12\r\n\x05table\x18\x03 \x01(\t\"\x1d\n\nPrimaryKey\x12\x0f\n\x07\x63olumns\x18\x01 \x03(\t\"\x8b\x04\n\x05Table\x12\x12\n\x04name\x18\x01 \x01(\tB\x04\xa0\x82\x19\x01\x12\x16\n\x08synonyms\x18\x02 \x03(\tB\x04\x90\x82\x19\x01\x12\x19\n\x0b\x64\x65scription\x18\x03 \x01(\tB\x04\x90\x82\x19\x01\x12\x41\n\nbase_table\x18\x04 \x01(\x0b\x32-.semantic_model_generator.FullyQualifiedTable\x12\x37\n\x07\x63olumns\x18\x05 \x03(\x0b\x32 .semantic_model_generator.ColumnB\x04\x90\x82\x19\x01\x12=\n\ndimensions\x18\t \x03(\x0b\x32#.semantic_model_generator.DimensionB\x04\x90\x82\x19\x01\x12\x46\n\x0ftime_dimensions\x18\n \x03(\x0b\x32\'.semantic_model_generator.TimeDimensionB\x04\x90\x82\x19\x01\x12\x39\n\x08measures\x18\x0b \x03(\x0b\x32!.semantic_model_generator.MeasureB\x04\x90\x82\x19\x01\x12?\n\x0bprimary_key\x18\x06 \x01(\x0b\x32$.semantic_model_generator.PrimaryKeyB\x04\x90\x82\x19\x01\x12<\n\x07\x66ilters\x18\x08 \x03(\x0b\x32%.semantic_model_generator.NamedFilterB\x04\x90\x82\x19\x01\"\xa2\x01\n\x06Metric\x12\x12\n\x04name\x18\x01 \x01(\tB\x04\xa0\x82\x19\x01\x12\x16\n\x08synonyms\x18\x02 \x03(\tB\x04\x90\x82\x19\x01\x12\x19\n\x0b\x64\x65scription\x18\x03 \x01(\tB\x04\x90\x82\x19\x01\x12\x12\n\x04\x65xpr\x18\x04 \x01(\tB\x04\x98\x82\x19\x01\x12=\n\x06\x66ilter\x18\x05 \x01(\x0b\x32\'.semantic_model_generator.MetricsFilterB\x04\x90\x82\x19\x01\"#\n\rMetricsFilter\x12\x12\n\x04\x65xpr\x18\x01 \x01(\tB\x04\x98\x82\x19\x01\"8\n\x0bRelationKey\x12\x13\n\x0bleft_column\x18\x01 \x01(\t\x12\x14\n\x0cright_column\x18\x02 \x01(\t\"\x88\x02\n\x0cRelationship\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x12\n\nleft_table\x18\x02 \x01(\t\x12\x13\n\x0bright_table\x18\x03 \x01(\t\x12\x43\n\x14relationship_columns\x18\x07 \x03(\x0b\x32%.semantic_model_generator.RelationKey\x12\x35\n\tjoin_type\x18\x05 \x01(\x0e\x32\".semantic_model_generator.JoinType\x12\x45\n\x11relationship_type\x18\x06 \x01(\x0e\x32*.semantic_model_generator.RelationshipType\"\xd3\x02\n\rSemanticModel\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x19\n\x0b\x64\x65scription\x18\x02 \x01(\tB\x04\x90\x82\x19\x01\x12/\n\x06tables\x18\x03 \x03(\x0b\x32\x1f.semantic_model_generator.Table\x12\x37\n\x07metrics\x18\x04 \x03(\x0b\x32 .semantic_model_generator.MetricB\x04\x90\x82\x19\x01\x12\x43\n\rrelationships\x18\x05 \x03(\x0b\x32&.semantic_model_generator.RelationshipB\x04\x90\x82\x19\x01\x12G\n\x10verified_queries\x18\x06 \x03(\x0b\x32\'.semantic_model_generator.VerifiedQueryB\x04\x90\x82\x19\x01\x12!\n\x13\x63ustom_instructions\x18\x07 \x01(\tB\x04\x90\x82\x19\x01\"\xc5\x01\n\rVerifiedQuery\x12\x0c\n\x04name\x18\x01 \x01(\t\x12!\n\x13semantic_model_name\x18\x02 \x01(\tB\x04\x90\x82\x19\x01\x12\x10\n\x08question\x18\x03 \x01(\t\x12\x11\n\x03sql\x18\x04 \x01(\tB\x04\x98\x82\x19\x01\x12\x19\n\x0bverified_at\x18\x05 \x01(\x03\x42\x04\x90\x82\x19\x01\x12\x19\n\x0bverified_by\x18\x06 \x01(\tB\x04\x90\x82\x19\x01\x12(\n\x1ause_as_onboarding_question\x18\x07 \x01(\x08\x42\x04\x90\x82\x19\x01\"\\\n\x17VerifiedQueryRepository\x12\x41\n\x10verified_queries\x18\x01 \x03(\x0b\x32\'.semantic_model_generator.VerifiedQuery*~\n\x0f\x41ggregationType\x12\x1c\n\x18\x61ggregation_type_unknown\x10\x00\x12\x07\n\x03sum\x10\x01\x12\x07\n\x03\x61vg\x10\x02\x12\n\n\x06median\x10\x07\x12\x07\n\x03min\x10\x03\x12\x07\n\x03max\x10\x04\x12\t\n\x05\x63ount\x10\x05\x12\x12\n\x0e\x63ount_distinct\x10\x06*U\n\nColumnKind\x12\x17\n\x13\x63olumn_kind_unknown\x10\x00\x12\r\n\tdimension\x10\x01\x12\x0b\n\x07measure\x10\x02\x12\x12\n\x0etime_dimension\x10\x03*<\n\x08JoinType\x12\x15\n\x11join_type_unknown\x10\x00\x12\t\n\x05inner\x10\x01\x12\x0e\n\nleft_outer\x10\x02*R\n\x10RelationshipType\x12\x1d\n\x19relationship_type_unknown\x10\x00\x12\x0e\n\none_to_one\x10\x01\x12\x0f\n\x0bmany_to_one\x10\x02:4\n\x08optional\x12\x1d.google.protobuf.FieldOptions\x18\xa2\x90\x03 \x01(\x08\x88\x01\x01::\n\x0esql_expression\x12\x1d.google.protobuf.FieldOptions\x18\xa3\x90\x03 \x01(\x08\x88\x01\x01:4\n\x08id_field\x12\x1d.google.protobuf.FieldOptions\x18\xa4\x90\x03 \x01(\x08\x88\x01\x01\x62\x06proto3') _globals = globals() _builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals) -_builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, "semantic_model_pb2", _globals) -if not _descriptor._USE_C_DESCRIPTORS: - DESCRIPTOR._loaded_options = None - _globals["_COLUMN"].fields_by_name["name"]._loaded_options = None - _globals["_COLUMN"].fields_by_name["name"]._serialized_options = b"\240\202\031\001" - _globals["_COLUMN"].fields_by_name["synonyms"]._loaded_options = None - _globals["_COLUMN"].fields_by_name[ - "synonyms" - ]._serialized_options = b"\220\202\031\001" - _globals["_COLUMN"].fields_by_name["description"]._loaded_options = None - _globals["_COLUMN"].fields_by_name[ - "description" - ]._serialized_options = b"\220\202\031\001" - _globals["_COLUMN"].fields_by_name["expr"]._loaded_options = None - _globals["_COLUMN"].fields_by_name["expr"]._serialized_options = b"\230\202\031\001" - _globals["_COLUMN"].fields_by_name["unique"]._loaded_options = None - _globals["_COLUMN"].fields_by_name[ - "unique" - ]._serialized_options = b"\220\202\031\001" - _globals["_COLUMN"].fields_by_name["default_aggregation"]._loaded_options = None - _globals["_COLUMN"].fields_by_name[ - "default_aggregation" - ]._serialized_options = b"\220\202\031\001" - _globals["_COLUMN"].fields_by_name["sample_values"]._loaded_options = None - _globals["_COLUMN"].fields_by_name[ - "sample_values" - ]._serialized_options = b"\220\202\031\001" - _globals["_COLUMN"].fields_by_name[ - "index_and_retrieve_values" - ]._loaded_options = None - _globals["_COLUMN"].fields_by_name[ - "index_and_retrieve_values" - ]._serialized_options = b"\220\202\031\001" - _globals["_COLUMN"].fields_by_name["retrieved_literals"]._loaded_options = None - _globals["_COLUMN"].fields_by_name[ - "retrieved_literals" - ]._serialized_options = b"\220\202\031\001" - _globals["_COLUMN"].fields_by_name[ - "cortex_search_service_name" - ]._loaded_options = None - _globals["_COLUMN"].fields_by_name[ - "cortex_search_service_name" - ]._serialized_options = b"\220\202\031\001" - _globals["_DIMENSION"].fields_by_name["name"]._loaded_options = None - _globals["_DIMENSION"].fields_by_name[ - "name" - ]._serialized_options = b"\240\202\031\001" - _globals["_DIMENSION"].fields_by_name["synonyms"]._loaded_options = None - _globals["_DIMENSION"].fields_by_name[ - "synonyms" - ]._serialized_options = b"\220\202\031\001" - _globals["_DIMENSION"].fields_by_name["description"]._loaded_options = None - _globals["_DIMENSION"].fields_by_name[ - "description" - ]._serialized_options = b"\220\202\031\001" - _globals["_DIMENSION"].fields_by_name["expr"]._loaded_options = None - _globals["_DIMENSION"].fields_by_name[ - "expr" - ]._serialized_options = b"\230\202\031\001" - _globals["_DIMENSION"].fields_by_name["unique"]._loaded_options = None - _globals["_DIMENSION"].fields_by_name[ - "unique" - ]._serialized_options = b"\220\202\031\001" - _globals["_DIMENSION"].fields_by_name["sample_values"]._loaded_options = None - _globals["_DIMENSION"].fields_by_name[ - "sample_values" - ]._serialized_options = b"\220\202\031\001" - _globals["_DIMENSION"].fields_by_name[ - "cortex_search_service_name" - ]._loaded_options = None - _globals["_DIMENSION"].fields_by_name[ - "cortex_search_service_name" - ]._serialized_options = b"\220\202\031\001" - _globals["_TIMEDIMENSION"].fields_by_name["name"]._loaded_options = None - _globals["_TIMEDIMENSION"].fields_by_name[ - "name" - ]._serialized_options = b"\240\202\031\001" - _globals["_TIMEDIMENSION"].fields_by_name["synonyms"]._loaded_options = None - _globals["_TIMEDIMENSION"].fields_by_name[ - "synonyms" - ]._serialized_options = b"\220\202\031\001" - _globals["_TIMEDIMENSION"].fields_by_name["description"]._loaded_options = None - _globals["_TIMEDIMENSION"].fields_by_name[ - "description" - ]._serialized_options = b"\220\202\031\001" - _globals["_TIMEDIMENSION"].fields_by_name["expr"]._loaded_options = None - _globals["_TIMEDIMENSION"].fields_by_name[ - "expr" - ]._serialized_options = b"\230\202\031\001" - _globals["_TIMEDIMENSION"].fields_by_name["unique"]._loaded_options = None - _globals["_TIMEDIMENSION"].fields_by_name[ - "unique" - ]._serialized_options = b"\220\202\031\001" - _globals["_TIMEDIMENSION"].fields_by_name["sample_values"]._loaded_options = None - _globals["_TIMEDIMENSION"].fields_by_name[ - "sample_values" - ]._serialized_options = b"\220\202\031\001" - _globals["_MEASURE"].fields_by_name["name"]._loaded_options = None - _globals["_MEASURE"].fields_by_name[ - "name" - ]._serialized_options = b"\240\202\031\001" - _globals["_MEASURE"].fields_by_name["synonyms"]._loaded_options = None - _globals["_MEASURE"].fields_by_name[ - "synonyms" - ]._serialized_options = b"\220\202\031\001" - _globals["_MEASURE"].fields_by_name["description"]._loaded_options = None - _globals["_MEASURE"].fields_by_name[ - "description" - ]._serialized_options = b"\220\202\031\001" - _globals["_MEASURE"].fields_by_name["expr"]._loaded_options = None - _globals["_MEASURE"].fields_by_name[ - "expr" - ]._serialized_options = b"\230\202\031\001" - _globals["_MEASURE"].fields_by_name["default_aggregation"]._loaded_options = None - _globals["_MEASURE"].fields_by_name[ - "default_aggregation" - ]._serialized_options = b"\220\202\031\001" - _globals["_MEASURE"].fields_by_name["sample_values"]._loaded_options = None - _globals["_MEASURE"].fields_by_name[ - "sample_values" - ]._serialized_options = b"\220\202\031\001" - _globals["_NAMEDFILTER"].fields_by_name["synonyms"]._loaded_options = None - _globals["_NAMEDFILTER"].fields_by_name[ - "synonyms" - ]._serialized_options = b"\220\202\031\001" - _globals["_NAMEDFILTER"].fields_by_name["description"]._loaded_options = None - _globals["_NAMEDFILTER"].fields_by_name[ - "description" - ]._serialized_options = b"\220\202\031\001" - _globals["_NAMEDFILTER"].fields_by_name["expr"]._loaded_options = None - _globals["_NAMEDFILTER"].fields_by_name[ - "expr" - ]._serialized_options = b"\230\202\031\001" - _globals["_TABLE"].fields_by_name["name"]._loaded_options = None - _globals["_TABLE"].fields_by_name["name"]._serialized_options = b"\240\202\031\001" - _globals["_TABLE"].fields_by_name["synonyms"]._loaded_options = None - _globals["_TABLE"].fields_by_name[ - "synonyms" - ]._serialized_options = b"\220\202\031\001" - _globals["_TABLE"].fields_by_name["description"]._loaded_options = None - _globals["_TABLE"].fields_by_name[ - "description" - ]._serialized_options = b"\220\202\031\001" - _globals["_TABLE"].fields_by_name["columns"]._loaded_options = None - _globals["_TABLE"].fields_by_name[ - "columns" - ]._serialized_options = b"\220\202\031\001" - _globals["_TABLE"].fields_by_name["dimensions"]._loaded_options = None - _globals["_TABLE"].fields_by_name[ - "dimensions" - ]._serialized_options = b"\220\202\031\001" - _globals["_TABLE"].fields_by_name["time_dimensions"]._loaded_options = None - _globals["_TABLE"].fields_by_name[ - "time_dimensions" - ]._serialized_options = b"\220\202\031\001" - _globals["_TABLE"].fields_by_name["measures"]._loaded_options = None - _globals["_TABLE"].fields_by_name[ - "measures" - ]._serialized_options = b"\220\202\031\001" - _globals["_TABLE"].fields_by_name["primary_key"]._loaded_options = None - _globals["_TABLE"].fields_by_name[ - "primary_key" - ]._serialized_options = b"\220\202\031\001" - _globals["_TABLE"].fields_by_name["filters"]._loaded_options = None - _globals["_TABLE"].fields_by_name[ - "filters" - ]._serialized_options = b"\220\202\031\001" - _globals["_METRIC"].fields_by_name["name"]._loaded_options = None - _globals["_METRIC"].fields_by_name["name"]._serialized_options = b"\240\202\031\001" - _globals["_METRIC"].fields_by_name["synonyms"]._loaded_options = None - _globals["_METRIC"].fields_by_name[ - "synonyms" - ]._serialized_options = b"\220\202\031\001" - _globals["_METRIC"].fields_by_name["description"]._loaded_options = None - _globals["_METRIC"].fields_by_name[ - "description" - ]._serialized_options = b"\220\202\031\001" - _globals["_METRIC"].fields_by_name["expr"]._loaded_options = None - _globals["_METRIC"].fields_by_name["expr"]._serialized_options = b"\230\202\031\001" - _globals["_METRIC"].fields_by_name["filter"]._loaded_options = None - _globals["_METRIC"].fields_by_name[ - "filter" - ]._serialized_options = b"\220\202\031\001" - _globals["_METRICSFILTER"].fields_by_name["expr"]._loaded_options = None - _globals["_METRICSFILTER"].fields_by_name[ - "expr" - ]._serialized_options = b"\230\202\031\001" - _globals["_SEMANTICMODEL"].fields_by_name["description"]._loaded_options = None - _globals["_SEMANTICMODEL"].fields_by_name[ - "description" - ]._serialized_options = b"\220\202\031\001" - _globals["_SEMANTICMODEL"].fields_by_name["metrics"]._loaded_options = None - _globals["_SEMANTICMODEL"].fields_by_name[ - "metrics" - ]._serialized_options = b"\220\202\031\001" - _globals["_SEMANTICMODEL"].fields_by_name["relationships"]._loaded_options = None - _globals["_SEMANTICMODEL"].fields_by_name[ - "relationships" - ]._serialized_options = b"\220\202\031\001" - _globals["_SEMANTICMODEL"].fields_by_name["verified_queries"]._loaded_options = None - _globals["_SEMANTICMODEL"].fields_by_name[ - "verified_queries" - ]._serialized_options = b"\220\202\031\001" - _globals["_VERIFIEDQUERY"].fields_by_name[ - "semantic_model_name" - ]._loaded_options = None - _globals["_VERIFIEDQUERY"].fields_by_name[ - "semantic_model_name" - ]._serialized_options = b"\220\202\031\001" - _globals["_VERIFIEDQUERY"].fields_by_name["sql"]._loaded_options = None - _globals["_VERIFIEDQUERY"].fields_by_name[ - "sql" - ]._serialized_options = b"\230\202\031\001" - _globals["_VERIFIEDQUERY"].fields_by_name["verified_at"]._loaded_options = None - _globals["_VERIFIEDQUERY"].fields_by_name[ - "verified_at" - ]._serialized_options = b"\220\202\031\001" - _globals["_VERIFIEDQUERY"].fields_by_name["verified_by"]._loaded_options = None - _globals["_VERIFIEDQUERY"].fields_by_name[ - "verified_by" - ]._serialized_options = b"\220\202\031\001" - _globals["_VERIFIEDQUERY"].fields_by_name[ - "use_as_onboarding_question" - ]._loaded_options = None - _globals["_VERIFIEDQUERY"].fields_by_name[ - "use_as_onboarding_question" - ]._serialized_options = b"\220\202\031\001" - _globals["_AGGREGATIONTYPE"]._serialized_start = 3077 - _globals["_AGGREGATIONTYPE"]._serialized_end = 3203 - _globals["_COLUMNKIND"]._serialized_start = 3205 - _globals["_COLUMNKIND"]._serialized_end = 3290 - _globals["_JOINTYPE"]._serialized_start = 3292 - _globals["_JOINTYPE"]._serialized_end = 3352 - _globals["_RELATIONSHIPTYPE"]._serialized_start = 3354 - _globals["_RELATIONSHIPTYPE"]._serialized_end = 3436 - _globals["_RETRIEVALRESULT"]._serialized_start = 84 - _globals["_RETRIEVALRESULT"]._serialized_end = 131 - _globals["_COLUMN"]._serialized_start = 134 - _globals["_COLUMN"]._serialized_end = 593 - _globals["_DIMENSION"]._serialized_start = 596 - _globals["_DIMENSION"]._serialized_end = 810 - _globals["_TIMEDIMENSION"]._serialized_start = 813 - _globals["_TIMEDIMENSION"]._serialized_end = 989 - _globals["_MEASURE"]._serialized_start = 992 - _globals["_MEASURE"]._serialized_end = 1218 - _globals["_NAMEDFILTER"]._serialized_start = 1220 - _globals["_NAMEDFILTER"]._serialized_end = 1318 - _globals["_FULLYQUALIFIEDTABLE"]._serialized_start = 1320 - _globals["_FULLYQUALIFIEDTABLE"]._serialized_end = 1390 - _globals["_PRIMARYKEY"]._serialized_start = 1392 - _globals["_PRIMARYKEY"]._serialized_end = 1421 - _globals["_TABLE"]._serialized_start = 1424 - _globals["_TABLE"]._serialized_end = 1947 - _globals["_METRIC"]._serialized_start = 1950 - _globals["_METRIC"]._serialized_end = 2112 - _globals["_METRICSFILTER"]._serialized_start = 2114 - _globals["_METRICSFILTER"]._serialized_end = 2149 - _globals["_RELATIONKEY"]._serialized_start = 2151 - _globals["_RELATIONKEY"]._serialized_end = 2207 - _globals["_RELATIONSHIP"]._serialized_start = 2210 - _globals["_RELATIONSHIP"]._serialized_end = 2474 - _globals["_SEMANTICMODEL"]._serialized_start = 2477 - _globals["_SEMANTICMODEL"]._serialized_end = 2781 - _globals["_VERIFIEDQUERY"]._serialized_start = 2784 - _globals["_VERIFIEDQUERY"]._serialized_end = 2981 - _globals["_VERIFIEDQUERYREPOSITORY"]._serialized_start = 2983 - _globals["_VERIFIEDQUERYREPOSITORY"]._serialized_end = 3075 +_builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'semantic_model_pb2', _globals) +if _descriptor._USE_C_DESCRIPTORS == False: + DESCRIPTOR._options = None + _globals['_COLUMN'].fields_by_name['name']._options = None + _globals['_COLUMN'].fields_by_name['name']._serialized_options = b'\240\202\031\001' + _globals['_COLUMN'].fields_by_name['synonyms']._options = None + _globals['_COLUMN'].fields_by_name['synonyms']._serialized_options = b'\220\202\031\001' + _globals['_COLUMN'].fields_by_name['description']._options = None + _globals['_COLUMN'].fields_by_name['description']._serialized_options = b'\220\202\031\001' + _globals['_COLUMN'].fields_by_name['expr']._options = None + _globals['_COLUMN'].fields_by_name['expr']._serialized_options = b'\230\202\031\001' + _globals['_COLUMN'].fields_by_name['unique']._options = None + _globals['_COLUMN'].fields_by_name['unique']._serialized_options = b'\220\202\031\001' + _globals['_COLUMN'].fields_by_name['default_aggregation']._options = None + _globals['_COLUMN'].fields_by_name['default_aggregation']._serialized_options = b'\220\202\031\001' + _globals['_COLUMN'].fields_by_name['sample_values']._options = None + _globals['_COLUMN'].fields_by_name['sample_values']._serialized_options = b'\220\202\031\001' + _globals['_COLUMN'].fields_by_name['index_and_retrieve_values']._options = None + _globals['_COLUMN'].fields_by_name['index_and_retrieve_values']._serialized_options = b'\220\202\031\001' + _globals['_COLUMN'].fields_by_name['retrieved_literals']._options = None + _globals['_COLUMN'].fields_by_name['retrieved_literals']._serialized_options = b'\220\202\031\001' + _globals['_COLUMN'].fields_by_name['cortex_search_service_name']._options = None + _globals['_COLUMN'].fields_by_name['cortex_search_service_name']._serialized_options = b'\220\202\031\001' + _globals['_DIMENSION'].fields_by_name['name']._options = None + _globals['_DIMENSION'].fields_by_name['name']._serialized_options = b'\240\202\031\001' + _globals['_DIMENSION'].fields_by_name['synonyms']._options = None + _globals['_DIMENSION'].fields_by_name['synonyms']._serialized_options = b'\220\202\031\001' + _globals['_DIMENSION'].fields_by_name['description']._options = None + _globals['_DIMENSION'].fields_by_name['description']._serialized_options = b'\220\202\031\001' + _globals['_DIMENSION'].fields_by_name['expr']._options = None + _globals['_DIMENSION'].fields_by_name['expr']._serialized_options = b'\230\202\031\001' + _globals['_DIMENSION'].fields_by_name['unique']._options = None + _globals['_DIMENSION'].fields_by_name['unique']._serialized_options = b'\220\202\031\001' + _globals['_DIMENSION'].fields_by_name['sample_values']._options = None + _globals['_DIMENSION'].fields_by_name['sample_values']._serialized_options = b'\220\202\031\001' + _globals['_DIMENSION'].fields_by_name['cortex_search_service_name']._options = None + _globals['_DIMENSION'].fields_by_name['cortex_search_service_name']._serialized_options = b'\220\202\031\001' + _globals['_TIMEDIMENSION'].fields_by_name['name']._options = None + _globals['_TIMEDIMENSION'].fields_by_name['name']._serialized_options = b'\240\202\031\001' + _globals['_TIMEDIMENSION'].fields_by_name['synonyms']._options = None + _globals['_TIMEDIMENSION'].fields_by_name['synonyms']._serialized_options = b'\220\202\031\001' + _globals['_TIMEDIMENSION'].fields_by_name['description']._options = None + _globals['_TIMEDIMENSION'].fields_by_name['description']._serialized_options = b'\220\202\031\001' + _globals['_TIMEDIMENSION'].fields_by_name['expr']._options = None + _globals['_TIMEDIMENSION'].fields_by_name['expr']._serialized_options = b'\230\202\031\001' + _globals['_TIMEDIMENSION'].fields_by_name['unique']._options = None + _globals['_TIMEDIMENSION'].fields_by_name['unique']._serialized_options = b'\220\202\031\001' + _globals['_TIMEDIMENSION'].fields_by_name['sample_values']._options = None + _globals['_TIMEDIMENSION'].fields_by_name['sample_values']._serialized_options = b'\220\202\031\001' + _globals['_MEASURE'].fields_by_name['name']._options = None + _globals['_MEASURE'].fields_by_name['name']._serialized_options = b'\240\202\031\001' + _globals['_MEASURE'].fields_by_name['synonyms']._options = None + _globals['_MEASURE'].fields_by_name['synonyms']._serialized_options = b'\220\202\031\001' + _globals['_MEASURE'].fields_by_name['description']._options = None + _globals['_MEASURE'].fields_by_name['description']._serialized_options = b'\220\202\031\001' + _globals['_MEASURE'].fields_by_name['expr']._options = None + _globals['_MEASURE'].fields_by_name['expr']._serialized_options = b'\230\202\031\001' + _globals['_MEASURE'].fields_by_name['default_aggregation']._options = None + _globals['_MEASURE'].fields_by_name['default_aggregation']._serialized_options = b'\220\202\031\001' + _globals['_MEASURE'].fields_by_name['sample_values']._options = None + _globals['_MEASURE'].fields_by_name['sample_values']._serialized_options = b'\220\202\031\001' + _globals['_NAMEDFILTER'].fields_by_name['synonyms']._options = None + _globals['_NAMEDFILTER'].fields_by_name['synonyms']._serialized_options = b'\220\202\031\001' + _globals['_NAMEDFILTER'].fields_by_name['description']._options = None + _globals['_NAMEDFILTER'].fields_by_name['description']._serialized_options = b'\220\202\031\001' + _globals['_NAMEDFILTER'].fields_by_name['expr']._options = None + _globals['_NAMEDFILTER'].fields_by_name['expr']._serialized_options = b'\230\202\031\001' + _globals['_TABLE'].fields_by_name['name']._options = None + _globals['_TABLE'].fields_by_name['name']._serialized_options = b'\240\202\031\001' + _globals['_TABLE'].fields_by_name['synonyms']._options = None + _globals['_TABLE'].fields_by_name['synonyms']._serialized_options = b'\220\202\031\001' + _globals['_TABLE'].fields_by_name['description']._options = None + _globals['_TABLE'].fields_by_name['description']._serialized_options = b'\220\202\031\001' + _globals['_TABLE'].fields_by_name['columns']._options = None + _globals['_TABLE'].fields_by_name['columns']._serialized_options = b'\220\202\031\001' + _globals['_TABLE'].fields_by_name['dimensions']._options = None + _globals['_TABLE'].fields_by_name['dimensions']._serialized_options = b'\220\202\031\001' + _globals['_TABLE'].fields_by_name['time_dimensions']._options = None + _globals['_TABLE'].fields_by_name['time_dimensions']._serialized_options = b'\220\202\031\001' + _globals['_TABLE'].fields_by_name['measures']._options = None + _globals['_TABLE'].fields_by_name['measures']._serialized_options = b'\220\202\031\001' + _globals['_TABLE'].fields_by_name['primary_key']._options = None + _globals['_TABLE'].fields_by_name['primary_key']._serialized_options = b'\220\202\031\001' + _globals['_TABLE'].fields_by_name['filters']._options = None + _globals['_TABLE'].fields_by_name['filters']._serialized_options = b'\220\202\031\001' + _globals['_METRIC'].fields_by_name['name']._options = None + _globals['_METRIC'].fields_by_name['name']._serialized_options = b'\240\202\031\001' + _globals['_METRIC'].fields_by_name['synonyms']._options = None + _globals['_METRIC'].fields_by_name['synonyms']._serialized_options = b'\220\202\031\001' + _globals['_METRIC'].fields_by_name['description']._options = None + _globals['_METRIC'].fields_by_name['description']._serialized_options = b'\220\202\031\001' + _globals['_METRIC'].fields_by_name['expr']._options = None + _globals['_METRIC'].fields_by_name['expr']._serialized_options = b'\230\202\031\001' + _globals['_METRIC'].fields_by_name['filter']._options = None + _globals['_METRIC'].fields_by_name['filter']._serialized_options = b'\220\202\031\001' + _globals['_METRICSFILTER'].fields_by_name['expr']._options = None + _globals['_METRICSFILTER'].fields_by_name['expr']._serialized_options = b'\230\202\031\001' + _globals['_SEMANTICMODEL'].fields_by_name['description']._options = None + _globals['_SEMANTICMODEL'].fields_by_name['description']._serialized_options = b'\220\202\031\001' + _globals['_SEMANTICMODEL'].fields_by_name['metrics']._options = None + _globals['_SEMANTICMODEL'].fields_by_name['metrics']._serialized_options = b'\220\202\031\001' + _globals['_SEMANTICMODEL'].fields_by_name['relationships']._options = None + _globals['_SEMANTICMODEL'].fields_by_name['relationships']._serialized_options = b'\220\202\031\001' + _globals['_SEMANTICMODEL'].fields_by_name['verified_queries']._options = None + _globals['_SEMANTICMODEL'].fields_by_name['verified_queries']._serialized_options = b'\220\202\031\001' + _globals['_SEMANTICMODEL'].fields_by_name['custom_instructions']._options = None + _globals['_SEMANTICMODEL'].fields_by_name['custom_instructions']._serialized_options = b'\220\202\031\001' + _globals['_VERIFIEDQUERY'].fields_by_name['semantic_model_name']._options = None + _globals['_VERIFIEDQUERY'].fields_by_name['semantic_model_name']._serialized_options = b'\220\202\031\001' + _globals['_VERIFIEDQUERY'].fields_by_name['sql']._options = None + _globals['_VERIFIEDQUERY'].fields_by_name['sql']._serialized_options = b'\230\202\031\001' + _globals['_VERIFIEDQUERY'].fields_by_name['verified_at']._options = None + _globals['_VERIFIEDQUERY'].fields_by_name['verified_at']._serialized_options = b'\220\202\031\001' + _globals['_VERIFIEDQUERY'].fields_by_name['verified_by']._options = None + _globals['_VERIFIEDQUERY'].fields_by_name['verified_by']._serialized_options = b'\220\202\031\001' + _globals['_VERIFIEDQUERY'].fields_by_name['use_as_onboarding_question']._options = None + _globals['_VERIFIEDQUERY'].fields_by_name['use_as_onboarding_question']._serialized_options = b'\220\202\031\001' + _globals['_AGGREGATIONTYPE']._serialized_start=3112 + _globals['_AGGREGATIONTYPE']._serialized_end=3238 + _globals['_COLUMNKIND']._serialized_start=3240 + _globals['_COLUMNKIND']._serialized_end=3325 + _globals['_JOINTYPE']._serialized_start=3327 + _globals['_JOINTYPE']._serialized_end=3387 + _globals['_RELATIONSHIPTYPE']._serialized_start=3389 + _globals['_RELATIONSHIPTYPE']._serialized_end=3471 + _globals['_RETRIEVALRESULT']._serialized_start=84 + _globals['_RETRIEVALRESULT']._serialized_end=131 + _globals['_COLUMN']._serialized_start=134 + _globals['_COLUMN']._serialized_end=593 + _globals['_DIMENSION']._serialized_start=596 + _globals['_DIMENSION']._serialized_end=810 + _globals['_TIMEDIMENSION']._serialized_start=813 + _globals['_TIMEDIMENSION']._serialized_end=989 + _globals['_MEASURE']._serialized_start=992 + _globals['_MEASURE']._serialized_end=1218 + _globals['_NAMEDFILTER']._serialized_start=1220 + _globals['_NAMEDFILTER']._serialized_end=1318 + _globals['_FULLYQUALIFIEDTABLE']._serialized_start=1320 + _globals['_FULLYQUALIFIEDTABLE']._serialized_end=1390 + _globals['_PRIMARYKEY']._serialized_start=1392 + _globals['_PRIMARYKEY']._serialized_end=1421 + _globals['_TABLE']._serialized_start=1424 + _globals['_TABLE']._serialized_end=1947 + _globals['_METRIC']._serialized_start=1950 + _globals['_METRIC']._serialized_end=2112 + _globals['_METRICSFILTER']._serialized_start=2114 + _globals['_METRICSFILTER']._serialized_end=2149 + _globals['_RELATIONKEY']._serialized_start=2151 + _globals['_RELATIONKEY']._serialized_end=2207 + _globals['_RELATIONSHIP']._serialized_start=2210 + _globals['_RELATIONSHIP']._serialized_end=2474 + _globals['_SEMANTICMODEL']._serialized_start=2477 + _globals['_SEMANTICMODEL']._serialized_end=2816 + _globals['_VERIFIEDQUERY']._serialized_start=2819 + _globals['_VERIFIEDQUERY']._serialized_end=3016 + _globals['_VERIFIEDQUERYREPOSITORY']._serialized_start=3018 + _globals['_VERIFIEDQUERYREPOSITORY']._serialized_end=3110 # @@protoc_insertion_point(module_scope) diff --git a/semantic_model_generator/protos/semantic_model_pb2.pyi b/semantic_model_generator/protos/semantic_model_pb2.pyi index c1c2aa92..dea8ad31 100644 --- a/semantic_model_generator/protos/semantic_model_pb2.pyi +++ b/semantic_model_generator/protos/semantic_model_pb2.pyi @@ -250,20 +250,22 @@ class Relationship(_message.Message): def __init__(self, name: _Optional[str] = ..., left_table: _Optional[str] = ..., right_table: _Optional[str] = ..., relationship_columns: _Optional[_Iterable[_Union[RelationKey, _Mapping]]] = ..., join_type: _Optional[_Union[JoinType, str]] = ..., relationship_type: _Optional[_Union[RelationshipType, str]] = ...) -> None: ... class SemanticModel(_message.Message): - __slots__ = ("name", "description", "tables", "metrics", "relationships", "verified_queries") + __slots__ = ("name", "description", "tables", "metrics", "relationships", "verified_queries", "custom_instructions") NAME_FIELD_NUMBER: _ClassVar[int] DESCRIPTION_FIELD_NUMBER: _ClassVar[int] TABLES_FIELD_NUMBER: _ClassVar[int] METRICS_FIELD_NUMBER: _ClassVar[int] RELATIONSHIPS_FIELD_NUMBER: _ClassVar[int] VERIFIED_QUERIES_FIELD_NUMBER: _ClassVar[int] + CUSTOM_INSTRUCTIONS_FIELD_NUMBER: _ClassVar[int] name: str description: str tables: _containers.RepeatedCompositeFieldContainer[Table] metrics: _containers.RepeatedCompositeFieldContainer[Metric] relationships: _containers.RepeatedCompositeFieldContainer[Relationship] verified_queries: _containers.RepeatedCompositeFieldContainer[VerifiedQuery] - def __init__(self, name: _Optional[str] = ..., description: _Optional[str] = ..., tables: _Optional[_Iterable[_Union[Table, _Mapping]]] = ..., metrics: _Optional[_Iterable[_Union[Metric, _Mapping]]] = ..., relationships: _Optional[_Iterable[_Union[Relationship, _Mapping]]] = ..., verified_queries: _Optional[_Iterable[_Union[VerifiedQuery, _Mapping]]] = ...) -> None: ... + custom_instructions: str + def __init__(self, name: _Optional[str] = ..., description: _Optional[str] = ..., tables: _Optional[_Iterable[_Union[Table, _Mapping]]] = ..., metrics: _Optional[_Iterable[_Union[Metric, _Mapping]]] = ..., relationships: _Optional[_Iterable[_Union[Relationship, _Mapping]]] = ..., verified_queries: _Optional[_Iterable[_Union[VerifiedQuery, _Mapping]]] = ..., custom_instructions: _Optional[str] = ...) -> None: ... class VerifiedQuery(_message.Message): __slots__ = ("name", "semantic_model_name", "question", "sql", "verified_at", "verified_by", "use_as_onboarding_question")