Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[ML] Add special handling for built-in lang-ident model #85179

Closed
sophiec20 opened this issue Dec 7, 2020 · 0 comments · Fixed by #92154
Closed

[ML] Add special handling for built-in lang-ident model #85179

sophiec20 opened this issue Dec 7, 2020 · 0 comments · Fixed by #92154
Assignees
Labels
bug Fixes for quality problems that affect the customer experience Feature:Data Frame Analytics ML data frame analytics features :ml usability v7.12.0

Comments

@sophiec20
Copy link
Contributor

Found in 7.11.0-SNAPSHOT

Usability issues identified:

  1. The lang ident model is suspiciously visible without explanation
  2. If a user tries to delete the lang-indent model, the error is non-informative
  3. The user is given the option to delete the lang-ident model even though this will never be possible because it is built-in and the API does not allow it
  4. The model description is not visible in the row expansion so there is no explanation as to what it is

Details

When viewing DFA models, the lang_ident_model_1 built-in model is visible. This does not have a "type". It is both classification and a special system/built-in model.
image
The GET model JSON doc does not conform to a standard DFA classification model so this would be why it is currently type-less.
Suggest
a) seeing if we can update the lang-ident JSON so it looks like classification.
b) if we are allowed two types, then add classification and built-in

The UI allows me to try to delete it - which fails with a non-informative error:
image

The expansion is also non-informative:

Error: status_exception
    at _callee9$ (http://showcase.ml-qa.com:5601/36855/bundles/plugin/ml/ml.chunk.8.js:10:118103)
    at l (http://showcase.ml-qa.com:5601/36855/bundles/kbn-ui-shared-deps/kbn-ui-shared-deps.js:321:1751406)
    at Generator._invoke (http://showcase.ml-qa.com:5601/36855/bundles/kbn-ui-shared-deps/kbn-ui-shared-deps.js:321:1751159)
    at Generator.forEach.e.<computed> [as throw] (http://showcase.ml-qa.com:5601/36855/bundles/kbn-ui-shared-deps/kbn-ui-shared-deps.js:321:1751763)
    at models_list_asyncGeneratorStep (http://showcase.ml-qa.com:5601/36855/bundles/plugin/ml/ml.chunk.8.js:10:107623)
    at _throw (http://showcase.ml-qa.com:5601/36855/bundles/plugin/ml/ml.chunk.8.js:10:108043)

If I try to delete using the API, the error message is marginally better.

{
  "error" : {
    "root_cause" : [
      {
        "type" : "status_exception",
        "reason" : "Unable to delete model [lang_ident_model_1]"
      }
    ],
    "type" : "status_exception",
    "reason" : "Unable to delete model [lang_ident_model_1]"
  },
  "status" : 400
}

Suggest
a) Make the API error more informative
b) Generally, avoid suppressing the elasticsearch API errors

  1. it's probably wise to prevent the user from being able to delete this model - can we hide the button
    (Only do this if we can give it a built-in type, otherwise we'll understandably get questions about "why can't I delete it?".)

  2. We can give pre-trained models a description. We have not exposed the ability to update the model description and models created by DFA do not have one. However if you train a model externally then you can add a description and we may allow the user to update the description at some point.
    The row expansion should display the model description if there is one.

@sophiec20 sophiec20 added bug Fixes for quality problems that affect the customer experience :ml usability Feature:Data Frame Analytics ML data frame analytics features labels Dec 7, 2020
benwtrent added a commit to elastic/elasticsearch that referenced this issue Dec 8, 2020
This adds a default `inference_config` object to the stored lang ident model.

This doesn't change behavior as there are no default settings set in the config.

Additionally, when serializing over the wire in older versions, we handle bwc.

This commit also slightly changes the error message when a model stored as a resource is attempted to be deleted.

relates: elastic/kibana#85179
benwtrent added a commit to benwtrent/elasticsearch that referenced this issue Dec 8, 2020
This adds a default `inference_config` object to the stored lang ident model.

This doesn't change behavior as there are no default settings set in the config.

Additionally, when serializing over the wire in older versions, we handle bwc.

This commit also slightly changes the error message when a model stored as a resource is attempted to be deleted.

relates: elastic/kibana#85179
benwtrent added a commit to elastic/elasticsearch that referenced this issue Dec 9, 2020
This adds a default `inference_config` object to the stored lang ident model.

This doesn't change behavior as there are no default settings set in the config.

Additionally, when serializing over the wire in older versions, we handle bwc.

This commit also slightly changes the error message when a model stored as a resource is attempted to be deleted.

relates: elastic/kibana#85179
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Fixes for quality problems that affect the customer experience Feature:Data Frame Analytics ML data frame analytics features :ml usability v7.12.0
Projects
None yet
Development

Successfully merging a pull request may close this issue.

3 participants