From c0841b43254d9dccd7124dd823e8abcfed8009ce Mon Sep 17 00:00:00 2001 From: Xtansia <1222964+Xtansia@users.noreply.github.com> Date: Mon, 30 Sep 2024 00:27:43 +0000 Subject: [PATCH] Re-generate client code using latest OpenSearch API specification (2024-09-30) Signed-off-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> --- src/ApiGenerator/opensearch-openapi.yaml | 291 +++++++++++++++++- .../RequestParameters/RequestParameters.Ml.cs | 32 ++ .../_Generated/OpenSearchLowLevelClient.Ml.cs | 132 ++++++++ 3 files changed, 444 insertions(+), 11 deletions(-) diff --git a/src/ApiGenerator/opensearch-openapi.yaml b/src/ApiGenerator/opensearch-openapi.yaml index 82f4ef33a7..7b2772288e 100644 --- a/src/ApiGenerator/opensearch-openapi.yaml +++ b/src/ApiGenerator/opensearch-openapi.yaml @@ -4361,6 +4361,68 @@ paths: responses: '200': $ref: '#/components/responses/knn.warmup@200' + /_plugins/_ml/agents/_register: + post: + operationId: ml.register_agents.0 + x-operation-group: ml.register_agents + description: Register an agent. + requestBody: + $ref: '#/components/requestBodies/ml.register_agents' + responses: + '200': + $ref: '#/components/responses/ml.register_agents@200' + parameters: + - $ref: '#/components/parameters/_global::query.pretty' + - $ref: '#/components/parameters/_global::query.human' + - $ref: '#/components/parameters/_global::query.error_trace' + - $ref: '#/components/parameters/_global::query.source' + - $ref: '#/components/parameters/_global::query.filter_path' + /_plugins/_ml/agents/{agent_id}: + delete: + operationId: ml.delete_agent.0 + x-operation-group: ml.delete_agent + description: Delete an agent. + parameters: + - $ref: '#/components/parameters/ml.delete_agent::path.agent_id' + - $ref: '#/components/parameters/_global::query.pretty' + - $ref: '#/components/parameters/_global::query.human' + - $ref: '#/components/parameters/_global::query.error_trace' + - $ref: '#/components/parameters/_global::query.source' + - $ref: '#/components/parameters/_global::query.filter_path' + responses: + '200': + $ref: '#/components/responses/ml.delete_agent@200' + /_plugins/_ml/connectors/_create: + post: + operationId: ml.create_connector.0 + x-operation-group: ml.create_connector + description: Creates a standalone connector. + requestBody: + $ref: '#/components/requestBodies/ml.create_connector' + responses: + '200': + $ref: '#/components/responses/ml.create_connector@200' + parameters: + - $ref: '#/components/parameters/_global::query.pretty' + - $ref: '#/components/parameters/_global::query.human' + - $ref: '#/components/parameters/_global::query.error_trace' + - $ref: '#/components/parameters/_global::query.source' + - $ref: '#/components/parameters/_global::query.filter_path' + /_plugins/_ml/connectors/{connector_id}: + delete: + operationId: ml.delete_connector.0 + x-operation-group: ml.delete_connector + description: Deletes a standalone connector. + parameters: + - $ref: '#/components/parameters/ml.delete_connector::path.connector_id' + - $ref: '#/components/parameters/_global::query.pretty' + - $ref: '#/components/parameters/_global::query.human' + - $ref: '#/components/parameters/_global::query.error_trace' + - $ref: '#/components/parameters/_global::query.source' + - $ref: '#/components/parameters/_global::query.filter_path' + responses: + '200': + $ref: '#/components/responses/ml.delete_connector@200' /_plugins/_ml/model_groups/_register: post: operationId: ml.register_model_group.0 @@ -21545,6 +21607,18 @@ components: schema: $ref: '#/components/schemas/_common:Fields' style: form + ml.delete_agent::path.agent_id: + name: agent_id + in: path + required: true + schema: + type: string + ml.delete_connector::path.connector_id: + name: connector_id + in: path + required: true + schema: + type: string ml.delete_model_group::path.model_group_id: name: model_group_id in: path @@ -25554,11 +25628,16 @@ components: format: int32 description: type: string + mode: + type: string + compression_level: + type: string method: type: string + spaceType: + type: string required: - dimension - - method - training_field - training_index required: true @@ -25577,6 +25656,16 @@ components: $ref: '#/components/schemas/_common:Ids' description: Document identifiers; can be either `docs` (containing full document information) or `ids` (when index is provided in the URL. required: true + ml.create_connector: + content: + application/json: + schema: + $ref: '#/components/schemas/ml._common:CreateConnectorRequest' + ml.register_agents: + content: + application/json: + schema: + $ref: '#/components/schemas/ml._common:RegisterAgentsRequest' ml.register_model: content: application/json: @@ -27985,7 +28074,16 @@ components: knn.get_model@200: {} knn.search_models@200: {} knn.stats@200: {} - knn.train_model@200: {} + knn.train_model@200: + content: + application/json: + schema: + type: object + properties: + model_id: + type: string + required: + - model_id knn.warmup@200: {} mget@200: content: @@ -27999,6 +28097,24 @@ components: $ref: '#/components/schemas/_core.mget:ResponseItem' required: - docs + ml.create_connector@200: + content: + application/json: + schema: + type: object + properties: + connector_id: + type: string + ml.delete_agent@200: + content: + application/json: + schema: + $ref: '#/components/schemas/_common:WriteResponseBase' + ml.delete_connector@200: + content: + application/json: + schema: + $ref: '#/components/schemas/_common:WriteResponseBase' ml.delete_model_group@200: content: application/json: @@ -28039,6 +28155,14 @@ components: application/json: schema: $ref: '#/components/schemas/ml._common:Task' + ml.register_agents@200: + content: + application/json: + schema: + type: object + properties: + agent_id: + type: string ml.register_model_group@200: content: application/json: @@ -30272,6 +30396,16 @@ components: boost: description: Boost value to apply to kNN scores type: number + method_parameters: + type: object + x-version-added: '2.16' + additionalProperties: + type: number + rescore: + type: object + x-version-added: '2.17' + additionalProperties: + type: number required: - vector _common:LatLonGeoLocation: @@ -30343,12 +30477,6 @@ components: _common:Metadata: type: object additionalProperties: true - _common:Metrics: - oneOf: - - type: string - - type: array - items: - type: string _common:MinimumShouldMatch: description: The minimum number of terms that should match as integer, percentage or range. oneOf: @@ -31718,7 +31846,7 @@ components: required: - key _common.aggregations:Aggregate: - oneOf: + anyOf: - $ref: '#/components/schemas/_common.aggregations:CardinalityAggregate' - $ref: '#/components/schemas/_common.aggregations:HdrPercentilesAggregate' - $ref: '#/components/schemas/_common.aggregations:HdrPercentileRanksAggregate' @@ -34194,6 +34322,9 @@ components: allOf: - $ref: '#/components/schemas/_common.aggregations:SingleBucketAggregateBase' - type: object + properties: + doc_count: + type: number _common.aggregations:NestedAggregation: allOf: - $ref: '#/components/schemas/_common.aggregations:BucketAggregationBase' @@ -37734,6 +37865,14 @@ components: properties: dimension: type: number + space_type: + type: string + data_type: + type: string + mode: + type: string + compression_level: + type: string method: $ref: '#/components/schemas/_common.mapping:KnnVectorMethod' required: @@ -50024,6 +50163,85 @@ components: - always - missing - popular + ml._common:Action: + type: object + properties: + action_type: + type: string + method: + type: string + headers: + $ref: '#/components/schemas/ml._common:Headers' + url: + type: string + request_body: + type: string + pre_process_function: + type: string + post_process_function: + type: string + ml._common:ClientConfig: + type: object + properties: + max_connection: + type: integer + connection_timeout: + type: integer + read_timeout: + type: integer + retry_backoff_policy: + type: string + max_retry_times: + type: integer + retry_backoff_millis: + type: integer + retry_timeout_seconds: + type: integer + ml._common:CreateConnectorRequest: + type: object + properties: + name: + type: string + description: + type: string + version: + type: integer + protocol: + type: string + credential: + $ref: '#/components/schemas/ml._common:Credential' + parameters: + $ref: '#/components/schemas/ml._common:Parameters' + client_config: + $ref: '#/components/schemas/ml._common:ClientConfig' + actions: + type: array + items: + $ref: '#/components/schemas/ml._common:Action' + required: + - actions + - credential + - description + - name + - parameters + - protocol + - version + ml._common:Credential: + type: object + properties: + access_key: + type: string + secret_key: + type: string + session_token: + type: string + additionalProperties: true + ml._common:Headers: + type: object + properties: + content_type: + type: string + additionalProperties: true ml._common:HitsTotal: type: object properties: @@ -50036,6 +50254,18 @@ components: required: - relation - value + ml._common:LLM: + type: object + properties: + model_id: + type: string + parameters: + $ref: '#/components/schemas/ml._common:Parameters' + ml._common:Memory: + type: object + properties: + type: + type: string ml._common:ModelGroup: type: object properties: @@ -50074,6 +50304,33 @@ components: required: - model_group_id - status + ml._common:Parameters: + type: object + additionalProperties: true + ml._common:RegisterAgentsRequest: + type: object + properties: + name: + type: string + type: + type: string + description: + type: string + tools: + type: array + items: + $ref: '#/components/schemas/ml._common:ToolItems' + parameters: + $ref: '#/components/schemas/ml._common:Parameters' + app_type: + type: string + memory: + $ref: '#/components/schemas/ml._common:Memory' + llm: + $ref: '#/components/schemas/ml._common:LLM' + required: + - name + - type ml._common:SearchModelsHits: type: object properties: @@ -50160,6 +50417,16 @@ components: type: string required: - state + ml._common:ToolItems: + type: object + properties: + name: + type: string + type: + type: string + parameters: + $ref: '#/components/schemas/ml._common:Parameters' + additionalProperties: true ml._common:UndeployModelNode: type: object properties: @@ -54617,10 +54884,12 @@ components: properties: deleted_blobs: description: Number of binary large objects (blobs) removed during cleanup. - type: number + type: integer + format: int64 deleted_bytes: description: Number of bytes freed by cleanup operations. - type: number + type: integer + format: int64 required: - deleted_blobs - deleted_bytes diff --git a/src/OpenSearch.Net/_Generated/Api/RequestParameters/RequestParameters.Ml.cs b/src/OpenSearch.Net/_Generated/Api/RequestParameters/RequestParameters.Ml.cs index 3ab95114d4..6e07637a12 100644 --- a/src/OpenSearch.Net/_Generated/Api/RequestParameters/RequestParameters.Ml.cs +++ b/src/OpenSearch.Net/_Generated/Api/RequestParameters/RequestParameters.Ml.cs @@ -52,6 +52,30 @@ // ReSharper disable once CheckNamespace namespace OpenSearch.Net.Specification.MlApi { + /// Request options for CreateConnector + public partial class CreateConnectorRequestParameters + : RequestParameters + { + public override HttpMethod DefaultHttpMethod => HttpMethod.POST; + public override bool SupportsBody => true; + } + + /// Request options for DeleteAgent + public partial class DeleteAgentRequestParameters + : RequestParameters + { + public override HttpMethod DefaultHttpMethod => HttpMethod.DELETE; + public override bool SupportsBody => false; + } + + /// Request options for DeleteConnector + public partial class DeleteConnectorRequestParameters + : RequestParameters + { + public override HttpMethod DefaultHttpMethod => HttpMethod.DELETE; + public override bool SupportsBody => false; + } + /// Request options for DeleteModel public partial class DeleteModelRequestParameters : RequestParameters @@ -99,6 +123,14 @@ public partial class GetTaskRequestParameters : RequestParameters false; } + /// Request options for RegisterAgents + public partial class RegisterAgentsRequestParameters + : RequestParameters + { + public override HttpMethod DefaultHttpMethod => HttpMethod.POST; + public override bool SupportsBody => true; + } + /// Request options for RegisterModel public partial class RegisterModelRequestParameters : RequestParameters diff --git a/src/OpenSearch.Net/_Generated/OpenSearchLowLevelClient.Ml.cs b/src/OpenSearch.Net/_Generated/OpenSearchLowLevelClient.Ml.cs index 7889c23005..d74030472a 100644 --- a/src/OpenSearch.Net/_Generated/OpenSearchLowLevelClient.Ml.cs +++ b/src/OpenSearch.Net/_Generated/OpenSearchLowLevelClient.Ml.cs @@ -69,6 +69,105 @@ public partial class LowLevelMlNamespace : NamespacedClientProxy internal LowLevelMlNamespace(OpenSearchLowLevelClient client) : base(client) { } + /// POST on /_plugins/_ml/connectors/_create + /// + /// Request specific configuration such as querystring parameters & request specific connection settings. + public TResponse CreateConnector( + PostData body, + CreateConnectorRequestParameters requestParameters = null + ) + where TResponse : class, IOpenSearchResponse, new() => + DoRequest( + POST, + "_plugins/_ml/connectors/_create", + body, + RequestParams(requestParameters) + ); + + /// POST on /_plugins/_ml/connectors/_create + /// + /// Request specific configuration such as querystring parameters & request specific connection settings. + [MapsApi("ml.create_connector", "body")] + public Task CreateConnectorAsync( + PostData body, + CreateConnectorRequestParameters requestParameters = null, + CancellationToken ctx = default + ) + where TResponse : class, IOpenSearchResponse, new() => + DoRequestAsync( + POST, + "_plugins/_ml/connectors/_create", + ctx, + body, + RequestParams(requestParameters) + ); + + /// DELETE on /_plugins/_ml/agents/{agent_id} + /// + /// Request specific configuration such as querystring parameters & request specific connection settings. + public TResponse DeleteAgent( + string agentId, + DeleteAgentRequestParameters requestParameters = null + ) + where TResponse : class, IOpenSearchResponse, new() => + DoRequest( + DELETE, + Url($"_plugins/_ml/agents/{agentId:agentId}"), + null, + RequestParams(requestParameters) + ); + + /// DELETE on /_plugins/_ml/agents/{agent_id} + /// + /// Request specific configuration such as querystring parameters & request specific connection settings. + [MapsApi("ml.delete_agent", "agent_id")] + public Task DeleteAgentAsync( + string agentId, + DeleteAgentRequestParameters requestParameters = null, + CancellationToken ctx = default + ) + where TResponse : class, IOpenSearchResponse, new() => + DoRequestAsync( + DELETE, + Url($"_plugins/_ml/agents/{agentId:agentId}"), + ctx, + null, + RequestParams(requestParameters) + ); + + /// DELETE on /_plugins/_ml/connectors/{connector_id} + /// + /// Request specific configuration such as querystring parameters & request specific connection settings. + public TResponse DeleteConnector( + string connectorId, + DeleteConnectorRequestParameters requestParameters = null + ) + where TResponse : class, IOpenSearchResponse, new() => + DoRequest( + DELETE, + Url($"_plugins/_ml/connectors/{connectorId:connectorId}"), + null, + RequestParams(requestParameters) + ); + + /// DELETE on /_plugins/_ml/connectors/{connector_id} + /// + /// Request specific configuration such as querystring parameters & request specific connection settings. + [MapsApi("ml.delete_connector", "connector_id")] + public Task DeleteConnectorAsync( + string connectorId, + DeleteConnectorRequestParameters requestParameters = null, + CancellationToken ctx = default + ) + where TResponse : class, IOpenSearchResponse, new() => + DoRequestAsync( + DELETE, + Url($"_plugins/_ml/connectors/{connectorId:connectorId}"), + ctx, + null, + RequestParams(requestParameters) + ); + /// DELETE on /_plugins/_ml/models/{model_id} /// /// Request specific configuration such as querystring parameters & request specific connection settings. @@ -267,6 +366,39 @@ public Task GetTaskAsync( RequestParams(requestParameters) ); + /// POST on /_plugins/_ml/agents/_register + /// + /// Request specific configuration such as querystring parameters & request specific connection settings. + public TResponse RegisterAgents( + PostData body, + RegisterAgentsRequestParameters requestParameters = null + ) + where TResponse : class, IOpenSearchResponse, new() => + DoRequest( + POST, + "_plugins/_ml/agents/_register", + body, + RequestParams(requestParameters) + ); + + /// POST on /_plugins/_ml/agents/_register + /// + /// Request specific configuration such as querystring parameters & request specific connection settings. + [MapsApi("ml.register_agents", "body")] + public Task RegisterAgentsAsync( + PostData body, + RegisterAgentsRequestParameters requestParameters = null, + CancellationToken ctx = default + ) + where TResponse : class, IOpenSearchResponse, new() => + DoRequestAsync( + POST, + "_plugins/_ml/agents/_register", + ctx, + body, + RequestParams(requestParameters) + ); + /// POST on /_plugins/_ml/models/_register /// /// Request specific configuration such as querystring parameters & request specific connection settings.