openlayer 0.3.0 → 0.4.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.
- checksums.yaml +4 -4
- data/.ignore +2 -0
- data/CHANGELOG.md +23 -0
- data/README.md +280 -39
- data/SECURITY.md +27 -0
- data/lib/openlayer/client.rb +64 -59
- data/lib/openlayer/errors.rb +228 -0
- data/lib/openlayer/file_part.rb +58 -0
- data/lib/openlayer/internal/transport/base_client.rb +567 -0
- data/lib/openlayer/internal/transport/pooled_net_requester.rb +198 -0
- data/lib/openlayer/internal/type/array_of.rb +168 -0
- data/lib/openlayer/internal/type/base_model.rb +531 -0
- data/lib/openlayer/internal/type/base_page.rb +55 -0
- data/lib/openlayer/internal/type/boolean.rb +77 -0
- data/lib/openlayer/internal/type/converter.rb +327 -0
- data/lib/openlayer/internal/type/enum.rb +131 -0
- data/lib/openlayer/internal/type/file_input.rb +111 -0
- data/lib/openlayer/internal/type/hash_of.rb +188 -0
- data/lib/openlayer/internal/type/request_parameters.rb +42 -0
- data/lib/openlayer/internal/type/union.rb +237 -0
- data/lib/openlayer/internal/type/unknown.rb +81 -0
- data/lib/openlayer/internal/util.rb +915 -0
- data/lib/openlayer/internal.rb +20 -0
- data/lib/openlayer/models/commit_retrieve_params.rb +14 -0
- data/lib/openlayer/models/commit_retrieve_response.rb +275 -0
- data/lib/openlayer/models/commits/test_result_list_params.rb +91 -0
- data/lib/openlayer/models/commits/test_result_list_response.rb +566 -0
- data/lib/openlayer/models/inference_pipeline_delete_params.rb +14 -0
- data/lib/openlayer/models/inference_pipeline_retrieve_params.rb +33 -0
- data/lib/openlayer/models/inference_pipeline_retrieve_response.rb +605 -0
- data/lib/openlayer/models/inference_pipeline_update_params.rb +42 -0
- data/lib/openlayer/models/inference_pipeline_update_response.rb +605 -0
- data/lib/openlayer/models/inference_pipelines/data_stream_params.rb +463 -0
- data/lib/openlayer/models/inference_pipelines/data_stream_response.rb +28 -0
- data/lib/openlayer/models/inference_pipelines/row_update_params.rb +90 -0
- data/lib/openlayer/models/inference_pipelines/row_update_response.rb +28 -0
- data/lib/openlayer/models/inference_pipelines/test_result_list_params.rb +83 -0
- data/lib/openlayer/models/inference_pipelines/test_result_list_response.rb +568 -0
- data/lib/openlayer/models/project_create_params.rb +51 -0
- data/lib/openlayer/models/project_create_response.rb +262 -0
- data/lib/openlayer/models/project_list_params.rb +59 -0
- data/lib/openlayer/models/project_list_response.rb +274 -0
- data/lib/openlayer/models/projects/commit_create_params.rb +61 -0
- data/lib/openlayer/models/projects/commit_create_response.rb +277 -0
- data/lib/openlayer/models/projects/commit_list_params.rb +32 -0
- data/lib/openlayer/models/projects/commit_list_response.rb +288 -0
- data/lib/openlayer/models/projects/inference_pipeline_create_params.rb +229 -0
- data/lib/openlayer/models/projects/inference_pipeline_create_response.rb +612 -0
- data/lib/openlayer/models/projects/inference_pipeline_list_params.rb +40 -0
- data/lib/openlayer/models/projects/inference_pipeline_list_response.rb +623 -0
- data/lib/openlayer/models/projects/test_create_params.rb +367 -0
- data/lib/openlayer/models/projects/test_create_response.rb +438 -0
- data/lib/openlayer/models/projects/test_list_params.rb +91 -0
- data/lib/openlayer/models/projects/test_list_response.rb +452 -0
- data/lib/openlayer/models/projects/test_update_params.rb +262 -0
- data/lib/openlayer/models/projects/test_update_response.rb +24 -0
- data/lib/openlayer/models/storage/presigned_url_create_params.rb +24 -0
- data/lib/openlayer/models/storage/presigned_url_create_response.rb +35 -0
- data/lib/openlayer/models.rb +61 -0
- data/lib/openlayer/request_options.rb +77 -0
- data/lib/openlayer/resources/commits/test_results.rb +51 -0
- data/lib/openlayer/resources/commits.rb +38 -0
- data/lib/openlayer/resources/inference_pipelines/data.rb +46 -0
- data/lib/openlayer/resources/inference_pipelines/rows.rb +46 -0
- data/lib/openlayer/resources/inference_pipelines/test_results.rb +49 -0
- data/lib/openlayer/resources/inference_pipelines.rb +101 -0
- data/lib/openlayer/resources/projects/commits.rb +72 -0
- data/lib/openlayer/resources/projects/inference_pipelines.rb +74 -0
- data/lib/openlayer/resources/projects/tests.rb +135 -0
- data/lib/openlayer/resources/projects.rb +80 -0
- data/lib/openlayer/resources/storage/presigned_url.rb +38 -0
- data/lib/openlayer/resources/storage.rb +18 -0
- data/lib/openlayer/version.rb +1 -1
- data/lib/openlayer.rb +96 -12
- data/manifest.yaml +15 -0
- data/rbi/openlayer/client.rbi +58 -0
- data/rbi/openlayer/errors.rbi +205 -0
- data/rbi/openlayer/file_part.rbi +37 -0
- data/rbi/openlayer/internal/transport/base_client.rbi +293 -0
- data/rbi/openlayer/internal/transport/pooled_net_requester.rbi +79 -0
- data/rbi/openlayer/internal/type/array_of.rbi +104 -0
- data/rbi/openlayer/internal/type/base_model.rbi +304 -0
- data/rbi/openlayer/internal/type/base_page.rbi +42 -0
- data/rbi/openlayer/internal/type/boolean.rbi +58 -0
- data/rbi/openlayer/internal/type/converter.rbi +216 -0
- data/rbi/openlayer/internal/type/enum.rbi +82 -0
- data/rbi/openlayer/internal/type/file_input.rbi +59 -0
- data/rbi/openlayer/internal/type/hash_of.rbi +104 -0
- data/rbi/openlayer/internal/type/request_parameters.rbi +29 -0
- data/rbi/openlayer/internal/type/union.rbi +128 -0
- data/rbi/openlayer/internal/type/unknown.rbi +58 -0
- data/rbi/openlayer/internal/util.rbi +487 -0
- data/rbi/openlayer/internal.rbi +18 -0
- data/rbi/openlayer/models/commit_retrieve_params.rbi +27 -0
- data/rbi/openlayer/models/commit_retrieve_response.rbi +393 -0
- data/rbi/openlayer/models/commits/test_result_list_params.rbi +214 -0
- data/rbi/openlayer/models/commits/test_result_list_response.rbi +1256 -0
- data/rbi/openlayer/models/inference_pipeline_delete_params.rbi +30 -0
- data/rbi/openlayer/models/inference_pipeline_retrieve_params.rbi +101 -0
- data/rbi/openlayer/models/inference_pipeline_retrieve_response.rbi +1022 -0
- data/rbi/openlayer/models/inference_pipeline_update_params.rbi +67 -0
- data/rbi/openlayer/models/inference_pipeline_update_response.rbi +1018 -0
- data/rbi/openlayer/models/inference_pipelines/data_stream_params.rbi +750 -0
- data/rbi/openlayer/models/inference_pipelines/data_stream_response.rbi +73 -0
- data/rbi/openlayer/models/inference_pipelines/row_update_params.rbi +153 -0
- data/rbi/openlayer/models/inference_pipelines/row_update_response.rbi +73 -0
- data/rbi/openlayer/models/inference_pipelines/test_result_list_params.rbi +216 -0
- data/rbi/openlayer/models/inference_pipelines/test_result_list_response.rbi +1258 -0
- data/rbi/openlayer/models/project_create_params.rbi +99 -0
- data/rbi/openlayer/models/project_create_response.rbi +401 -0
- data/rbi/openlayer/models/project_list_params.rbi +121 -0
- data/rbi/openlayer/models/project_list_response.rbi +442 -0
- data/rbi/openlayer/models/projects/commit_create_params.rbi +125 -0
- data/rbi/openlayer/models/projects/commit_create_response.rbi +409 -0
- data/rbi/openlayer/models/projects/commit_list_params.rbi +62 -0
- data/rbi/openlayer/models/projects/commit_list_response.rbi +454 -0
- data/rbi/openlayer/models/projects/inference_pipeline_create_params.rbi +560 -0
- data/rbi/openlayer/models/projects/inference_pipeline_create_response.rbi +1027 -0
- data/rbi/openlayer/models/projects/inference_pipeline_list_params.rbi +73 -0
- data/rbi/openlayer/models/projects/inference_pipeline_list_response.rbi +1070 -0
- data/rbi/openlayer/models/projects/test_create_params.rbi +940 -0
- data/rbi/openlayer/models/projects/test_create_response.rbi +1026 -0
- data/rbi/openlayer/models/projects/test_list_params.rbi +165 -0
- data/rbi/openlayer/models/projects/test_list_response.rbi +1067 -0
- data/rbi/openlayer/models/projects/test_update_params.rbi +699 -0
- data/rbi/openlayer/models/projects/test_update_response.rbi +43 -0
- data/rbi/openlayer/models/storage/presigned_url_create_params.rbi +45 -0
- data/rbi/openlayer/models/storage/presigned_url_create_response.rbi +55 -0
- data/rbi/openlayer/models.rbi +26 -0
- data/rbi/openlayer/request_options.rbi +59 -0
- data/rbi/openlayer/resources/commits/test_results.rbi +45 -0
- data/rbi/openlayer/resources/commits.rbi +29 -0
- data/rbi/openlayer/resources/inference_pipelines/data.rbi +41 -0
- data/rbi/openlayer/resources/inference_pipelines/rows.rbi +40 -0
- data/rbi/openlayer/resources/inference_pipelines/test_results.rbi +46 -0
- data/rbi/openlayer/resources/inference_pipelines.rbi +79 -0
- data/rbi/openlayer/resources/projects/commits.rbi +60 -0
- data/rbi/openlayer/resources/projects/inference_pipelines.rbi +69 -0
- data/rbi/openlayer/resources/projects/tests.rbi +123 -0
- data/rbi/openlayer/resources/projects.rbi +64 -0
- data/rbi/openlayer/resources/storage/presigned_url.rbi +28 -0
- data/rbi/openlayer/resources/storage.rbi +15 -0
- data/rbi/openlayer/version.rbi +5 -0
- data/sig/openlayer/client.rbs +32 -0
- data/sig/openlayer/errors.rbs +117 -0
- data/sig/openlayer/file_part.rbs +21 -0
- data/sig/openlayer/internal/transport/base_client.rbs +131 -0
- data/sig/openlayer/internal/transport/pooled_net_requester.rbs +45 -0
- data/sig/openlayer/internal/type/array_of.rbs +48 -0
- data/sig/openlayer/internal/type/base_model.rbs +102 -0
- data/sig/openlayer/internal/type/base_page.rbs +24 -0
- data/sig/openlayer/internal/type/boolean.rbs +26 -0
- data/sig/openlayer/internal/type/converter.rbs +79 -0
- data/sig/openlayer/internal/type/enum.rbs +32 -0
- data/sig/openlayer/internal/type/file_input.rbs +25 -0
- data/sig/openlayer/internal/type/hash_of.rbs +48 -0
- data/sig/openlayer/internal/type/request_parameters.rbs +19 -0
- data/sig/openlayer/internal/type/union.rbs +52 -0
- data/sig/openlayer/internal/type/unknown.rbs +26 -0
- data/sig/openlayer/internal/util.rbs +185 -0
- data/sig/openlayer/internal.rbs +9 -0
- data/sig/openlayer/models/commit_retrieve_params.rbs +15 -0
- data/sig/openlayer/models/commit_retrieve_response.rbs +209 -0
- data/sig/openlayer/models/commits/test_result_list_params.rbs +91 -0
- data/sig/openlayer/models/commits/test_result_list_response.rbs +529 -0
- data/sig/openlayer/models/inference_pipeline_delete_params.rbs +15 -0
- data/sig/openlayer/models/inference_pipeline_retrieve_params.rbs +41 -0
- data/sig/openlayer/models/inference_pipeline_retrieve_response.rbs +493 -0
- data/sig/openlayer/models/inference_pipeline_update_params.rbs +34 -0
- data/sig/openlayer/models/inference_pipeline_update_response.rbs +493 -0
- data/sig/openlayer/models/inference_pipelines/data_stream_params.rbs +386 -0
- data/sig/openlayer/models/inference_pipelines/data_stream_response.rbs +32 -0
- data/sig/openlayer/models/inference_pipelines/row_update_params.rbs +75 -0
- data/sig/openlayer/models/inference_pipelines/row_update_response.rbs +32 -0
- data/sig/openlayer/models/inference_pipelines/test_result_list_params.rbs +84 -0
- data/sig/openlayer/models/inference_pipelines/test_result_list_response.rbs +529 -0
- data/sig/openlayer/models/project_create_params.rbs +53 -0
- data/sig/openlayer/models/project_create_response.rbs +210 -0
- data/sig/openlayer/models/project_list_params.rbs +68 -0
- data/sig/openlayer/models/project_list_response.rbs +225 -0
- data/sig/openlayer/models/projects/commit_create_params.rbs +82 -0
- data/sig/openlayer/models/projects/commit_create_response.rbs +211 -0
- data/sig/openlayer/models/projects/commit_list_params.rbs +34 -0
- data/sig/openlayer/models/projects/commit_list_response.rbs +228 -0
- data/sig/openlayer/models/projects/inference_pipeline_create_params.rbs +308 -0
- data/sig/openlayer/models/projects/inference_pipeline_create_response.rbs +495 -0
- data/sig/openlayer/models/projects/inference_pipeline_list_params.rbs +40 -0
- data/sig/openlayer/models/projects/inference_pipeline_list_response.rbs +512 -0
- data/sig/openlayer/models/projects/test_create_params.rbs +388 -0
- data/sig/openlayer/models/projects/test_create_response.rbs +427 -0
- data/sig/openlayer/models/projects/test_list_params.rbs +85 -0
- data/sig/openlayer/models/projects/test_list_response.rbs +442 -0
- data/sig/openlayer/models/projects/test_update_params.rbs +275 -0
- data/sig/openlayer/models/projects/test_update_response.rbs +25 -0
- data/sig/openlayer/models/storage/presigned_url_create_params.rbs +25 -0
- data/sig/openlayer/models/storage/presigned_url_create_response.rbs +22 -0
- data/sig/openlayer/models.rbs +21 -0
- data/sig/openlayer/request_options.rbs +34 -0
- data/sig/openlayer/resources/commits/test_results.rbs +19 -0
- data/sig/openlayer/resources/commits.rbs +14 -0
- data/sig/openlayer/resources/inference_pipelines/data.rbs +16 -0
- data/sig/openlayer/resources/inference_pipelines/rows.rbs +17 -0
- data/sig/openlayer/resources/inference_pipelines/test_results.rbs +18 -0
- data/sig/openlayer/resources/inference_pipelines.rbs +32 -0
- data/sig/openlayer/resources/projects/commits.rbs +25 -0
- data/sig/openlayer/resources/projects/inference_pipelines.rbs +26 -0
- data/sig/openlayer/resources/projects/tests.rbs +45 -0
- data/sig/openlayer/resources/projects.rbs +28 -0
- data/sig/openlayer/resources/storage/presigned_url.rbs +14 -0
- data/sig/openlayer/resources/storage.rbs +9 -0
- data/sig/openlayer/version.rbs +3 -0
- metadata +223 -91
- data/.env +0 -0
- data/.rspec +0 -3
- data/.rubocop.yml +0 -13
- data/LICENSE +0 -21
- data/Rakefile +0 -12
- data/examples/staging/.DS_Store +0 -0
- data/examples/staging/commit.yaml +0 -2
- data/examples/staging/model/model_config.yaml +0 -12
- data/examples/staging/validation/dataset_config.yaml +0 -12
- data/lib/openlayer/error.rb +0 -5
- data/lib/openlayer/inference_pipeline.rb +0 -36
- data/lib/openlayer/object.rb +0 -28
- data/lib/openlayer/objects/project.rb +0 -185
- data/lib/openlayer/objects/project_version.rb +0 -89
- data/lib/openlayer/services/s3_presigned_client.rb +0 -47
- data/lib/openlayer/services/tar_file_helper.rb +0 -55
- data/openlayer.gemspec +0 -45
- data/sig/openlayer.rbs +0 -4
@@ -0,0 +1,49 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module Openlayer
|
4
|
+
module Resources
|
5
|
+
class InferencePipelines
|
6
|
+
class TestResults
|
7
|
+
# Some parameter documentations has been truncated, see
|
8
|
+
# {Openlayer::Models::InferencePipelines::TestResultListParams} for more details.
|
9
|
+
#
|
10
|
+
# List the latest test results for an inference pipeline.
|
11
|
+
#
|
12
|
+
# @overload list(inference_pipeline_id, page: nil, per_page: nil, status: nil, type: nil, request_options: {})
|
13
|
+
#
|
14
|
+
# @param inference_pipeline_id [String] The inference pipeline id (a UUID).
|
15
|
+
#
|
16
|
+
# @param page [Integer] The page to return in a paginated query.
|
17
|
+
#
|
18
|
+
# @param per_page [Integer] Maximum number of items to return per page.
|
19
|
+
#
|
20
|
+
# @param status [Symbol, Openlayer::Models::InferencePipelines::TestResultListParams::Status] Filter list of test results by status. Available statuses are `running`, `passin
|
21
|
+
#
|
22
|
+
# @param type [Symbol, Openlayer::Models::InferencePipelines::TestResultListParams::Type] Filter objects by test type. Available types are `integrity`, `consistency`, `pe
|
23
|
+
#
|
24
|
+
# @param request_options [Openlayer::RequestOptions, Hash{Symbol=>Object}, nil]
|
25
|
+
#
|
26
|
+
# @return [Openlayer::Models::InferencePipelines::TestResultListResponse]
|
27
|
+
#
|
28
|
+
# @see Openlayer::Models::InferencePipelines::TestResultListParams
|
29
|
+
def list(inference_pipeline_id, params = {})
|
30
|
+
parsed, options = Openlayer::InferencePipelines::TestResultListParams.dump_request(params)
|
31
|
+
@client.request(
|
32
|
+
method: :get,
|
33
|
+
path: ["inference-pipelines/%1$s/results", inference_pipeline_id],
|
34
|
+
query: parsed.transform_keys(per_page: "perPage"),
|
35
|
+
model: Openlayer::Models::InferencePipelines::TestResultListResponse,
|
36
|
+
options: options
|
37
|
+
)
|
38
|
+
end
|
39
|
+
|
40
|
+
# @api private
|
41
|
+
#
|
42
|
+
# @param client [Openlayer::Client]
|
43
|
+
def initialize(client:)
|
44
|
+
@client = client
|
45
|
+
end
|
46
|
+
end
|
47
|
+
end
|
48
|
+
end
|
49
|
+
end
|
@@ -0,0 +1,101 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module Openlayer
|
4
|
+
module Resources
|
5
|
+
class InferencePipelines
|
6
|
+
# @return [Openlayer::Resources::InferencePipelines::Data]
|
7
|
+
attr_reader :data
|
8
|
+
|
9
|
+
# @return [Openlayer::Resources::InferencePipelines::Rows]
|
10
|
+
attr_reader :rows
|
11
|
+
|
12
|
+
# @return [Openlayer::Resources::InferencePipelines::TestResults]
|
13
|
+
attr_reader :test_results
|
14
|
+
|
15
|
+
# Retrieve inference pipeline.
|
16
|
+
#
|
17
|
+
# @overload retrieve(inference_pipeline_id, expand: nil, request_options: {})
|
18
|
+
#
|
19
|
+
# @param inference_pipeline_id [String] The inference pipeline id (a UUID).
|
20
|
+
#
|
21
|
+
# @param expand [Array<Symbol, Openlayer::Models::InferencePipelineRetrieveParams::Expand>] Expand specific nested objects.
|
22
|
+
#
|
23
|
+
# @param request_options [Openlayer::RequestOptions, Hash{Symbol=>Object}, nil]
|
24
|
+
#
|
25
|
+
# @return [Openlayer::Models::InferencePipelineRetrieveResponse]
|
26
|
+
#
|
27
|
+
# @see Openlayer::Models::InferencePipelineRetrieveParams
|
28
|
+
def retrieve(inference_pipeline_id, params = {})
|
29
|
+
parsed, options = Openlayer::InferencePipelineRetrieveParams.dump_request(params)
|
30
|
+
@client.request(
|
31
|
+
method: :get,
|
32
|
+
path: ["inference-pipelines/%1$s", inference_pipeline_id],
|
33
|
+
query: parsed,
|
34
|
+
model: Openlayer::Models::InferencePipelineRetrieveResponse,
|
35
|
+
options: options
|
36
|
+
)
|
37
|
+
end
|
38
|
+
|
39
|
+
# Some parameter documentations has been truncated, see
|
40
|
+
# {Openlayer::Models::InferencePipelineUpdateParams} for more details.
|
41
|
+
#
|
42
|
+
# Update inference pipeline.
|
43
|
+
#
|
44
|
+
# @overload update(inference_pipeline_id, description: nil, name: nil, reference_dataset_uri: nil, request_options: {})
|
45
|
+
#
|
46
|
+
# @param inference_pipeline_id [String] The inference pipeline id (a UUID).
|
47
|
+
#
|
48
|
+
# @param description [String, nil] The inference pipeline description.
|
49
|
+
#
|
50
|
+
# @param name [String] The inference pipeline name.
|
51
|
+
#
|
52
|
+
# @param reference_dataset_uri [String, nil] The storage uri of your reference dataset. We recommend using the Python SDK or
|
53
|
+
#
|
54
|
+
# @param request_options [Openlayer::RequestOptions, Hash{Symbol=>Object}, nil]
|
55
|
+
#
|
56
|
+
# @return [Openlayer::Models::InferencePipelineUpdateResponse]
|
57
|
+
#
|
58
|
+
# @see Openlayer::Models::InferencePipelineUpdateParams
|
59
|
+
def update(inference_pipeline_id, params = {})
|
60
|
+
parsed, options = Openlayer::InferencePipelineUpdateParams.dump_request(params)
|
61
|
+
@client.request(
|
62
|
+
method: :put,
|
63
|
+
path: ["inference-pipelines/%1$s", inference_pipeline_id],
|
64
|
+
body: parsed,
|
65
|
+
model: Openlayer::Models::InferencePipelineUpdateResponse,
|
66
|
+
options: options
|
67
|
+
)
|
68
|
+
end
|
69
|
+
|
70
|
+
# Delete inference pipeline.
|
71
|
+
#
|
72
|
+
# @overload delete(inference_pipeline_id, request_options: {})
|
73
|
+
#
|
74
|
+
# @param inference_pipeline_id [String] The inference pipeline id (a UUID).
|
75
|
+
#
|
76
|
+
# @param request_options [Openlayer::RequestOptions, Hash{Symbol=>Object}, nil]
|
77
|
+
#
|
78
|
+
# @return [nil]
|
79
|
+
#
|
80
|
+
# @see Openlayer::Models::InferencePipelineDeleteParams
|
81
|
+
def delete(inference_pipeline_id, params = {})
|
82
|
+
@client.request(
|
83
|
+
method: :delete,
|
84
|
+
path: ["inference-pipelines/%1$s", inference_pipeline_id],
|
85
|
+
model: NilClass,
|
86
|
+
options: params[:request_options]
|
87
|
+
)
|
88
|
+
end
|
89
|
+
|
90
|
+
# @api private
|
91
|
+
#
|
92
|
+
# @param client [Openlayer::Client]
|
93
|
+
def initialize(client:)
|
94
|
+
@client = client
|
95
|
+
@data = Openlayer::Resources::InferencePipelines::Data.new(client: client)
|
96
|
+
@rows = Openlayer::Resources::InferencePipelines::Rows.new(client: client)
|
97
|
+
@test_results = Openlayer::Resources::InferencePipelines::TestResults.new(client: client)
|
98
|
+
end
|
99
|
+
end
|
100
|
+
end
|
101
|
+
end
|
@@ -0,0 +1,72 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module Openlayer
|
4
|
+
module Resources
|
5
|
+
class Projects
|
6
|
+
class Commits
|
7
|
+
# Create a new commit (project version) in a project.
|
8
|
+
#
|
9
|
+
# @overload create(project_id, commit:, storage_uri:, archived: nil, deployment_status: nil, request_options: {})
|
10
|
+
#
|
11
|
+
# @param project_id [String] The project id.
|
12
|
+
#
|
13
|
+
# @param commit [Openlayer::Models::Projects::CommitCreateParams::Commit] The details of a commit (project version).
|
14
|
+
#
|
15
|
+
# @param storage_uri [String] The storage URI where the commit bundle is stored.
|
16
|
+
#
|
17
|
+
# @param archived [Boolean, nil] Whether the commit is archived.
|
18
|
+
#
|
19
|
+
# @param deployment_status [String] The deployment status associated with the commit's model.
|
20
|
+
#
|
21
|
+
# @param request_options [Openlayer::RequestOptions, Hash{Symbol=>Object}, nil]
|
22
|
+
#
|
23
|
+
# @return [Openlayer::Models::Projects::CommitCreateResponse]
|
24
|
+
#
|
25
|
+
# @see Openlayer::Models::Projects::CommitCreateParams
|
26
|
+
def create(project_id, params)
|
27
|
+
parsed, options = Openlayer::Projects::CommitCreateParams.dump_request(params)
|
28
|
+
@client.request(
|
29
|
+
method: :post,
|
30
|
+
path: ["projects/%1$s/versions", project_id],
|
31
|
+
body: parsed,
|
32
|
+
model: Openlayer::Models::Projects::CommitCreateResponse,
|
33
|
+
options: options
|
34
|
+
)
|
35
|
+
end
|
36
|
+
|
37
|
+
# List the commits (project versions) in a project.
|
38
|
+
#
|
39
|
+
# @overload list(project_id, page: nil, per_page: nil, request_options: {})
|
40
|
+
#
|
41
|
+
# @param project_id [String] The project id.
|
42
|
+
#
|
43
|
+
# @param page [Integer] The page to return in a paginated query.
|
44
|
+
#
|
45
|
+
# @param per_page [Integer] Maximum number of items to return per page.
|
46
|
+
#
|
47
|
+
# @param request_options [Openlayer::RequestOptions, Hash{Symbol=>Object}, nil]
|
48
|
+
#
|
49
|
+
# @return [Openlayer::Models::Projects::CommitListResponse]
|
50
|
+
#
|
51
|
+
# @see Openlayer::Models::Projects::CommitListParams
|
52
|
+
def list(project_id, params = {})
|
53
|
+
parsed, options = Openlayer::Projects::CommitListParams.dump_request(params)
|
54
|
+
@client.request(
|
55
|
+
method: :get,
|
56
|
+
path: ["projects/%1$s/versions", project_id],
|
57
|
+
query: parsed.transform_keys(per_page: "perPage"),
|
58
|
+
model: Openlayer::Models::Projects::CommitListResponse,
|
59
|
+
options: options
|
60
|
+
)
|
61
|
+
end
|
62
|
+
|
63
|
+
# @api private
|
64
|
+
#
|
65
|
+
# @param client [Openlayer::Client]
|
66
|
+
def initialize(client:)
|
67
|
+
@client = client
|
68
|
+
end
|
69
|
+
end
|
70
|
+
end
|
71
|
+
end
|
72
|
+
end
|
@@ -0,0 +1,74 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module Openlayer
|
4
|
+
module Resources
|
5
|
+
class Projects
|
6
|
+
class InferencePipelines
|
7
|
+
# Create an inference pipeline in a project.
|
8
|
+
#
|
9
|
+
# @overload create(project_id, description:, name:, project: nil, workspace: nil, request_options: {})
|
10
|
+
#
|
11
|
+
# @param project_id [String] The project id.
|
12
|
+
#
|
13
|
+
# @param description [String, nil] The inference pipeline description.
|
14
|
+
#
|
15
|
+
# @param name [String] The inference pipeline name.
|
16
|
+
#
|
17
|
+
# @param project [Openlayer::Models::Projects::InferencePipelineCreateParams::Project, nil]
|
18
|
+
#
|
19
|
+
# @param workspace [Openlayer::Models::Projects::InferencePipelineCreateParams::Workspace, nil]
|
20
|
+
#
|
21
|
+
# @param request_options [Openlayer::RequestOptions, Hash{Symbol=>Object}, nil]
|
22
|
+
#
|
23
|
+
# @return [Openlayer::Models::Projects::InferencePipelineCreateResponse]
|
24
|
+
#
|
25
|
+
# @see Openlayer::Models::Projects::InferencePipelineCreateParams
|
26
|
+
def create(project_id, params)
|
27
|
+
parsed, options = Openlayer::Projects::InferencePipelineCreateParams.dump_request(params)
|
28
|
+
@client.request(
|
29
|
+
method: :post,
|
30
|
+
path: ["projects/%1$s/inference-pipelines", project_id],
|
31
|
+
body: parsed,
|
32
|
+
model: Openlayer::Models::Projects::InferencePipelineCreateResponse,
|
33
|
+
options: options
|
34
|
+
)
|
35
|
+
end
|
36
|
+
|
37
|
+
# List the inference pipelines in a project.
|
38
|
+
#
|
39
|
+
# @overload list(project_id, name: nil, page: nil, per_page: nil, request_options: {})
|
40
|
+
#
|
41
|
+
# @param project_id [String] The project id.
|
42
|
+
#
|
43
|
+
# @param name [String] Filter list of items by name.
|
44
|
+
#
|
45
|
+
# @param page [Integer] The page to return in a paginated query.
|
46
|
+
#
|
47
|
+
# @param per_page [Integer] Maximum number of items to return per page.
|
48
|
+
#
|
49
|
+
# @param request_options [Openlayer::RequestOptions, Hash{Symbol=>Object}, nil]
|
50
|
+
#
|
51
|
+
# @return [Openlayer::Models::Projects::InferencePipelineListResponse]
|
52
|
+
#
|
53
|
+
# @see Openlayer::Models::Projects::InferencePipelineListParams
|
54
|
+
def list(project_id, params = {})
|
55
|
+
parsed, options = Openlayer::Projects::InferencePipelineListParams.dump_request(params)
|
56
|
+
@client.request(
|
57
|
+
method: :get,
|
58
|
+
path: ["projects/%1$s/inference-pipelines", project_id],
|
59
|
+
query: parsed.transform_keys(per_page: "perPage"),
|
60
|
+
model: Openlayer::Models::Projects::InferencePipelineListResponse,
|
61
|
+
options: options
|
62
|
+
)
|
63
|
+
end
|
64
|
+
|
65
|
+
# @api private
|
66
|
+
#
|
67
|
+
# @param client [Openlayer::Client]
|
68
|
+
def initialize(client:)
|
69
|
+
@client = client
|
70
|
+
end
|
71
|
+
end
|
72
|
+
end
|
73
|
+
end
|
74
|
+
end
|
@@ -0,0 +1,135 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module Openlayer
|
4
|
+
module Resources
|
5
|
+
class Projects
|
6
|
+
class Tests
|
7
|
+
# Some parameter documentations has been truncated, see
|
8
|
+
# {Openlayer::Models::Projects::TestCreateParams} for more details.
|
9
|
+
#
|
10
|
+
# Create a test.
|
11
|
+
#
|
12
|
+
# @overload create(project_id, description:, name:, subtype:, thresholds:, type:, archived: nil, delay_window: nil, evaluation_window: nil, uses_ml_model: nil, uses_production_data: nil, uses_reference_dataset: nil, uses_training_dataset: nil, uses_validation_dataset: nil, request_options: {})
|
13
|
+
#
|
14
|
+
# @param project_id [String] The project id.
|
15
|
+
#
|
16
|
+
# @param description [Object, nil] The test description.
|
17
|
+
#
|
18
|
+
# @param name [String] The test name.
|
19
|
+
#
|
20
|
+
# @param subtype [Symbol, Openlayer::Models::Projects::TestCreateParams::Subtype] The test subtype.
|
21
|
+
#
|
22
|
+
# @param thresholds [Array<Openlayer::Models::Projects::TestCreateParams::Threshold>]
|
23
|
+
#
|
24
|
+
# @param type [Symbol, Openlayer::Models::Projects::TestCreateParams::Type] The test type.
|
25
|
+
#
|
26
|
+
# @param archived [Boolean] Whether the test is archived.
|
27
|
+
#
|
28
|
+
# @param delay_window [Float, nil] The delay window in seconds. Only applies to tests that use production data.
|
29
|
+
#
|
30
|
+
# @param evaluation_window [Float, nil] The evaluation window in seconds. Only applies to tests that use production data
|
31
|
+
#
|
32
|
+
# @param uses_ml_model [Boolean] Whether the test uses an ML model.
|
33
|
+
#
|
34
|
+
# @param uses_production_data [Boolean] Whether the test uses production data (monitoring mode only).
|
35
|
+
#
|
36
|
+
# @param uses_reference_dataset [Boolean] Whether the test uses a reference dataset (monitoring mode only).
|
37
|
+
#
|
38
|
+
# @param uses_training_dataset [Boolean] Whether the test uses a training dataset.
|
39
|
+
#
|
40
|
+
# @param uses_validation_dataset [Boolean] Whether the test uses a validation dataset.
|
41
|
+
#
|
42
|
+
# @param request_options [Openlayer::RequestOptions, Hash{Symbol=>Object}, nil]
|
43
|
+
#
|
44
|
+
# @return [Openlayer::Models::Projects::TestCreateResponse]
|
45
|
+
#
|
46
|
+
# @see Openlayer::Models::Projects::TestCreateParams
|
47
|
+
def create(project_id, params)
|
48
|
+
parsed, options = Openlayer::Projects::TestCreateParams.dump_request(params)
|
49
|
+
@client.request(
|
50
|
+
method: :post,
|
51
|
+
path: ["projects/%1$s/tests", project_id],
|
52
|
+
body: parsed,
|
53
|
+
model: Openlayer::Models::Projects::TestCreateResponse,
|
54
|
+
options: options
|
55
|
+
)
|
56
|
+
end
|
57
|
+
|
58
|
+
# Update tests.
|
59
|
+
#
|
60
|
+
# @overload update(project_id, payloads:, request_options: {})
|
61
|
+
#
|
62
|
+
# @param project_id [String] The project id.
|
63
|
+
#
|
64
|
+
# @param payloads [Array<Openlayer::Models::Projects::TestUpdateParams::Payload>]
|
65
|
+
#
|
66
|
+
# @param request_options [Openlayer::RequestOptions, Hash{Symbol=>Object}, nil]
|
67
|
+
#
|
68
|
+
# @return [Openlayer::Models::Projects::TestUpdateResponse]
|
69
|
+
#
|
70
|
+
# @see Openlayer::Models::Projects::TestUpdateParams
|
71
|
+
def update(project_id, params)
|
72
|
+
parsed, options = Openlayer::Projects::TestUpdateParams.dump_request(params)
|
73
|
+
@client.request(
|
74
|
+
method: :put,
|
75
|
+
path: ["projects/%1$s/tests", project_id],
|
76
|
+
body: parsed,
|
77
|
+
model: Openlayer::Models::Projects::TestUpdateResponse,
|
78
|
+
options: options
|
79
|
+
)
|
80
|
+
end
|
81
|
+
|
82
|
+
# Some parameter documentations has been truncated, see
|
83
|
+
# {Openlayer::Models::Projects::TestListParams} for more details.
|
84
|
+
#
|
85
|
+
# List tests under a project.
|
86
|
+
#
|
87
|
+
# @overload list(project_id, include_archived: nil, origin_version_id: nil, page: nil, per_page: nil, suggested: nil, type: nil, uses_production_data: nil, request_options: {})
|
88
|
+
#
|
89
|
+
# @param project_id [String] The project id.
|
90
|
+
#
|
91
|
+
# @param include_archived [Boolean] Filter for archived tests.
|
92
|
+
#
|
93
|
+
# @param origin_version_id [String, nil] Retrive tests created by a specific project version.
|
94
|
+
#
|
95
|
+
# @param page [Integer] The page to return in a paginated query.
|
96
|
+
#
|
97
|
+
# @param per_page [Integer] Maximum number of items to return per page.
|
98
|
+
#
|
99
|
+
# @param suggested [Boolean] Filter for suggested tests.
|
100
|
+
#
|
101
|
+
# @param type [Symbol, Openlayer::Models::Projects::TestListParams::Type] Filter objects by test type. Available types are `integrity`, `consistency`, `pe
|
102
|
+
#
|
103
|
+
# @param uses_production_data [Boolean, nil] Retrive tests with usesProductionData (monitoring).
|
104
|
+
#
|
105
|
+
# @param request_options [Openlayer::RequestOptions, Hash{Symbol=>Object}, nil]
|
106
|
+
#
|
107
|
+
# @return [Openlayer::Models::Projects::TestListResponse]
|
108
|
+
#
|
109
|
+
# @see Openlayer::Models::Projects::TestListParams
|
110
|
+
def list(project_id, params = {})
|
111
|
+
parsed, options = Openlayer::Projects::TestListParams.dump_request(params)
|
112
|
+
@client.request(
|
113
|
+
method: :get,
|
114
|
+
path: ["projects/%1$s/tests", project_id],
|
115
|
+
query: parsed.transform_keys(
|
116
|
+
include_archived: "includeArchived",
|
117
|
+
origin_version_id: "originVersionId",
|
118
|
+
per_page: "perPage",
|
119
|
+
uses_production_data: "usesProductionData"
|
120
|
+
),
|
121
|
+
model: Openlayer::Models::Projects::TestListResponse,
|
122
|
+
options: options
|
123
|
+
)
|
124
|
+
end
|
125
|
+
|
126
|
+
# @api private
|
127
|
+
#
|
128
|
+
# @param client [Openlayer::Client]
|
129
|
+
def initialize(client:)
|
130
|
+
@client = client
|
131
|
+
end
|
132
|
+
end
|
133
|
+
end
|
134
|
+
end
|
135
|
+
end
|
@@ -0,0 +1,80 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module Openlayer
|
4
|
+
module Resources
|
5
|
+
class Projects
|
6
|
+
# @return [Openlayer::Resources::Projects::Commits]
|
7
|
+
attr_reader :commits
|
8
|
+
|
9
|
+
# @return [Openlayer::Resources::Projects::InferencePipelines]
|
10
|
+
attr_reader :inference_pipelines
|
11
|
+
|
12
|
+
# @return [Openlayer::Resources::Projects::Tests]
|
13
|
+
attr_reader :tests
|
14
|
+
|
15
|
+
# Create a project in your workspace.
|
16
|
+
#
|
17
|
+
# @overload create(name:, task_type:, description: nil, request_options: {})
|
18
|
+
#
|
19
|
+
# @param name [String] The project name.
|
20
|
+
#
|
21
|
+
# @param task_type [Symbol, Openlayer::Models::ProjectCreateParams::TaskType] The task type of the project.
|
22
|
+
#
|
23
|
+
# @param description [String, nil] The project description.
|
24
|
+
#
|
25
|
+
# @param request_options [Openlayer::RequestOptions, Hash{Symbol=>Object}, nil]
|
26
|
+
#
|
27
|
+
# @return [Openlayer::Models::ProjectCreateResponse]
|
28
|
+
#
|
29
|
+
# @see Openlayer::Models::ProjectCreateParams
|
30
|
+
def create(params)
|
31
|
+
parsed, options = Openlayer::ProjectCreateParams.dump_request(params)
|
32
|
+
@client.request(
|
33
|
+
method: :post,
|
34
|
+
path: "projects",
|
35
|
+
body: parsed,
|
36
|
+
model: Openlayer::Models::ProjectCreateResponse,
|
37
|
+
options: options
|
38
|
+
)
|
39
|
+
end
|
40
|
+
|
41
|
+
# List your workspace's projects.
|
42
|
+
#
|
43
|
+
# @overload list(name: nil, page: nil, per_page: nil, task_type: nil, request_options: {})
|
44
|
+
#
|
45
|
+
# @param name [String] Filter list of items by project name.
|
46
|
+
#
|
47
|
+
# @param page [Integer] The page to return in a paginated query.
|
48
|
+
#
|
49
|
+
# @param per_page [Integer] Maximum number of items to return per page.
|
50
|
+
#
|
51
|
+
# @param task_type [Symbol, Openlayer::Models::ProjectListParams::TaskType] Filter list of items by task type.
|
52
|
+
#
|
53
|
+
# @param request_options [Openlayer::RequestOptions, Hash{Symbol=>Object}, nil]
|
54
|
+
#
|
55
|
+
# @return [Openlayer::Models::ProjectListResponse]
|
56
|
+
#
|
57
|
+
# @see Openlayer::Models::ProjectListParams
|
58
|
+
def list(params = {})
|
59
|
+
parsed, options = Openlayer::ProjectListParams.dump_request(params)
|
60
|
+
@client.request(
|
61
|
+
method: :get,
|
62
|
+
path: "projects",
|
63
|
+
query: parsed.transform_keys(per_page: "perPage", task_type: "taskType"),
|
64
|
+
model: Openlayer::Models::ProjectListResponse,
|
65
|
+
options: options
|
66
|
+
)
|
67
|
+
end
|
68
|
+
|
69
|
+
# @api private
|
70
|
+
#
|
71
|
+
# @param client [Openlayer::Client]
|
72
|
+
def initialize(client:)
|
73
|
+
@client = client
|
74
|
+
@commits = Openlayer::Resources::Projects::Commits.new(client: client)
|
75
|
+
@inference_pipelines = Openlayer::Resources::Projects::InferencePipelines.new(client: client)
|
76
|
+
@tests = Openlayer::Resources::Projects::Tests.new(client: client)
|
77
|
+
end
|
78
|
+
end
|
79
|
+
end
|
80
|
+
end
|
@@ -0,0 +1,38 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module Openlayer
|
4
|
+
module Resources
|
5
|
+
class Storage
|
6
|
+
class PresignedURL
|
7
|
+
# Retrieve a presigned url to post storage artifacts.
|
8
|
+
#
|
9
|
+
# @overload create(object_name:, request_options: {})
|
10
|
+
#
|
11
|
+
# @param object_name [String] The name of the object.
|
12
|
+
#
|
13
|
+
# @param request_options [Openlayer::RequestOptions, Hash{Symbol=>Object}, nil]
|
14
|
+
#
|
15
|
+
# @return [Openlayer::Models::Storage::PresignedURLCreateResponse]
|
16
|
+
#
|
17
|
+
# @see Openlayer::Models::Storage::PresignedURLCreateParams
|
18
|
+
def create(params)
|
19
|
+
parsed, options = Openlayer::Storage::PresignedURLCreateParams.dump_request(params)
|
20
|
+
@client.request(
|
21
|
+
method: :post,
|
22
|
+
path: "storage/presigned-url",
|
23
|
+
query: parsed.transform_keys(object_name: "objectName"),
|
24
|
+
model: Openlayer::Models::Storage::PresignedURLCreateResponse,
|
25
|
+
options: options
|
26
|
+
)
|
27
|
+
end
|
28
|
+
|
29
|
+
# @api private
|
30
|
+
#
|
31
|
+
# @param client [Openlayer::Client]
|
32
|
+
def initialize(client:)
|
33
|
+
@client = client
|
34
|
+
end
|
35
|
+
end
|
36
|
+
end
|
37
|
+
end
|
38
|
+
end
|
@@ -0,0 +1,18 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module Openlayer
|
4
|
+
module Resources
|
5
|
+
class Storage
|
6
|
+
# @return [Openlayer::Resources::Storage::PresignedURL]
|
7
|
+
attr_reader :presigned_url
|
8
|
+
|
9
|
+
# @api private
|
10
|
+
#
|
11
|
+
# @param client [Openlayer::Client]
|
12
|
+
def initialize(client:)
|
13
|
+
@client = client
|
14
|
+
@presigned_url = Openlayer::Resources::Storage::PresignedURL.new(client: client)
|
15
|
+
end
|
16
|
+
end
|
17
|
+
end
|
18
|
+
end
|
data/lib/openlayer/version.rb
CHANGED