luminarycloud 0.19.0__py3-none-any.whl → 0.22.0__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.
Files changed (110) hide show
  1. luminarycloud/__init__.py +5 -1
  2. luminarycloud/_client/client.py +7 -0
  3. luminarycloud/_client/http_client.py +10 -8
  4. luminarycloud/_feature_flag.py +22 -0
  5. luminarycloud/_helpers/_create_simulation.py +7 -2
  6. luminarycloud/_helpers/_upload_mesh.py +1 -0
  7. luminarycloud/_helpers/_wait_for_mesh.py +6 -5
  8. luminarycloud/_helpers/_wait_for_simulation.py +3 -3
  9. luminarycloud/_helpers/download.py +3 -1
  10. luminarycloud/_helpers/pagination.py +62 -0
  11. luminarycloud/_helpers/proto_decorator.py +13 -5
  12. luminarycloud/_helpers/upload.py +18 -12
  13. luminarycloud/_proto/api/v0/luminarycloud/feature_flag/feature_flag_pb2.py +55 -0
  14. luminarycloud/_proto/api/v0/luminarycloud/feature_flag/feature_flag_pb2.pyi +52 -0
  15. luminarycloud/_proto/api/v0/luminarycloud/feature_flag/feature_flag_pb2_grpc.py +72 -0
  16. luminarycloud/_proto/api/v0/luminarycloud/feature_flag/feature_flag_pb2_grpc.pyi +35 -0
  17. luminarycloud/_proto/api/v0/luminarycloud/geometry/geometry_pb2.py +168 -124
  18. luminarycloud/_proto/api/v0/luminarycloud/geometry/geometry_pb2.pyi +133 -4
  19. luminarycloud/_proto/api/v0/luminarycloud/geometry/geometry_pb2_grpc.py +66 -0
  20. luminarycloud/_proto/api/v0/luminarycloud/geometry/geometry_pb2_grpc.pyi +20 -0
  21. luminarycloud/_proto/api/v0/luminarycloud/inference/inference_pb2.py +8 -8
  22. luminarycloud/_proto/api/v0/luminarycloud/inference/inference_pb2.pyi +5 -5
  23. luminarycloud/_proto/api/v0/luminarycloud/mesh/mesh_pb2.py +74 -73
  24. luminarycloud/_proto/api/v0/luminarycloud/mesh/mesh_pb2.pyi +17 -3
  25. luminarycloud/_proto/api/v0/luminarycloud/physics_ai/physics_ai_pb2.py +96 -25
  26. luminarycloud/_proto/api/v0/luminarycloud/physics_ai/physics_ai_pb2.pyi +235 -1
  27. luminarycloud/_proto/api/v0/luminarycloud/physics_ai/physics_ai_pb2_grpc.py +34 -0
  28. luminarycloud/_proto/api/v0/luminarycloud/physics_ai/physics_ai_pb2_grpc.pyi +12 -0
  29. luminarycloud/_proto/api/v0/luminarycloud/project/project_pb2.py +16 -16
  30. luminarycloud/_proto/api/v0/luminarycloud/project/project_pb2.pyi +7 -3
  31. luminarycloud/_proto/api/v0/luminarycloud/simulation/simulation_pb2.py +97 -61
  32. luminarycloud/_proto/api/v0/luminarycloud/simulation/simulation_pb2.pyi +77 -4
  33. luminarycloud/_proto/api/v0/luminarycloud/simulation/simulation_pb2_grpc.py +34 -0
  34. luminarycloud/_proto/api/v0/luminarycloud/simulation/simulation_pb2_grpc.pyi +12 -0
  35. luminarycloud/_proto/api/v0/luminarycloud/simulation_template/simulation_template_pb2.py +33 -31
  36. luminarycloud/_proto/api/v0/luminarycloud/simulation_template/simulation_template_pb2.pyi +23 -2
  37. luminarycloud/_proto/api/v0/luminarycloud/vis/vis_pb2.py +126 -27
  38. luminarycloud/_proto/api/v0/luminarycloud/vis/vis_pb2.pyi +183 -0
  39. luminarycloud/_proto/api/v0/luminarycloud/vis/vis_pb2_grpc.py +99 -0
  40. luminarycloud/_proto/api/v0/luminarycloud/vis/vis_pb2_grpc.pyi +30 -0
  41. luminarycloud/_proto/assistant/assistant_pb2.py +74 -41
  42. luminarycloud/_proto/assistant/assistant_pb2.pyi +64 -2
  43. luminarycloud/_proto/assistant/assistant_pb2_grpc.py +33 -0
  44. luminarycloud/_proto/assistant/assistant_pb2_grpc.pyi +10 -0
  45. luminarycloud/_proto/base/base_pb2.py +20 -7
  46. luminarycloud/_proto/base/base_pb2.pyi +38 -0
  47. luminarycloud/_proto/cad/shape_pb2.py +39 -19
  48. luminarycloud/_proto/cad/shape_pb2.pyi +86 -34
  49. luminarycloud/_proto/cad/transformation_pb2.py +60 -16
  50. luminarycloud/_proto/cad/transformation_pb2.pyi +138 -32
  51. luminarycloud/_proto/client/simulation_pb2.py +501 -348
  52. luminarycloud/_proto/client/simulation_pb2.pyi +607 -11
  53. luminarycloud/_proto/geometry/geometry_pb2.py +77 -63
  54. luminarycloud/_proto/geometry/geometry_pb2.pyi +42 -3
  55. luminarycloud/_proto/hexmesh/hexmesh_pb2.py +24 -18
  56. luminarycloud/_proto/hexmesh/hexmesh_pb2.pyi +23 -2
  57. luminarycloud/_proto/inferenceservice/inferenceservice_pb2.py +10 -10
  58. luminarycloud/_proto/inferenceservice/inferenceservice_pb2.pyi +5 -5
  59. luminarycloud/_proto/physicsaitrainingservice/physicsaitrainingservice_pb2.py +29 -0
  60. luminarycloud/_proto/physicsaitrainingservice/physicsaitrainingservice_pb2.pyi +7 -0
  61. luminarycloud/_proto/physicsaitrainingservice/physicsaitrainingservice_pb2_grpc.py +70 -0
  62. luminarycloud/_proto/physicsaitrainingservice/physicsaitrainingservice_pb2_grpc.pyi +30 -0
  63. luminarycloud/_proto/quantity/quantity_options_pb2.py +6 -6
  64. luminarycloud/_proto/quantity/quantity_options_pb2.pyi +10 -1
  65. luminarycloud/_proto/quantity/quantity_pb2.py +176 -167
  66. luminarycloud/_proto/quantity/quantity_pb2.pyi +11 -5
  67. luminarycloud/enum/__init__.py +1 -0
  68. luminarycloud/enum/gpu_type.py +2 -0
  69. luminarycloud/enum/quantity_type.py +9 -0
  70. luminarycloud/enum/vis_enums.py +23 -3
  71. luminarycloud/exceptions.py +7 -1
  72. luminarycloud/feature_modification.py +45 -35
  73. luminarycloud/geometry.py +107 -9
  74. luminarycloud/geometry_version.py +57 -3
  75. luminarycloud/mesh.py +1 -2
  76. luminarycloud/meshing/mesh_generation_params.py +8 -8
  77. luminarycloud/params/enum/_enum_wrappers.py +562 -30
  78. luminarycloud/params/simulation/adaptive_mesh_refinement_.py +4 -0
  79. luminarycloud/params/simulation/material/material_solid_.py +15 -1
  80. luminarycloud/params/simulation/physics/__init__.py +0 -1
  81. luminarycloud/params/simulation/physics/periodic_pair_.py +12 -31
  82. luminarycloud/physics_ai/architectures.py +58 -0
  83. luminarycloud/physics_ai/inference.py +13 -13
  84. luminarycloud/physics_ai/solution.py +3 -1
  85. luminarycloud/physics_ai/training_jobs.py +37 -0
  86. luminarycloud/pipelines/__init__.py +11 -3
  87. luminarycloud/pipelines/api.py +248 -16
  88. luminarycloud/pipelines/arguments.py +15 -0
  89. luminarycloud/pipelines/core.py +113 -96
  90. luminarycloud/pipelines/{operators.py → stages.py} +96 -39
  91. luminarycloud/project.py +15 -47
  92. luminarycloud/simulation.py +69 -5
  93. luminarycloud/simulation_param.py +0 -9
  94. luminarycloud/simulation_template.py +2 -1
  95. luminarycloud/types/matrix3.py +12 -0
  96. luminarycloud/vis/__init__.py +17 -0
  97. luminarycloud/vis/data_extraction.py +20 -4
  98. luminarycloud/vis/interactive_report.py +110 -0
  99. luminarycloud/vis/interactive_scene.py +29 -2
  100. luminarycloud/vis/report.py +252 -0
  101. luminarycloud/vis/visualization.py +127 -5
  102. luminarycloud/volume_selection.py +132 -69
  103. {luminarycloud-0.19.0.dist-info → luminarycloud-0.22.0.dist-info}/METADATA +1 -1
  104. {luminarycloud-0.19.0.dist-info → luminarycloud-0.22.0.dist-info}/RECORD +105 -97
  105. luminarycloud/params/simulation/physics/periodic_pair/__init__.py +0 -2
  106. luminarycloud/params/simulation/physics/periodic_pair/periodicity_type/__init__.py +0 -2
  107. luminarycloud/params/simulation/physics/periodic_pair/periodicity_type/rotational_periodicity_.py +0 -31
  108. luminarycloud/params/simulation/physics/periodic_pair/periodicity_type/translational_periodicity_.py +0 -29
  109. luminarycloud/params/simulation/physics/periodic_pair/periodicity_type_.py +0 -25
  110. {luminarycloud-0.19.0.dist-info → luminarycloud-0.22.0.dist-info}/WHEEL +0 -0
@@ -16,18 +16,30 @@ _sym_db = _symbol_database.Default()
16
16
  from google.api import annotations_pb2 as google_dot_api_dot_annotations__pb2
17
17
  from google.protobuf import timestamp_pb2 as google_dot_protobuf_dot_timestamp__pb2
18
18
  from luminarycloud._proto.api.v0.luminarycloud.common import common_pb2 as proto_dot_api_dot_v0_dot_luminarycloud_dot_common_dot_common__pb2
19
+ from luminarycloud._proto.base import base_pb2 as proto_dot_base_dot_base__pb2
19
20
  from luminarycloud._proto.quantity import quantity_pb2 as proto_dot_quantity_dot_quantity__pb2
20
21
 
21
22
 
22
- DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n6proto/api/v0/luminarycloud/physics_ai/physics_ai.proto\x12.luminary.proto.api.v0.luminarycloud.physics_ai\x1a\x1cgoogle/api/annotations.proto\x1a\x1fgoogle/protobuf/timestamp.proto\x1a.proto/api/v0/luminarycloud/common/common.proto\x1a\x1dproto/quantity/quantity.proto\"\xad\x01\n\x1cPhysicsAiArchitectureVersion\x12\n\n\x02id\x18\x01 \x01(\t\x12\x0c\n\x04name\x18\x02 \x01(\t\x12\x11\n\tchangelog\x18\x03 \x01(\t\x12`\n\x0flifecycle_state\x18\x04 \x01(\x0e\x32G.luminary.proto.api.v0.luminarycloud.physics_ai.PhysicsAiLifecycleState\"\xa6\x01\n\x15PhysicsAiArchitecture\x12\n\n\x02id\x18\x01 \x01(\t\x12\x0c\n\x04name\x18\x02 \x01(\t\x12\x13\n\x0b\x64\x65scription\x18\x03 \x01(\t\x12^\n\x08versions\x18\x04 \x03(\x0b\x32L.luminary.proto.api.v0.luminarycloud.physics_ai.PhysicsAiArchitectureVersion\"\x1a\n\x18ListArchitecturesRequest\"y\n\x19ListArchitecturesResponse\x12\\\n\rarchitectures\x18\x01 \x03(\x0b\x32\x45.luminary.proto.api.v0.luminarycloud.physics_ai.PhysicsAiArchitecture\"\x93\x01\n\x15PhysicsAiModelVersion\x12\n\n\x02id\x18\x01 \x01(\t\x12\x0c\n\x04name\x18\x02 \x01(\t\x12`\n\x0flifecycle_state\x18\x03 \x01(\x0e\x32G.luminary.proto.api.v0.luminarycloud.physics_ai.PhysicsAiLifecycleState\"\x98\x01\n\x0ePhysicsAiModel\x12\n\n\x02id\x18\x01 \x01(\t\x12\x0c\n\x04name\x18\x02 \x01(\t\x12\x13\n\x0b\x64\x65scription\x18\x03 \x01(\t\x12W\n\x08versions\x18\x04 \x03(\x0b\x32\x45.luminary.proto.api.v0.luminarycloud.physics_ai.PhysicsAiModelVersion\"\x1d\n\x1bListPretrainedModelsRequest\"n\n\x1cListPretrainedModelsResponse\x12N\n\x06models\x18\x01 \x03(\x0b\x32>.luminary.proto.api.v0.luminarycloud.physics_ai.PhysicsAiModel\"\xa3\x02\n\x1fGetSolutionDataPhysicsAIRequest\x12\x13\n\x0bsolution_id\x18\x01 \x01(\t\x12\x18\n\x10\x65xclude_surfaces\x18\x02 \x03(\t\x12\x12\n\nfill_holes\x18\x03 \x01(\x02\x12\x45\n\x16surface_fields_to_keep\x18\x04 \x03(\x0e\x32%.luminary.proto.quantity.QuantityType\x12\x44\n\x15volume_fields_to_keep\x18\x05 \x03(\x0e\x32%.luminary.proto.quantity.QuantityType\x12\x16\n\x0eprocess_volume\x18\x06 \x01(\x08\x12\x18\n\x10single_precision\x18\x07 \x01(\x08\"b\n GetSolutionDataPhysicsAIResponse\x12>\n\x04\x66ile\x18\x01 \x01(\x0b\x32\x30.luminary.proto.api.v0.luminarycloud.common.File*\xb4\x01\n\x17PhysicsAiLifecycleState\x12\x1f\n\x1bLIFECYCLE_STATE_UNSPECIFIED\x10\x00\x12\x1f\n\x1bLIFECYCLE_STATE_DEVELOPMENT\x10\x01\x12\x1a\n\x16LIFECYCLE_STATE_ACTIVE\x10\x02\x12\x1e\n\x1aLIFECYCLE_STATE_DEPRECATED\x10\x03\x12\x1b\n\x17LIFECYCLE_STATE_RETIRED\x10\x04\x32\xb9\x05\n\x10PhysicsAiService\x12\xce\x01\n\x11ListArchitectures\x12H.luminary.proto.api.v0.luminarycloud.physics_ai.ListArchitecturesRequest\x1aI.luminary.proto.api.v0.luminarycloud.physics_ai.ListArchitecturesResponse\"$\x82\xd3\xe4\x93\x02\x1e\x12\x1c/v0/physics_ai/architectures\x12\xdb\x01\n\x14ListPretrainedModels\x12K.luminary.proto.api.v0.luminarycloud.physics_ai.ListPretrainedModelsRequest\x1aL.luminary.proto.api.v0.luminarycloud.physics_ai.ListPretrainedModelsResponse\"(\x82\xd3\xe4\x93\x02\"\x12 /v0/physics_ai/pretrained_models\x12\xf5\x01\n\x18GetSolutionDataPhysicsAI\x12O.luminary.proto.api.v0.luminarycloud.physics_ai.GetSolutionDataPhysicsAIRequest\x1aP.luminary.proto.api.v0.luminarycloud.physics_ai.GetSolutionDataPhysicsAIResponse\"6\x82\xd3\xe4\x93\x02\x30\"+/v0/physics_ai/solutions/{solution_id}/data:\x01*B>Z<luminarycloud.com/core/proto/api/v0/luminarycloud/physics_aib\x06proto3')
23
+ DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n6proto/api/v0/luminarycloud/physics_ai/physics_ai.proto\x12.luminary.proto.api.v0.luminarycloud.physics_ai\x1a\x1cgoogle/api/annotations.proto\x1a\x1fgoogle/protobuf/timestamp.proto\x1a.proto/api/v0/luminarycloud/common/common.proto\x1a\x15proto/base/base.proto\x1a\x1dproto/quantity/quantity.proto\"\xad\x01\n\x1cPhysicsAiArchitectureVersion\x12\n\n\x02id\x18\x01 \x01(\t\x12\x0c\n\x04name\x18\x02 \x01(\t\x12\x11\n\tchangelog\x18\x03 \x01(\t\x12`\n\x0flifecycle_state\x18\x04 \x01(\x0e\x32G.luminary.proto.api.v0.luminarycloud.physics_ai.PhysicsAiLifecycleState\"\xa6\x01\n\x15PhysicsAiArchitecture\x12\n\n\x02id\x18\x01 \x01(\t\x12\x0c\n\x04name\x18\x02 \x01(\t\x12\x13\n\x0b\x64\x65scription\x18\x03 \x01(\t\x12^\n\x08versions\x18\x04 \x03(\x0b\x32L.luminary.proto.api.v0.luminarycloud.physics_ai.PhysicsAiArchitectureVersion\"\x1a\n\x18ListArchitecturesRequest\"y\n\x19ListArchitecturesResponse\x12\\\n\rarchitectures\x18\x01 \x03(\x0b\x32\x45.luminary.proto.api.v0.luminarycloud.physics_ai.PhysicsAiArchitecture\"\x93\x01\n\x15PhysicsAiModelVersion\x12\n\n\x02id\x18\x01 \x01(\t\x12\x0c\n\x04name\x18\x02 \x01(\t\x12`\n\x0flifecycle_state\x18\x03 \x01(\x0e\x32G.luminary.proto.api.v0.luminarycloud.physics_ai.PhysicsAiLifecycleState\"\x98\x01\n\x0ePhysicsAiModel\x12\n\n\x02id\x18\x01 \x01(\t\x12\x0c\n\x04name\x18\x02 \x01(\t\x12\x13\n\x0b\x64\x65scription\x18\x03 \x01(\t\x12W\n\x08versions\x18\x04 \x03(\x0b\x32\x45.luminary.proto.api.v0.luminarycloud.physics_ai.PhysicsAiModelVersion\"\x1d\n\x1bListPretrainedModelsRequest\"n\n\x1cListPretrainedModelsResponse\x12N\n\x06models\x18\x01 \x03(\x0b\x32>.luminary.proto.api.v0.luminarycloud.physics_ai.PhysicsAiModel\"\xdb\x03\n\x1fGetSolutionDataPhysicsAIRequest\x12\x13\n\x0bsolution_id\x18\x01 \x01(\t\x12\x18\n\x10\x65xclude_surfaces\x18\x02 \x03(\t\x12\x12\n\nfill_holes\x18\x03 \x01(\x02\x12\x45\n\x16surface_fields_to_keep\x18\x04 \x03(\x0e\x32%.luminary.proto.quantity.QuantityType\x12\x44\n\x15volume_fields_to_keep\x18\x05 \x03(\x0e\x32%.luminary.proto.quantity.QuantityType\x12\x16\n\x0eprocess_volume\x18\x06 \x01(\x08\x12\x18\n\x10single_precision\x18\x07 \x01(\x08\x12~\n\x10internal_options\x18\x08 \x03(\x0b\x32\x64.luminary.proto.api.v0.luminarycloud.physics_ai.GetSolutionDataPhysicsAIRequest.InternalOptionsEntry\x1a\x36\n\x14InternalOptionsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"b\n GetSolutionDataPhysicsAIResponse\x12>\n\x04\x66ile\x18\x01 \x01(\x0b\x32\x30.luminary.proto.api.v0.luminarycloud.common.File\";\n\x10TrainingSolution\x12\x13\n\x0bsolution_id\x18\x01 \x01(\t\x12\x12\n\ndata_split\x18\x02 \x01(\t\"\x9a\x05\n\x14PhysicsAiTrainingJob\x12\n\n\x02id\x18\x01 \x01(\t\x12\x1f\n\x17\x61rchitecture_version_id\x18\x02 \x01(\t\x12\x0f\n\x07user_id\x18\x03 \x01(\t\x12\x17\n\x0ftraining_config\x18\x04 \x01(\t\x12i\n\x19training_data_source_type\x18\x05 \x01(\x0e\x32\x46.luminary.proto.api.v0.luminarycloud.physics_ai.TrainingDataSourceType\x12\x1c\n\x14training_description\x18\x06 \x01(\t\x12\x1c\n\x14\x65xternal_dataset_uri\x18\x07 \x01(\t\x12\x64\n\x13initialization_type\x18\x08 \x01(\x0e\x32G.luminary.proto.api.v0.luminarycloud.physics_ai.ModelInitializationType\x12\x1d\n\x15\x62\x61se_model_version_id\x18\t \x01(\t\x12.\n\x06status\x18\n \x01(\x0b\x32\x1e.luminary.proto.base.JobStatus\x12\x15\n\rerror_message\x18\x0b \x01(\t\x12\x1f\n\x17output_model_version_id\x18\x0c \x01(\t\x12\x31\n\rcreation_time\x18\r \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12/\n\x0bupdate_time\x18\x0e \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12\x33\n\x0f\x63ompletion_time\x18\x0f \x01(\x0b\x32\x1a.google.protobuf.Timestamp\"\xf3\x02\n\x18SubmitTrainingJobRequest\x12\x1f\n\x17\x61rchitecture_version_id\x18\x01 \x01(\t\x12\x1c\n\x14training_description\x18\x02 \x01(\t\x12\x1c\n\x14\x65xternal_dataset_uri\x18\x03 \x01(\t\x12\\\n\x12training_solutions\x18\x04 \x03(\x0b\x32@.luminary.proto.api.v0.luminarycloud.physics_ai.TrainingSolution\x12\x17\n\x0ftraining_config\x18\x05 \x01(\t\x12\x64\n\x13initialization_type\x18\x06 \x01(\x0e\x32G.luminary.proto.api.v0.luminarycloud.physics_ai.ModelInitializationType\x12\x1d\n\x15\x62\x61se_model_version_id\x18\x07 \x01(\t\"w\n\x19SubmitTrainingJobResponse\x12Z\n\x0ctraining_job\x18\x01 \x01(\x0b\x32\x44.luminary.proto.api.v0.luminarycloud.physics_ai.PhysicsAiTrainingJob*\xb4\x01\n\x17PhysicsAiLifecycleState\x12\x1f\n\x1bLIFECYCLE_STATE_UNSPECIFIED\x10\x00\x12\x1f\n\x1bLIFECYCLE_STATE_DEVELOPMENT\x10\x01\x12\x1a\n\x16LIFECYCLE_STATE_ACTIVE\x10\x02\x12\x1e\n\x1aLIFECYCLE_STATE_DEPRECATED\x10\x03\x12\x1b\n\x17LIFECYCLE_STATE_RETIRED\x10\x04*\xa7\x01\n\x16TrainingDataSourceType\x12)\n%TRAINING_DATA_SOURCE_TYPE_UNSPECIFIED\x10\x00\x12\x32\n.TRAINING_DATA_SOURCE_TYPE_SIMULATION_SOLUTIONS\x10\x01\x12.\n*TRAINING_DATA_SOURCE_TYPE_EXTERNAL_DATASET\x10\x02*\xc1\x01\n\x17ModelInitializationType\x12)\n%MODEL_INITIALIZATION_TYPE_UNSPECIFIED\x10\x00\x12$\n MODEL_INITIALIZATION_TYPE_RANDOM\x10\x01\x12+\n\'MODEL_INITIALIZATION_TYPE_MODEL_VERSION\x10\x02\x12(\n$MODEL_INITIALIZATION_TYPE_CHECKPOINT\x10\x03\x32\x8d\x07\n\x10PhysicsAiService\x12\xce\x01\n\x11ListArchitectures\x12H.luminary.proto.api.v0.luminarycloud.physics_ai.ListArchitecturesRequest\x1aI.luminary.proto.api.v0.luminarycloud.physics_ai.ListArchitecturesResponse\"$\x82\xd3\xe4\x93\x02\x1e\x12\x1c/v0/physics_ai/architectures\x12\xdb\x01\n\x14ListPretrainedModels\x12K.luminary.proto.api.v0.luminarycloud.physics_ai.ListPretrainedModelsRequest\x1aL.luminary.proto.api.v0.luminarycloud.physics_ai.ListPretrainedModelsResponse\"(\x82\xd3\xe4\x93\x02\"\x12 /v0/physics_ai/pretrained_models\x12\xf5\x01\n\x18GetSolutionDataPhysicsAI\x12O.luminary.proto.api.v0.luminarycloud.physics_ai.GetSolutionDataPhysicsAIRequest\x1aP.luminary.proto.api.v0.luminarycloud.physics_ai.GetSolutionDataPhysicsAIResponse\"6\x82\xd3\xe4\x93\x02\x30\"+/v0/physics_ai/solutions/{solution_id}/data:\x01*\x12\xd1\x01\n\x11SubmitTrainingJob\x12H.luminary.proto.api.v0.luminarycloud.physics_ai.SubmitTrainingJobRequest\x1aI.luminary.proto.api.v0.luminarycloud.physics_ai.SubmitTrainingJobResponse\"\'\x82\xd3\xe4\x93\x02!\"\x1c/v0/physics_ai/training/jobs:\x01*B>Z<luminarycloud.com/core/proto/api/v0/luminarycloud/physics_aib\x06proto3')
23
24
 
24
25
  _PHYSICSAILIFECYCLESTATE = DESCRIPTOR.enum_types_by_name['PhysicsAiLifecycleState']
25
26
  PhysicsAiLifecycleState = enum_type_wrapper.EnumTypeWrapper(_PHYSICSAILIFECYCLESTATE)
27
+ _TRAININGDATASOURCETYPE = DESCRIPTOR.enum_types_by_name['TrainingDataSourceType']
28
+ TrainingDataSourceType = enum_type_wrapper.EnumTypeWrapper(_TRAININGDATASOURCETYPE)
29
+ _MODELINITIALIZATIONTYPE = DESCRIPTOR.enum_types_by_name['ModelInitializationType']
30
+ ModelInitializationType = enum_type_wrapper.EnumTypeWrapper(_MODELINITIALIZATIONTYPE)
26
31
  LIFECYCLE_STATE_UNSPECIFIED = 0
27
32
  LIFECYCLE_STATE_DEVELOPMENT = 1
28
33
  LIFECYCLE_STATE_ACTIVE = 2
29
34
  LIFECYCLE_STATE_DEPRECATED = 3
30
35
  LIFECYCLE_STATE_RETIRED = 4
36
+ TRAINING_DATA_SOURCE_TYPE_UNSPECIFIED = 0
37
+ TRAINING_DATA_SOURCE_TYPE_SIMULATION_SOLUTIONS = 1
38
+ TRAINING_DATA_SOURCE_TYPE_EXTERNAL_DATASET = 2
39
+ MODEL_INITIALIZATION_TYPE_UNSPECIFIED = 0
40
+ MODEL_INITIALIZATION_TYPE_RANDOM = 1
41
+ MODEL_INITIALIZATION_TYPE_MODEL_VERSION = 2
42
+ MODEL_INITIALIZATION_TYPE_CHECKPOINT = 3
31
43
 
32
44
 
33
45
  _PHYSICSAIARCHITECTUREVERSION = DESCRIPTOR.message_types_by_name['PhysicsAiArchitectureVersion']
@@ -39,7 +51,12 @@ _PHYSICSAIMODEL = DESCRIPTOR.message_types_by_name['PhysicsAiModel']
39
51
  _LISTPRETRAINEDMODELSREQUEST = DESCRIPTOR.message_types_by_name['ListPretrainedModelsRequest']
40
52
  _LISTPRETRAINEDMODELSRESPONSE = DESCRIPTOR.message_types_by_name['ListPretrainedModelsResponse']
41
53
  _GETSOLUTIONDATAPHYSICSAIREQUEST = DESCRIPTOR.message_types_by_name['GetSolutionDataPhysicsAIRequest']
54
+ _GETSOLUTIONDATAPHYSICSAIREQUEST_INTERNALOPTIONSENTRY = _GETSOLUTIONDATAPHYSICSAIREQUEST.nested_types_by_name['InternalOptionsEntry']
42
55
  _GETSOLUTIONDATAPHYSICSAIRESPONSE = DESCRIPTOR.message_types_by_name['GetSolutionDataPhysicsAIResponse']
56
+ _TRAININGSOLUTION = DESCRIPTOR.message_types_by_name['TrainingSolution']
57
+ _PHYSICSAITRAININGJOB = DESCRIPTOR.message_types_by_name['PhysicsAiTrainingJob']
58
+ _SUBMITTRAININGJOBREQUEST = DESCRIPTOR.message_types_by_name['SubmitTrainingJobRequest']
59
+ _SUBMITTRAININGJOBRESPONSE = DESCRIPTOR.message_types_by_name['SubmitTrainingJobResponse']
43
60
  PhysicsAiArchitectureVersion = _reflection.GeneratedProtocolMessageType('PhysicsAiArchitectureVersion', (_message.Message,), {
44
61
  'DESCRIPTOR' : _PHYSICSAIARCHITECTUREVERSION,
45
62
  '__module__' : 'proto.api.v0.luminarycloud.physics_ai.physics_ai_pb2'
@@ -97,11 +114,19 @@ ListPretrainedModelsResponse = _reflection.GeneratedProtocolMessageType('ListPre
97
114
  _sym_db.RegisterMessage(ListPretrainedModelsResponse)
98
115
 
99
116
  GetSolutionDataPhysicsAIRequest = _reflection.GeneratedProtocolMessageType('GetSolutionDataPhysicsAIRequest', (_message.Message,), {
117
+
118
+ 'InternalOptionsEntry' : _reflection.GeneratedProtocolMessageType('InternalOptionsEntry', (_message.Message,), {
119
+ 'DESCRIPTOR' : _GETSOLUTIONDATAPHYSICSAIREQUEST_INTERNALOPTIONSENTRY,
120
+ '__module__' : 'proto.api.v0.luminarycloud.physics_ai.physics_ai_pb2'
121
+ # @@protoc_insertion_point(class_scope:luminary.proto.api.v0.luminarycloud.physics_ai.GetSolutionDataPhysicsAIRequest.InternalOptionsEntry)
122
+ })
123
+ ,
100
124
  'DESCRIPTOR' : _GETSOLUTIONDATAPHYSICSAIREQUEST,
101
125
  '__module__' : 'proto.api.v0.luminarycloud.physics_ai.physics_ai_pb2'
102
126
  # @@protoc_insertion_point(class_scope:luminary.proto.api.v0.luminarycloud.physics_ai.GetSolutionDataPhysicsAIRequest)
103
127
  })
104
128
  _sym_db.RegisterMessage(GetSolutionDataPhysicsAIRequest)
129
+ _sym_db.RegisterMessage(GetSolutionDataPhysicsAIRequest.InternalOptionsEntry)
105
130
 
106
131
  GetSolutionDataPhysicsAIResponse = _reflection.GeneratedProtocolMessageType('GetSolutionDataPhysicsAIResponse', (_message.Message,), {
107
132
  'DESCRIPTOR' : _GETSOLUTIONDATAPHYSICSAIRESPONSE,
@@ -110,39 +135,85 @@ GetSolutionDataPhysicsAIResponse = _reflection.GeneratedProtocolMessageType('Get
110
135
  })
111
136
  _sym_db.RegisterMessage(GetSolutionDataPhysicsAIResponse)
112
137
 
138
+ TrainingSolution = _reflection.GeneratedProtocolMessageType('TrainingSolution', (_message.Message,), {
139
+ 'DESCRIPTOR' : _TRAININGSOLUTION,
140
+ '__module__' : 'proto.api.v0.luminarycloud.physics_ai.physics_ai_pb2'
141
+ # @@protoc_insertion_point(class_scope:luminary.proto.api.v0.luminarycloud.physics_ai.TrainingSolution)
142
+ })
143
+ _sym_db.RegisterMessage(TrainingSolution)
144
+
145
+ PhysicsAiTrainingJob = _reflection.GeneratedProtocolMessageType('PhysicsAiTrainingJob', (_message.Message,), {
146
+ 'DESCRIPTOR' : _PHYSICSAITRAININGJOB,
147
+ '__module__' : 'proto.api.v0.luminarycloud.physics_ai.physics_ai_pb2'
148
+ # @@protoc_insertion_point(class_scope:luminary.proto.api.v0.luminarycloud.physics_ai.PhysicsAiTrainingJob)
149
+ })
150
+ _sym_db.RegisterMessage(PhysicsAiTrainingJob)
151
+
152
+ SubmitTrainingJobRequest = _reflection.GeneratedProtocolMessageType('SubmitTrainingJobRequest', (_message.Message,), {
153
+ 'DESCRIPTOR' : _SUBMITTRAININGJOBREQUEST,
154
+ '__module__' : 'proto.api.v0.luminarycloud.physics_ai.physics_ai_pb2'
155
+ # @@protoc_insertion_point(class_scope:luminary.proto.api.v0.luminarycloud.physics_ai.SubmitTrainingJobRequest)
156
+ })
157
+ _sym_db.RegisterMessage(SubmitTrainingJobRequest)
158
+
159
+ SubmitTrainingJobResponse = _reflection.GeneratedProtocolMessageType('SubmitTrainingJobResponse', (_message.Message,), {
160
+ 'DESCRIPTOR' : _SUBMITTRAININGJOBRESPONSE,
161
+ '__module__' : 'proto.api.v0.luminarycloud.physics_ai.physics_ai_pb2'
162
+ # @@protoc_insertion_point(class_scope:luminary.proto.api.v0.luminarycloud.physics_ai.SubmitTrainingJobResponse)
163
+ })
164
+ _sym_db.RegisterMessage(SubmitTrainingJobResponse)
165
+
113
166
  _PHYSICSAISERVICE = DESCRIPTOR.services_by_name['PhysicsAiService']
114
167
  if _descriptor._USE_C_DESCRIPTORS == False:
115
168
 
116
169
  DESCRIPTOR._options = None
117
170
  DESCRIPTOR._serialized_options = b'Z<luminarycloud.com/core/proto/api/v0/luminarycloud/physics_ai'
171
+ _GETSOLUTIONDATAPHYSICSAIREQUEST_INTERNALOPTIONSENTRY._options = None
172
+ _GETSOLUTIONDATAPHYSICSAIREQUEST_INTERNALOPTIONSENTRY._serialized_options = b'8\001'
118
173
  _PHYSICSAISERVICE.methods_by_name['ListArchitectures']._options = None
119
174
  _PHYSICSAISERVICE.methods_by_name['ListArchitectures']._serialized_options = b'\202\323\344\223\002\036\022\034/v0/physics_ai/architectures'
120
175
  _PHYSICSAISERVICE.methods_by_name['ListPretrainedModels']._options = None
121
176
  _PHYSICSAISERVICE.methods_by_name['ListPretrainedModels']._serialized_options = b'\202\323\344\223\002\"\022 /v0/physics_ai/pretrained_models'
122
177
  _PHYSICSAISERVICE.methods_by_name['GetSolutionDataPhysicsAI']._options = None
123
178
  _PHYSICSAISERVICE.methods_by_name['GetSolutionDataPhysicsAI']._serialized_options = b'\202\323\344\223\0020\"+/v0/physics_ai/solutions/{solution_id}/data:\001*'
124
- _PHYSICSAILIFECYCLESTATE._serialized_start=1587
125
- _PHYSICSAILIFECYCLESTATE._serialized_end=1767
126
- _PHYSICSAIARCHITECTUREVERSION._serialized_start=249
127
- _PHYSICSAIARCHITECTUREVERSION._serialized_end=422
128
- _PHYSICSAIARCHITECTURE._serialized_start=425
129
- _PHYSICSAIARCHITECTURE._serialized_end=591
130
- _LISTARCHITECTURESREQUEST._serialized_start=593
131
- _LISTARCHITECTURESREQUEST._serialized_end=619
132
- _LISTARCHITECTURESRESPONSE._serialized_start=621
133
- _LISTARCHITECTURESRESPONSE._serialized_end=742
134
- _PHYSICSAIMODELVERSION._serialized_start=745
135
- _PHYSICSAIMODELVERSION._serialized_end=892
136
- _PHYSICSAIMODEL._serialized_start=895
137
- _PHYSICSAIMODEL._serialized_end=1047
138
- _LISTPRETRAINEDMODELSREQUEST._serialized_start=1049
139
- _LISTPRETRAINEDMODELSREQUEST._serialized_end=1078
140
- _LISTPRETRAINEDMODELSRESPONSE._serialized_start=1080
141
- _LISTPRETRAINEDMODELSRESPONSE._serialized_end=1190
142
- _GETSOLUTIONDATAPHYSICSAIREQUEST._serialized_start=1193
143
- _GETSOLUTIONDATAPHYSICSAIREQUEST._serialized_end=1484
144
- _GETSOLUTIONDATAPHYSICSAIRESPONSE._serialized_start=1486
145
- _GETSOLUTIONDATAPHYSICSAIRESPONSE._serialized_end=1584
146
- _PHYSICSAISERVICE._serialized_start=1770
147
- _PHYSICSAISERVICE._serialized_end=2467
179
+ _PHYSICSAISERVICE.methods_by_name['SubmitTrainingJob']._options = None
180
+ _PHYSICSAISERVICE.methods_by_name['SubmitTrainingJob']._serialized_options = b'\202\323\344\223\002!\"\034/v0/physics_ai/training/jobs:\001*'
181
+ _PHYSICSAILIFECYCLESTATE._serialized_start=3019
182
+ _PHYSICSAILIFECYCLESTATE._serialized_end=3199
183
+ _TRAININGDATASOURCETYPE._serialized_start=3202
184
+ _TRAININGDATASOURCETYPE._serialized_end=3369
185
+ _MODELINITIALIZATIONTYPE._serialized_start=3372
186
+ _MODELINITIALIZATIONTYPE._serialized_end=3565
187
+ _PHYSICSAIARCHITECTUREVERSION._serialized_start=272
188
+ _PHYSICSAIARCHITECTUREVERSION._serialized_end=445
189
+ _PHYSICSAIARCHITECTURE._serialized_start=448
190
+ _PHYSICSAIARCHITECTURE._serialized_end=614
191
+ _LISTARCHITECTURESREQUEST._serialized_start=616
192
+ _LISTARCHITECTURESREQUEST._serialized_end=642
193
+ _LISTARCHITECTURESRESPONSE._serialized_start=644
194
+ _LISTARCHITECTURESRESPONSE._serialized_end=765
195
+ _PHYSICSAIMODELVERSION._serialized_start=768
196
+ _PHYSICSAIMODELVERSION._serialized_end=915
197
+ _PHYSICSAIMODEL._serialized_start=918
198
+ _PHYSICSAIMODEL._serialized_end=1070
199
+ _LISTPRETRAINEDMODELSREQUEST._serialized_start=1072
200
+ _LISTPRETRAINEDMODELSREQUEST._serialized_end=1101
201
+ _LISTPRETRAINEDMODELSRESPONSE._serialized_start=1103
202
+ _LISTPRETRAINEDMODELSRESPONSE._serialized_end=1213
203
+ _GETSOLUTIONDATAPHYSICSAIREQUEST._serialized_start=1216
204
+ _GETSOLUTIONDATAPHYSICSAIREQUEST._serialized_end=1691
205
+ _GETSOLUTIONDATAPHYSICSAIREQUEST_INTERNALOPTIONSENTRY._serialized_start=1637
206
+ _GETSOLUTIONDATAPHYSICSAIREQUEST_INTERNALOPTIONSENTRY._serialized_end=1691
207
+ _GETSOLUTIONDATAPHYSICSAIRESPONSE._serialized_start=1693
208
+ _GETSOLUTIONDATAPHYSICSAIRESPONSE._serialized_end=1791
209
+ _TRAININGSOLUTION._serialized_start=1793
210
+ _TRAININGSOLUTION._serialized_end=1852
211
+ _PHYSICSAITRAININGJOB._serialized_start=1855
212
+ _PHYSICSAITRAININGJOB._serialized_end=2521
213
+ _SUBMITTRAININGJOBREQUEST._serialized_start=2524
214
+ _SUBMITTRAININGJOBREQUEST._serialized_end=2895
215
+ _SUBMITTRAININGJOBRESPONSE._serialized_start=2897
216
+ _SUBMITTRAININGJOBRESPONSE._serialized_end=3016
217
+ _PHYSICSAISERVICE._serialized_start=3568
218
+ _PHYSICSAISERVICE._serialized_end=4477
148
219
  # @@protoc_insertion_point(module_scope)
@@ -8,7 +8,9 @@ import google.protobuf.descriptor
8
8
  import google.protobuf.internal.containers
9
9
  import google.protobuf.internal.enum_type_wrapper
10
10
  import google.protobuf.message
11
+ import google.protobuf.timestamp_pb2
11
12
  import luminarycloud._proto.api.v0.luminarycloud.common.common_pb2
13
+ import luminarycloud._proto.base.base_pb2
12
14
  import luminarycloud._proto.quantity.quantity_pb2
13
15
  import sys
14
16
  import typing
@@ -52,6 +54,58 @@ LIFECYCLE_STATE_RETIRED: PhysicsAiLifecycleState.ValueType # 4
52
54
  """Archived; no training or inference support."""
53
55
  global___PhysicsAiLifecycleState = PhysicsAiLifecycleState
54
56
 
57
+ class _TrainingDataSourceType:
58
+ ValueType = typing.NewType("ValueType", builtins.int)
59
+ V: typing_extensions.TypeAlias = ValueType
60
+
61
+ class _TrainingDataSourceTypeEnumTypeWrapper(google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[_TrainingDataSourceType.ValueType], builtins.type): # noqa: F821
62
+ DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor
63
+ TRAINING_DATA_SOURCE_TYPE_UNSPECIFIED: _TrainingDataSourceType.ValueType # 0
64
+ """Default value, should not be used in practice."""
65
+ TRAINING_DATA_SOURCE_TYPE_SIMULATION_SOLUTIONS: _TrainingDataSourceType.ValueType # 1
66
+ """Training data from simulation solutions."""
67
+ TRAINING_DATA_SOURCE_TYPE_EXTERNAL_DATASET: _TrainingDataSourceType.ValueType # 2
68
+ """Training data from external dataset."""
69
+
70
+ class TrainingDataSourceType(_TrainingDataSourceType, metaclass=_TrainingDataSourceTypeEnumTypeWrapper):
71
+ """Training data source types"""
72
+
73
+ TRAINING_DATA_SOURCE_TYPE_UNSPECIFIED: TrainingDataSourceType.ValueType # 0
74
+ """Default value, should not be used in practice."""
75
+ TRAINING_DATA_SOURCE_TYPE_SIMULATION_SOLUTIONS: TrainingDataSourceType.ValueType # 1
76
+ """Training data from simulation solutions."""
77
+ TRAINING_DATA_SOURCE_TYPE_EXTERNAL_DATASET: TrainingDataSourceType.ValueType # 2
78
+ """Training data from external dataset."""
79
+ global___TrainingDataSourceType = TrainingDataSourceType
80
+
81
+ class _ModelInitializationType:
82
+ ValueType = typing.NewType("ValueType", builtins.int)
83
+ V: typing_extensions.TypeAlias = ValueType
84
+
85
+ class _ModelInitializationTypeEnumTypeWrapper(google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[_ModelInitializationType.ValueType], builtins.type): # noqa: F821
86
+ DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor
87
+ MODEL_INITIALIZATION_TYPE_UNSPECIFIED: _ModelInitializationType.ValueType # 0
88
+ """Default value, should not be used in practice."""
89
+ MODEL_INITIALIZATION_TYPE_RANDOM: _ModelInitializationType.ValueType # 1
90
+ """Random initialization."""
91
+ MODEL_INITIALIZATION_TYPE_MODEL_VERSION: _ModelInitializationType.ValueType # 2
92
+ """Initialize from existing model version."""
93
+ MODEL_INITIALIZATION_TYPE_CHECKPOINT: _ModelInitializationType.ValueType # 3
94
+ """Initialize from checkpoint."""
95
+
96
+ class ModelInitializationType(_ModelInitializationType, metaclass=_ModelInitializationTypeEnumTypeWrapper):
97
+ """Model initialization types"""
98
+
99
+ MODEL_INITIALIZATION_TYPE_UNSPECIFIED: ModelInitializationType.ValueType # 0
100
+ """Default value, should not be used in practice."""
101
+ MODEL_INITIALIZATION_TYPE_RANDOM: ModelInitializationType.ValueType # 1
102
+ """Random initialization."""
103
+ MODEL_INITIALIZATION_TYPE_MODEL_VERSION: ModelInitializationType.ValueType # 2
104
+ """Initialize from existing model version."""
105
+ MODEL_INITIALIZATION_TYPE_CHECKPOINT: ModelInitializationType.ValueType # 3
106
+ """Initialize from checkpoint."""
107
+ global___ModelInitializationType = ModelInitializationType
108
+
55
109
  class PhysicsAiArchitectureVersion(google.protobuf.message.Message):
56
110
  """A physics ai architecture version."""
57
111
 
@@ -233,6 +287,21 @@ class GetSolutionDataPhysicsAIRequest(google.protobuf.message.Message):
233
287
 
234
288
  DESCRIPTOR: google.protobuf.descriptor.Descriptor
235
289
 
290
+ class InternalOptionsEntry(google.protobuf.message.Message):
291
+ DESCRIPTOR: google.protobuf.descriptor.Descriptor
292
+
293
+ KEY_FIELD_NUMBER: builtins.int
294
+ VALUE_FIELD_NUMBER: builtins.int
295
+ key: builtins.str
296
+ value: builtins.str
297
+ def __init__(
298
+ self,
299
+ *,
300
+ key: builtins.str = ...,
301
+ value: builtins.str = ...,
302
+ ) -> None: ...
303
+ def ClearField(self, field_name: typing_extensions.Literal["key", b"key", "value", b"value"]) -> None: ...
304
+
236
305
  SOLUTION_ID_FIELD_NUMBER: builtins.int
237
306
  EXCLUDE_SURFACES_FIELD_NUMBER: builtins.int
238
307
  FILL_HOLES_FIELD_NUMBER: builtins.int
@@ -240,6 +309,7 @@ class GetSolutionDataPhysicsAIRequest(google.protobuf.message.Message):
240
309
  VOLUME_FIELDS_TO_KEEP_FIELD_NUMBER: builtins.int
241
310
  PROCESS_VOLUME_FIELD_NUMBER: builtins.int
242
311
  SINGLE_PRECISION_FIELD_NUMBER: builtins.int
312
+ INTERNAL_OPTIONS_FIELD_NUMBER: builtins.int
243
313
  solution_id: builtins.str
244
314
  """Required. The globally unique identifier for the solution."""
245
315
  @property
@@ -257,6 +327,9 @@ class GetSolutionDataPhysicsAIRequest(google.protobuf.message.Message):
257
327
  """Whether to process volume meshes during physics AI processing"""
258
328
  single_precision: builtins.bool
259
329
  """Whether to export the floating point fields in single precision"""
330
+ @property
331
+ def internal_options(self) -> google.protobuf.internal.containers.ScalarMap[builtins.str, builtins.str]:
332
+ """Internal options for physics AI processing only available for staff users."""
260
333
  def __init__(
261
334
  self,
262
335
  *,
@@ -267,8 +340,9 @@ class GetSolutionDataPhysicsAIRequest(google.protobuf.message.Message):
267
340
  volume_fields_to_keep: collections.abc.Iterable[luminarycloud._proto.quantity.quantity_pb2.QuantityType.ValueType] | None = ...,
268
341
  process_volume: builtins.bool = ...,
269
342
  single_precision: builtins.bool = ...,
343
+ internal_options: collections.abc.Mapping[builtins.str, builtins.str] | None = ...,
270
344
  ) -> None: ...
271
- def ClearField(self, field_name: typing_extensions.Literal["exclude_surfaces", b"exclude_surfaces", "fill_holes", b"fill_holes", "process_volume", b"process_volume", "single_precision", b"single_precision", "solution_id", b"solution_id", "surface_fields_to_keep", b"surface_fields_to_keep", "volume_fields_to_keep", b"volume_fields_to_keep"]) -> None: ...
345
+ def ClearField(self, field_name: typing_extensions.Literal["exclude_surfaces", b"exclude_surfaces", "fill_holes", b"fill_holes", "internal_options", b"internal_options", "process_volume", b"process_volume", "single_precision", b"single_precision", "solution_id", b"solution_id", "surface_fields_to_keep", b"surface_fields_to_keep", "volume_fields_to_keep", b"volume_fields_to_keep"]) -> None: ...
272
346
 
273
347
  global___GetSolutionDataPhysicsAIRequest = GetSolutionDataPhysicsAIRequest
274
348
 
@@ -290,3 +364,163 @@ class GetSolutionDataPhysicsAIResponse(google.protobuf.message.Message):
290
364
  def ClearField(self, field_name: typing_extensions.Literal["file", b"file"]) -> None: ...
291
365
 
292
366
  global___GetSolutionDataPhysicsAIResponse = GetSolutionDataPhysicsAIResponse
367
+
368
+ class TrainingSolution(google.protobuf.message.Message):
369
+ """A training solution specification"""
370
+
371
+ DESCRIPTOR: google.protobuf.descriptor.Descriptor
372
+
373
+ SOLUTION_ID_FIELD_NUMBER: builtins.int
374
+ DATA_SPLIT_FIELD_NUMBER: builtins.int
375
+ solution_id: builtins.str
376
+ """Solution ID to use for training."""
377
+ data_split: builtins.str
378
+ """Data split for this solution (train, validation, test)."""
379
+ def __init__(
380
+ self,
381
+ *,
382
+ solution_id: builtins.str = ...,
383
+ data_split: builtins.str = ...,
384
+ ) -> None: ...
385
+ def ClearField(self, field_name: typing_extensions.Literal["data_split", b"data_split", "solution_id", b"solution_id"]) -> None: ...
386
+
387
+ global___TrainingSolution = TrainingSolution
388
+
389
+ class PhysicsAiTrainingJob(google.protobuf.message.Message):
390
+ """A Physics AI training job"""
391
+
392
+ DESCRIPTOR: google.protobuf.descriptor.Descriptor
393
+
394
+ ID_FIELD_NUMBER: builtins.int
395
+ ARCHITECTURE_VERSION_ID_FIELD_NUMBER: builtins.int
396
+ USER_ID_FIELD_NUMBER: builtins.int
397
+ TRAINING_CONFIG_FIELD_NUMBER: builtins.int
398
+ TRAINING_DATA_SOURCE_TYPE_FIELD_NUMBER: builtins.int
399
+ TRAINING_DESCRIPTION_FIELD_NUMBER: builtins.int
400
+ EXTERNAL_DATASET_URI_FIELD_NUMBER: builtins.int
401
+ INITIALIZATION_TYPE_FIELD_NUMBER: builtins.int
402
+ BASE_MODEL_VERSION_ID_FIELD_NUMBER: builtins.int
403
+ STATUS_FIELD_NUMBER: builtins.int
404
+ ERROR_MESSAGE_FIELD_NUMBER: builtins.int
405
+ OUTPUT_MODEL_VERSION_ID_FIELD_NUMBER: builtins.int
406
+ CREATION_TIME_FIELD_NUMBER: builtins.int
407
+ UPDATE_TIME_FIELD_NUMBER: builtins.int
408
+ COMPLETION_TIME_FIELD_NUMBER: builtins.int
409
+ id: builtins.str
410
+ """Unique identifier for the training job."""
411
+ architecture_version_id: builtins.str
412
+ """Architecture version ID being trained."""
413
+ user_id: builtins.str
414
+ """User ID who submitted the job."""
415
+ training_config: builtins.str
416
+ """Training configuration as JSON."""
417
+ training_data_source_type: global___TrainingDataSourceType.ValueType
418
+ """Type of training data source."""
419
+ training_description: builtins.str
420
+ """Description of the training job. (mutable)"""
421
+ external_dataset_uri: builtins.str
422
+ """External dataset URI (if using external dataset)."""
423
+ initialization_type: global___ModelInitializationType.ValueType
424
+ """Model initialization type."""
425
+ base_model_version_id: builtins.str
426
+ """Base model version ID (if initializing from existing model)."""
427
+ @property
428
+ def status(self) -> luminarycloud._proto.base.base_pb2.JobStatus:
429
+ """Current status of the training job. (mutable)"""
430
+ error_message: builtins.str
431
+ """Error message (if failed)."""
432
+ output_model_version_id: builtins.str
433
+ """Output model version ID (if completed, so mutable)."""
434
+ @property
435
+ def creation_time(self) -> google.protobuf.timestamp_pb2.Timestamp:
436
+ """Job creation time."""
437
+ @property
438
+ def update_time(self) -> google.protobuf.timestamp_pb2.Timestamp:
439
+ """Job last update time, updated when status changes. (mutable)"""
440
+ @property
441
+ def completion_time(self) -> google.protobuf.timestamp_pb2.Timestamp:
442
+ """Job completion time, set upon job completion. (mutable)"""
443
+ def __init__(
444
+ self,
445
+ *,
446
+ id: builtins.str = ...,
447
+ architecture_version_id: builtins.str = ...,
448
+ user_id: builtins.str = ...,
449
+ training_config: builtins.str = ...,
450
+ training_data_source_type: global___TrainingDataSourceType.ValueType = ...,
451
+ training_description: builtins.str = ...,
452
+ external_dataset_uri: builtins.str = ...,
453
+ initialization_type: global___ModelInitializationType.ValueType = ...,
454
+ base_model_version_id: builtins.str = ...,
455
+ status: luminarycloud._proto.base.base_pb2.JobStatus | None = ...,
456
+ error_message: builtins.str = ...,
457
+ output_model_version_id: builtins.str = ...,
458
+ creation_time: google.protobuf.timestamp_pb2.Timestamp | None = ...,
459
+ update_time: google.protobuf.timestamp_pb2.Timestamp | None = ...,
460
+ completion_time: google.protobuf.timestamp_pb2.Timestamp | None = ...,
461
+ ) -> None: ...
462
+ def HasField(self, field_name: typing_extensions.Literal["completion_time", b"completion_time", "creation_time", b"creation_time", "status", b"status", "update_time", b"update_time"]) -> builtins.bool: ...
463
+ def ClearField(self, field_name: typing_extensions.Literal["architecture_version_id", b"architecture_version_id", "base_model_version_id", b"base_model_version_id", "completion_time", b"completion_time", "creation_time", b"creation_time", "error_message", b"error_message", "external_dataset_uri", b"external_dataset_uri", "id", b"id", "initialization_type", b"initialization_type", "output_model_version_id", b"output_model_version_id", "status", b"status", "training_config", b"training_config", "training_data_source_type", b"training_data_source_type", "training_description", b"training_description", "update_time", b"update_time", "user_id", b"user_id"]) -> None: ...
464
+
465
+ global___PhysicsAiTrainingJob = PhysicsAiTrainingJob
466
+
467
+ class SubmitTrainingJobRequest(google.protobuf.message.Message):
468
+ """Request message for submitting a training job"""
469
+
470
+ DESCRIPTOR: google.protobuf.descriptor.Descriptor
471
+
472
+ ARCHITECTURE_VERSION_ID_FIELD_NUMBER: builtins.int
473
+ TRAINING_DESCRIPTION_FIELD_NUMBER: builtins.int
474
+ EXTERNAL_DATASET_URI_FIELD_NUMBER: builtins.int
475
+ TRAINING_SOLUTIONS_FIELD_NUMBER: builtins.int
476
+ TRAINING_CONFIG_FIELD_NUMBER: builtins.int
477
+ INITIALIZATION_TYPE_FIELD_NUMBER: builtins.int
478
+ BASE_MODEL_VERSION_ID_FIELD_NUMBER: builtins.int
479
+ architecture_version_id: builtins.str
480
+ """Architecture version ID to train."""
481
+ training_description: builtins.str
482
+ """Description of the training job."""
483
+ external_dataset_uri: builtins.str
484
+ """External dataset URI"""
485
+ @property
486
+ def training_solutions(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___TrainingSolution]:
487
+ """Training solutions"""
488
+ training_config: builtins.str
489
+ """Training configuration in JSON format."""
490
+ initialization_type: global___ModelInitializationType.ValueType
491
+ """Model initialization type."""
492
+ base_model_version_id: builtins.str
493
+ """Base model version ID (if initializing from existing model)."""
494
+ def __init__(
495
+ self,
496
+ *,
497
+ architecture_version_id: builtins.str = ...,
498
+ training_description: builtins.str = ...,
499
+ external_dataset_uri: builtins.str = ...,
500
+ training_solutions: collections.abc.Iterable[global___TrainingSolution] | None = ...,
501
+ training_config: builtins.str = ...,
502
+ initialization_type: global___ModelInitializationType.ValueType = ...,
503
+ base_model_version_id: builtins.str = ...,
504
+ ) -> None: ...
505
+ def ClearField(self, field_name: typing_extensions.Literal["architecture_version_id", b"architecture_version_id", "base_model_version_id", b"base_model_version_id", "external_dataset_uri", b"external_dataset_uri", "initialization_type", b"initialization_type", "training_config", b"training_config", "training_description", b"training_description", "training_solutions", b"training_solutions"]) -> None: ...
506
+
507
+ global___SubmitTrainingJobRequest = SubmitTrainingJobRequest
508
+
509
+ class SubmitTrainingJobResponse(google.protobuf.message.Message):
510
+ """Response message for submitting a training job"""
511
+
512
+ DESCRIPTOR: google.protobuf.descriptor.Descriptor
513
+
514
+ TRAINING_JOB_FIELD_NUMBER: builtins.int
515
+ @property
516
+ def training_job(self) -> global___PhysicsAiTrainingJob:
517
+ """The created training job."""
518
+ def __init__(
519
+ self,
520
+ *,
521
+ training_job: global___PhysicsAiTrainingJob | None = ...,
522
+ ) -> None: ...
523
+ def HasField(self, field_name: typing_extensions.Literal["training_job", b"training_job"]) -> builtins.bool: ...
524
+ def ClearField(self, field_name: typing_extensions.Literal["training_job", b"training_job"]) -> None: ...
525
+
526
+ global___SubmitTrainingJobResponse = SubmitTrainingJobResponse
@@ -30,6 +30,11 @@ class PhysicsAiServiceStub(object):
30
30
  request_serializer=proto_dot_api_dot_v0_dot_luminarycloud_dot_physics__ai_dot_physics__ai__pb2.GetSolutionDataPhysicsAIRequest.SerializeToString,
31
31
  response_deserializer=proto_dot_api_dot_v0_dot_luminarycloud_dot_physics__ai_dot_physics__ai__pb2.GetSolutionDataPhysicsAIResponse.FromString,
32
32
  )
33
+ self.SubmitTrainingJob = channel.unary_unary(
34
+ '/luminary.proto.api.v0.luminarycloud.physics_ai.PhysicsAiService/SubmitTrainingJob',
35
+ request_serializer=proto_dot_api_dot_v0_dot_luminarycloud_dot_physics__ai_dot_physics__ai__pb2.SubmitTrainingJobRequest.SerializeToString,
36
+ response_deserializer=proto_dot_api_dot_v0_dot_luminarycloud_dot_physics__ai_dot_physics__ai__pb2.SubmitTrainingJobResponse.FromString,
37
+ )
33
38
 
34
39
 
35
40
  class PhysicsAiServiceServicer(object):
@@ -57,6 +62,13 @@ class PhysicsAiServiceServicer(object):
57
62
  context.set_details('Method not implemented!')
58
63
  raise NotImplementedError('Method not implemented!')
59
64
 
65
+ def SubmitTrainingJob(self, request, context):
66
+ """Submits a training job for a Physics AI architecture
67
+ """
68
+ context.set_code(grpc.StatusCode.UNIMPLEMENTED)
69
+ context.set_details('Method not implemented!')
70
+ raise NotImplementedError('Method not implemented!')
71
+
60
72
 
61
73
  def add_PhysicsAiServiceServicer_to_server(servicer, server):
62
74
  rpc_method_handlers = {
@@ -75,6 +87,11 @@ def add_PhysicsAiServiceServicer_to_server(servicer, server):
75
87
  request_deserializer=proto_dot_api_dot_v0_dot_luminarycloud_dot_physics__ai_dot_physics__ai__pb2.GetSolutionDataPhysicsAIRequest.FromString,
76
88
  response_serializer=proto_dot_api_dot_v0_dot_luminarycloud_dot_physics__ai_dot_physics__ai__pb2.GetSolutionDataPhysicsAIResponse.SerializeToString,
77
89
  ),
90
+ 'SubmitTrainingJob': grpc.unary_unary_rpc_method_handler(
91
+ servicer.SubmitTrainingJob,
92
+ request_deserializer=proto_dot_api_dot_v0_dot_luminarycloud_dot_physics__ai_dot_physics__ai__pb2.SubmitTrainingJobRequest.FromString,
93
+ response_serializer=proto_dot_api_dot_v0_dot_luminarycloud_dot_physics__ai_dot_physics__ai__pb2.SubmitTrainingJobResponse.SerializeToString,
94
+ ),
78
95
  }
79
96
  generic_handler = grpc.method_handlers_generic_handler(
80
97
  'luminary.proto.api.v0.luminarycloud.physics_ai.PhysicsAiService', rpc_method_handlers)
@@ -136,3 +153,20 @@ class PhysicsAiService(object):
136
153
  proto_dot_api_dot_v0_dot_luminarycloud_dot_physics__ai_dot_physics__ai__pb2.GetSolutionDataPhysicsAIResponse.FromString,
137
154
  options, channel_credentials,
138
155
  insecure, call_credentials, compression, wait_for_ready, timeout, metadata)
156
+
157
+ @staticmethod
158
+ def SubmitTrainingJob(request,
159
+ target,
160
+ options=(),
161
+ channel_credentials=None,
162
+ call_credentials=None,
163
+ insecure=False,
164
+ compression=None,
165
+ wait_for_ready=None,
166
+ timeout=None,
167
+ metadata=None):
168
+ return grpc.experimental.unary_unary(request, target, '/luminary.proto.api.v0.luminarycloud.physics_ai.PhysicsAiService/SubmitTrainingJob',
169
+ proto_dot_api_dot_v0_dot_luminarycloud_dot_physics__ai_dot_physics__ai__pb2.SubmitTrainingJobRequest.SerializeToString,
170
+ proto_dot_api_dot_v0_dot_luminarycloud_dot_physics__ai_dot_physics__ai__pb2.SubmitTrainingJobResponse.FromString,
171
+ options, channel_credentials,
172
+ insecure, call_credentials, compression, wait_for_ready, timeout, metadata)
@@ -25,6 +25,11 @@ class PhysicsAiServiceStub:
25
25
  luminarycloud._proto.api.v0.luminarycloud.physics_ai.physics_ai_pb2.GetSolutionDataPhysicsAIResponse,
26
26
  ]
27
27
  """Gets solution data with physics AI processing applied"""
28
+ SubmitTrainingJob: grpc.UnaryUnaryMultiCallable[
29
+ luminarycloud._proto.api.v0.luminarycloud.physics_ai.physics_ai_pb2.SubmitTrainingJobRequest,
30
+ luminarycloud._proto.api.v0.luminarycloud.physics_ai.physics_ai_pb2.SubmitTrainingJobResponse,
31
+ ]
32
+ """Submits a training job for a Physics AI architecture"""
28
33
 
29
34
  class PhysicsAiServiceServicer(metaclass=abc.ABCMeta):
30
35
  """Manages physics ai architectures."""
@@ -50,5 +55,12 @@ class PhysicsAiServiceServicer(metaclass=abc.ABCMeta):
50
55
  context: grpc.ServicerContext,
51
56
  ) -> luminarycloud._proto.api.v0.luminarycloud.physics_ai.physics_ai_pb2.GetSolutionDataPhysicsAIResponse:
52
57
  """Gets solution data with physics AI processing applied"""
58
+ @abc.abstractmethod
59
+ def SubmitTrainingJob(
60
+ self,
61
+ request: luminarycloud._proto.api.v0.luminarycloud.physics_ai.physics_ai_pb2.SubmitTrainingJobRequest,
62
+ context: grpc.ServicerContext,
63
+ ) -> luminarycloud._proto.api.v0.luminarycloud.physics_ai.physics_ai_pb2.SubmitTrainingJobResponse:
64
+ """Submits a training job for a Physics AI architecture"""
53
65
 
54
66
  def add_PhysicsAiServiceServicer_to_server(servicer: PhysicsAiServiceServicer, server: grpc.Server) -> None: ...
@@ -17,7 +17,7 @@ from google.protobuf import timestamp_pb2 as google_dot_protobuf_dot_timestamp__
17
17
  from google.api import annotations_pb2 as google_dot_api_dot_annotations__pb2
18
18
 
19
19
 
20
- DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n0proto/api/v0/luminarycloud/project/project.proto\x12+luminary.proto.api.v0.luminarycloud.project\x1a\x1bgoogle/protobuf/empty.proto\x1a\x1fgoogle/protobuf/timestamp.proto\x1a\x1cgoogle/api/annotations.proto\"\xdc\x01\n\x07Project\x12\n\n\x02id\x18\x01 \x01(\t\x12\x0c\n\x04name\x18\x02 \x01(\t\x12\x13\n\x0b\x64\x65scription\x18\x03 \x01(\t\x12/\n\x0b\x63reate_time\x18\x04 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12/\n\x0bupdate_time\x18\x05 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12\x0e\n\x06meshes\x18\x06 \x03(\t\x12\x13\n\x0bsimulations\x18\x07 \x03(\t\x12\x1b\n\x13storage_usage_bytes\x18\x08 \x01(\x04\"9\n\x14\x43reateProjectRequest\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x13\n\x0b\x64\x65scription\x18\x02 \x01(\t\"^\n\x15\x43reateProjectResponse\x12\x45\n\x07project\x18\x01 \x01(\x0b\x32\x34.luminary.proto.api.v0.luminarycloud.project.Project\"\x1f\n\x11GetProjectRequest\x12\n\n\x02id\x18\x01 \x01(\t\"[\n\x12GetProjectResponse\x12\x45\n\x07project\x18\x01 \x01(\x0b\x32\x34.luminary.proto.api.v0.luminarycloud.project.Project\"c\n\x13ListProjectsRequest\x12\x16\n\tpage_size\x18\x01 \x01(\x05H\x00\x88\x01\x01\x12\x17\n\npage_token\x18\x02 \x01(\tH\x01\x88\x01\x01\x42\x0c\n\n_page_sizeB\r\n\x0b_page_token\"\x8c\x01\n\x14ListProjectsResponse\x12\x46\n\x08projects\x18\x01 \x03(\x0b\x32\x34.luminary.proto.api.v0.luminarycloud.project.Project\x12\x17\n\x0fnext_page_token\x18\x02 \x01(\t\x12\x13\n\x0btotal_count\x18\x03 \x01(\x05\"E\n\x14UpdateProjectRequest\x12\n\n\x02id\x18\x01 \x01(\t\x12\x0c\n\x04name\x18\x02 \x01(\t\x12\x13\n\x0b\x64\x65scription\x18\x03 \x01(\t\"^\n\x15UpdateProjectResponse\x12\x45\n\x07project\x18\x01 \x01(\x0b\x32\x34.luminary.proto.api.v0.luminarycloud.project.Project\"\"\n\x14\x44\x65leteProjectRequest\x12\n\n\x02id\x18\x01 \x01(\t\"=\n\x1aLoadGeometryToSetupRequest\x12\n\n\x02id\x18\x01 \x01(\t\x12\x13\n\x0bgeometry_id\x18\x02 \x01(\t\"\x1d\n\x1bLoadGeometryToSetupResponse\"\xdc\x01\n\x13ShareProjectRequest\x12\n\n\x02id\x18\x01 \x01(\t\x12\r\n\x05\x65mail\x18\x02 \x01(\t\x12W\n\x04role\x18\x03 \x01(\x0e\x32I.luminary.proto.api.v0.luminarycloud.project.ShareProjectRequest.UserRole\"Q\n\x08UserRole\x12\x19\n\x15USER_ROLE_UNSPECIFIED\x10\x00\x12\x14\n\x10USER_ROLE_VIEWER\x10\x01\x12\x14\n\x10USER_ROLE_EDITOR\x10\x02\"=\n\x1eShareProjectWithSupportRequest\x12\n\n\x02id\x18\x01 \x01(\t\x12\x0f\n\x07message\x18\x02 \x01(\t\"2\n\x15UnshareProjectRequest\x12\n\n\x02id\x18\x01 \x01(\t\x12\r\n\x05\x65mail\x18\x02 \x01(\t\".\n UnshareProjectWithSupportRequest\x12\n\n\x02id\x18\x01 \x01(\t2\xbd\r\n\x0eProjectService\x12\xaf\x01\n\rCreateProject\x12\x41.luminary.proto.api.v0.luminarycloud.project.CreateProjectRequest\x1a\x42.luminary.proto.api.v0.luminarycloud.project.CreateProjectResponse\"\x17\x82\xd3\xe4\x93\x02\x11\"\x0c/v0/projects:\x01*\x12\xa8\x01\n\nGetProject\x12>.luminary.proto.api.v0.luminarycloud.project.GetProjectRequest\x1a?.luminary.proto.api.v0.luminarycloud.project.GetProjectResponse\"\x19\x82\xd3\xe4\x93\x02\x13\x12\x11/v0/projects/{id}\x12\xa9\x01\n\x0cListProjects\x12@.luminary.proto.api.v0.luminarycloud.project.ListProjectsRequest\x1a\x41.luminary.proto.api.v0.luminarycloud.project.ListProjectsResponse\"\x14\x82\xd3\xe4\x93\x02\x0e\x12\x0c/v0/projects\x12\xb4\x01\n\rUpdateProject\x12\x41.luminary.proto.api.v0.luminarycloud.project.UpdateProjectRequest\x1a\x42.luminary.proto.api.v0.luminarycloud.project.UpdateProjectResponse\"\x1c\x82\xd3\xe4\x93\x02\x16\x32\x11/v0/projects/{id}:\x01*\x12\x85\x01\n\rDeleteProject\x12\x41.luminary.proto.api.v0.luminarycloud.project.DeleteProjectRequest\x1a\x16.google.protobuf.Empty\"\x19\x82\xd3\xe4\x93\x02\x13*\x11/v0/projects/{id}\x12\xd4\x01\n\x13LoadGeometryToSetup\x12G.luminary.proto.api.v0.luminarycloud.project.LoadGeometryToSetupRequest\x1aH.luminary.proto.api.v0.luminarycloud.project.LoadGeometryToSetupResponse\"*\x82\xd3\xe4\x93\x02$\"\x1f/v0/projects/{id}/load-geometry:\x01*\x12\x8c\x01\n\x0cShareProject\x12@.luminary.proto.api.v0.luminarycloud.project.ShareProjectRequest\x1a\x16.google.protobuf.Empty\"\"\x82\xd3\xe4\x93\x02\x1c\"\x17/v0/projects/{id}/share:\x01*\x12\xaf\x01\n\x17ShareProjectWithSupport\x12K.luminary.proto.api.v0.luminarycloud.project.ShareProjectWithSupportRequest\x1a\x16.google.protobuf.Empty\"/\x82\xd3\xe4\x93\x02)\"$/v0/projects/{id}/share-with-support:\x01*\x12\x92\x01\n\x0eUnshareProject\x12\x42.luminary.proto.api.v0.luminarycloud.project.UnshareProjectRequest\x1a\x16.google.protobuf.Empty\"$\x82\xd3\xe4\x93\x02\x1e\"\x19/v0/projects/{id}/unshare:\x01*\x12\xb5\x01\n\x19UnshareProjectWithSupport\x12M.luminary.proto.api.v0.luminarycloud.project.UnshareProjectWithSupportRequest\x1a\x16.google.protobuf.Empty\"1\x82\xd3\xe4\x93\x02+\"&/v0/projects/{id}/unshare-with-support:\x01*B;Z9luminarycloud.com/core/proto/api/v0/luminarycloud/projectb\x06proto3')
20
+ DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n0proto/api/v0/luminarycloud/project/project.proto\x12+luminary.proto.api.v0.luminarycloud.project\x1a\x1bgoogle/protobuf/empty.proto\x1a\x1fgoogle/protobuf/timestamp.proto\x1a\x1cgoogle/api/annotations.proto\"\xdc\x01\n\x07Project\x12\n\n\x02id\x18\x01 \x01(\t\x12\x0c\n\x04name\x18\x02 \x01(\t\x12\x13\n\x0b\x64\x65scription\x18\x03 \x01(\t\x12/\n\x0b\x63reate_time\x18\x04 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12/\n\x0bupdate_time\x18\x05 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12\x0e\n\x06meshes\x18\x06 \x03(\t\x12\x13\n\x0bsimulations\x18\x07 \x03(\t\x12\x1b\n\x13storage_usage_bytes\x18\x08 \x01(\x04\"9\n\x14\x43reateProjectRequest\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x13\n\x0b\x64\x65scription\x18\x02 \x01(\t\"^\n\x15\x43reateProjectResponse\x12\x45\n\x07project\x18\x01 \x01(\x0b\x32\x34.luminary.proto.api.v0.luminarycloud.project.Project\"\x1f\n\x11GetProjectRequest\x12\n\n\x02id\x18\x01 \x01(\t\"[\n\x12GetProjectResponse\x12\x45\n\x07project\x18\x01 \x01(\x0b\x32\x34.luminary.proto.api.v0.luminarycloud.project.Project\"c\n\x13ListProjectsRequest\x12\x16\n\tpage_size\x18\x01 \x01(\x05H\x00\x88\x01\x01\x12\x17\n\npage_token\x18\x02 \x01(\tH\x01\x88\x01\x01\x42\x0c\n\n_page_sizeB\r\n\x0b_page_token\"\x8c\x01\n\x14ListProjectsResponse\x12\x46\n\x08projects\x18\x01 \x03(\x0b\x32\x34.luminary.proto.api.v0.luminarycloud.project.Project\x12\x17\n\x0fnext_page_token\x18\x02 \x01(\t\x12\x13\n\x0btotal_count\x18\x03 \x01(\x05\"E\n\x14UpdateProjectRequest\x12\n\n\x02id\x18\x01 \x01(\t\x12\x0c\n\x04name\x18\x02 \x01(\t\x12\x13\n\x0b\x64\x65scription\x18\x03 \x01(\t\"^\n\x15UpdateProjectResponse\x12\x45\n\x07project\x18\x01 \x01(\x0b\x32\x34.luminary.proto.api.v0.luminarycloud.project.Project\"\"\n\x14\x44\x65leteProjectRequest\x12\n\n\x02id\x18\x01 \x01(\t\"Z\n\x1aLoadGeometryToSetupRequest\x12\n\n\x02id\x18\x01 \x01(\t\x12\x13\n\x0bgeometry_id\x18\x02 \x01(\t\x12\x1b\n\x13geometry_version_id\x18\x03 \x01(\t\"\x1d\n\x1bLoadGeometryToSetupResponse\"\xdc\x01\n\x13ShareProjectRequest\x12\n\n\x02id\x18\x01 \x01(\t\x12\r\n\x05\x65mail\x18\x02 \x01(\t\x12W\n\x04role\x18\x03 \x01(\x0e\x32I.luminary.proto.api.v0.luminarycloud.project.ShareProjectRequest.UserRole\"Q\n\x08UserRole\x12\x19\n\x15USER_ROLE_UNSPECIFIED\x10\x00\x12\x14\n\x10USER_ROLE_VIEWER\x10\x01\x12\x14\n\x10USER_ROLE_EDITOR\x10\x02\"=\n\x1eShareProjectWithSupportRequest\x12\n\n\x02id\x18\x01 \x01(\t\x12\x0f\n\x07message\x18\x02 \x01(\t\"2\n\x15UnshareProjectRequest\x12\n\n\x02id\x18\x01 \x01(\t\x12\r\n\x05\x65mail\x18\x02 \x01(\t\".\n UnshareProjectWithSupportRequest\x12\n\n\x02id\x18\x01 \x01(\t2\xbd\r\n\x0eProjectService\x12\xaf\x01\n\rCreateProject\x12\x41.luminary.proto.api.v0.luminarycloud.project.CreateProjectRequest\x1a\x42.luminary.proto.api.v0.luminarycloud.project.CreateProjectResponse\"\x17\x82\xd3\xe4\x93\x02\x11\"\x0c/v0/projects:\x01*\x12\xa8\x01\n\nGetProject\x12>.luminary.proto.api.v0.luminarycloud.project.GetProjectRequest\x1a?.luminary.proto.api.v0.luminarycloud.project.GetProjectResponse\"\x19\x82\xd3\xe4\x93\x02\x13\x12\x11/v0/projects/{id}\x12\xa9\x01\n\x0cListProjects\x12@.luminary.proto.api.v0.luminarycloud.project.ListProjectsRequest\x1a\x41.luminary.proto.api.v0.luminarycloud.project.ListProjectsResponse\"\x14\x82\xd3\xe4\x93\x02\x0e\x12\x0c/v0/projects\x12\xb4\x01\n\rUpdateProject\x12\x41.luminary.proto.api.v0.luminarycloud.project.UpdateProjectRequest\x1a\x42.luminary.proto.api.v0.luminarycloud.project.UpdateProjectResponse\"\x1c\x82\xd3\xe4\x93\x02\x16\x32\x11/v0/projects/{id}:\x01*\x12\x85\x01\n\rDeleteProject\x12\x41.luminary.proto.api.v0.luminarycloud.project.DeleteProjectRequest\x1a\x16.google.protobuf.Empty\"\x19\x82\xd3\xe4\x93\x02\x13*\x11/v0/projects/{id}\x12\xd4\x01\n\x13LoadGeometryToSetup\x12G.luminary.proto.api.v0.luminarycloud.project.LoadGeometryToSetupRequest\x1aH.luminary.proto.api.v0.luminarycloud.project.LoadGeometryToSetupResponse\"*\x82\xd3\xe4\x93\x02$\"\x1f/v0/projects/{id}/load-geometry:\x01*\x12\x8c\x01\n\x0cShareProject\x12@.luminary.proto.api.v0.luminarycloud.project.ShareProjectRequest\x1a\x16.google.protobuf.Empty\"\"\x82\xd3\xe4\x93\x02\x1c\"\x17/v0/projects/{id}/share:\x01*\x12\xaf\x01\n\x17ShareProjectWithSupport\x12K.luminary.proto.api.v0.luminarycloud.project.ShareProjectWithSupportRequest\x1a\x16.google.protobuf.Empty\"/\x82\xd3\xe4\x93\x02)\"$/v0/projects/{id}/share-with-support:\x01*\x12\x92\x01\n\x0eUnshareProject\x12\x42.luminary.proto.api.v0.luminarycloud.project.UnshareProjectRequest\x1a\x16.google.protobuf.Empty\"$\x82\xd3\xe4\x93\x02\x1e\"\x19/v0/projects/{id}/unshare:\x01*\x12\xb5\x01\n\x19UnshareProjectWithSupport\x12M.luminary.proto.api.v0.luminarycloud.project.UnshareProjectWithSupportRequest\x1a\x16.google.protobuf.Empty\"1\x82\xd3\xe4\x93\x02+\"&/v0/projects/{id}/unshare-with-support:\x01*B;Z9luminarycloud.com/core/proto/api/v0/luminarycloud/projectb\x06proto3')
21
21
 
22
22
 
23
23
 
@@ -196,19 +196,19 @@ if _descriptor._USE_C_DESCRIPTORS == False:
196
196
  _DELETEPROJECTREQUEST._serialized_start=1104
197
197
  _DELETEPROJECTREQUEST._serialized_end=1138
198
198
  _LOADGEOMETRYTOSETUPREQUEST._serialized_start=1140
199
- _LOADGEOMETRYTOSETUPREQUEST._serialized_end=1201
200
- _LOADGEOMETRYTOSETUPRESPONSE._serialized_start=1203
201
- _LOADGEOMETRYTOSETUPRESPONSE._serialized_end=1232
202
- _SHAREPROJECTREQUEST._serialized_start=1235
203
- _SHAREPROJECTREQUEST._serialized_end=1455
204
- _SHAREPROJECTREQUEST_USERROLE._serialized_start=1374
205
- _SHAREPROJECTREQUEST_USERROLE._serialized_end=1455
206
- _SHAREPROJECTWITHSUPPORTREQUEST._serialized_start=1457
207
- _SHAREPROJECTWITHSUPPORTREQUEST._serialized_end=1518
208
- _UNSHAREPROJECTREQUEST._serialized_start=1520
209
- _UNSHAREPROJECTREQUEST._serialized_end=1570
210
- _UNSHAREPROJECTWITHSUPPORTREQUEST._serialized_start=1572
211
- _UNSHAREPROJECTWITHSUPPORTREQUEST._serialized_end=1618
212
- _PROJECTSERVICE._serialized_start=1621
213
- _PROJECTSERVICE._serialized_end=3346
199
+ _LOADGEOMETRYTOSETUPREQUEST._serialized_end=1230
200
+ _LOADGEOMETRYTOSETUPRESPONSE._serialized_start=1232
201
+ _LOADGEOMETRYTOSETUPRESPONSE._serialized_end=1261
202
+ _SHAREPROJECTREQUEST._serialized_start=1264
203
+ _SHAREPROJECTREQUEST._serialized_end=1484
204
+ _SHAREPROJECTREQUEST_USERROLE._serialized_start=1403
205
+ _SHAREPROJECTREQUEST_USERROLE._serialized_end=1484
206
+ _SHAREPROJECTWITHSUPPORTREQUEST._serialized_start=1486
207
+ _SHAREPROJECTWITHSUPPORTREQUEST._serialized_end=1547
208
+ _UNSHAREPROJECTREQUEST._serialized_start=1549
209
+ _UNSHAREPROJECTREQUEST._serialized_end=1599
210
+ _UNSHAREPROJECTWITHSUPPORTREQUEST._serialized_start=1601
211
+ _UNSHAREPROJECTWITHSUPPORTREQUEST._serialized_end=1647
212
+ _PROJECTSERVICE._serialized_start=1650
213
+ _PROJECTSERVICE._serialized_end=3375
214
214
  # @@protoc_insertion_point(module_scope)