mirror of
https://github.com/honeymoose/OpenSearch.git
synced 2025-02-27 07:14:59 +00:00
The ML info endpoint returns the max_model_memory_limit setting if one is configured. However, it is still possible to create a job that cannot run anywhere in the current cluster because no node in the cluster has enough memory to accommodate it. This change adds an extra piece of information, limits.effective_max_model_memory_limit, to the ML info response that returns the biggest model memory limit that could be run in the current cluster assuming no other jobs were running. The idea is that the ML UI will be able to warn users who try to create jobs with higher model memory limits that their jobs will not be able to start unless they add a bigger ML node to their cluster. Backport of #55529
125 lines
3.1 KiB
Plaintext
125 lines
3.1 KiB
Plaintext
[role="xpack"]
|
|
[testenv="platinum"]
|
|
[[get-ml-info]]
|
|
=== Get machine learning info API
|
|
|
|
[subs="attributes"]
|
|
++++
|
|
<titleabbrev>Get {ml} info</titleabbrev>
|
|
++++
|
|
|
|
Returns defaults and limits used by machine learning.
|
|
|
|
[[get-ml-info-request]]
|
|
==== {api-request-title}
|
|
|
|
`GET _ml/info`
|
|
|
|
[[get-ml-info-prereqs]]
|
|
==== {api-prereq-title}
|
|
|
|
* If the {es} {security-features} are enabled, you must have `monitor_ml`,
|
|
`monitor`, `manage_ml`, or `manage` cluster privileges to use this API. The
|
|
`machine_learning_admin` and `machine_learning_user` roles provide these
|
|
privileges. See <<security-privileges>> and
|
|
<<built-in-roles>>.
|
|
|
|
[[get-ml-info-desc]]
|
|
==== {api-description-title}
|
|
|
|
This endpoint is designed to be used by a user interface that needs to fully
|
|
understand machine learning configurations where some options are not specified,
|
|
meaning that the defaults should be used. This endpoint may be used to find out
|
|
what those defaults are.
|
|
|
|
[[get-ml-info-example]]
|
|
==== {api-examples-title}
|
|
|
|
The endpoint takes no arguments:
|
|
|
|
[source,console]
|
|
--------------------------------------------------
|
|
GET _ml/info
|
|
--------------------------------------------------
|
|
// TEST
|
|
|
|
This is a possible response:
|
|
|
|
[source,console-result]
|
|
----
|
|
{
|
|
"defaults" : {
|
|
"anomaly_detectors" : {
|
|
"categorization_analyzer" : {
|
|
"tokenizer" : "ml_classic",
|
|
"filter" : [
|
|
{
|
|
"type" : "stop",
|
|
"stopwords" : [
|
|
"Monday",
|
|
"Tuesday",
|
|
"Wednesday",
|
|
"Thursday",
|
|
"Friday",
|
|
"Saturday",
|
|
"Sunday",
|
|
"Mon",
|
|
"Tue",
|
|
"Wed",
|
|
"Thu",
|
|
"Fri",
|
|
"Sat",
|
|
"Sun",
|
|
"January",
|
|
"February",
|
|
"March",
|
|
"April",
|
|
"May",
|
|
"June",
|
|
"July",
|
|
"August",
|
|
"September",
|
|
"October",
|
|
"November",
|
|
"December",
|
|
"Jan",
|
|
"Feb",
|
|
"Mar",
|
|
"Apr",
|
|
"May",
|
|
"Jun",
|
|
"Jul",
|
|
"Aug",
|
|
"Sep",
|
|
"Oct",
|
|
"Nov",
|
|
"Dec",
|
|
"GMT",
|
|
"UTC"
|
|
]
|
|
}
|
|
]
|
|
},
|
|
"model_memory_limit" : "1gb",
|
|
"categorization_examples_limit" : 4,
|
|
"model_snapshot_retention_days" : 1
|
|
},
|
|
"datafeeds" : {
|
|
"scroll_size" : 1000
|
|
}
|
|
},
|
|
"upgrade_mode": false,
|
|
"native_code" : {
|
|
"version": "7.0.0",
|
|
"build_hash": "99a07c016d5a73"
|
|
},
|
|
"limits" : {
|
|
"effective_max_model_memory_limit": "28961mb"
|
|
}
|
|
}
|
|
----
|
|
// TESTRESPONSE[s/"upgrade_mode": false/"upgrade_mode": $body.upgrade_mode/]
|
|
// TESTRESPONSE[s/"version": "7.0.0",/"version": "$body.native_code.version",/]
|
|
// TESTRESPONSE[s/"build_hash": "99a07c016d5a73"/"build_hash": "$body.native_code.build_hash"/]
|
|
// TESTRESPONSE[s/"effective_max_model_memory_limit": "28961mb"/"effective_max_model_memory_limit": "$body.limits.effective_max_model_memory_limit"/]
|