google-cloud-ai_platform-v1 0.1.0

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 (289) hide show
  1. checksums.yaml +7 -0
  2. data/.yardopts +12 -0
  3. data/AUTHENTICATION.md +149 -0
  4. data/LICENSE.md +201 -0
  5. data/README.md +139 -0
  6. data/lib/google/cloud/ai_platform/v1/dataset_service/client.rb +1364 -0
  7. data/lib/google/cloud/ai_platform/v1/dataset_service/credentials.rb +47 -0
  8. data/lib/google/cloud/ai_platform/v1/dataset_service/operations.rb +767 -0
  9. data/lib/google/cloud/ai_platform/v1/dataset_service/paths.rb +111 -0
  10. data/lib/google/cloud/ai_platform/v1/dataset_service.rb +51 -0
  11. data/lib/google/cloud/ai_platform/v1/endpoint_service/client.rb +1076 -0
  12. data/lib/google/cloud/ai_platform/v1/endpoint_service/credentials.rb +47 -0
  13. data/lib/google/cloud/ai_platform/v1/endpoint_service/operations.rb +767 -0
  14. data/lib/google/cloud/ai_platform/v1/endpoint_service/paths.rb +124 -0
  15. data/lib/google/cloud/ai_platform/v1/endpoint_service.rb +50 -0
  16. data/lib/google/cloud/ai_platform/v1/featurestore_online_serving_service/client.rb +508 -0
  17. data/lib/google/cloud/ai_platform/v1/featurestore_online_serving_service/credentials.rb +47 -0
  18. data/lib/google/cloud/ai_platform/v1/featurestore_online_serving_service/paths.rb +54 -0
  19. data/lib/google/cloud/ai_platform/v1/featurestore_online_serving_service.rb +49 -0
  20. data/lib/google/cloud/ai_platform/v1/featurestore_service/client.rb +2707 -0
  21. data/lib/google/cloud/ai_platform/v1/featurestore_service/credentials.rb +47 -0
  22. data/lib/google/cloud/ai_platform/v1/featurestore_service/operations.rb +767 -0
  23. data/lib/google/cloud/ai_platform/v1/featurestore_service/paths.rb +113 -0
  24. data/lib/google/cloud/ai_platform/v1/featurestore_service.rb +50 -0
  25. data/lib/google/cloud/ai_platform/v1/index_endpoint_service/client.rb +1146 -0
  26. data/lib/google/cloud/ai_platform/v1/index_endpoint_service/credentials.rb +47 -0
  27. data/lib/google/cloud/ai_platform/v1/index_endpoint_service/operations.rb +767 -0
  28. data/lib/google/cloud/ai_platform/v1/index_endpoint_service/paths.rb +88 -0
  29. data/lib/google/cloud/ai_platform/v1/index_endpoint_service.rb +50 -0
  30. data/lib/google/cloud/ai_platform/v1/index_service/client.rb +823 -0
  31. data/lib/google/cloud/ai_platform/v1/index_service/credentials.rb +47 -0
  32. data/lib/google/cloud/ai_platform/v1/index_service/operations.rb +767 -0
  33. data/lib/google/cloud/ai_platform/v1/index_service/paths.rb +88 -0
  34. data/lib/google/cloud/ai_platform/v1/index_service.rb +50 -0
  35. data/lib/google/cloud/ai_platform/v1/job_service/client.rb +3236 -0
  36. data/lib/google/cloud/ai_platform/v1/job_service/credentials.rb +47 -0
  37. data/lib/google/cloud/ai_platform/v1/job_service/operations.rb +767 -0
  38. data/lib/google/cloud/ai_platform/v1/job_service/paths.rb +259 -0
  39. data/lib/google/cloud/ai_platform/v1/job_service.rb +50 -0
  40. data/lib/google/cloud/ai_platform/v1/metadata_service/client.rb +3654 -0
  41. data/lib/google/cloud/ai_platform/v1/metadata_service/credentials.rb +47 -0
  42. data/lib/google/cloud/ai_platform/v1/metadata_service/operations.rb +767 -0
  43. data/lib/google/cloud/ai_platform/v1/metadata_service/paths.rb +153 -0
  44. data/lib/google/cloud/ai_platform/v1/metadata_service.rb +50 -0
  45. data/lib/google/cloud/ai_platform/v1/migration_service/client.rb +538 -0
  46. data/lib/google/cloud/ai_platform/v1/migration_service/credentials.rb +47 -0
  47. data/lib/google/cloud/ai_platform/v1/migration_service/operations.rb +767 -0
  48. data/lib/google/cloud/ai_platform/v1/migration_service/paths.rb +148 -0
  49. data/lib/google/cloud/ai_platform/v1/migration_service.rb +51 -0
  50. data/lib/google/cloud/ai_platform/v1/model_service/client.rb +1355 -0
  51. data/lib/google/cloud/ai_platform/v1/model_service/credentials.rb +47 -0
  52. data/lib/google/cloud/ai_platform/v1/model_service/operations.rb +767 -0
  53. data/lib/google/cloud/ai_platform/v1/model_service/paths.rb +151 -0
  54. data/lib/google/cloud/ai_platform/v1/model_service.rb +50 -0
  55. data/lib/google/cloud/ai_platform/v1/pipeline_service/client.rb +1384 -0
  56. data/lib/google/cloud/ai_platform/v1/pipeline_service/credentials.rb +47 -0
  57. data/lib/google/cloud/ai_platform/v1/pipeline_service/operations.rb +767 -0
  58. data/lib/google/cloud/ai_platform/v1/pipeline_service/paths.rb +225 -0
  59. data/lib/google/cloud/ai_platform/v1/pipeline_service.rb +52 -0
  60. data/lib/google/cloud/ai_platform/v1/prediction_service/client.rb +650 -0
  61. data/lib/google/cloud/ai_platform/v1/prediction_service/credentials.rb +47 -0
  62. data/lib/google/cloud/ai_platform/v1/prediction_service/paths.rb +52 -0
  63. data/lib/google/cloud/ai_platform/v1/prediction_service.rb +49 -0
  64. data/lib/google/cloud/ai_platform/v1/specialist_pool_service/client.rb +826 -0
  65. data/lib/google/cloud/ai_platform/v1/specialist_pool_service/credentials.rb +47 -0
  66. data/lib/google/cloud/ai_platform/v1/specialist_pool_service/operations.rb +767 -0
  67. data/lib/google/cloud/ai_platform/v1/specialist_pool_service/paths.rb +69 -0
  68. data/lib/google/cloud/ai_platform/v1/specialist_pool_service.rb +55 -0
  69. data/lib/google/cloud/ai_platform/v1/tensorboard_service/client.rb +3224 -0
  70. data/lib/google/cloud/ai_platform/v1/tensorboard_service/credentials.rb +48 -0
  71. data/lib/google/cloud/ai_platform/v1/tensorboard_service/operations.rb +767 -0
  72. data/lib/google/cloud/ai_platform/v1/tensorboard_service/paths.rb +138 -0
  73. data/lib/google/cloud/ai_platform/v1/tensorboard_service.rb +50 -0
  74. data/lib/google/cloud/ai_platform/v1/version.rb +28 -0
  75. data/lib/google/cloud/ai_platform/v1/vizier_service/client.rb +1793 -0
  76. data/lib/google/cloud/ai_platform/v1/vizier_service/credentials.rb +47 -0
  77. data/lib/google/cloud/ai_platform/v1/vizier_service/operations.rb +767 -0
  78. data/lib/google/cloud/ai_platform/v1/vizier_service/paths.rb +109 -0
  79. data/lib/google/cloud/ai_platform/v1/vizier_service.rb +54 -0
  80. data/lib/google/cloud/ai_platform/v1.rb +52 -0
  81. data/lib/google/cloud/aiplatform/v1/accelerator_type_pb.rb +29 -0
  82. data/lib/google/cloud/aiplatform/v1/annotation_pb.rb +35 -0
  83. data/lib/google/cloud/aiplatform/v1/annotation_spec_pb.rb +30 -0
  84. data/lib/google/cloud/aiplatform/v1/artifact_pb.rb +45 -0
  85. data/lib/google/cloud/aiplatform/v1/batch_prediction_job_pb.rb +83 -0
  86. data/lib/google/cloud/aiplatform/v1/completion_stats_pb.rb +27 -0
  87. data/lib/google/cloud/aiplatform/v1/context_pb.rb +38 -0
  88. data/lib/google/cloud/aiplatform/v1/custom_job_pb.rb +84 -0
  89. data/lib/google/cloud/aiplatform/v1/data_item_pb.rb +32 -0
  90. data/lib/google/cloud/aiplatform/v1/data_labeling_job_pb.rb +78 -0
  91. data/lib/google/cloud/aiplatform/v1/dataset_pb.rb +53 -0
  92. data/lib/google/cloud/aiplatform/v1/dataset_service_pb.rb +126 -0
  93. data/lib/google/cloud/aiplatform/v1/dataset_service_services_pb.rb +64 -0
  94. data/lib/google/cloud/aiplatform/v1/deployed_index_ref_pb.rb +26 -0
  95. data/lib/google/cloud/aiplatform/v1/deployed_model_ref_pb.rb +26 -0
  96. data/lib/google/cloud/aiplatform/v1/encryption_spec_pb.rb +24 -0
  97. data/lib/google/cloud/aiplatform/v1/endpoint_pb.rb +67 -0
  98. data/lib/google/cloud/aiplatform/v1/endpoint_service_pb.rb +90 -0
  99. data/lib/google/cloud/aiplatform/v1/endpoint_service_services_pb.rb +58 -0
  100. data/lib/google/cloud/aiplatform/v1/entity_type_pb.rb +32 -0
  101. data/lib/google/cloud/aiplatform/v1/env_var_pb.rb +25 -0
  102. data/lib/google/cloud/aiplatform/v1/event_pb.rb +36 -0
  103. data/lib/google/cloud/aiplatform/v1/execution_pb.rb +48 -0
  104. data/lib/google/cloud/aiplatform/v1/explanation_metadata_pb.rb +107 -0
  105. data/lib/google/cloud/aiplatform/v1/explanation_pb.rb +106 -0
  106. data/lib/google/cloud/aiplatform/v1/feature_monitoring_stats_pb.rb +30 -0
  107. data/lib/google/cloud/aiplatform/v1/feature_pb.rb +46 -0
  108. data/lib/google/cloud/aiplatform/v1/feature_selector_pb.rb +28 -0
  109. data/lib/google/cloud/aiplatform/v1/featurestore_online_service_pb.rb +86 -0
  110. data/lib/google/cloud/aiplatform/v1/featurestore_online_service_services_pb.rb +51 -0
  111. data/lib/google/cloud/aiplatform/v1/featurestore_pb.rb +44 -0
  112. data/lib/google/cloud/aiplatform/v1/featurestore_service_pb.rb +280 -0
  113. data/lib/google/cloud/aiplatform/v1/featurestore_service_services_pb.rb +109 -0
  114. data/lib/google/cloud/aiplatform/v1/hyperparameter_tuning_job_pb.rb +46 -0
  115. data/lib/google/cloud/aiplatform/v1/index_endpoint_pb.rb +66 -0
  116. data/lib/google/cloud/aiplatform/v1/index_endpoint_service_pb.rb +101 -0
  117. data/lib/google/cloud/aiplatform/v1/index_endpoint_service_services_pb.rb +62 -0
  118. data/lib/google/cloud/aiplatform/v1/index_pb.rb +38 -0
  119. data/lib/google/cloud/aiplatform/v1/index_service_pb.rb +98 -0
  120. data/lib/google/cloud/aiplatform/v1/index_service_services_pb.rb +55 -0
  121. data/lib/google/cloud/aiplatform/v1/io_pb.rb +56 -0
  122. data/lib/google/cloud/aiplatform/v1/job_service_pb.rb +217 -0
  123. data/lib/google/cloud/aiplatform/v1/job_service_services_pb.rb +134 -0
  124. data/lib/google/cloud/aiplatform/v1/job_state_pb.rb +32 -0
  125. data/lib/google/cloud/aiplatform/v1/lineage_subgraph_pb.rb +28 -0
  126. data/lib/google/cloud/aiplatform/v1/machine_resources_pb.rb +59 -0
  127. data/lib/google/cloud/aiplatform/v1/manual_batch_tuning_parameters_pb.rb +24 -0
  128. data/lib/google/cloud/aiplatform/v1/metadata_schema_pb.rb +38 -0
  129. data/lib/google/cloud/aiplatform/v1/metadata_service_pb.rb +272 -0
  130. data/lib/google/cloud/aiplatform/v1/metadata_service_services_pb.rb +119 -0
  131. data/lib/google/cloud/aiplatform/v1/metadata_store_pb.rb +36 -0
  132. data/lib/google/cloud/aiplatform/v1/migratable_resource_pb.rb +59 -0
  133. data/lib/google/cloud/aiplatform/v1/migration_service_pb.rb +106 -0
  134. data/lib/google/cloud/aiplatform/v1/migration_service_services_pb.rb +51 -0
  135. data/lib/google/cloud/aiplatform/v1/model_deployment_monitoring_job_pb.rb +111 -0
  136. data/lib/google/cloud/aiplatform/v1/model_evaluation_pb.rb +33 -0
  137. data/lib/google/cloud/aiplatform/v1/model_evaluation_slice_pb.rb +36 -0
  138. data/lib/google/cloud/aiplatform/v1/model_monitoring_pb.rb +93 -0
  139. data/lib/google/cloud/aiplatform/v1/model_pb.rb +88 -0
  140. data/lib/google/cloud/aiplatform/v1/model_service_pb.rb +129 -0
  141. data/lib/google/cloud/aiplatform/v1/model_service_services_pb.rb +69 -0
  142. data/lib/google/cloud/aiplatform/v1/operation_pb.rb +32 -0
  143. data/lib/google/cloud/aiplatform/v1/pipeline_job_pb.rb +115 -0
  144. data/lib/google/cloud/aiplatform/v1/pipeline_service_pb.rb +88 -0
  145. data/lib/google/cloud/aiplatform/v1/pipeline_service_services_pb.rb +84 -0
  146. data/lib/google/cloud/aiplatform/v1/pipeline_state_pb.rb +31 -0
  147. data/lib/google/cloud/aiplatform/v1/prediction_service_pb.rb +57 -0
  148. data/lib/google/cloud/aiplatform/v1/prediction_service_services_pb.rb +66 -0
  149. data/lib/google/cloud/aiplatform/v1/specialist_pool_pb.rb +30 -0
  150. data/lib/google/cloud/aiplatform/v1/specialist_pool_service_pb.rb +66 -0
  151. data/lib/google/cloud/aiplatform/v1/specialist_pool_service_services_pb.rb +58 -0
  152. data/lib/google/cloud/aiplatform/v1/study_pb.rb +191 -0
  153. data/lib/google/cloud/aiplatform/v1/tensorboard_data_pb.rb +56 -0
  154. data/lib/google/cloud/aiplatform/v1/tensorboard_experiment_pb.rb +33 -0
  155. data/lib/google/cloud/aiplatform/v1/tensorboard_pb.rb +36 -0
  156. data/lib/google/cloud/aiplatform/v1/tensorboard_run_pb.rb +32 -0
  157. data/lib/google/cloud/aiplatform/v1/tensorboard_service_pb.rb +244 -0
  158. data/lib/google/cloud/aiplatform/v1/tensorboard_service_services_pb.rb +115 -0
  159. data/lib/google/cloud/aiplatform/v1/tensorboard_time_series_pb.rb +48 -0
  160. data/lib/google/cloud/aiplatform/v1/training_pipeline_pb.rb +95 -0
  161. data/lib/google/cloud/aiplatform/v1/types_pb.rb +35 -0
  162. data/lib/google/cloud/aiplatform/v1/unmanaged_container_model_pb.rb +27 -0
  163. data/lib/google/cloud/aiplatform/v1/user_action_reference_pb.rb +27 -0
  164. data/lib/google/cloud/aiplatform/v1/value_pb.rb +27 -0
  165. data/lib/google/cloud/aiplatform/v1/vizier_service_pb.rb +136 -0
  166. data/lib/google/cloud/aiplatform/v1/vizier_service_services_pb.rb +90 -0
  167. data/lib/google-cloud-ai_platform-v1.rb +21 -0
  168. data/proto_docs/README.md +4 -0
  169. data/proto_docs/google/api/field_behavior.rb +71 -0
  170. data/proto_docs/google/api/httpbody.rb +80 -0
  171. data/proto_docs/google/api/resource.rb +222 -0
  172. data/proto_docs/google/cloud/aiplatform/v1/accelerator_type.rb +50 -0
  173. data/proto_docs/google/cloud/aiplatform/v1/annotation.rb +92 -0
  174. data/proto_docs/google/cloud/aiplatform/v1/annotation_spec.rb +50 -0
  175. data/proto_docs/google/cloud/aiplatform/v1/artifact.rb +112 -0
  176. data/proto_docs/google/cloud/aiplatform/v1/batch_prediction_job.rb +278 -0
  177. data/proto_docs/google/cloud/aiplatform/v1/completion_stats.rb +46 -0
  178. data/proto_docs/google/cloud/aiplatform/v1/context.rb +92 -0
  179. data/proto_docs/google/cloud/aiplatform/v1/custom_job.rb +272 -0
  180. data/proto_docs/google/cloud/aiplatform/v1/data_item.rb +73 -0
  181. data/proto_docs/google/cloud/aiplatform/v1/data_labeling_job.rb +207 -0
  182. data/proto_docs/google/cloud/aiplatform/v1/dataset.rb +154 -0
  183. data/proto_docs/google/cloud/aiplatform/v1/dataset_service.rb +301 -0
  184. data/proto_docs/google/cloud/aiplatform/v1/deployed_index_ref.rb +38 -0
  185. data/proto_docs/google/cloud/aiplatform/v1/deployed_model_ref.rb +38 -0
  186. data/proto_docs/google/cloud/aiplatform/v1/encryption_spec.rb +40 -0
  187. data/proto_docs/google/cloud/aiplatform/v1/endpoint.rb +227 -0
  188. data/proto_docs/google/cloud/aiplatform/v1/endpoint_service.rb +258 -0
  189. data/proto_docs/google/cloud/aiplatform/v1/entity_type.rb +79 -0
  190. data/proto_docs/google/cloud/aiplatform/v1/env_var.rb +44 -0
  191. data/proto_docs/google/cloud/aiplatform/v1/event.rb +79 -0
  192. data/proto_docs/google/cloud/aiplatform/v1/execution.rb +118 -0
  193. data/proto_docs/google/cloud/aiplatform/v1/explanation.rb +445 -0
  194. data/proto_docs/google/cloud/aiplatform/v1/explanation_metadata.rb +419 -0
  195. data/proto_docs/google/cloud/aiplatform/v1/feature.rb +115 -0
  196. data/proto_docs/google/cloud/aiplatform/v1/feature_monitoring_stats.rb +88 -0
  197. data/proto_docs/google/cloud/aiplatform/v1/feature_selector.rb +49 -0
  198. data/proto_docs/google/cloud/aiplatform/v1/featurestore.rb +115 -0
  199. data/proto_docs/google/cloud/aiplatform/v1/featurestore_online_service.rb +203 -0
  200. data/proto_docs/google/cloud/aiplatform/v1/featurestore_service.rb +978 -0
  201. data/proto_docs/google/cloud/aiplatform/v1/hyperparameter_tuning_job.rb +109 -0
  202. data/proto_docs/google/cloud/aiplatform/v1/index.rb +98 -0
  203. data/proto_docs/google/cloud/aiplatform/v1/index_endpoint.rb +252 -0
  204. data/proto_docs/google/cloud/aiplatform/v1/index_endpoint_service.rb +240 -0
  205. data/proto_docs/google/cloud/aiplatform/v1/index_service.rb +220 -0
  206. data/proto_docs/google/cloud/aiplatform/v1/io.rb +134 -0
  207. data/proto_docs/google/cloud/aiplatform/v1/job_service.rb +660 -0
  208. data/proto_docs/google/cloud/aiplatform/v1/job_state.rb +60 -0
  209. data/proto_docs/google/cloud/aiplatform/v1/lineage_subgraph.rb +42 -0
  210. data/proto_docs/google/cloud/aiplatform/v1/machine_resources.rb +194 -0
  211. data/proto_docs/google/cloud/aiplatform/v1/manual_batch_tuning_parameters.rb +41 -0
  212. data/proto_docs/google/cloud/aiplatform/v1/metadata_schema.rb +74 -0
  213. data/proto_docs/google/cloud/aiplatform/v1/metadata_service.rb +912 -0
  214. data/proto_docs/google/cloud/aiplatform/v1/metadata_store.rb +62 -0
  215. data/proto_docs/google/cloud/aiplatform/v1/migratable_resource.rb +133 -0
  216. data/proto_docs/google/cloud/aiplatform/v1/migration_service.rb +260 -0
  217. data/proto_docs/google/cloud/aiplatform/v1/model.rb +562 -0
  218. data/proto_docs/google/cloud/aiplatform/v1/model_deployment_monitoring_job.rb +293 -0
  219. data/proto_docs/google/cloud/aiplatform/v1/model_evaluation.rb +60 -0
  220. data/proto_docs/google/cloud/aiplatform/v1/model_evaluation_slice.rb +68 -0
  221. data/proto_docs/google/cloud/aiplatform/v1/model_monitoring.rb +257 -0
  222. data/proto_docs/google/cloud/aiplatform/v1/model_service.rb +329 -0
  223. data/proto_docs/google/cloud/aiplatform/v1/operation.rb +55 -0
  224. data/proto_docs/google/cloud/aiplatform/v1/pipeline_job.rb +347 -0
  225. data/proto_docs/google/cloud/aiplatform/v1/pipeline_service.rb +258 -0
  226. data/proto_docs/google/cloud/aiplatform/v1/pipeline_state.rb +59 -0
  227. data/proto_docs/google/cloud/aiplatform/v1/prediction_service.rb +165 -0
  228. data/proto_docs/google/cloud/aiplatform/v1/schema/predict/instance/image_classification.rb +52 -0
  229. data/proto_docs/google/cloud/aiplatform/v1/schema/predict/instance/image_object_detection.rb +52 -0
  230. data/proto_docs/google/cloud/aiplatform/v1/schema/predict/instance/image_segmentation.rb +47 -0
  231. data/proto_docs/google/cloud/aiplatform/v1/schema/predict/instance/text_classification.rb +46 -0
  232. data/proto_docs/google/cloud/aiplatform/v1/schema/predict/instance/text_extraction.rb +53 -0
  233. data/proto_docs/google/cloud/aiplatform/v1/schema/predict/instance/text_sentiment.rb +46 -0
  234. data/proto_docs/google/cloud/aiplatform/v1/schema/predict/instance/video_action_recognition.rb +59 -0
  235. data/proto_docs/google/cloud/aiplatform/v1/schema/predict/instance/video_classification.rb +59 -0
  236. data/proto_docs/google/cloud/aiplatform/v1/schema/predict/instance/video_object_tracking.rb +59 -0
  237. data/proto_docs/google/cloud/aiplatform/v1/schema/predict/params/image_classification.rb +47 -0
  238. data/proto_docs/google/cloud/aiplatform/v1/schema/predict/params/image_object_detection.rb +47 -0
  239. data/proto_docs/google/cloud/aiplatform/v1/schema/predict/params/image_segmentation.rb +44 -0
  240. data/proto_docs/google/cloud/aiplatform/v1/schema/predict/params/video_action_recognition.rb +47 -0
  241. data/proto_docs/google/cloud/aiplatform/v1/schema/predict/params/video_classification.rb +72 -0
  242. data/proto_docs/google/cloud/aiplatform/v1/schema/predict/params/video_object_tracking.rb +51 -0
  243. data/proto_docs/google/cloud/aiplatform/v1/schema/predict/prediction/classification.rb +49 -0
  244. data/proto_docs/google/cloud/aiplatform/v1/schema/predict/prediction/image_object_detection.rb +58 -0
  245. data/proto_docs/google/cloud/aiplatform/v1/schema/predict/prediction/image_segmentation.rb +53 -0
  246. data/proto_docs/google/cloud/aiplatform/v1/schema/predict/prediction/tabular_classification.rb +47 -0
  247. data/proto_docs/google/cloud/aiplatform/v1/schema/predict/prediction/tabular_regression.rb +47 -0
  248. data/proto_docs/google/cloud/aiplatform/v1/schema/predict/prediction/text_extraction.rb +60 -0
  249. data/proto_docs/google/cloud/aiplatform/v1/schema/predict/prediction/text_sentiment.rb +45 -0
  250. data/proto_docs/google/cloud/aiplatform/v1/schema/predict/prediction/video_action_recognition.rb +60 -0
  251. data/proto_docs/google/cloud/aiplatform/v1/schema/predict/prediction/video_classification.rb +73 -0
  252. data/proto_docs/google/cloud/aiplatform/v1/schema/predict/prediction/video_object_tracking.rb +91 -0
  253. data/proto_docs/google/cloud/aiplatform/v1/schema/trainingjob/definition/automl_image_classification.rb +142 -0
  254. data/proto_docs/google/cloud/aiplatform/v1/schema/trainingjob/definition/automl_image_object_detection.rb +134 -0
  255. data/proto_docs/google/cloud/aiplatform/v1/schema/trainingjob/definition/automl_image_segmentation.rb +120 -0
  256. data/proto_docs/google/cloud/aiplatform/v1/schema/trainingjob/definition/automl_tables.rb +315 -0
  257. data/proto_docs/google/cloud/aiplatform/v1/schema/trainingjob/definition/automl_text_classification.rb +48 -0
  258. data/proto_docs/google/cloud/aiplatform/v1/schema/trainingjob/definition/automl_text_extraction.rb +46 -0
  259. data/proto_docs/google/cloud/aiplatform/v1/schema/trainingjob/definition/automl_text_sentiment.rb +55 -0
  260. data/proto_docs/google/cloud/aiplatform/v1/schema/trainingjob/definition/automl_video_action_recognition.rb +73 -0
  261. data/proto_docs/google/cloud/aiplatform/v1/schema/trainingjob/definition/automl_video_classification.rb +67 -0
  262. data/proto_docs/google/cloud/aiplatform/v1/schema/trainingjob/definition/automl_video_object_tracking.rb +78 -0
  263. data/proto_docs/google/cloud/aiplatform/v1/schema/trainingjob/definition/export_evaluated_data_items_config.rb +51 -0
  264. data/proto_docs/google/cloud/aiplatform/v1/specialist_pool.rb +58 -0
  265. data/proto_docs/google/cloud/aiplatform/v1/specialist_pool_service.rb +136 -0
  266. data/proto_docs/google/cloud/aiplatform/v1/study.rb +543 -0
  267. data/proto_docs/google/cloud/aiplatform/v1/tensorboard.rb +89 -0
  268. data/proto_docs/google/cloud/aiplatform/v1/tensorboard_data.rb +110 -0
  269. data/proto_docs/google/cloud/aiplatform/v1/tensorboard_experiment.rb +82 -0
  270. data/proto_docs/google/cloud/aiplatform/v1/tensorboard_run.rb +85 -0
  271. data/proto_docs/google/cloud/aiplatform/v1/tensorboard_service.rb +706 -0
  272. data/proto_docs/google/cloud/aiplatform/v1/tensorboard_time_series.rb +101 -0
  273. data/proto_docs/google/cloud/aiplatform/v1/training_pipeline.rb +381 -0
  274. data/proto_docs/google/cloud/aiplatform/v1/types.rb +62 -0
  275. data/proto_docs/google/cloud/aiplatform/v1/unmanaged_container_model.rb +44 -0
  276. data/proto_docs/google/cloud/aiplatform/v1/user_action_reference.rb +49 -0
  277. data/proto_docs/google/cloud/aiplatform/v1/value.rb +41 -0
  278. data/proto_docs/google/cloud/aiplatform/v1/vizier_service.rb +332 -0
  279. data/proto_docs/google/longrunning/operations.rb +164 -0
  280. data/proto_docs/google/protobuf/any.rb +141 -0
  281. data/proto_docs/google/protobuf/duration.rb +98 -0
  282. data/proto_docs/google/protobuf/empty.rb +36 -0
  283. data/proto_docs/google/protobuf/field_mask.rb +229 -0
  284. data/proto_docs/google/protobuf/struct.rb +96 -0
  285. data/proto_docs/google/protobuf/timestamp.rb +129 -0
  286. data/proto_docs/google/protobuf/wrappers.rb +121 -0
  287. data/proto_docs/google/rpc/status.rb +46 -0
  288. data/proto_docs/google/type/money.rb +43 -0
  289. metadata +479 -0
@@ -0,0 +1,2707 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Copyright 2022 Google LLC
4
+ #
5
+ # Licensed under the Apache License, Version 2.0 (the "License");
6
+ # you may not use this file except in compliance with the License.
7
+ # You may obtain a copy of the License at
8
+ #
9
+ # https://www.apache.org/licenses/LICENSE-2.0
10
+ #
11
+ # Unless required by applicable law or agreed to in writing, software
12
+ # distributed under the License is distributed on an "AS IS" BASIS,
13
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
+ # See the License for the specific language governing permissions and
15
+ # limitations under the License.
16
+
17
+ # Auto-generated by gapic-generator-ruby. DO NOT EDIT!
18
+
19
+ require "google/cloud/errors"
20
+ require "google/cloud/aiplatform/v1/featurestore_service_pb"
21
+
22
+ module Google
23
+ module Cloud
24
+ module AIPlatform
25
+ module V1
26
+ module FeaturestoreService
27
+ ##
28
+ # Client for the FeaturestoreService service.
29
+ #
30
+ # The service that handles CRUD and List for resources for Featurestore.
31
+ #
32
+ class Client
33
+ include Paths
34
+
35
+ # @private
36
+ attr_reader :featurestore_service_stub
37
+
38
+ ##
39
+ # Configure the FeaturestoreService Client class.
40
+ #
41
+ # See {::Google::Cloud::AIPlatform::V1::FeaturestoreService::Client::Configuration}
42
+ # for a description of the configuration fields.
43
+ #
44
+ # @example
45
+ #
46
+ # # Modify the configuration for all FeaturestoreService clients
47
+ # ::Google::Cloud::AIPlatform::V1::FeaturestoreService::Client.configure do |config|
48
+ # config.timeout = 10.0
49
+ # end
50
+ #
51
+ # @yield [config] Configure the Client client.
52
+ # @yieldparam config [Client::Configuration]
53
+ #
54
+ # @return [Client::Configuration]
55
+ #
56
+ def self.configure
57
+ @configure ||= begin
58
+ namespace = ["Google", "Cloud", "AIPlatform", "V1"]
59
+ parent_config = while namespace.any?
60
+ parent_name = namespace.join "::"
61
+ parent_const = const_get parent_name
62
+ break parent_const.configure if parent_const.respond_to? :configure
63
+ namespace.pop
64
+ end
65
+ default_config = Client::Configuration.new parent_config
66
+
67
+ default_config
68
+ end
69
+ yield @configure if block_given?
70
+ @configure
71
+ end
72
+
73
+ ##
74
+ # Configure the FeaturestoreService Client instance.
75
+ #
76
+ # The configuration is set to the derived mode, meaning that values can be changed,
77
+ # but structural changes (adding new fields, etc.) are not allowed. Structural changes
78
+ # should be made on {Client.configure}.
79
+ #
80
+ # See {::Google::Cloud::AIPlatform::V1::FeaturestoreService::Client::Configuration}
81
+ # for a description of the configuration fields.
82
+ #
83
+ # @yield [config] Configure the Client client.
84
+ # @yieldparam config [Client::Configuration]
85
+ #
86
+ # @return [Client::Configuration]
87
+ #
88
+ def configure
89
+ yield @config if block_given?
90
+ @config
91
+ end
92
+
93
+ ##
94
+ # Create a new FeaturestoreService client object.
95
+ #
96
+ # @example
97
+ #
98
+ # # Create a client using the default configuration
99
+ # client = ::Google::Cloud::AIPlatform::V1::FeaturestoreService::Client.new
100
+ #
101
+ # # Create a client using a custom configuration
102
+ # client = ::Google::Cloud::AIPlatform::V1::FeaturestoreService::Client.new do |config|
103
+ # config.timeout = 10.0
104
+ # end
105
+ #
106
+ # @yield [config] Configure the FeaturestoreService client.
107
+ # @yieldparam config [Client::Configuration]
108
+ #
109
+ def initialize
110
+ # These require statements are intentionally placed here to initialize
111
+ # the gRPC module only when it's required.
112
+ # See https://github.com/googleapis/toolkit/issues/446
113
+ require "gapic/grpc"
114
+ require "google/cloud/aiplatform/v1/featurestore_service_services_pb"
115
+
116
+ # Create the configuration object
117
+ @config = Configuration.new Client.configure
118
+
119
+ # Yield the configuration if needed
120
+ yield @config if block_given?
121
+
122
+ # Create credentials
123
+ credentials = @config.credentials
124
+ # Use self-signed JWT if the endpoint is unchanged from default,
125
+ # but only if the default endpoint does not have a region prefix.
126
+ enable_self_signed_jwt = @config.endpoint == Client.configure.endpoint &&
127
+ !@config.endpoint.split(".").first.include?("-")
128
+ credentials ||= Credentials.default scope: @config.scope,
129
+ enable_self_signed_jwt: enable_self_signed_jwt
130
+ if credentials.is_a?(::String) || credentials.is_a?(::Hash)
131
+ credentials = Credentials.new credentials, scope: @config.scope
132
+ end
133
+ @quota_project_id = @config.quota_project
134
+ @quota_project_id ||= credentials.quota_project_id if credentials.respond_to? :quota_project_id
135
+
136
+ @operations_client = Operations.new do |config|
137
+ config.credentials = credentials
138
+ config.quota_project = @quota_project_id
139
+ config.endpoint = @config.endpoint
140
+ end
141
+
142
+ @featurestore_service_stub = ::Gapic::ServiceStub.new(
143
+ ::Google::Cloud::AIPlatform::V1::FeaturestoreService::Stub,
144
+ credentials: credentials,
145
+ endpoint: @config.endpoint,
146
+ channel_args: @config.channel_args,
147
+ interceptors: @config.interceptors
148
+ )
149
+ end
150
+
151
+ ##
152
+ # Get the associated client for long-running operations.
153
+ #
154
+ # @return [::Google::Cloud::AIPlatform::V1::FeaturestoreService::Operations]
155
+ #
156
+ attr_reader :operations_client
157
+
158
+ # Service calls
159
+
160
+ ##
161
+ # Creates a new Featurestore in a given project and location.
162
+ #
163
+ # @overload create_featurestore(request, options = nil)
164
+ # Pass arguments to `create_featurestore` via a request object, either of type
165
+ # {::Google::Cloud::AIPlatform::V1::CreateFeaturestoreRequest} or an equivalent Hash.
166
+ #
167
+ # @param request [::Google::Cloud::AIPlatform::V1::CreateFeaturestoreRequest, ::Hash]
168
+ # A request object representing the call parameters. Required. To specify no
169
+ # parameters, or to keep all the default parameter values, pass an empty Hash.
170
+ # @param options [::Gapic::CallOptions, ::Hash]
171
+ # Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.
172
+ #
173
+ # @overload create_featurestore(parent: nil, featurestore: nil, featurestore_id: nil)
174
+ # Pass arguments to `create_featurestore` via keyword arguments. Note that at
175
+ # least one keyword argument is required. To specify no parameters, or to keep all
176
+ # the default parameter values, pass an empty Hash as a request object (see above).
177
+ #
178
+ # @param parent [::String]
179
+ # Required. The resource name of the Location to create Featurestores.
180
+ # Format:
181
+ # `projects/{project}/locations/{location}'`
182
+ # @param featurestore [::Google::Cloud::AIPlatform::V1::Featurestore, ::Hash]
183
+ # Required. The Featurestore to create.
184
+ # @param featurestore_id [::String]
185
+ # Required. The ID to use for this Featurestore, which will become the final component
186
+ # of the Featurestore's resource name.
187
+ #
188
+ # This value may be up to 60 characters, and valid characters are
189
+ # `[a-z0-9_]`. The first character cannot be a number.
190
+ #
191
+ # The value must be unique within the project and location.
192
+ #
193
+ # @yield [response, operation] Access the result along with the RPC operation
194
+ # @yieldparam response [::Gapic::Operation]
195
+ # @yieldparam operation [::GRPC::ActiveCall::Operation]
196
+ #
197
+ # @return [::Gapic::Operation]
198
+ #
199
+ # @raise [::Google::Cloud::Error] if the RPC is aborted.
200
+ #
201
+ # @example Basic example
202
+ # require "google/cloud/ai_platform/v1"
203
+ #
204
+ # # Create a client object. The client can be reused for multiple calls.
205
+ # client = Google::Cloud::AIPlatform::V1::FeaturestoreService::Client.new
206
+ #
207
+ # # Create a request. To set request fields, pass in keyword arguments.
208
+ # request = Google::Cloud::AIPlatform::V1::CreateFeaturestoreRequest.new
209
+ #
210
+ # # Call the create_featurestore method.
211
+ # result = client.create_featurestore request
212
+ #
213
+ # # The returned object is of type Gapic::Operation. You can use this
214
+ # # object to check the status of an operation, cancel it, or wait
215
+ # # for results. Here is how to block until completion:
216
+ # result.wait_until_done! timeout: 60
217
+ # if result.response?
218
+ # p result.response
219
+ # else
220
+ # puts "Error!"
221
+ # end
222
+ #
223
+ def create_featurestore request, options = nil
224
+ raise ::ArgumentError, "request must be provided" if request.nil?
225
+
226
+ request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::AIPlatform::V1::CreateFeaturestoreRequest
227
+
228
+ # Converts hash and nil to an options object
229
+ options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h
230
+
231
+ # Customize the options with defaults
232
+ metadata = @config.rpcs.create_featurestore.metadata.to_h
233
+
234
+ # Set x-goog-api-client and x-goog-user-project headers
235
+ metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
236
+ lib_name: @config.lib_name, lib_version: @config.lib_version,
237
+ gapic_version: ::Google::Cloud::AIPlatform::V1::VERSION
238
+ metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id
239
+
240
+ header_params = {}
241
+ if request.parent
242
+ header_params["parent"] = request.parent
243
+ end
244
+
245
+ request_params_header = header_params.map { |k, v| "#{k}=#{v}" }.join("&")
246
+ metadata[:"x-goog-request-params"] ||= request_params_header
247
+
248
+ options.apply_defaults timeout: @config.rpcs.create_featurestore.timeout,
249
+ metadata: metadata,
250
+ retry_policy: @config.rpcs.create_featurestore.retry_policy
251
+
252
+ options.apply_defaults timeout: @config.timeout,
253
+ metadata: @config.metadata,
254
+ retry_policy: @config.retry_policy
255
+
256
+ @featurestore_service_stub.call_rpc :create_featurestore, request, options: options do |response, operation|
257
+ response = ::Gapic::Operation.new response, @operations_client, options: options
258
+ yield response, operation if block_given?
259
+ return response
260
+ end
261
+ rescue ::GRPC::BadStatus => e
262
+ raise ::Google::Cloud::Error.from_error(e)
263
+ end
264
+
265
+ ##
266
+ # Gets details of a single Featurestore.
267
+ #
268
+ # @overload get_featurestore(request, options = nil)
269
+ # Pass arguments to `get_featurestore` via a request object, either of type
270
+ # {::Google::Cloud::AIPlatform::V1::GetFeaturestoreRequest} or an equivalent Hash.
271
+ #
272
+ # @param request [::Google::Cloud::AIPlatform::V1::GetFeaturestoreRequest, ::Hash]
273
+ # A request object representing the call parameters. Required. To specify no
274
+ # parameters, or to keep all the default parameter values, pass an empty Hash.
275
+ # @param options [::Gapic::CallOptions, ::Hash]
276
+ # Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.
277
+ #
278
+ # @overload get_featurestore(name: nil)
279
+ # Pass arguments to `get_featurestore` via keyword arguments. Note that at
280
+ # least one keyword argument is required. To specify no parameters, or to keep all
281
+ # the default parameter values, pass an empty Hash as a request object (see above).
282
+ #
283
+ # @param name [::String]
284
+ # Required. The name of the Featurestore resource.
285
+ #
286
+ # @yield [response, operation] Access the result along with the RPC operation
287
+ # @yieldparam response [::Google::Cloud::AIPlatform::V1::Featurestore]
288
+ # @yieldparam operation [::GRPC::ActiveCall::Operation]
289
+ #
290
+ # @return [::Google::Cloud::AIPlatform::V1::Featurestore]
291
+ #
292
+ # @raise [::Google::Cloud::Error] if the RPC is aborted.
293
+ #
294
+ # @example Basic example
295
+ # require "google/cloud/ai_platform/v1"
296
+ #
297
+ # # Create a client object. The client can be reused for multiple calls.
298
+ # client = Google::Cloud::AIPlatform::V1::FeaturestoreService::Client.new
299
+ #
300
+ # # Create a request. To set request fields, pass in keyword arguments.
301
+ # request = Google::Cloud::AIPlatform::V1::GetFeaturestoreRequest.new
302
+ #
303
+ # # Call the get_featurestore method.
304
+ # result = client.get_featurestore request
305
+ #
306
+ # # The returned object is of type Google::Cloud::AIPlatform::V1::Featurestore.
307
+ # p result
308
+ #
309
+ def get_featurestore request, options = nil
310
+ raise ::ArgumentError, "request must be provided" if request.nil?
311
+
312
+ request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::AIPlatform::V1::GetFeaturestoreRequest
313
+
314
+ # Converts hash and nil to an options object
315
+ options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h
316
+
317
+ # Customize the options with defaults
318
+ metadata = @config.rpcs.get_featurestore.metadata.to_h
319
+
320
+ # Set x-goog-api-client and x-goog-user-project headers
321
+ metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
322
+ lib_name: @config.lib_name, lib_version: @config.lib_version,
323
+ gapic_version: ::Google::Cloud::AIPlatform::V1::VERSION
324
+ metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id
325
+
326
+ header_params = {}
327
+ if request.name
328
+ header_params["name"] = request.name
329
+ end
330
+
331
+ request_params_header = header_params.map { |k, v| "#{k}=#{v}" }.join("&")
332
+ metadata[:"x-goog-request-params"] ||= request_params_header
333
+
334
+ options.apply_defaults timeout: @config.rpcs.get_featurestore.timeout,
335
+ metadata: metadata,
336
+ retry_policy: @config.rpcs.get_featurestore.retry_policy
337
+
338
+ options.apply_defaults timeout: @config.timeout,
339
+ metadata: @config.metadata,
340
+ retry_policy: @config.retry_policy
341
+
342
+ @featurestore_service_stub.call_rpc :get_featurestore, request, options: options do |response, operation|
343
+ yield response, operation if block_given?
344
+ return response
345
+ end
346
+ rescue ::GRPC::BadStatus => e
347
+ raise ::Google::Cloud::Error.from_error(e)
348
+ end
349
+
350
+ ##
351
+ # Lists Featurestores in a given project and location.
352
+ #
353
+ # @overload list_featurestores(request, options = nil)
354
+ # Pass arguments to `list_featurestores` via a request object, either of type
355
+ # {::Google::Cloud::AIPlatform::V1::ListFeaturestoresRequest} or an equivalent Hash.
356
+ #
357
+ # @param request [::Google::Cloud::AIPlatform::V1::ListFeaturestoresRequest, ::Hash]
358
+ # A request object representing the call parameters. Required. To specify no
359
+ # parameters, or to keep all the default parameter values, pass an empty Hash.
360
+ # @param options [::Gapic::CallOptions, ::Hash]
361
+ # Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.
362
+ #
363
+ # @overload list_featurestores(parent: nil, filter: nil, page_size: nil, page_token: nil, order_by: nil, read_mask: nil)
364
+ # Pass arguments to `list_featurestores` via keyword arguments. Note that at
365
+ # least one keyword argument is required. To specify no parameters, or to keep all
366
+ # the default parameter values, pass an empty Hash as a request object (see above).
367
+ #
368
+ # @param parent [::String]
369
+ # Required. The resource name of the Location to list Featurestores.
370
+ # Format:
371
+ # `projects/{project}/locations/{location}`
372
+ # @param filter [::String]
373
+ # Lists the featurestores that match the filter expression. The following
374
+ # fields are supported:
375
+ #
376
+ # * `create_time`: Supports `=`, `!=`, `<`, `>`, `<=`, and `>=` comparisons.
377
+ # Values must be
378
+ # in RFC 3339 format.
379
+ # * `update_time`: Supports `=`, `!=`, `<`, `>`, `<=`, and `>=` comparisons.
380
+ # Values must be
381
+ # in RFC 3339 format.
382
+ # * `online_serving_config.fixed_node_count`: Supports `=`, `!=`, `<`, `>`,
383
+ # `<=`, and `>=` comparisons.
384
+ # * `labels`: Supports key-value equality and key presence.
385
+ #
386
+ # Examples:
387
+ #
388
+ # * `create_time > "2020-01-01" OR update_time > "2020-01-01"`
389
+ # Featurestores created or updated after 2020-01-01.
390
+ # * `labels.env = "prod"`
391
+ # Featurestores with label "env" set to "prod".
392
+ # @param page_size [::Integer]
393
+ # The maximum number of Featurestores to return. The service may return fewer
394
+ # than this value. If unspecified, at most 100 Featurestores will be
395
+ # returned. The maximum value is 100; any value greater than 100 will be
396
+ # coerced to 100.
397
+ # @param page_token [::String]
398
+ # A page token, received from a previous
399
+ # {::Google::Cloud::AIPlatform::V1::FeaturestoreService::Client#list_featurestores FeaturestoreService.ListFeaturestores} call.
400
+ # Provide this to retrieve the subsequent page.
401
+ #
402
+ # When paginating, all other parameters provided to
403
+ # {::Google::Cloud::AIPlatform::V1::FeaturestoreService::Client#list_featurestores FeaturestoreService.ListFeaturestores} must
404
+ # match the call that provided the page token.
405
+ # @param order_by [::String]
406
+ # A comma-separated list of fields to order by, sorted in ascending order.
407
+ # Use "desc" after a field name for descending.
408
+ # Supported Fields:
409
+ #
410
+ # * `create_time`
411
+ # * `update_time`
412
+ # * `online_serving_config.fixed_node_count`
413
+ # @param read_mask [::Google::Protobuf::FieldMask, ::Hash]
414
+ # Mask specifying which fields to read.
415
+ #
416
+ # @yield [response, operation] Access the result along with the RPC operation
417
+ # @yieldparam response [::Gapic::PagedEnumerable<::Google::Cloud::AIPlatform::V1::Featurestore>]
418
+ # @yieldparam operation [::GRPC::ActiveCall::Operation]
419
+ #
420
+ # @return [::Gapic::PagedEnumerable<::Google::Cloud::AIPlatform::V1::Featurestore>]
421
+ #
422
+ # @raise [::Google::Cloud::Error] if the RPC is aborted.
423
+ #
424
+ # @example Basic example
425
+ # require "google/cloud/ai_platform/v1"
426
+ #
427
+ # # Create a client object. The client can be reused for multiple calls.
428
+ # client = Google::Cloud::AIPlatform::V1::FeaturestoreService::Client.new
429
+ #
430
+ # # Create a request. To set request fields, pass in keyword arguments.
431
+ # request = Google::Cloud::AIPlatform::V1::ListFeaturestoresRequest.new
432
+ #
433
+ # # Call the list_featurestores method.
434
+ # result = client.list_featurestores request
435
+ #
436
+ # # The returned object is of type Gapic::PagedEnumerable. You can
437
+ # # iterate over all elements by calling #each, and the enumerable
438
+ # # will lazily make API calls to fetch subsequent pages. Other
439
+ # # methods are also available for managing paging directly.
440
+ # result.each do |response|
441
+ # # Each element is of type ::Google::Cloud::AIPlatform::V1::Featurestore.
442
+ # p response
443
+ # end
444
+ #
445
+ def list_featurestores request, options = nil
446
+ raise ::ArgumentError, "request must be provided" if request.nil?
447
+
448
+ request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::AIPlatform::V1::ListFeaturestoresRequest
449
+
450
+ # Converts hash and nil to an options object
451
+ options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h
452
+
453
+ # Customize the options with defaults
454
+ metadata = @config.rpcs.list_featurestores.metadata.to_h
455
+
456
+ # Set x-goog-api-client and x-goog-user-project headers
457
+ metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
458
+ lib_name: @config.lib_name, lib_version: @config.lib_version,
459
+ gapic_version: ::Google::Cloud::AIPlatform::V1::VERSION
460
+ metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id
461
+
462
+ header_params = {}
463
+ if request.parent
464
+ header_params["parent"] = request.parent
465
+ end
466
+
467
+ request_params_header = header_params.map { |k, v| "#{k}=#{v}" }.join("&")
468
+ metadata[:"x-goog-request-params"] ||= request_params_header
469
+
470
+ options.apply_defaults timeout: @config.rpcs.list_featurestores.timeout,
471
+ metadata: metadata,
472
+ retry_policy: @config.rpcs.list_featurestores.retry_policy
473
+
474
+ options.apply_defaults timeout: @config.timeout,
475
+ metadata: @config.metadata,
476
+ retry_policy: @config.retry_policy
477
+
478
+ @featurestore_service_stub.call_rpc :list_featurestores, request, options: options do |response, operation|
479
+ response = ::Gapic::PagedEnumerable.new @featurestore_service_stub, :list_featurestores, request, response, operation, options
480
+ yield response, operation if block_given?
481
+ return response
482
+ end
483
+ rescue ::GRPC::BadStatus => e
484
+ raise ::Google::Cloud::Error.from_error(e)
485
+ end
486
+
487
+ ##
488
+ # Updates the parameters of a single Featurestore.
489
+ #
490
+ # @overload update_featurestore(request, options = nil)
491
+ # Pass arguments to `update_featurestore` via a request object, either of type
492
+ # {::Google::Cloud::AIPlatform::V1::UpdateFeaturestoreRequest} or an equivalent Hash.
493
+ #
494
+ # @param request [::Google::Cloud::AIPlatform::V1::UpdateFeaturestoreRequest, ::Hash]
495
+ # A request object representing the call parameters. Required. To specify no
496
+ # parameters, or to keep all the default parameter values, pass an empty Hash.
497
+ # @param options [::Gapic::CallOptions, ::Hash]
498
+ # Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.
499
+ #
500
+ # @overload update_featurestore(featurestore: nil, update_mask: nil)
501
+ # Pass arguments to `update_featurestore` via keyword arguments. Note that at
502
+ # least one keyword argument is required. To specify no parameters, or to keep all
503
+ # the default parameter values, pass an empty Hash as a request object (see above).
504
+ #
505
+ # @param featurestore [::Google::Cloud::AIPlatform::V1::Featurestore, ::Hash]
506
+ # Required. The Featurestore's `name` field is used to identify the Featurestore to be
507
+ # updated.
508
+ # Format:
509
+ # `projects/{project}/locations/{location}/featurestores/{featurestore}`
510
+ # @param update_mask [::Google::Protobuf::FieldMask, ::Hash]
511
+ # Field mask is used to specify the fields to be overwritten in the
512
+ # Featurestore resource by the update.
513
+ # The fields specified in the update_mask are relative to the resource, not
514
+ # the full request. A field will be overwritten if it is in the mask. If the
515
+ # user does not provide a mask then only the non-empty fields present in the
516
+ # request will be overwritten. Set the update_mask to `*` to override all
517
+ # fields.
518
+ #
519
+ # Updatable fields:
520
+ #
521
+ # * `labels`
522
+ # * `online_serving_config.fixed_node_count`
523
+ #
524
+ # @yield [response, operation] Access the result along with the RPC operation
525
+ # @yieldparam response [::Gapic::Operation]
526
+ # @yieldparam operation [::GRPC::ActiveCall::Operation]
527
+ #
528
+ # @return [::Gapic::Operation]
529
+ #
530
+ # @raise [::Google::Cloud::Error] if the RPC is aborted.
531
+ #
532
+ # @example Basic example
533
+ # require "google/cloud/ai_platform/v1"
534
+ #
535
+ # # Create a client object. The client can be reused for multiple calls.
536
+ # client = Google::Cloud::AIPlatform::V1::FeaturestoreService::Client.new
537
+ #
538
+ # # Create a request. To set request fields, pass in keyword arguments.
539
+ # request = Google::Cloud::AIPlatform::V1::UpdateFeaturestoreRequest.new
540
+ #
541
+ # # Call the update_featurestore method.
542
+ # result = client.update_featurestore request
543
+ #
544
+ # # The returned object is of type Gapic::Operation. You can use this
545
+ # # object to check the status of an operation, cancel it, or wait
546
+ # # for results. Here is how to block until completion:
547
+ # result.wait_until_done! timeout: 60
548
+ # if result.response?
549
+ # p result.response
550
+ # else
551
+ # puts "Error!"
552
+ # end
553
+ #
554
+ def update_featurestore request, options = nil
555
+ raise ::ArgumentError, "request must be provided" if request.nil?
556
+
557
+ request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::AIPlatform::V1::UpdateFeaturestoreRequest
558
+
559
+ # Converts hash and nil to an options object
560
+ options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h
561
+
562
+ # Customize the options with defaults
563
+ metadata = @config.rpcs.update_featurestore.metadata.to_h
564
+
565
+ # Set x-goog-api-client and x-goog-user-project headers
566
+ metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
567
+ lib_name: @config.lib_name, lib_version: @config.lib_version,
568
+ gapic_version: ::Google::Cloud::AIPlatform::V1::VERSION
569
+ metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id
570
+
571
+ header_params = {}
572
+ if request.featurestore&.name
573
+ header_params["featurestore.name"] = request.featurestore.name
574
+ end
575
+
576
+ request_params_header = header_params.map { |k, v| "#{k}=#{v}" }.join("&")
577
+ metadata[:"x-goog-request-params"] ||= request_params_header
578
+
579
+ options.apply_defaults timeout: @config.rpcs.update_featurestore.timeout,
580
+ metadata: metadata,
581
+ retry_policy: @config.rpcs.update_featurestore.retry_policy
582
+
583
+ options.apply_defaults timeout: @config.timeout,
584
+ metadata: @config.metadata,
585
+ retry_policy: @config.retry_policy
586
+
587
+ @featurestore_service_stub.call_rpc :update_featurestore, request, options: options do |response, operation|
588
+ response = ::Gapic::Operation.new response, @operations_client, options: options
589
+ yield response, operation if block_given?
590
+ return response
591
+ end
592
+ rescue ::GRPC::BadStatus => e
593
+ raise ::Google::Cloud::Error.from_error(e)
594
+ end
595
+
596
+ ##
597
+ # Deletes a single Featurestore. The Featurestore must not contain any
598
+ # EntityTypes or `force` must be set to true for the request to succeed.
599
+ #
600
+ # @overload delete_featurestore(request, options = nil)
601
+ # Pass arguments to `delete_featurestore` via a request object, either of type
602
+ # {::Google::Cloud::AIPlatform::V1::DeleteFeaturestoreRequest} or an equivalent Hash.
603
+ #
604
+ # @param request [::Google::Cloud::AIPlatform::V1::DeleteFeaturestoreRequest, ::Hash]
605
+ # A request object representing the call parameters. Required. To specify no
606
+ # parameters, or to keep all the default parameter values, pass an empty Hash.
607
+ # @param options [::Gapic::CallOptions, ::Hash]
608
+ # Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.
609
+ #
610
+ # @overload delete_featurestore(name: nil, force: nil)
611
+ # Pass arguments to `delete_featurestore` via keyword arguments. Note that at
612
+ # least one keyword argument is required. To specify no parameters, or to keep all
613
+ # the default parameter values, pass an empty Hash as a request object (see above).
614
+ #
615
+ # @param name [::String]
616
+ # Required. The name of the Featurestore to be deleted.
617
+ # Format:
618
+ # `projects/{project}/locations/{location}/featurestores/{featurestore}`
619
+ # @param force [::Boolean]
620
+ # If set to true, any EntityTypes and Features for this Featurestore will
621
+ # also be deleted. (Otherwise, the request will only work if the Featurestore
622
+ # has no EntityTypes.)
623
+ #
624
+ # @yield [response, operation] Access the result along with the RPC operation
625
+ # @yieldparam response [::Gapic::Operation]
626
+ # @yieldparam operation [::GRPC::ActiveCall::Operation]
627
+ #
628
+ # @return [::Gapic::Operation]
629
+ #
630
+ # @raise [::Google::Cloud::Error] if the RPC is aborted.
631
+ #
632
+ # @example Basic example
633
+ # require "google/cloud/ai_platform/v1"
634
+ #
635
+ # # Create a client object. The client can be reused for multiple calls.
636
+ # client = Google::Cloud::AIPlatform::V1::FeaturestoreService::Client.new
637
+ #
638
+ # # Create a request. To set request fields, pass in keyword arguments.
639
+ # request = Google::Cloud::AIPlatform::V1::DeleteFeaturestoreRequest.new
640
+ #
641
+ # # Call the delete_featurestore method.
642
+ # result = client.delete_featurestore request
643
+ #
644
+ # # The returned object is of type Gapic::Operation. You can use this
645
+ # # object to check the status of an operation, cancel it, or wait
646
+ # # for results. Here is how to block until completion:
647
+ # result.wait_until_done! timeout: 60
648
+ # if result.response?
649
+ # p result.response
650
+ # else
651
+ # puts "Error!"
652
+ # end
653
+ #
654
+ def delete_featurestore request, options = nil
655
+ raise ::ArgumentError, "request must be provided" if request.nil?
656
+
657
+ request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::AIPlatform::V1::DeleteFeaturestoreRequest
658
+
659
+ # Converts hash and nil to an options object
660
+ options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h
661
+
662
+ # Customize the options with defaults
663
+ metadata = @config.rpcs.delete_featurestore.metadata.to_h
664
+
665
+ # Set x-goog-api-client and x-goog-user-project headers
666
+ metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
667
+ lib_name: @config.lib_name, lib_version: @config.lib_version,
668
+ gapic_version: ::Google::Cloud::AIPlatform::V1::VERSION
669
+ metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id
670
+
671
+ header_params = {}
672
+ if request.name
673
+ header_params["name"] = request.name
674
+ end
675
+
676
+ request_params_header = header_params.map { |k, v| "#{k}=#{v}" }.join("&")
677
+ metadata[:"x-goog-request-params"] ||= request_params_header
678
+
679
+ options.apply_defaults timeout: @config.rpcs.delete_featurestore.timeout,
680
+ metadata: metadata,
681
+ retry_policy: @config.rpcs.delete_featurestore.retry_policy
682
+
683
+ options.apply_defaults timeout: @config.timeout,
684
+ metadata: @config.metadata,
685
+ retry_policy: @config.retry_policy
686
+
687
+ @featurestore_service_stub.call_rpc :delete_featurestore, request, options: options do |response, operation|
688
+ response = ::Gapic::Operation.new response, @operations_client, options: options
689
+ yield response, operation if block_given?
690
+ return response
691
+ end
692
+ rescue ::GRPC::BadStatus => e
693
+ raise ::Google::Cloud::Error.from_error(e)
694
+ end
695
+
696
+ ##
697
+ # Creates a new EntityType in a given Featurestore.
698
+ #
699
+ # @overload create_entity_type(request, options = nil)
700
+ # Pass arguments to `create_entity_type` via a request object, either of type
701
+ # {::Google::Cloud::AIPlatform::V1::CreateEntityTypeRequest} or an equivalent Hash.
702
+ #
703
+ # @param request [::Google::Cloud::AIPlatform::V1::CreateEntityTypeRequest, ::Hash]
704
+ # A request object representing the call parameters. Required. To specify no
705
+ # parameters, or to keep all the default parameter values, pass an empty Hash.
706
+ # @param options [::Gapic::CallOptions, ::Hash]
707
+ # Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.
708
+ #
709
+ # @overload create_entity_type(parent: nil, entity_type: nil, entity_type_id: nil)
710
+ # Pass arguments to `create_entity_type` via keyword arguments. Note that at
711
+ # least one keyword argument is required. To specify no parameters, or to keep all
712
+ # the default parameter values, pass an empty Hash as a request object (see above).
713
+ #
714
+ # @param parent [::String]
715
+ # Required. The resource name of the Featurestore to create EntityTypes.
716
+ # Format:
717
+ # `projects/{project}/locations/{location}/featurestores/{featurestore}`
718
+ # @param entity_type [::Google::Cloud::AIPlatform::V1::EntityType, ::Hash]
719
+ # The EntityType to create.
720
+ # @param entity_type_id [::String]
721
+ # Required. The ID to use for the EntityType, which will become the final component of
722
+ # the EntityType's resource name.
723
+ #
724
+ # This value may be up to 60 characters, and valid characters are
725
+ # `[a-z0-9_]`. The first character cannot be a number.
726
+ #
727
+ # The value must be unique within a featurestore.
728
+ #
729
+ # @yield [response, operation] Access the result along with the RPC operation
730
+ # @yieldparam response [::Gapic::Operation]
731
+ # @yieldparam operation [::GRPC::ActiveCall::Operation]
732
+ #
733
+ # @return [::Gapic::Operation]
734
+ #
735
+ # @raise [::Google::Cloud::Error] if the RPC is aborted.
736
+ #
737
+ # @example Basic example
738
+ # require "google/cloud/ai_platform/v1"
739
+ #
740
+ # # Create a client object. The client can be reused for multiple calls.
741
+ # client = Google::Cloud::AIPlatform::V1::FeaturestoreService::Client.new
742
+ #
743
+ # # Create a request. To set request fields, pass in keyword arguments.
744
+ # request = Google::Cloud::AIPlatform::V1::CreateEntityTypeRequest.new
745
+ #
746
+ # # Call the create_entity_type method.
747
+ # result = client.create_entity_type request
748
+ #
749
+ # # The returned object is of type Gapic::Operation. You can use this
750
+ # # object to check the status of an operation, cancel it, or wait
751
+ # # for results. Here is how to block until completion:
752
+ # result.wait_until_done! timeout: 60
753
+ # if result.response?
754
+ # p result.response
755
+ # else
756
+ # puts "Error!"
757
+ # end
758
+ #
759
+ def create_entity_type request, options = nil
760
+ raise ::ArgumentError, "request must be provided" if request.nil?
761
+
762
+ request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::AIPlatform::V1::CreateEntityTypeRequest
763
+
764
+ # Converts hash and nil to an options object
765
+ options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h
766
+
767
+ # Customize the options with defaults
768
+ metadata = @config.rpcs.create_entity_type.metadata.to_h
769
+
770
+ # Set x-goog-api-client and x-goog-user-project headers
771
+ metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
772
+ lib_name: @config.lib_name, lib_version: @config.lib_version,
773
+ gapic_version: ::Google::Cloud::AIPlatform::V1::VERSION
774
+ metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id
775
+
776
+ header_params = {}
777
+ if request.parent
778
+ header_params["parent"] = request.parent
779
+ end
780
+
781
+ request_params_header = header_params.map { |k, v| "#{k}=#{v}" }.join("&")
782
+ metadata[:"x-goog-request-params"] ||= request_params_header
783
+
784
+ options.apply_defaults timeout: @config.rpcs.create_entity_type.timeout,
785
+ metadata: metadata,
786
+ retry_policy: @config.rpcs.create_entity_type.retry_policy
787
+
788
+ options.apply_defaults timeout: @config.timeout,
789
+ metadata: @config.metadata,
790
+ retry_policy: @config.retry_policy
791
+
792
+ @featurestore_service_stub.call_rpc :create_entity_type, request, options: options do |response, operation|
793
+ response = ::Gapic::Operation.new response, @operations_client, options: options
794
+ yield response, operation if block_given?
795
+ return response
796
+ end
797
+ rescue ::GRPC::BadStatus => e
798
+ raise ::Google::Cloud::Error.from_error(e)
799
+ end
800
+
801
+ ##
802
+ # Gets details of a single EntityType.
803
+ #
804
+ # @overload get_entity_type(request, options = nil)
805
+ # Pass arguments to `get_entity_type` via a request object, either of type
806
+ # {::Google::Cloud::AIPlatform::V1::GetEntityTypeRequest} or an equivalent Hash.
807
+ #
808
+ # @param request [::Google::Cloud::AIPlatform::V1::GetEntityTypeRequest, ::Hash]
809
+ # A request object representing the call parameters. Required. To specify no
810
+ # parameters, or to keep all the default parameter values, pass an empty Hash.
811
+ # @param options [::Gapic::CallOptions, ::Hash]
812
+ # Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.
813
+ #
814
+ # @overload get_entity_type(name: nil)
815
+ # Pass arguments to `get_entity_type` via keyword arguments. Note that at
816
+ # least one keyword argument is required. To specify no parameters, or to keep all
817
+ # the default parameter values, pass an empty Hash as a request object (see above).
818
+ #
819
+ # @param name [::String]
820
+ # Required. The name of the EntityType resource.
821
+ # Format:
822
+ # `projects/{project}/locations/{location}/featurestores/{featurestore}/entityTypes/{entity_type}`
823
+ #
824
+ # @yield [response, operation] Access the result along with the RPC operation
825
+ # @yieldparam response [::Google::Cloud::AIPlatform::V1::EntityType]
826
+ # @yieldparam operation [::GRPC::ActiveCall::Operation]
827
+ #
828
+ # @return [::Google::Cloud::AIPlatform::V1::EntityType]
829
+ #
830
+ # @raise [::Google::Cloud::Error] if the RPC is aborted.
831
+ #
832
+ # @example Basic example
833
+ # require "google/cloud/ai_platform/v1"
834
+ #
835
+ # # Create a client object. The client can be reused for multiple calls.
836
+ # client = Google::Cloud::AIPlatform::V1::FeaturestoreService::Client.new
837
+ #
838
+ # # Create a request. To set request fields, pass in keyword arguments.
839
+ # request = Google::Cloud::AIPlatform::V1::GetEntityTypeRequest.new
840
+ #
841
+ # # Call the get_entity_type method.
842
+ # result = client.get_entity_type request
843
+ #
844
+ # # The returned object is of type Google::Cloud::AIPlatform::V1::EntityType.
845
+ # p result
846
+ #
847
+ def get_entity_type request, options = nil
848
+ raise ::ArgumentError, "request must be provided" if request.nil?
849
+
850
+ request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::AIPlatform::V1::GetEntityTypeRequest
851
+
852
+ # Converts hash and nil to an options object
853
+ options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h
854
+
855
+ # Customize the options with defaults
856
+ metadata = @config.rpcs.get_entity_type.metadata.to_h
857
+
858
+ # Set x-goog-api-client and x-goog-user-project headers
859
+ metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
860
+ lib_name: @config.lib_name, lib_version: @config.lib_version,
861
+ gapic_version: ::Google::Cloud::AIPlatform::V1::VERSION
862
+ metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id
863
+
864
+ header_params = {}
865
+ if request.name
866
+ header_params["name"] = request.name
867
+ end
868
+
869
+ request_params_header = header_params.map { |k, v| "#{k}=#{v}" }.join("&")
870
+ metadata[:"x-goog-request-params"] ||= request_params_header
871
+
872
+ options.apply_defaults timeout: @config.rpcs.get_entity_type.timeout,
873
+ metadata: metadata,
874
+ retry_policy: @config.rpcs.get_entity_type.retry_policy
875
+
876
+ options.apply_defaults timeout: @config.timeout,
877
+ metadata: @config.metadata,
878
+ retry_policy: @config.retry_policy
879
+
880
+ @featurestore_service_stub.call_rpc :get_entity_type, request, options: options do |response, operation|
881
+ yield response, operation if block_given?
882
+ return response
883
+ end
884
+ rescue ::GRPC::BadStatus => e
885
+ raise ::Google::Cloud::Error.from_error(e)
886
+ end
887
+
888
+ ##
889
+ # Lists EntityTypes in a given Featurestore.
890
+ #
891
+ # @overload list_entity_types(request, options = nil)
892
+ # Pass arguments to `list_entity_types` via a request object, either of type
893
+ # {::Google::Cloud::AIPlatform::V1::ListEntityTypesRequest} or an equivalent Hash.
894
+ #
895
+ # @param request [::Google::Cloud::AIPlatform::V1::ListEntityTypesRequest, ::Hash]
896
+ # A request object representing the call parameters. Required. To specify no
897
+ # parameters, or to keep all the default parameter values, pass an empty Hash.
898
+ # @param options [::Gapic::CallOptions, ::Hash]
899
+ # Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.
900
+ #
901
+ # @overload list_entity_types(parent: nil, filter: nil, page_size: nil, page_token: nil, order_by: nil, read_mask: nil)
902
+ # Pass arguments to `list_entity_types` via keyword arguments. Note that at
903
+ # least one keyword argument is required. To specify no parameters, or to keep all
904
+ # the default parameter values, pass an empty Hash as a request object (see above).
905
+ #
906
+ # @param parent [::String]
907
+ # Required. The resource name of the Featurestore to list EntityTypes.
908
+ # Format:
909
+ # `projects/{project}/locations/{location}/featurestores/{featurestore}`
910
+ # @param filter [::String]
911
+ # Lists the EntityTypes that match the filter expression. The following
912
+ # filters are supported:
913
+ #
914
+ # * `create_time`: Supports `=`, `!=`, `<`, `>`, `>=`, and `<=` comparisons.
915
+ # Values must be in RFC 3339 format.
916
+ # * `update_time`: Supports `=`, `!=`, `<`, `>`, `>=`, and `<=` comparisons.
917
+ # Values must be in RFC 3339 format.
918
+ # * `labels`: Supports key-value equality as well as key presence.
919
+ #
920
+ # Examples:
921
+ #
922
+ # * `create_time > \"2020-01-31T15:30:00.000000Z\" OR
923
+ # update_time > \"2020-01-31T15:30:00.000000Z\"` --> EntityTypes created
924
+ # or updated after 2020-01-31T15:30:00.000000Z.
925
+ # * `labels.active = yes AND labels.env = prod` --> EntityTypes having both
926
+ # (active: yes) and (env: prod) labels.
927
+ # * `labels.env: *` --> Any EntityType which has a label with 'env' as the
928
+ # key.
929
+ # @param page_size [::Integer]
930
+ # The maximum number of EntityTypes to return. The service may return fewer
931
+ # than this value. If unspecified, at most 1000 EntityTypes will be returned.
932
+ # The maximum value is 1000; any value greater than 1000 will be coerced to
933
+ # 1000.
934
+ # @param page_token [::String]
935
+ # A page token, received from a previous
936
+ # {::Google::Cloud::AIPlatform::V1::FeaturestoreService::Client#list_entity_types FeaturestoreService.ListEntityTypes} call.
937
+ # Provide this to retrieve the subsequent page.
938
+ #
939
+ # When paginating, all other parameters provided to
940
+ # {::Google::Cloud::AIPlatform::V1::FeaturestoreService::Client#list_entity_types FeaturestoreService.ListEntityTypes} must
941
+ # match the call that provided the page token.
942
+ # @param order_by [::String]
943
+ # A comma-separated list of fields to order by, sorted in ascending order.
944
+ # Use "desc" after a field name for descending.
945
+ #
946
+ # Supported fields:
947
+ #
948
+ # * `entity_type_id`
949
+ # * `create_time`
950
+ # * `update_time`
951
+ # @param read_mask [::Google::Protobuf::FieldMask, ::Hash]
952
+ # Mask specifying which fields to read.
953
+ #
954
+ # @yield [response, operation] Access the result along with the RPC operation
955
+ # @yieldparam response [::Gapic::PagedEnumerable<::Google::Cloud::AIPlatform::V1::EntityType>]
956
+ # @yieldparam operation [::GRPC::ActiveCall::Operation]
957
+ #
958
+ # @return [::Gapic::PagedEnumerable<::Google::Cloud::AIPlatform::V1::EntityType>]
959
+ #
960
+ # @raise [::Google::Cloud::Error] if the RPC is aborted.
961
+ #
962
+ # @example Basic example
963
+ # require "google/cloud/ai_platform/v1"
964
+ #
965
+ # # Create a client object. The client can be reused for multiple calls.
966
+ # client = Google::Cloud::AIPlatform::V1::FeaturestoreService::Client.new
967
+ #
968
+ # # Create a request. To set request fields, pass in keyword arguments.
969
+ # request = Google::Cloud::AIPlatform::V1::ListEntityTypesRequest.new
970
+ #
971
+ # # Call the list_entity_types method.
972
+ # result = client.list_entity_types request
973
+ #
974
+ # # The returned object is of type Gapic::PagedEnumerable. You can
975
+ # # iterate over all elements by calling #each, and the enumerable
976
+ # # will lazily make API calls to fetch subsequent pages. Other
977
+ # # methods are also available for managing paging directly.
978
+ # result.each do |response|
979
+ # # Each element is of type ::Google::Cloud::AIPlatform::V1::EntityType.
980
+ # p response
981
+ # end
982
+ #
983
+ def list_entity_types request, options = nil
984
+ raise ::ArgumentError, "request must be provided" if request.nil?
985
+
986
+ request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::AIPlatform::V1::ListEntityTypesRequest
987
+
988
+ # Converts hash and nil to an options object
989
+ options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h
990
+
991
+ # Customize the options with defaults
992
+ metadata = @config.rpcs.list_entity_types.metadata.to_h
993
+
994
+ # Set x-goog-api-client and x-goog-user-project headers
995
+ metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
996
+ lib_name: @config.lib_name, lib_version: @config.lib_version,
997
+ gapic_version: ::Google::Cloud::AIPlatform::V1::VERSION
998
+ metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id
999
+
1000
+ header_params = {}
1001
+ if request.parent
1002
+ header_params["parent"] = request.parent
1003
+ end
1004
+
1005
+ request_params_header = header_params.map { |k, v| "#{k}=#{v}" }.join("&")
1006
+ metadata[:"x-goog-request-params"] ||= request_params_header
1007
+
1008
+ options.apply_defaults timeout: @config.rpcs.list_entity_types.timeout,
1009
+ metadata: metadata,
1010
+ retry_policy: @config.rpcs.list_entity_types.retry_policy
1011
+
1012
+ options.apply_defaults timeout: @config.timeout,
1013
+ metadata: @config.metadata,
1014
+ retry_policy: @config.retry_policy
1015
+
1016
+ @featurestore_service_stub.call_rpc :list_entity_types, request, options: options do |response, operation|
1017
+ response = ::Gapic::PagedEnumerable.new @featurestore_service_stub, :list_entity_types, request, response, operation, options
1018
+ yield response, operation if block_given?
1019
+ return response
1020
+ end
1021
+ rescue ::GRPC::BadStatus => e
1022
+ raise ::Google::Cloud::Error.from_error(e)
1023
+ end
1024
+
1025
+ ##
1026
+ # Updates the parameters of a single EntityType.
1027
+ #
1028
+ # @overload update_entity_type(request, options = nil)
1029
+ # Pass arguments to `update_entity_type` via a request object, either of type
1030
+ # {::Google::Cloud::AIPlatform::V1::UpdateEntityTypeRequest} or an equivalent Hash.
1031
+ #
1032
+ # @param request [::Google::Cloud::AIPlatform::V1::UpdateEntityTypeRequest, ::Hash]
1033
+ # A request object representing the call parameters. Required. To specify no
1034
+ # parameters, or to keep all the default parameter values, pass an empty Hash.
1035
+ # @param options [::Gapic::CallOptions, ::Hash]
1036
+ # Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.
1037
+ #
1038
+ # @overload update_entity_type(entity_type: nil, update_mask: nil)
1039
+ # Pass arguments to `update_entity_type` via keyword arguments. Note that at
1040
+ # least one keyword argument is required. To specify no parameters, or to keep all
1041
+ # the default parameter values, pass an empty Hash as a request object (see above).
1042
+ #
1043
+ # @param entity_type [::Google::Cloud::AIPlatform::V1::EntityType, ::Hash]
1044
+ # Required. The EntityType's `name` field is used to identify the EntityType to be
1045
+ # updated.
1046
+ # Format:
1047
+ # `projects/{project}/locations/{location}/featurestores/{featurestore}/entityTypes/{entity_type}`
1048
+ # @param update_mask [::Google::Protobuf::FieldMask, ::Hash]
1049
+ # Field mask is used to specify the fields to be overwritten in the
1050
+ # EntityType resource by the update.
1051
+ # The fields specified in the update_mask are relative to the resource, not
1052
+ # the full request. A field will be overwritten if it is in the mask. If the
1053
+ # user does not provide a mask then only the non-empty fields present in the
1054
+ # request will be overwritten. Set the update_mask to `*` to override all
1055
+ # fields.
1056
+ #
1057
+ # Updatable fields:
1058
+ #
1059
+ # * `description`
1060
+ # * `labels`
1061
+ # * `monitoring_config.snapshot_analysis.disabled`
1062
+ # * `monitoring_config.snapshot_analysis.monitoring_interval`
1063
+ #
1064
+ # @yield [response, operation] Access the result along with the RPC operation
1065
+ # @yieldparam response [::Google::Cloud::AIPlatform::V1::EntityType]
1066
+ # @yieldparam operation [::GRPC::ActiveCall::Operation]
1067
+ #
1068
+ # @return [::Google::Cloud::AIPlatform::V1::EntityType]
1069
+ #
1070
+ # @raise [::Google::Cloud::Error] if the RPC is aborted.
1071
+ #
1072
+ # @example Basic example
1073
+ # require "google/cloud/ai_platform/v1"
1074
+ #
1075
+ # # Create a client object. The client can be reused for multiple calls.
1076
+ # client = Google::Cloud::AIPlatform::V1::FeaturestoreService::Client.new
1077
+ #
1078
+ # # Create a request. To set request fields, pass in keyword arguments.
1079
+ # request = Google::Cloud::AIPlatform::V1::UpdateEntityTypeRequest.new
1080
+ #
1081
+ # # Call the update_entity_type method.
1082
+ # result = client.update_entity_type request
1083
+ #
1084
+ # # The returned object is of type Google::Cloud::AIPlatform::V1::EntityType.
1085
+ # p result
1086
+ #
1087
+ def update_entity_type request, options = nil
1088
+ raise ::ArgumentError, "request must be provided" if request.nil?
1089
+
1090
+ request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::AIPlatform::V1::UpdateEntityTypeRequest
1091
+
1092
+ # Converts hash and nil to an options object
1093
+ options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h
1094
+
1095
+ # Customize the options with defaults
1096
+ metadata = @config.rpcs.update_entity_type.metadata.to_h
1097
+
1098
+ # Set x-goog-api-client and x-goog-user-project headers
1099
+ metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
1100
+ lib_name: @config.lib_name, lib_version: @config.lib_version,
1101
+ gapic_version: ::Google::Cloud::AIPlatform::V1::VERSION
1102
+ metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id
1103
+
1104
+ header_params = {}
1105
+ if request.entity_type&.name
1106
+ header_params["entity_type.name"] = request.entity_type.name
1107
+ end
1108
+
1109
+ request_params_header = header_params.map { |k, v| "#{k}=#{v}" }.join("&")
1110
+ metadata[:"x-goog-request-params"] ||= request_params_header
1111
+
1112
+ options.apply_defaults timeout: @config.rpcs.update_entity_type.timeout,
1113
+ metadata: metadata,
1114
+ retry_policy: @config.rpcs.update_entity_type.retry_policy
1115
+
1116
+ options.apply_defaults timeout: @config.timeout,
1117
+ metadata: @config.metadata,
1118
+ retry_policy: @config.retry_policy
1119
+
1120
+ @featurestore_service_stub.call_rpc :update_entity_type, request, options: options do |response, operation|
1121
+ yield response, operation if block_given?
1122
+ return response
1123
+ end
1124
+ rescue ::GRPC::BadStatus => e
1125
+ raise ::Google::Cloud::Error.from_error(e)
1126
+ end
1127
+
1128
+ ##
1129
+ # Deletes a single EntityType. The EntityType must not have any Features
1130
+ # or `force` must be set to true for the request to succeed.
1131
+ #
1132
+ # @overload delete_entity_type(request, options = nil)
1133
+ # Pass arguments to `delete_entity_type` via a request object, either of type
1134
+ # {::Google::Cloud::AIPlatform::V1::DeleteEntityTypeRequest} or an equivalent Hash.
1135
+ #
1136
+ # @param request [::Google::Cloud::AIPlatform::V1::DeleteEntityTypeRequest, ::Hash]
1137
+ # A request object representing the call parameters. Required. To specify no
1138
+ # parameters, or to keep all the default parameter values, pass an empty Hash.
1139
+ # @param options [::Gapic::CallOptions, ::Hash]
1140
+ # Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.
1141
+ #
1142
+ # @overload delete_entity_type(name: nil, force: nil)
1143
+ # Pass arguments to `delete_entity_type` via keyword arguments. Note that at
1144
+ # least one keyword argument is required. To specify no parameters, or to keep all
1145
+ # the default parameter values, pass an empty Hash as a request object (see above).
1146
+ #
1147
+ # @param name [::String]
1148
+ # Required. The name of the EntityType to be deleted.
1149
+ # Format:
1150
+ # `projects/{project}/locations/{location}/featurestores/{featurestore}/entityTypes/{entity_type}`
1151
+ # @param force [::Boolean]
1152
+ # If set to true, any Features for this EntityType will also be deleted.
1153
+ # (Otherwise, the request will only work if the EntityType has no Features.)
1154
+ #
1155
+ # @yield [response, operation] Access the result along with the RPC operation
1156
+ # @yieldparam response [::Gapic::Operation]
1157
+ # @yieldparam operation [::GRPC::ActiveCall::Operation]
1158
+ #
1159
+ # @return [::Gapic::Operation]
1160
+ #
1161
+ # @raise [::Google::Cloud::Error] if the RPC is aborted.
1162
+ #
1163
+ # @example Basic example
1164
+ # require "google/cloud/ai_platform/v1"
1165
+ #
1166
+ # # Create a client object. The client can be reused for multiple calls.
1167
+ # client = Google::Cloud::AIPlatform::V1::FeaturestoreService::Client.new
1168
+ #
1169
+ # # Create a request. To set request fields, pass in keyword arguments.
1170
+ # request = Google::Cloud::AIPlatform::V1::DeleteEntityTypeRequest.new
1171
+ #
1172
+ # # Call the delete_entity_type method.
1173
+ # result = client.delete_entity_type request
1174
+ #
1175
+ # # The returned object is of type Gapic::Operation. You can use this
1176
+ # # object to check the status of an operation, cancel it, or wait
1177
+ # # for results. Here is how to block until completion:
1178
+ # result.wait_until_done! timeout: 60
1179
+ # if result.response?
1180
+ # p result.response
1181
+ # else
1182
+ # puts "Error!"
1183
+ # end
1184
+ #
1185
+ def delete_entity_type request, options = nil
1186
+ raise ::ArgumentError, "request must be provided" if request.nil?
1187
+
1188
+ request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::AIPlatform::V1::DeleteEntityTypeRequest
1189
+
1190
+ # Converts hash and nil to an options object
1191
+ options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h
1192
+
1193
+ # Customize the options with defaults
1194
+ metadata = @config.rpcs.delete_entity_type.metadata.to_h
1195
+
1196
+ # Set x-goog-api-client and x-goog-user-project headers
1197
+ metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
1198
+ lib_name: @config.lib_name, lib_version: @config.lib_version,
1199
+ gapic_version: ::Google::Cloud::AIPlatform::V1::VERSION
1200
+ metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id
1201
+
1202
+ header_params = {}
1203
+ if request.name
1204
+ header_params["name"] = request.name
1205
+ end
1206
+
1207
+ request_params_header = header_params.map { |k, v| "#{k}=#{v}" }.join("&")
1208
+ metadata[:"x-goog-request-params"] ||= request_params_header
1209
+
1210
+ options.apply_defaults timeout: @config.rpcs.delete_entity_type.timeout,
1211
+ metadata: metadata,
1212
+ retry_policy: @config.rpcs.delete_entity_type.retry_policy
1213
+
1214
+ options.apply_defaults timeout: @config.timeout,
1215
+ metadata: @config.metadata,
1216
+ retry_policy: @config.retry_policy
1217
+
1218
+ @featurestore_service_stub.call_rpc :delete_entity_type, request, options: options do |response, operation|
1219
+ response = ::Gapic::Operation.new response, @operations_client, options: options
1220
+ yield response, operation if block_given?
1221
+ return response
1222
+ end
1223
+ rescue ::GRPC::BadStatus => e
1224
+ raise ::Google::Cloud::Error.from_error(e)
1225
+ end
1226
+
1227
+ ##
1228
+ # Creates a new Feature in a given EntityType.
1229
+ #
1230
+ # @overload create_feature(request, options = nil)
1231
+ # Pass arguments to `create_feature` via a request object, either of type
1232
+ # {::Google::Cloud::AIPlatform::V1::CreateFeatureRequest} or an equivalent Hash.
1233
+ #
1234
+ # @param request [::Google::Cloud::AIPlatform::V1::CreateFeatureRequest, ::Hash]
1235
+ # A request object representing the call parameters. Required. To specify no
1236
+ # parameters, or to keep all the default parameter values, pass an empty Hash.
1237
+ # @param options [::Gapic::CallOptions, ::Hash]
1238
+ # Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.
1239
+ #
1240
+ # @overload create_feature(parent: nil, feature: nil, feature_id: nil)
1241
+ # Pass arguments to `create_feature` via keyword arguments. Note that at
1242
+ # least one keyword argument is required. To specify no parameters, or to keep all
1243
+ # the default parameter values, pass an empty Hash as a request object (see above).
1244
+ #
1245
+ # @param parent [::String]
1246
+ # Required. The resource name of the EntityType to create a Feature.
1247
+ # Format:
1248
+ # `projects/{project}/locations/{location}/featurestores/{featurestore}/entityTypes/{entity_type}`
1249
+ # @param feature [::Google::Cloud::AIPlatform::V1::Feature, ::Hash]
1250
+ # Required. The Feature to create.
1251
+ # @param feature_id [::String]
1252
+ # Required. The ID to use for the Feature, which will become the final component of
1253
+ # the Feature's resource name.
1254
+ #
1255
+ # This value may be up to 60 characters, and valid characters are
1256
+ # `[a-z0-9_]`. The first character cannot be a number.
1257
+ #
1258
+ # The value must be unique within an EntityType.
1259
+ #
1260
+ # @yield [response, operation] Access the result along with the RPC operation
1261
+ # @yieldparam response [::Gapic::Operation]
1262
+ # @yieldparam operation [::GRPC::ActiveCall::Operation]
1263
+ #
1264
+ # @return [::Gapic::Operation]
1265
+ #
1266
+ # @raise [::Google::Cloud::Error] if the RPC is aborted.
1267
+ #
1268
+ # @example Basic example
1269
+ # require "google/cloud/ai_platform/v1"
1270
+ #
1271
+ # # Create a client object. The client can be reused for multiple calls.
1272
+ # client = Google::Cloud::AIPlatform::V1::FeaturestoreService::Client.new
1273
+ #
1274
+ # # Create a request. To set request fields, pass in keyword arguments.
1275
+ # request = Google::Cloud::AIPlatform::V1::CreateFeatureRequest.new
1276
+ #
1277
+ # # Call the create_feature method.
1278
+ # result = client.create_feature request
1279
+ #
1280
+ # # The returned object is of type Gapic::Operation. You can use this
1281
+ # # object to check the status of an operation, cancel it, or wait
1282
+ # # for results. Here is how to block until completion:
1283
+ # result.wait_until_done! timeout: 60
1284
+ # if result.response?
1285
+ # p result.response
1286
+ # else
1287
+ # puts "Error!"
1288
+ # end
1289
+ #
1290
+ def create_feature request, options = nil
1291
+ raise ::ArgumentError, "request must be provided" if request.nil?
1292
+
1293
+ request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::AIPlatform::V1::CreateFeatureRequest
1294
+
1295
+ # Converts hash and nil to an options object
1296
+ options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h
1297
+
1298
+ # Customize the options with defaults
1299
+ metadata = @config.rpcs.create_feature.metadata.to_h
1300
+
1301
+ # Set x-goog-api-client and x-goog-user-project headers
1302
+ metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
1303
+ lib_name: @config.lib_name, lib_version: @config.lib_version,
1304
+ gapic_version: ::Google::Cloud::AIPlatform::V1::VERSION
1305
+ metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id
1306
+
1307
+ header_params = {}
1308
+ if request.parent
1309
+ header_params["parent"] = request.parent
1310
+ end
1311
+
1312
+ request_params_header = header_params.map { |k, v| "#{k}=#{v}" }.join("&")
1313
+ metadata[:"x-goog-request-params"] ||= request_params_header
1314
+
1315
+ options.apply_defaults timeout: @config.rpcs.create_feature.timeout,
1316
+ metadata: metadata,
1317
+ retry_policy: @config.rpcs.create_feature.retry_policy
1318
+
1319
+ options.apply_defaults timeout: @config.timeout,
1320
+ metadata: @config.metadata,
1321
+ retry_policy: @config.retry_policy
1322
+
1323
+ @featurestore_service_stub.call_rpc :create_feature, request, options: options do |response, operation|
1324
+ response = ::Gapic::Operation.new response, @operations_client, options: options
1325
+ yield response, operation if block_given?
1326
+ return response
1327
+ end
1328
+ rescue ::GRPC::BadStatus => e
1329
+ raise ::Google::Cloud::Error.from_error(e)
1330
+ end
1331
+
1332
+ ##
1333
+ # Creates a batch of Features in a given EntityType.
1334
+ #
1335
+ # @overload batch_create_features(request, options = nil)
1336
+ # Pass arguments to `batch_create_features` via a request object, either of type
1337
+ # {::Google::Cloud::AIPlatform::V1::BatchCreateFeaturesRequest} or an equivalent Hash.
1338
+ #
1339
+ # @param request [::Google::Cloud::AIPlatform::V1::BatchCreateFeaturesRequest, ::Hash]
1340
+ # A request object representing the call parameters. Required. To specify no
1341
+ # parameters, or to keep all the default parameter values, pass an empty Hash.
1342
+ # @param options [::Gapic::CallOptions, ::Hash]
1343
+ # Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.
1344
+ #
1345
+ # @overload batch_create_features(parent: nil, requests: nil)
1346
+ # Pass arguments to `batch_create_features` via keyword arguments. Note that at
1347
+ # least one keyword argument is required. To specify no parameters, or to keep all
1348
+ # the default parameter values, pass an empty Hash as a request object (see above).
1349
+ #
1350
+ # @param parent [::String]
1351
+ # Required. The resource name of the EntityType to create the batch of Features under.
1352
+ # Format:
1353
+ # `projects/{project}/locations/{location}/featurestores/{featurestore}/entityTypes/{entity_type}`
1354
+ # @param requests [::Array<::Google::Cloud::AIPlatform::V1::CreateFeatureRequest, ::Hash>]
1355
+ # Required. The request message specifying the Features to create. All Features must be
1356
+ # created under the same parent EntityType. The `parent` field in each child
1357
+ # request message can be omitted. If `parent` is set in a child request, then
1358
+ # the value must match the `parent` value in this request message.
1359
+ #
1360
+ # @yield [response, operation] Access the result along with the RPC operation
1361
+ # @yieldparam response [::Gapic::Operation]
1362
+ # @yieldparam operation [::GRPC::ActiveCall::Operation]
1363
+ #
1364
+ # @return [::Gapic::Operation]
1365
+ #
1366
+ # @raise [::Google::Cloud::Error] if the RPC is aborted.
1367
+ #
1368
+ # @example Basic example
1369
+ # require "google/cloud/ai_platform/v1"
1370
+ #
1371
+ # # Create a client object. The client can be reused for multiple calls.
1372
+ # client = Google::Cloud::AIPlatform::V1::FeaturestoreService::Client.new
1373
+ #
1374
+ # # Create a request. To set request fields, pass in keyword arguments.
1375
+ # request = Google::Cloud::AIPlatform::V1::BatchCreateFeaturesRequest.new
1376
+ #
1377
+ # # Call the batch_create_features method.
1378
+ # result = client.batch_create_features request
1379
+ #
1380
+ # # The returned object is of type Gapic::Operation. You can use this
1381
+ # # object to check the status of an operation, cancel it, or wait
1382
+ # # for results. Here is how to block until completion:
1383
+ # result.wait_until_done! timeout: 60
1384
+ # if result.response?
1385
+ # p result.response
1386
+ # else
1387
+ # puts "Error!"
1388
+ # end
1389
+ #
1390
+ def batch_create_features request, options = nil
1391
+ raise ::ArgumentError, "request must be provided" if request.nil?
1392
+
1393
+ request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::AIPlatform::V1::BatchCreateFeaturesRequest
1394
+
1395
+ # Converts hash and nil to an options object
1396
+ options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h
1397
+
1398
+ # Customize the options with defaults
1399
+ metadata = @config.rpcs.batch_create_features.metadata.to_h
1400
+
1401
+ # Set x-goog-api-client and x-goog-user-project headers
1402
+ metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
1403
+ lib_name: @config.lib_name, lib_version: @config.lib_version,
1404
+ gapic_version: ::Google::Cloud::AIPlatform::V1::VERSION
1405
+ metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id
1406
+
1407
+ header_params = {}
1408
+ if request.parent
1409
+ header_params["parent"] = request.parent
1410
+ end
1411
+
1412
+ request_params_header = header_params.map { |k, v| "#{k}=#{v}" }.join("&")
1413
+ metadata[:"x-goog-request-params"] ||= request_params_header
1414
+
1415
+ options.apply_defaults timeout: @config.rpcs.batch_create_features.timeout,
1416
+ metadata: metadata,
1417
+ retry_policy: @config.rpcs.batch_create_features.retry_policy
1418
+
1419
+ options.apply_defaults timeout: @config.timeout,
1420
+ metadata: @config.metadata,
1421
+ retry_policy: @config.retry_policy
1422
+
1423
+ @featurestore_service_stub.call_rpc :batch_create_features, request, options: options do |response, operation|
1424
+ response = ::Gapic::Operation.new response, @operations_client, options: options
1425
+ yield response, operation if block_given?
1426
+ return response
1427
+ end
1428
+ rescue ::GRPC::BadStatus => e
1429
+ raise ::Google::Cloud::Error.from_error(e)
1430
+ end
1431
+
1432
+ ##
1433
+ # Gets details of a single Feature.
1434
+ #
1435
+ # @overload get_feature(request, options = nil)
1436
+ # Pass arguments to `get_feature` via a request object, either of type
1437
+ # {::Google::Cloud::AIPlatform::V1::GetFeatureRequest} or an equivalent Hash.
1438
+ #
1439
+ # @param request [::Google::Cloud::AIPlatform::V1::GetFeatureRequest, ::Hash]
1440
+ # A request object representing the call parameters. Required. To specify no
1441
+ # parameters, or to keep all the default parameter values, pass an empty Hash.
1442
+ # @param options [::Gapic::CallOptions, ::Hash]
1443
+ # Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.
1444
+ #
1445
+ # @overload get_feature(name: nil)
1446
+ # Pass arguments to `get_feature` via keyword arguments. Note that at
1447
+ # least one keyword argument is required. To specify no parameters, or to keep all
1448
+ # the default parameter values, pass an empty Hash as a request object (see above).
1449
+ #
1450
+ # @param name [::String]
1451
+ # Required. The name of the Feature resource.
1452
+ # Format:
1453
+ # `projects/{project}/locations/{location}/featurestores/{featurestore}/entityTypes/{entity_type}`
1454
+ #
1455
+ # @yield [response, operation] Access the result along with the RPC operation
1456
+ # @yieldparam response [::Google::Cloud::AIPlatform::V1::Feature]
1457
+ # @yieldparam operation [::GRPC::ActiveCall::Operation]
1458
+ #
1459
+ # @return [::Google::Cloud::AIPlatform::V1::Feature]
1460
+ #
1461
+ # @raise [::Google::Cloud::Error] if the RPC is aborted.
1462
+ #
1463
+ # @example Basic example
1464
+ # require "google/cloud/ai_platform/v1"
1465
+ #
1466
+ # # Create a client object. The client can be reused for multiple calls.
1467
+ # client = Google::Cloud::AIPlatform::V1::FeaturestoreService::Client.new
1468
+ #
1469
+ # # Create a request. To set request fields, pass in keyword arguments.
1470
+ # request = Google::Cloud::AIPlatform::V1::GetFeatureRequest.new
1471
+ #
1472
+ # # Call the get_feature method.
1473
+ # result = client.get_feature request
1474
+ #
1475
+ # # The returned object is of type Google::Cloud::AIPlatform::V1::Feature.
1476
+ # p result
1477
+ #
1478
+ def get_feature request, options = nil
1479
+ raise ::ArgumentError, "request must be provided" if request.nil?
1480
+
1481
+ request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::AIPlatform::V1::GetFeatureRequest
1482
+
1483
+ # Converts hash and nil to an options object
1484
+ options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h
1485
+
1486
+ # Customize the options with defaults
1487
+ metadata = @config.rpcs.get_feature.metadata.to_h
1488
+
1489
+ # Set x-goog-api-client and x-goog-user-project headers
1490
+ metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
1491
+ lib_name: @config.lib_name, lib_version: @config.lib_version,
1492
+ gapic_version: ::Google::Cloud::AIPlatform::V1::VERSION
1493
+ metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id
1494
+
1495
+ header_params = {}
1496
+ if request.name
1497
+ header_params["name"] = request.name
1498
+ end
1499
+
1500
+ request_params_header = header_params.map { |k, v| "#{k}=#{v}" }.join("&")
1501
+ metadata[:"x-goog-request-params"] ||= request_params_header
1502
+
1503
+ options.apply_defaults timeout: @config.rpcs.get_feature.timeout,
1504
+ metadata: metadata,
1505
+ retry_policy: @config.rpcs.get_feature.retry_policy
1506
+
1507
+ options.apply_defaults timeout: @config.timeout,
1508
+ metadata: @config.metadata,
1509
+ retry_policy: @config.retry_policy
1510
+
1511
+ @featurestore_service_stub.call_rpc :get_feature, request, options: options do |response, operation|
1512
+ yield response, operation if block_given?
1513
+ return response
1514
+ end
1515
+ rescue ::GRPC::BadStatus => e
1516
+ raise ::Google::Cloud::Error.from_error(e)
1517
+ end
1518
+
1519
+ ##
1520
+ # Lists Features in a given EntityType.
1521
+ #
1522
+ # @overload list_features(request, options = nil)
1523
+ # Pass arguments to `list_features` via a request object, either of type
1524
+ # {::Google::Cloud::AIPlatform::V1::ListFeaturesRequest} or an equivalent Hash.
1525
+ #
1526
+ # @param request [::Google::Cloud::AIPlatform::V1::ListFeaturesRequest, ::Hash]
1527
+ # A request object representing the call parameters. Required. To specify no
1528
+ # parameters, or to keep all the default parameter values, pass an empty Hash.
1529
+ # @param options [::Gapic::CallOptions, ::Hash]
1530
+ # Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.
1531
+ #
1532
+ # @overload list_features(parent: nil, filter: nil, page_size: nil, page_token: nil, order_by: nil, read_mask: nil, latest_stats_count: nil)
1533
+ # Pass arguments to `list_features` via keyword arguments. Note that at
1534
+ # least one keyword argument is required. To specify no parameters, or to keep all
1535
+ # the default parameter values, pass an empty Hash as a request object (see above).
1536
+ #
1537
+ # @param parent [::String]
1538
+ # Required. The resource name of the Location to list Features.
1539
+ # Format:
1540
+ # `projects/{project}/locations/{location}/featurestores/{featurestore}/entityTypes/{entity_type}`
1541
+ # @param filter [::String]
1542
+ # Lists the Features that match the filter expression. The following
1543
+ # filters are supported:
1544
+ #
1545
+ # * `value_type`: Supports = and != comparisons.
1546
+ # * `create_time`: Supports =, !=, <, >, >=, and <= comparisons. Values must
1547
+ # be in RFC 3339 format.
1548
+ # * `update_time`: Supports =, !=, <, >, >=, and <= comparisons. Values must
1549
+ # be in RFC 3339 format.
1550
+ # * `labels`: Supports key-value equality as well as key presence.
1551
+ #
1552
+ # Examples:
1553
+ #
1554
+ # * `value_type = DOUBLE` --> Features whose type is DOUBLE.
1555
+ # * `create_time > \"2020-01-31T15:30:00.000000Z\" OR
1556
+ # update_time > \"2020-01-31T15:30:00.000000Z\"` --> EntityTypes created
1557
+ # or updated after 2020-01-31T15:30:00.000000Z.
1558
+ # * `labels.active = yes AND labels.env = prod` --> Features having both
1559
+ # (active: yes) and (env: prod) labels.
1560
+ # * `labels.env: *` --> Any Feature which has a label with 'env' as the
1561
+ # key.
1562
+ # @param page_size [::Integer]
1563
+ # The maximum number of Features to return. The service may return fewer
1564
+ # than this value. If unspecified, at most 1000 Features will be returned.
1565
+ # The maximum value is 1000; any value greater than 1000 will be coerced to
1566
+ # 1000.
1567
+ # @param page_token [::String]
1568
+ # A page token, received from a previous
1569
+ # {::Google::Cloud::AIPlatform::V1::FeaturestoreService::Client#list_features FeaturestoreService.ListFeatures} call.
1570
+ # Provide this to retrieve the subsequent page.
1571
+ #
1572
+ # When paginating, all other parameters provided to
1573
+ # {::Google::Cloud::AIPlatform::V1::FeaturestoreService::Client#list_features FeaturestoreService.ListFeatures} must
1574
+ # match the call that provided the page token.
1575
+ # @param order_by [::String]
1576
+ # A comma-separated list of fields to order by, sorted in ascending order.
1577
+ # Use "desc" after a field name for descending.
1578
+ # Supported fields:
1579
+ #
1580
+ # * `feature_id`
1581
+ # * `value_type`
1582
+ # * `create_time`
1583
+ # * `update_time`
1584
+ # @param read_mask [::Google::Protobuf::FieldMask, ::Hash]
1585
+ # Mask specifying which fields to read.
1586
+ # @param latest_stats_count [::Integer]
1587
+ # If set, return the most recent {::Google::Cloud::AIPlatform::V1::ListFeaturesRequest#latest_stats_count ListFeaturesRequest.latest_stats_count}
1588
+ # of stats for each Feature in response. Valid value is [0, 10]. If number of
1589
+ # stats exists < {::Google::Cloud::AIPlatform::V1::ListFeaturesRequest#latest_stats_count ListFeaturesRequest.latest_stats_count}, return all
1590
+ # existing stats.
1591
+ #
1592
+ # @yield [response, operation] Access the result along with the RPC operation
1593
+ # @yieldparam response [::Gapic::PagedEnumerable<::Google::Cloud::AIPlatform::V1::Feature>]
1594
+ # @yieldparam operation [::GRPC::ActiveCall::Operation]
1595
+ #
1596
+ # @return [::Gapic::PagedEnumerable<::Google::Cloud::AIPlatform::V1::Feature>]
1597
+ #
1598
+ # @raise [::Google::Cloud::Error] if the RPC is aborted.
1599
+ #
1600
+ # @example Basic example
1601
+ # require "google/cloud/ai_platform/v1"
1602
+ #
1603
+ # # Create a client object. The client can be reused for multiple calls.
1604
+ # client = Google::Cloud::AIPlatform::V1::FeaturestoreService::Client.new
1605
+ #
1606
+ # # Create a request. To set request fields, pass in keyword arguments.
1607
+ # request = Google::Cloud::AIPlatform::V1::ListFeaturesRequest.new
1608
+ #
1609
+ # # Call the list_features method.
1610
+ # result = client.list_features request
1611
+ #
1612
+ # # The returned object is of type Gapic::PagedEnumerable. You can
1613
+ # # iterate over all elements by calling #each, and the enumerable
1614
+ # # will lazily make API calls to fetch subsequent pages. Other
1615
+ # # methods are also available for managing paging directly.
1616
+ # result.each do |response|
1617
+ # # Each element is of type ::Google::Cloud::AIPlatform::V1::Feature.
1618
+ # p response
1619
+ # end
1620
+ #
1621
+ def list_features request, options = nil
1622
+ raise ::ArgumentError, "request must be provided" if request.nil?
1623
+
1624
+ request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::AIPlatform::V1::ListFeaturesRequest
1625
+
1626
+ # Converts hash and nil to an options object
1627
+ options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h
1628
+
1629
+ # Customize the options with defaults
1630
+ metadata = @config.rpcs.list_features.metadata.to_h
1631
+
1632
+ # Set x-goog-api-client and x-goog-user-project headers
1633
+ metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
1634
+ lib_name: @config.lib_name, lib_version: @config.lib_version,
1635
+ gapic_version: ::Google::Cloud::AIPlatform::V1::VERSION
1636
+ metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id
1637
+
1638
+ header_params = {}
1639
+ if request.parent
1640
+ header_params["parent"] = request.parent
1641
+ end
1642
+
1643
+ request_params_header = header_params.map { |k, v| "#{k}=#{v}" }.join("&")
1644
+ metadata[:"x-goog-request-params"] ||= request_params_header
1645
+
1646
+ options.apply_defaults timeout: @config.rpcs.list_features.timeout,
1647
+ metadata: metadata,
1648
+ retry_policy: @config.rpcs.list_features.retry_policy
1649
+
1650
+ options.apply_defaults timeout: @config.timeout,
1651
+ metadata: @config.metadata,
1652
+ retry_policy: @config.retry_policy
1653
+
1654
+ @featurestore_service_stub.call_rpc :list_features, request, options: options do |response, operation|
1655
+ response = ::Gapic::PagedEnumerable.new @featurestore_service_stub, :list_features, request, response, operation, options
1656
+ yield response, operation if block_given?
1657
+ return response
1658
+ end
1659
+ rescue ::GRPC::BadStatus => e
1660
+ raise ::Google::Cloud::Error.from_error(e)
1661
+ end
1662
+
1663
+ ##
1664
+ # Updates the parameters of a single Feature.
1665
+ #
1666
+ # @overload update_feature(request, options = nil)
1667
+ # Pass arguments to `update_feature` via a request object, either of type
1668
+ # {::Google::Cloud::AIPlatform::V1::UpdateFeatureRequest} or an equivalent Hash.
1669
+ #
1670
+ # @param request [::Google::Cloud::AIPlatform::V1::UpdateFeatureRequest, ::Hash]
1671
+ # A request object representing the call parameters. Required. To specify no
1672
+ # parameters, or to keep all the default parameter values, pass an empty Hash.
1673
+ # @param options [::Gapic::CallOptions, ::Hash]
1674
+ # Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.
1675
+ #
1676
+ # @overload update_feature(feature: nil, update_mask: nil)
1677
+ # Pass arguments to `update_feature` via keyword arguments. Note that at
1678
+ # least one keyword argument is required. To specify no parameters, or to keep all
1679
+ # the default parameter values, pass an empty Hash as a request object (see above).
1680
+ #
1681
+ # @param feature [::Google::Cloud::AIPlatform::V1::Feature, ::Hash]
1682
+ # Required. The Feature's `name` field is used to identify the Feature to be
1683
+ # updated.
1684
+ # Format:
1685
+ # `projects/{project}/locations/{location}/featurestores/{featurestore}/entityTypes/{entity_type}/features/{feature}`
1686
+ # @param update_mask [::Google::Protobuf::FieldMask, ::Hash]
1687
+ # Field mask is used to specify the fields to be overwritten in the
1688
+ # Features resource by the update.
1689
+ # The fields specified in the update_mask are relative to the resource, not
1690
+ # the full request. A field will be overwritten if it is in the mask. If the
1691
+ # user does not provide a mask then only the non-empty fields present in the
1692
+ # request will be overwritten. Set the update_mask to `*` to override all
1693
+ # fields.
1694
+ #
1695
+ # Updatable fields:
1696
+ #
1697
+ # * `description`
1698
+ # * `labels`
1699
+ # * `monitoring_config.snapshot_analysis.disabled`
1700
+ # * `monitoring_config.snapshot_analysis.monitoring_interval`
1701
+ #
1702
+ # @yield [response, operation] Access the result along with the RPC operation
1703
+ # @yieldparam response [::Google::Cloud::AIPlatform::V1::Feature]
1704
+ # @yieldparam operation [::GRPC::ActiveCall::Operation]
1705
+ #
1706
+ # @return [::Google::Cloud::AIPlatform::V1::Feature]
1707
+ #
1708
+ # @raise [::Google::Cloud::Error] if the RPC is aborted.
1709
+ #
1710
+ # @example Basic example
1711
+ # require "google/cloud/ai_platform/v1"
1712
+ #
1713
+ # # Create a client object. The client can be reused for multiple calls.
1714
+ # client = Google::Cloud::AIPlatform::V1::FeaturestoreService::Client.new
1715
+ #
1716
+ # # Create a request. To set request fields, pass in keyword arguments.
1717
+ # request = Google::Cloud::AIPlatform::V1::UpdateFeatureRequest.new
1718
+ #
1719
+ # # Call the update_feature method.
1720
+ # result = client.update_feature request
1721
+ #
1722
+ # # The returned object is of type Google::Cloud::AIPlatform::V1::Feature.
1723
+ # p result
1724
+ #
1725
+ def update_feature request, options = nil
1726
+ raise ::ArgumentError, "request must be provided" if request.nil?
1727
+
1728
+ request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::AIPlatform::V1::UpdateFeatureRequest
1729
+
1730
+ # Converts hash and nil to an options object
1731
+ options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h
1732
+
1733
+ # Customize the options with defaults
1734
+ metadata = @config.rpcs.update_feature.metadata.to_h
1735
+
1736
+ # Set x-goog-api-client and x-goog-user-project headers
1737
+ metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
1738
+ lib_name: @config.lib_name, lib_version: @config.lib_version,
1739
+ gapic_version: ::Google::Cloud::AIPlatform::V1::VERSION
1740
+ metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id
1741
+
1742
+ header_params = {}
1743
+ if request.feature&.name
1744
+ header_params["feature.name"] = request.feature.name
1745
+ end
1746
+
1747
+ request_params_header = header_params.map { |k, v| "#{k}=#{v}" }.join("&")
1748
+ metadata[:"x-goog-request-params"] ||= request_params_header
1749
+
1750
+ options.apply_defaults timeout: @config.rpcs.update_feature.timeout,
1751
+ metadata: metadata,
1752
+ retry_policy: @config.rpcs.update_feature.retry_policy
1753
+
1754
+ options.apply_defaults timeout: @config.timeout,
1755
+ metadata: @config.metadata,
1756
+ retry_policy: @config.retry_policy
1757
+
1758
+ @featurestore_service_stub.call_rpc :update_feature, request, options: options do |response, operation|
1759
+ yield response, operation if block_given?
1760
+ return response
1761
+ end
1762
+ rescue ::GRPC::BadStatus => e
1763
+ raise ::Google::Cloud::Error.from_error(e)
1764
+ end
1765
+
1766
+ ##
1767
+ # Deletes a single Feature.
1768
+ #
1769
+ # @overload delete_feature(request, options = nil)
1770
+ # Pass arguments to `delete_feature` via a request object, either of type
1771
+ # {::Google::Cloud::AIPlatform::V1::DeleteFeatureRequest} or an equivalent Hash.
1772
+ #
1773
+ # @param request [::Google::Cloud::AIPlatform::V1::DeleteFeatureRequest, ::Hash]
1774
+ # A request object representing the call parameters. Required. To specify no
1775
+ # parameters, or to keep all the default parameter values, pass an empty Hash.
1776
+ # @param options [::Gapic::CallOptions, ::Hash]
1777
+ # Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.
1778
+ #
1779
+ # @overload delete_feature(name: nil)
1780
+ # Pass arguments to `delete_feature` via keyword arguments. Note that at
1781
+ # least one keyword argument is required. To specify no parameters, or to keep all
1782
+ # the default parameter values, pass an empty Hash as a request object (see above).
1783
+ #
1784
+ # @param name [::String]
1785
+ # Required. The name of the Features to be deleted.
1786
+ # Format:
1787
+ # `projects/{project}/locations/{location}/featurestores/{featurestore}/entityTypes/{entity_type}/features/{feature}`
1788
+ #
1789
+ # @yield [response, operation] Access the result along with the RPC operation
1790
+ # @yieldparam response [::Gapic::Operation]
1791
+ # @yieldparam operation [::GRPC::ActiveCall::Operation]
1792
+ #
1793
+ # @return [::Gapic::Operation]
1794
+ #
1795
+ # @raise [::Google::Cloud::Error] if the RPC is aborted.
1796
+ #
1797
+ # @example Basic example
1798
+ # require "google/cloud/ai_platform/v1"
1799
+ #
1800
+ # # Create a client object. The client can be reused for multiple calls.
1801
+ # client = Google::Cloud::AIPlatform::V1::FeaturestoreService::Client.new
1802
+ #
1803
+ # # Create a request. To set request fields, pass in keyword arguments.
1804
+ # request = Google::Cloud::AIPlatform::V1::DeleteFeatureRequest.new
1805
+ #
1806
+ # # Call the delete_feature method.
1807
+ # result = client.delete_feature request
1808
+ #
1809
+ # # The returned object is of type Gapic::Operation. You can use this
1810
+ # # object to check the status of an operation, cancel it, or wait
1811
+ # # for results. Here is how to block until completion:
1812
+ # result.wait_until_done! timeout: 60
1813
+ # if result.response?
1814
+ # p result.response
1815
+ # else
1816
+ # puts "Error!"
1817
+ # end
1818
+ #
1819
+ def delete_feature request, options = nil
1820
+ raise ::ArgumentError, "request must be provided" if request.nil?
1821
+
1822
+ request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::AIPlatform::V1::DeleteFeatureRequest
1823
+
1824
+ # Converts hash and nil to an options object
1825
+ options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h
1826
+
1827
+ # Customize the options with defaults
1828
+ metadata = @config.rpcs.delete_feature.metadata.to_h
1829
+
1830
+ # Set x-goog-api-client and x-goog-user-project headers
1831
+ metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
1832
+ lib_name: @config.lib_name, lib_version: @config.lib_version,
1833
+ gapic_version: ::Google::Cloud::AIPlatform::V1::VERSION
1834
+ metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id
1835
+
1836
+ header_params = {}
1837
+ if request.name
1838
+ header_params["name"] = request.name
1839
+ end
1840
+
1841
+ request_params_header = header_params.map { |k, v| "#{k}=#{v}" }.join("&")
1842
+ metadata[:"x-goog-request-params"] ||= request_params_header
1843
+
1844
+ options.apply_defaults timeout: @config.rpcs.delete_feature.timeout,
1845
+ metadata: metadata,
1846
+ retry_policy: @config.rpcs.delete_feature.retry_policy
1847
+
1848
+ options.apply_defaults timeout: @config.timeout,
1849
+ metadata: @config.metadata,
1850
+ retry_policy: @config.retry_policy
1851
+
1852
+ @featurestore_service_stub.call_rpc :delete_feature, request, options: options do |response, operation|
1853
+ response = ::Gapic::Operation.new response, @operations_client, options: options
1854
+ yield response, operation if block_given?
1855
+ return response
1856
+ end
1857
+ rescue ::GRPC::BadStatus => e
1858
+ raise ::Google::Cloud::Error.from_error(e)
1859
+ end
1860
+
1861
+ ##
1862
+ # Imports Feature values into the Featurestore from a source storage.
1863
+ #
1864
+ # The progress of the import is tracked by the returned operation. The
1865
+ # imported features are guaranteed to be visible to subsequent read
1866
+ # operations after the operation is marked as successfully done.
1867
+ #
1868
+ # If an import operation fails, the Feature values returned from
1869
+ # reads and exports may be inconsistent. If consistency is
1870
+ # required, the caller must retry the same import request again and wait till
1871
+ # the new operation returned is marked as successfully done.
1872
+ #
1873
+ # There are also scenarios where the caller can cause inconsistency.
1874
+ #
1875
+ # - Source data for import contains multiple distinct Feature values for
1876
+ # the same entity ID and timestamp.
1877
+ # - Source is modified during an import. This includes adding, updating, or
1878
+ # removing source data and/or metadata. Examples of updating metadata
1879
+ # include but are not limited to changing storage location, storage class,
1880
+ # or retention policy.
1881
+ # - Online serving cluster is under-provisioned.
1882
+ #
1883
+ # @overload import_feature_values(request, options = nil)
1884
+ # Pass arguments to `import_feature_values` via a request object, either of type
1885
+ # {::Google::Cloud::AIPlatform::V1::ImportFeatureValuesRequest} or an equivalent Hash.
1886
+ #
1887
+ # @param request [::Google::Cloud::AIPlatform::V1::ImportFeatureValuesRequest, ::Hash]
1888
+ # A request object representing the call parameters. Required. To specify no
1889
+ # parameters, or to keep all the default parameter values, pass an empty Hash.
1890
+ # @param options [::Gapic::CallOptions, ::Hash]
1891
+ # Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.
1892
+ #
1893
+ # @overload import_feature_values(avro_source: nil, bigquery_source: nil, csv_source: nil, feature_time_field: nil, feature_time: nil, entity_type: nil, entity_id_field: nil, feature_specs: nil, disable_online_serving: nil, worker_count: nil)
1894
+ # Pass arguments to `import_feature_values` via keyword arguments. Note that at
1895
+ # least one keyword argument is required. To specify no parameters, or to keep all
1896
+ # the default parameter values, pass an empty Hash as a request object (see above).
1897
+ #
1898
+ # @param avro_source [::Google::Cloud::AIPlatform::V1::AvroSource, ::Hash]
1899
+ # @param bigquery_source [::Google::Cloud::AIPlatform::V1::BigQuerySource, ::Hash]
1900
+ # @param csv_source [::Google::Cloud::AIPlatform::V1::CsvSource, ::Hash]
1901
+ # @param feature_time_field [::String]
1902
+ # Source column that holds the Feature timestamp for all Feature
1903
+ # values in each entity.
1904
+ # @param feature_time [::Google::Protobuf::Timestamp, ::Hash]
1905
+ # Single Feature timestamp for all entities being imported. The
1906
+ # timestamp must not have higher than millisecond precision.
1907
+ # @param entity_type [::String]
1908
+ # Required. The resource name of the EntityType grouping the Features for which values
1909
+ # are being imported. Format:
1910
+ # `projects/{project}/locations/{location}/featurestores/{featurestore}/entityTypes/{entityType}`
1911
+ # @param entity_id_field [::String]
1912
+ # Source column that holds entity IDs. If not provided, entity IDs are
1913
+ # extracted from the column named `entity_id`.
1914
+ # @param feature_specs [::Array<::Google::Cloud::AIPlatform::V1::ImportFeatureValuesRequest::FeatureSpec, ::Hash>]
1915
+ # Required. Specifications defining which Feature values to import from the entity. The
1916
+ # request fails if no feature_specs are provided, and having multiple
1917
+ # feature_specs for one Feature is not allowed.
1918
+ # @param disable_online_serving [::Boolean]
1919
+ # If set, data will not be imported for online serving. This
1920
+ # is typically used for backfilling, where Feature generation timestamps are
1921
+ # not in the timestamp range needed for online serving.
1922
+ # @param worker_count [::Integer]
1923
+ # Specifies the number of workers that are used to write data to the
1924
+ # Featurestore. Consider the online serving capacity that you require to
1925
+ # achieve the desired import throughput without interfering with online
1926
+ # serving. The value must be positive, and less than or equal to 100.
1927
+ # If not set, defaults to using 1 worker. The low count ensures minimal
1928
+ # impact on online serving performance.
1929
+ #
1930
+ # @yield [response, operation] Access the result along with the RPC operation
1931
+ # @yieldparam response [::Gapic::Operation]
1932
+ # @yieldparam operation [::GRPC::ActiveCall::Operation]
1933
+ #
1934
+ # @return [::Gapic::Operation]
1935
+ #
1936
+ # @raise [::Google::Cloud::Error] if the RPC is aborted.
1937
+ #
1938
+ # @example Basic example
1939
+ # require "google/cloud/ai_platform/v1"
1940
+ #
1941
+ # # Create a client object. The client can be reused for multiple calls.
1942
+ # client = Google::Cloud::AIPlatform::V1::FeaturestoreService::Client.new
1943
+ #
1944
+ # # Create a request. To set request fields, pass in keyword arguments.
1945
+ # request = Google::Cloud::AIPlatform::V1::ImportFeatureValuesRequest.new
1946
+ #
1947
+ # # Call the import_feature_values method.
1948
+ # result = client.import_feature_values request
1949
+ #
1950
+ # # The returned object is of type Gapic::Operation. You can use this
1951
+ # # object to check the status of an operation, cancel it, or wait
1952
+ # # for results. Here is how to block until completion:
1953
+ # result.wait_until_done! timeout: 60
1954
+ # if result.response?
1955
+ # p result.response
1956
+ # else
1957
+ # puts "Error!"
1958
+ # end
1959
+ #
1960
+ def import_feature_values request, options = nil
1961
+ raise ::ArgumentError, "request must be provided" if request.nil?
1962
+
1963
+ request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::AIPlatform::V1::ImportFeatureValuesRequest
1964
+
1965
+ # Converts hash and nil to an options object
1966
+ options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h
1967
+
1968
+ # Customize the options with defaults
1969
+ metadata = @config.rpcs.import_feature_values.metadata.to_h
1970
+
1971
+ # Set x-goog-api-client and x-goog-user-project headers
1972
+ metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
1973
+ lib_name: @config.lib_name, lib_version: @config.lib_version,
1974
+ gapic_version: ::Google::Cloud::AIPlatform::V1::VERSION
1975
+ metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id
1976
+
1977
+ header_params = {}
1978
+ if request.entity_type
1979
+ header_params["entity_type"] = request.entity_type
1980
+ end
1981
+
1982
+ request_params_header = header_params.map { |k, v| "#{k}=#{v}" }.join("&")
1983
+ metadata[:"x-goog-request-params"] ||= request_params_header
1984
+
1985
+ options.apply_defaults timeout: @config.rpcs.import_feature_values.timeout,
1986
+ metadata: metadata,
1987
+ retry_policy: @config.rpcs.import_feature_values.retry_policy
1988
+
1989
+ options.apply_defaults timeout: @config.timeout,
1990
+ metadata: @config.metadata,
1991
+ retry_policy: @config.retry_policy
1992
+
1993
+ @featurestore_service_stub.call_rpc :import_feature_values, request, options: options do |response, operation|
1994
+ response = ::Gapic::Operation.new response, @operations_client, options: options
1995
+ yield response, operation if block_given?
1996
+ return response
1997
+ end
1998
+ rescue ::GRPC::BadStatus => e
1999
+ raise ::Google::Cloud::Error.from_error(e)
2000
+ end
2001
+
2002
+ ##
2003
+ # Batch reads Feature values from a Featurestore.
2004
+ #
2005
+ # This API enables batch reading Feature values, where each read
2006
+ # instance in the batch may read Feature values of entities from one or
2007
+ # more EntityTypes. Point-in-time correctness is guaranteed for Feature
2008
+ # values of each read instance as of each instance's read timestamp.
2009
+ #
2010
+ # @overload batch_read_feature_values(request, options = nil)
2011
+ # Pass arguments to `batch_read_feature_values` via a request object, either of type
2012
+ # {::Google::Cloud::AIPlatform::V1::BatchReadFeatureValuesRequest} or an equivalent Hash.
2013
+ #
2014
+ # @param request [::Google::Cloud::AIPlatform::V1::BatchReadFeatureValuesRequest, ::Hash]
2015
+ # A request object representing the call parameters. Required. To specify no
2016
+ # parameters, or to keep all the default parameter values, pass an empty Hash.
2017
+ # @param options [::Gapic::CallOptions, ::Hash]
2018
+ # Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.
2019
+ #
2020
+ # @overload batch_read_feature_values(csv_read_instances: nil, bigquery_read_instances: nil, featurestore: nil, destination: nil, pass_through_fields: nil, entity_type_specs: nil)
2021
+ # Pass arguments to `batch_read_feature_values` via keyword arguments. Note that at
2022
+ # least one keyword argument is required. To specify no parameters, or to keep all
2023
+ # the default parameter values, pass an empty Hash as a request object (see above).
2024
+ #
2025
+ # @param csv_read_instances [::Google::Cloud::AIPlatform::V1::CsvSource, ::Hash]
2026
+ # Each read instance consists of exactly one read timestamp and one or more
2027
+ # entity IDs identifying entities of the corresponding EntityTypes whose
2028
+ # Features are requested.
2029
+ #
2030
+ # Each output instance contains Feature values of requested entities
2031
+ # concatenated together as of the read time.
2032
+ #
2033
+ # An example read instance may be `foo_entity_id, bar_entity_id,
2034
+ # 2020-01-01T10:00:00.123Z`.
2035
+ #
2036
+ # An example output instance may be `foo_entity_id, bar_entity_id,
2037
+ # 2020-01-01T10:00:00.123Z, foo_entity_feature1_value,
2038
+ # bar_entity_feature2_value`.
2039
+ #
2040
+ # Timestamp in each read instance must be millisecond-aligned.
2041
+ #
2042
+ # `csv_read_instances` are read instances stored in a plain-text CSV file.
2043
+ # The header should be:
2044
+ # [ENTITY_TYPE_ID1], [ENTITY_TYPE_ID2], ..., timestamp
2045
+ #
2046
+ # The columns can be in any order.
2047
+ #
2048
+ # Values in the timestamp column must use the RFC 3339 format, e.g.
2049
+ # `2012-07-30T10:43:17.123Z`.
2050
+ # @param bigquery_read_instances [::Google::Cloud::AIPlatform::V1::BigQuerySource, ::Hash]
2051
+ # Similar to csv_read_instances, but from BigQuery source.
2052
+ # @param featurestore [::String]
2053
+ # Required. The resource name of the Featurestore from which to query Feature values.
2054
+ # Format:
2055
+ # `projects/{project}/locations/{location}/featurestores/{featurestore}`
2056
+ # @param destination [::Google::Cloud::AIPlatform::V1::FeatureValueDestination, ::Hash]
2057
+ # Required. Specifies output location and format.
2058
+ # @param pass_through_fields [::Array<::Google::Cloud::AIPlatform::V1::BatchReadFeatureValuesRequest::PassThroughField, ::Hash>]
2059
+ # When not empty, the specified fields in the *_read_instances source will be
2060
+ # joined as-is in the output, in addition to those fields from the
2061
+ # Featurestore Entity.
2062
+ #
2063
+ # For BigQuery source, the type of the pass-through values will be
2064
+ # automatically inferred. For CSV source, the pass-through values will be
2065
+ # passed as opaque bytes.
2066
+ # @param entity_type_specs [::Array<::Google::Cloud::AIPlatform::V1::BatchReadFeatureValuesRequest::EntityTypeSpec, ::Hash>]
2067
+ # Required. Specifies EntityType grouping Features to read values of and settings.
2068
+ # Each EntityType referenced in
2069
+ # [BatchReadFeatureValuesRequest.entity_type_specs] must have a column
2070
+ # specifying entity IDs in the EntityType in
2071
+ # [BatchReadFeatureValuesRequest.request][] .
2072
+ #
2073
+ # @yield [response, operation] Access the result along with the RPC operation
2074
+ # @yieldparam response [::Gapic::Operation]
2075
+ # @yieldparam operation [::GRPC::ActiveCall::Operation]
2076
+ #
2077
+ # @return [::Gapic::Operation]
2078
+ #
2079
+ # @raise [::Google::Cloud::Error] if the RPC is aborted.
2080
+ #
2081
+ # @example Basic example
2082
+ # require "google/cloud/ai_platform/v1"
2083
+ #
2084
+ # # Create a client object. The client can be reused for multiple calls.
2085
+ # client = Google::Cloud::AIPlatform::V1::FeaturestoreService::Client.new
2086
+ #
2087
+ # # Create a request. To set request fields, pass in keyword arguments.
2088
+ # request = Google::Cloud::AIPlatform::V1::BatchReadFeatureValuesRequest.new
2089
+ #
2090
+ # # Call the batch_read_feature_values method.
2091
+ # result = client.batch_read_feature_values request
2092
+ #
2093
+ # # The returned object is of type Gapic::Operation. You can use this
2094
+ # # object to check the status of an operation, cancel it, or wait
2095
+ # # for results. Here is how to block until completion:
2096
+ # result.wait_until_done! timeout: 60
2097
+ # if result.response?
2098
+ # p result.response
2099
+ # else
2100
+ # puts "Error!"
2101
+ # end
2102
+ #
2103
+ def batch_read_feature_values request, options = nil
2104
+ raise ::ArgumentError, "request must be provided" if request.nil?
2105
+
2106
+ request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::AIPlatform::V1::BatchReadFeatureValuesRequest
2107
+
2108
+ # Converts hash and nil to an options object
2109
+ options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h
2110
+
2111
+ # Customize the options with defaults
2112
+ metadata = @config.rpcs.batch_read_feature_values.metadata.to_h
2113
+
2114
+ # Set x-goog-api-client and x-goog-user-project headers
2115
+ metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
2116
+ lib_name: @config.lib_name, lib_version: @config.lib_version,
2117
+ gapic_version: ::Google::Cloud::AIPlatform::V1::VERSION
2118
+ metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id
2119
+
2120
+ header_params = {}
2121
+ if request.featurestore
2122
+ header_params["featurestore"] = request.featurestore
2123
+ end
2124
+
2125
+ request_params_header = header_params.map { |k, v| "#{k}=#{v}" }.join("&")
2126
+ metadata[:"x-goog-request-params"] ||= request_params_header
2127
+
2128
+ options.apply_defaults timeout: @config.rpcs.batch_read_feature_values.timeout,
2129
+ metadata: metadata,
2130
+ retry_policy: @config.rpcs.batch_read_feature_values.retry_policy
2131
+
2132
+ options.apply_defaults timeout: @config.timeout,
2133
+ metadata: @config.metadata,
2134
+ retry_policy: @config.retry_policy
2135
+
2136
+ @featurestore_service_stub.call_rpc :batch_read_feature_values, request, options: options do |response, operation|
2137
+ response = ::Gapic::Operation.new response, @operations_client, options: options
2138
+ yield response, operation if block_given?
2139
+ return response
2140
+ end
2141
+ rescue ::GRPC::BadStatus => e
2142
+ raise ::Google::Cloud::Error.from_error(e)
2143
+ end
2144
+
2145
+ ##
2146
+ # Exports Feature values from all the entities of a target EntityType.
2147
+ #
2148
+ # @overload export_feature_values(request, options = nil)
2149
+ # Pass arguments to `export_feature_values` via a request object, either of type
2150
+ # {::Google::Cloud::AIPlatform::V1::ExportFeatureValuesRequest} or an equivalent Hash.
2151
+ #
2152
+ # @param request [::Google::Cloud::AIPlatform::V1::ExportFeatureValuesRequest, ::Hash]
2153
+ # A request object representing the call parameters. Required. To specify no
2154
+ # parameters, or to keep all the default parameter values, pass an empty Hash.
2155
+ # @param options [::Gapic::CallOptions, ::Hash]
2156
+ # Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.
2157
+ #
2158
+ # @overload export_feature_values(snapshot_export: nil, full_export: nil, entity_type: nil, destination: nil, feature_selector: nil, settings: nil)
2159
+ # Pass arguments to `export_feature_values` via keyword arguments. Note that at
2160
+ # least one keyword argument is required. To specify no parameters, or to keep all
2161
+ # the default parameter values, pass an empty Hash as a request object (see above).
2162
+ #
2163
+ # @param snapshot_export [::Google::Cloud::AIPlatform::V1::ExportFeatureValuesRequest::SnapshotExport, ::Hash]
2164
+ # Exports the latest Feature values of all entities of the EntityType
2165
+ # within a time range.
2166
+ # @param full_export [::Google::Cloud::AIPlatform::V1::ExportFeatureValuesRequest::FullExport, ::Hash]
2167
+ # Exports all historical values of all entities of the EntityType within a
2168
+ # time range
2169
+ # @param entity_type [::String]
2170
+ # Required. The resource name of the EntityType from which to export Feature values.
2171
+ # Format:
2172
+ # `projects/{project}/locations/{location}/featurestores/{featurestore}/entityTypes/{entity_type}`
2173
+ # @param destination [::Google::Cloud::AIPlatform::V1::FeatureValueDestination, ::Hash]
2174
+ # Required. Specifies destination location and format.
2175
+ # @param feature_selector [::Google::Cloud::AIPlatform::V1::FeatureSelector, ::Hash]
2176
+ # Required. Selects Features to export values of.
2177
+ # @param settings [::Array<::Google::Cloud::AIPlatform::V1::DestinationFeatureSetting, ::Hash>]
2178
+ # Per-Feature export settings.
2179
+ #
2180
+ # @yield [response, operation] Access the result along with the RPC operation
2181
+ # @yieldparam response [::Gapic::Operation]
2182
+ # @yieldparam operation [::GRPC::ActiveCall::Operation]
2183
+ #
2184
+ # @return [::Gapic::Operation]
2185
+ #
2186
+ # @raise [::Google::Cloud::Error] if the RPC is aborted.
2187
+ #
2188
+ # @example Basic example
2189
+ # require "google/cloud/ai_platform/v1"
2190
+ #
2191
+ # # Create a client object. The client can be reused for multiple calls.
2192
+ # client = Google::Cloud::AIPlatform::V1::FeaturestoreService::Client.new
2193
+ #
2194
+ # # Create a request. To set request fields, pass in keyword arguments.
2195
+ # request = Google::Cloud::AIPlatform::V1::ExportFeatureValuesRequest.new
2196
+ #
2197
+ # # Call the export_feature_values method.
2198
+ # result = client.export_feature_values request
2199
+ #
2200
+ # # The returned object is of type Gapic::Operation. You can use this
2201
+ # # object to check the status of an operation, cancel it, or wait
2202
+ # # for results. Here is how to block until completion:
2203
+ # result.wait_until_done! timeout: 60
2204
+ # if result.response?
2205
+ # p result.response
2206
+ # else
2207
+ # puts "Error!"
2208
+ # end
2209
+ #
2210
+ def export_feature_values request, options = nil
2211
+ raise ::ArgumentError, "request must be provided" if request.nil?
2212
+
2213
+ request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::AIPlatform::V1::ExportFeatureValuesRequest
2214
+
2215
+ # Converts hash and nil to an options object
2216
+ options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h
2217
+
2218
+ # Customize the options with defaults
2219
+ metadata = @config.rpcs.export_feature_values.metadata.to_h
2220
+
2221
+ # Set x-goog-api-client and x-goog-user-project headers
2222
+ metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
2223
+ lib_name: @config.lib_name, lib_version: @config.lib_version,
2224
+ gapic_version: ::Google::Cloud::AIPlatform::V1::VERSION
2225
+ metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id
2226
+
2227
+ header_params = {}
2228
+ if request.entity_type
2229
+ header_params["entity_type"] = request.entity_type
2230
+ end
2231
+
2232
+ request_params_header = header_params.map { |k, v| "#{k}=#{v}" }.join("&")
2233
+ metadata[:"x-goog-request-params"] ||= request_params_header
2234
+
2235
+ options.apply_defaults timeout: @config.rpcs.export_feature_values.timeout,
2236
+ metadata: metadata,
2237
+ retry_policy: @config.rpcs.export_feature_values.retry_policy
2238
+
2239
+ options.apply_defaults timeout: @config.timeout,
2240
+ metadata: @config.metadata,
2241
+ retry_policy: @config.retry_policy
2242
+
2243
+ @featurestore_service_stub.call_rpc :export_feature_values, request, options: options do |response, operation|
2244
+ response = ::Gapic::Operation.new response, @operations_client, options: options
2245
+ yield response, operation if block_given?
2246
+ return response
2247
+ end
2248
+ rescue ::GRPC::BadStatus => e
2249
+ raise ::Google::Cloud::Error.from_error(e)
2250
+ end
2251
+
2252
+ ##
2253
+ # Searches Features matching a query in a given project.
2254
+ #
2255
+ # @overload search_features(request, options = nil)
2256
+ # Pass arguments to `search_features` via a request object, either of type
2257
+ # {::Google::Cloud::AIPlatform::V1::SearchFeaturesRequest} or an equivalent Hash.
2258
+ #
2259
+ # @param request [::Google::Cloud::AIPlatform::V1::SearchFeaturesRequest, ::Hash]
2260
+ # A request object representing the call parameters. Required. To specify no
2261
+ # parameters, or to keep all the default parameter values, pass an empty Hash.
2262
+ # @param options [::Gapic::CallOptions, ::Hash]
2263
+ # Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.
2264
+ #
2265
+ # @overload search_features(location: nil, query: nil, page_size: nil, page_token: nil)
2266
+ # Pass arguments to `search_features` via keyword arguments. Note that at
2267
+ # least one keyword argument is required. To specify no parameters, or to keep all
2268
+ # the default parameter values, pass an empty Hash as a request object (see above).
2269
+ #
2270
+ # @param location [::String]
2271
+ # Required. The resource name of the Location to search Features.
2272
+ # Format:
2273
+ # `projects/{project}/locations/{location}`
2274
+ # @param query [::String]
2275
+ # Query string that is a conjunction of field-restricted queries and/or
2276
+ # field-restricted filters. Field-restricted queries and filters can be
2277
+ # combined using `AND` to form a conjunction.
2278
+ #
2279
+ # A field query is in the form FIELD:QUERY. This implicitly checks if QUERY
2280
+ # exists as a substring within Feature's FIELD. The QUERY
2281
+ # and the FIELD are converted to a sequence of words (i.e. tokens) for
2282
+ # comparison. This is done by:
2283
+ #
2284
+ # * Removing leading/trailing whitespace and tokenizing the search value.
2285
+ # Characters that are not one of alphanumeric `[a-zA-Z0-9]`, underscore
2286
+ # `_`, or asterisk `*` are treated as delimiters for tokens. `*` is treated
2287
+ # as a wildcard that matches characters within a token.
2288
+ # * Ignoring case.
2289
+ # * Prepending an asterisk to the first and appending an asterisk to the
2290
+ # last token in QUERY.
2291
+ #
2292
+ # A QUERY must be either a singular token or a phrase. A phrase is one or
2293
+ # multiple words enclosed in double quotation marks ("). With phrases, the
2294
+ # order of the words is important. Words in the phrase must be matching in
2295
+ # order and consecutively.
2296
+ #
2297
+ # Supported FIELDs for field-restricted queries:
2298
+ #
2299
+ # * `feature_id`
2300
+ # * `description`
2301
+ # * `entity_type_id`
2302
+ #
2303
+ # Examples:
2304
+ #
2305
+ # * `feature_id: foo` --> Matches a Feature with ID containing the substring
2306
+ # `foo` (eg. `foo`, `foofeature`, `barfoo`).
2307
+ # * `feature_id: foo*feature` --> Matches a Feature with ID containing the
2308
+ # substring `foo*feature` (eg. `foobarfeature`).
2309
+ # * `feature_id: foo AND description: bar` --> Matches a Feature with ID
2310
+ # containing the substring `foo` and description containing the substring
2311
+ # `bar`.
2312
+ #
2313
+ #
2314
+ # Besides field queries, the following exact-match filters are
2315
+ # supported. The exact-match filters do not support wildcards. Unlike
2316
+ # field-restricted queries, exact-match filters are case-sensitive.
2317
+ #
2318
+ # * `feature_id`: Supports = comparisons.
2319
+ # * `description`: Supports = comparisons. Multi-token filters should be
2320
+ # enclosed in quotes.
2321
+ # * `entity_type_id`: Supports = comparisons.
2322
+ # * `value_type`: Supports = and != comparisons.
2323
+ # * `labels`: Supports key-value equality as well as key presence.
2324
+ # * `featurestore_id`: Supports = comparisons.
2325
+ #
2326
+ # Examples:
2327
+ # * `description = "foo bar"` --> Any Feature with description exactly equal
2328
+ # to `foo bar`
2329
+ # * `value_type = DOUBLE` --> Features whose type is DOUBLE.
2330
+ # * `labels.active = yes AND labels.env = prod` --> Features having both
2331
+ # (active: yes) and (env: prod) labels.
2332
+ # * `labels.env: *` --> Any Feature which has a label with `env` as the
2333
+ # key.
2334
+ # @param page_size [::Integer]
2335
+ # The maximum number of Features to return. The service may return fewer
2336
+ # than this value. If unspecified, at most 100 Features will be returned.
2337
+ # The maximum value is 100; any value greater than 100 will be coerced to
2338
+ # 100.
2339
+ # @param page_token [::String]
2340
+ # A page token, received from a previous
2341
+ # {::Google::Cloud::AIPlatform::V1::FeaturestoreService::Client#search_features FeaturestoreService.SearchFeatures} call.
2342
+ # Provide this to retrieve the subsequent page.
2343
+ #
2344
+ # When paginating, all other parameters provided to
2345
+ # {::Google::Cloud::AIPlatform::V1::FeaturestoreService::Client#search_features FeaturestoreService.SearchFeatures}, except `page_size`, must
2346
+ # match the call that provided the page token.
2347
+ #
2348
+ # @yield [response, operation] Access the result along with the RPC operation
2349
+ # @yieldparam response [::Gapic::PagedEnumerable<::Google::Cloud::AIPlatform::V1::Feature>]
2350
+ # @yieldparam operation [::GRPC::ActiveCall::Operation]
2351
+ #
2352
+ # @return [::Gapic::PagedEnumerable<::Google::Cloud::AIPlatform::V1::Feature>]
2353
+ #
2354
+ # @raise [::Google::Cloud::Error] if the RPC is aborted.
2355
+ #
2356
+ # @example Basic example
2357
+ # require "google/cloud/ai_platform/v1"
2358
+ #
2359
+ # # Create a client object. The client can be reused for multiple calls.
2360
+ # client = Google::Cloud::AIPlatform::V1::FeaturestoreService::Client.new
2361
+ #
2362
+ # # Create a request. To set request fields, pass in keyword arguments.
2363
+ # request = Google::Cloud::AIPlatform::V1::SearchFeaturesRequest.new
2364
+ #
2365
+ # # Call the search_features method.
2366
+ # result = client.search_features request
2367
+ #
2368
+ # # The returned object is of type Gapic::PagedEnumerable. You can
2369
+ # # iterate over all elements by calling #each, and the enumerable
2370
+ # # will lazily make API calls to fetch subsequent pages. Other
2371
+ # # methods are also available for managing paging directly.
2372
+ # result.each do |response|
2373
+ # # Each element is of type ::Google::Cloud::AIPlatform::V1::Feature.
2374
+ # p response
2375
+ # end
2376
+ #
2377
+ def search_features request, options = nil
2378
+ raise ::ArgumentError, "request must be provided" if request.nil?
2379
+
2380
+ request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::AIPlatform::V1::SearchFeaturesRequest
2381
+
2382
+ # Converts hash and nil to an options object
2383
+ options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h
2384
+
2385
+ # Customize the options with defaults
2386
+ metadata = @config.rpcs.search_features.metadata.to_h
2387
+
2388
+ # Set x-goog-api-client and x-goog-user-project headers
2389
+ metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
2390
+ lib_name: @config.lib_name, lib_version: @config.lib_version,
2391
+ gapic_version: ::Google::Cloud::AIPlatform::V1::VERSION
2392
+ metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id
2393
+
2394
+ header_params = {}
2395
+ if request.location
2396
+ header_params["location"] = request.location
2397
+ end
2398
+
2399
+ request_params_header = header_params.map { |k, v| "#{k}=#{v}" }.join("&")
2400
+ metadata[:"x-goog-request-params"] ||= request_params_header
2401
+
2402
+ options.apply_defaults timeout: @config.rpcs.search_features.timeout,
2403
+ metadata: metadata,
2404
+ retry_policy: @config.rpcs.search_features.retry_policy
2405
+
2406
+ options.apply_defaults timeout: @config.timeout,
2407
+ metadata: @config.metadata,
2408
+ retry_policy: @config.retry_policy
2409
+
2410
+ @featurestore_service_stub.call_rpc :search_features, request, options: options do |response, operation|
2411
+ response = ::Gapic::PagedEnumerable.new @featurestore_service_stub, :search_features, request, response, operation, options
2412
+ yield response, operation if block_given?
2413
+ return response
2414
+ end
2415
+ rescue ::GRPC::BadStatus => e
2416
+ raise ::Google::Cloud::Error.from_error(e)
2417
+ end
2418
+
2419
+ ##
2420
+ # Configuration class for the FeaturestoreService API.
2421
+ #
2422
+ # This class represents the configuration for FeaturestoreService,
2423
+ # providing control over timeouts, retry behavior, logging, transport
2424
+ # parameters, and other low-level controls. Certain parameters can also be
2425
+ # applied individually to specific RPCs. See
2426
+ # {::Google::Cloud::AIPlatform::V1::FeaturestoreService::Client::Configuration::Rpcs}
2427
+ # for a list of RPCs that can be configured independently.
2428
+ #
2429
+ # Configuration can be applied globally to all clients, or to a single client
2430
+ # on construction.
2431
+ #
2432
+ # @example
2433
+ #
2434
+ # # Modify the global config, setting the timeout for
2435
+ # # create_featurestore to 20 seconds,
2436
+ # # and all remaining timeouts to 10 seconds.
2437
+ # ::Google::Cloud::AIPlatform::V1::FeaturestoreService::Client.configure do |config|
2438
+ # config.timeout = 10.0
2439
+ # config.rpcs.create_featurestore.timeout = 20.0
2440
+ # end
2441
+ #
2442
+ # # Apply the above configuration only to a new client.
2443
+ # client = ::Google::Cloud::AIPlatform::V1::FeaturestoreService::Client.new do |config|
2444
+ # config.timeout = 10.0
2445
+ # config.rpcs.create_featurestore.timeout = 20.0
2446
+ # end
2447
+ #
2448
+ # @!attribute [rw] endpoint
2449
+ # The hostname or hostname:port of the service endpoint.
2450
+ # Defaults to `"aiplatform.googleapis.com"`.
2451
+ # @return [::String]
2452
+ # @!attribute [rw] credentials
2453
+ # Credentials to send with calls. You may provide any of the following types:
2454
+ # * (`String`) The path to a service account key file in JSON format
2455
+ # * (`Hash`) A service account key as a Hash
2456
+ # * (`Google::Auth::Credentials`) A googleauth credentials object
2457
+ # (see the [googleauth docs](https://googleapis.dev/ruby/googleauth/latest/index.html))
2458
+ # * (`Signet::OAuth2::Client`) A signet oauth2 client object
2459
+ # (see the [signet docs](https://googleapis.dev/ruby/signet/latest/Signet/OAuth2/Client.html))
2460
+ # * (`GRPC::Core::Channel`) a gRPC channel with included credentials
2461
+ # * (`GRPC::Core::ChannelCredentials`) a gRPC credentails object
2462
+ # * (`nil`) indicating no credentials
2463
+ # @return [::Object]
2464
+ # @!attribute [rw] scope
2465
+ # The OAuth scopes
2466
+ # @return [::Array<::String>]
2467
+ # @!attribute [rw] lib_name
2468
+ # The library name as recorded in instrumentation and logging
2469
+ # @return [::String]
2470
+ # @!attribute [rw] lib_version
2471
+ # The library version as recorded in instrumentation and logging
2472
+ # @return [::String]
2473
+ # @!attribute [rw] channel_args
2474
+ # Extra parameters passed to the gRPC channel. Note: this is ignored if a
2475
+ # `GRPC::Core::Channel` object is provided as the credential.
2476
+ # @return [::Hash]
2477
+ # @!attribute [rw] interceptors
2478
+ # An array of interceptors that are run before calls are executed.
2479
+ # @return [::Array<::GRPC::ClientInterceptor>]
2480
+ # @!attribute [rw] timeout
2481
+ # The call timeout in seconds.
2482
+ # @return [::Numeric]
2483
+ # @!attribute [rw] metadata
2484
+ # Additional gRPC headers to be sent with the call.
2485
+ # @return [::Hash{::Symbol=>::String}]
2486
+ # @!attribute [rw] retry_policy
2487
+ # The retry policy. The value is a hash with the following keys:
2488
+ # * `:initial_delay` (*type:* `Numeric`) - The initial delay in seconds.
2489
+ # * `:max_delay` (*type:* `Numeric`) - The max delay in seconds.
2490
+ # * `:multiplier` (*type:* `Numeric`) - The incremental backoff multiplier.
2491
+ # * `:retry_codes` (*type:* `Array<String>`) - The error codes that should
2492
+ # trigger a retry.
2493
+ # @return [::Hash]
2494
+ # @!attribute [rw] quota_project
2495
+ # A separate project against which to charge quota.
2496
+ # @return [::String]
2497
+ #
2498
+ class Configuration
2499
+ extend ::Gapic::Config
2500
+
2501
+ config_attr :endpoint, "aiplatform.googleapis.com", ::String
2502
+ config_attr :credentials, nil do |value|
2503
+ allowed = [::String, ::Hash, ::Proc, ::Symbol, ::Google::Auth::Credentials, ::Signet::OAuth2::Client, nil]
2504
+ allowed += [::GRPC::Core::Channel, ::GRPC::Core::ChannelCredentials] if defined? ::GRPC
2505
+ allowed.any? { |klass| klass === value }
2506
+ end
2507
+ config_attr :scope, nil, ::String, ::Array, nil
2508
+ config_attr :lib_name, nil, ::String, nil
2509
+ config_attr :lib_version, nil, ::String, nil
2510
+ config_attr(:channel_args, { "grpc.service_config_disable_resolution" => 1 }, ::Hash, nil)
2511
+ config_attr :interceptors, nil, ::Array, nil
2512
+ config_attr :timeout, nil, ::Numeric, nil
2513
+ config_attr :metadata, nil, ::Hash, nil
2514
+ config_attr :retry_policy, nil, ::Hash, ::Proc, nil
2515
+ config_attr :quota_project, nil, ::String, nil
2516
+
2517
+ # @private
2518
+ def initialize parent_config = nil
2519
+ @parent_config = parent_config unless parent_config.nil?
2520
+
2521
+ yield self if block_given?
2522
+ end
2523
+
2524
+ ##
2525
+ # Configurations for individual RPCs
2526
+ # @return [Rpcs]
2527
+ #
2528
+ def rpcs
2529
+ @rpcs ||= begin
2530
+ parent_rpcs = nil
2531
+ parent_rpcs = @parent_config.rpcs if defined?(@parent_config) && @parent_config.respond_to?(:rpcs)
2532
+ Rpcs.new parent_rpcs
2533
+ end
2534
+ end
2535
+
2536
+ ##
2537
+ # Configuration RPC class for the FeaturestoreService API.
2538
+ #
2539
+ # Includes fields providing the configuration for each RPC in this service.
2540
+ # Each configuration object is of type `Gapic::Config::Method` and includes
2541
+ # the following configuration fields:
2542
+ #
2543
+ # * `timeout` (*type:* `Numeric`) - The call timeout in seconds
2544
+ # * `metadata` (*type:* `Hash{Symbol=>String}`) - Additional gRPC headers
2545
+ # * `retry_policy (*type:* `Hash`) - The retry policy. The policy fields
2546
+ # include the following keys:
2547
+ # * `:initial_delay` (*type:* `Numeric`) - The initial delay in seconds.
2548
+ # * `:max_delay` (*type:* `Numeric`) - The max delay in seconds.
2549
+ # * `:multiplier` (*type:* `Numeric`) - The incremental backoff multiplier.
2550
+ # * `:retry_codes` (*type:* `Array<String>`) - The error codes that should
2551
+ # trigger a retry.
2552
+ #
2553
+ class Rpcs
2554
+ ##
2555
+ # RPC-specific configuration for `create_featurestore`
2556
+ # @return [::Gapic::Config::Method]
2557
+ #
2558
+ attr_reader :create_featurestore
2559
+ ##
2560
+ # RPC-specific configuration for `get_featurestore`
2561
+ # @return [::Gapic::Config::Method]
2562
+ #
2563
+ attr_reader :get_featurestore
2564
+ ##
2565
+ # RPC-specific configuration for `list_featurestores`
2566
+ # @return [::Gapic::Config::Method]
2567
+ #
2568
+ attr_reader :list_featurestores
2569
+ ##
2570
+ # RPC-specific configuration for `update_featurestore`
2571
+ # @return [::Gapic::Config::Method]
2572
+ #
2573
+ attr_reader :update_featurestore
2574
+ ##
2575
+ # RPC-specific configuration for `delete_featurestore`
2576
+ # @return [::Gapic::Config::Method]
2577
+ #
2578
+ attr_reader :delete_featurestore
2579
+ ##
2580
+ # RPC-specific configuration for `create_entity_type`
2581
+ # @return [::Gapic::Config::Method]
2582
+ #
2583
+ attr_reader :create_entity_type
2584
+ ##
2585
+ # RPC-specific configuration for `get_entity_type`
2586
+ # @return [::Gapic::Config::Method]
2587
+ #
2588
+ attr_reader :get_entity_type
2589
+ ##
2590
+ # RPC-specific configuration for `list_entity_types`
2591
+ # @return [::Gapic::Config::Method]
2592
+ #
2593
+ attr_reader :list_entity_types
2594
+ ##
2595
+ # RPC-specific configuration for `update_entity_type`
2596
+ # @return [::Gapic::Config::Method]
2597
+ #
2598
+ attr_reader :update_entity_type
2599
+ ##
2600
+ # RPC-specific configuration for `delete_entity_type`
2601
+ # @return [::Gapic::Config::Method]
2602
+ #
2603
+ attr_reader :delete_entity_type
2604
+ ##
2605
+ # RPC-specific configuration for `create_feature`
2606
+ # @return [::Gapic::Config::Method]
2607
+ #
2608
+ attr_reader :create_feature
2609
+ ##
2610
+ # RPC-specific configuration for `batch_create_features`
2611
+ # @return [::Gapic::Config::Method]
2612
+ #
2613
+ attr_reader :batch_create_features
2614
+ ##
2615
+ # RPC-specific configuration for `get_feature`
2616
+ # @return [::Gapic::Config::Method]
2617
+ #
2618
+ attr_reader :get_feature
2619
+ ##
2620
+ # RPC-specific configuration for `list_features`
2621
+ # @return [::Gapic::Config::Method]
2622
+ #
2623
+ attr_reader :list_features
2624
+ ##
2625
+ # RPC-specific configuration for `update_feature`
2626
+ # @return [::Gapic::Config::Method]
2627
+ #
2628
+ attr_reader :update_feature
2629
+ ##
2630
+ # RPC-specific configuration for `delete_feature`
2631
+ # @return [::Gapic::Config::Method]
2632
+ #
2633
+ attr_reader :delete_feature
2634
+ ##
2635
+ # RPC-specific configuration for `import_feature_values`
2636
+ # @return [::Gapic::Config::Method]
2637
+ #
2638
+ attr_reader :import_feature_values
2639
+ ##
2640
+ # RPC-specific configuration for `batch_read_feature_values`
2641
+ # @return [::Gapic::Config::Method]
2642
+ #
2643
+ attr_reader :batch_read_feature_values
2644
+ ##
2645
+ # RPC-specific configuration for `export_feature_values`
2646
+ # @return [::Gapic::Config::Method]
2647
+ #
2648
+ attr_reader :export_feature_values
2649
+ ##
2650
+ # RPC-specific configuration for `search_features`
2651
+ # @return [::Gapic::Config::Method]
2652
+ #
2653
+ attr_reader :search_features
2654
+
2655
+ # @private
2656
+ def initialize parent_rpcs = nil
2657
+ create_featurestore_config = parent_rpcs.create_featurestore if parent_rpcs.respond_to? :create_featurestore
2658
+ @create_featurestore = ::Gapic::Config::Method.new create_featurestore_config
2659
+ get_featurestore_config = parent_rpcs.get_featurestore if parent_rpcs.respond_to? :get_featurestore
2660
+ @get_featurestore = ::Gapic::Config::Method.new get_featurestore_config
2661
+ list_featurestores_config = parent_rpcs.list_featurestores if parent_rpcs.respond_to? :list_featurestores
2662
+ @list_featurestores = ::Gapic::Config::Method.new list_featurestores_config
2663
+ update_featurestore_config = parent_rpcs.update_featurestore if parent_rpcs.respond_to? :update_featurestore
2664
+ @update_featurestore = ::Gapic::Config::Method.new update_featurestore_config
2665
+ delete_featurestore_config = parent_rpcs.delete_featurestore if parent_rpcs.respond_to? :delete_featurestore
2666
+ @delete_featurestore = ::Gapic::Config::Method.new delete_featurestore_config
2667
+ create_entity_type_config = parent_rpcs.create_entity_type if parent_rpcs.respond_to? :create_entity_type
2668
+ @create_entity_type = ::Gapic::Config::Method.new create_entity_type_config
2669
+ get_entity_type_config = parent_rpcs.get_entity_type if parent_rpcs.respond_to? :get_entity_type
2670
+ @get_entity_type = ::Gapic::Config::Method.new get_entity_type_config
2671
+ list_entity_types_config = parent_rpcs.list_entity_types if parent_rpcs.respond_to? :list_entity_types
2672
+ @list_entity_types = ::Gapic::Config::Method.new list_entity_types_config
2673
+ update_entity_type_config = parent_rpcs.update_entity_type if parent_rpcs.respond_to? :update_entity_type
2674
+ @update_entity_type = ::Gapic::Config::Method.new update_entity_type_config
2675
+ delete_entity_type_config = parent_rpcs.delete_entity_type if parent_rpcs.respond_to? :delete_entity_type
2676
+ @delete_entity_type = ::Gapic::Config::Method.new delete_entity_type_config
2677
+ create_feature_config = parent_rpcs.create_feature if parent_rpcs.respond_to? :create_feature
2678
+ @create_feature = ::Gapic::Config::Method.new create_feature_config
2679
+ batch_create_features_config = parent_rpcs.batch_create_features if parent_rpcs.respond_to? :batch_create_features
2680
+ @batch_create_features = ::Gapic::Config::Method.new batch_create_features_config
2681
+ get_feature_config = parent_rpcs.get_feature if parent_rpcs.respond_to? :get_feature
2682
+ @get_feature = ::Gapic::Config::Method.new get_feature_config
2683
+ list_features_config = parent_rpcs.list_features if parent_rpcs.respond_to? :list_features
2684
+ @list_features = ::Gapic::Config::Method.new list_features_config
2685
+ update_feature_config = parent_rpcs.update_feature if parent_rpcs.respond_to? :update_feature
2686
+ @update_feature = ::Gapic::Config::Method.new update_feature_config
2687
+ delete_feature_config = parent_rpcs.delete_feature if parent_rpcs.respond_to? :delete_feature
2688
+ @delete_feature = ::Gapic::Config::Method.new delete_feature_config
2689
+ import_feature_values_config = parent_rpcs.import_feature_values if parent_rpcs.respond_to? :import_feature_values
2690
+ @import_feature_values = ::Gapic::Config::Method.new import_feature_values_config
2691
+ batch_read_feature_values_config = parent_rpcs.batch_read_feature_values if parent_rpcs.respond_to? :batch_read_feature_values
2692
+ @batch_read_feature_values = ::Gapic::Config::Method.new batch_read_feature_values_config
2693
+ export_feature_values_config = parent_rpcs.export_feature_values if parent_rpcs.respond_to? :export_feature_values
2694
+ @export_feature_values = ::Gapic::Config::Method.new export_feature_values_config
2695
+ search_features_config = parent_rpcs.search_features if parent_rpcs.respond_to? :search_features
2696
+ @search_features = ::Gapic::Config::Method.new search_features_config
2697
+
2698
+ yield self if block_given?
2699
+ end
2700
+ end
2701
+ end
2702
+ end
2703
+ end
2704
+ end
2705
+ end
2706
+ end
2707
+ end