Model naming implemented and enforced
Summary
As a Mantik user, I want to be able to name my registered models so I can manage and refer to them.
Acceptance Criteria
-
Mantik API allows for naming registered models, model name is mandatory
When I want to set or update the name for a Mantik model
Then I can find a Mantik API endpoint that allows me to do so.
-
Model name is unique within project
When I name a trained model (mantik model)
Then the name of the model is enforced to be unique within the project.
Testing
When I create a model, and include a name as part of its properties
And the name I chose is not a duplicate of the name of another model in the same project
Then the name of the model is returned along with other properties when I return the model
When I create a model, and include a name as part of its properties
And the name I chose is a duplicate of the name of another model in the same project
Then I get a message that I am not able to name a model exactly the same as another in the project
Given That I have a trained model Without a name
When I add a name for that model after its creation
And the name I chose is not a duplicate of the name of another model in the same project
Then the name of the model is returned along with other properties when I return the model
Given That I have a trained model Without a name
When I add a name for that model after its creation
And the name I chose is a duplicate of the name of another model in the same project
Then I get a message that I am not able to name a model exactly the same as another in the project
Given That I have a trained model with a name
When I update name for that model after its creation
And the name I chose is not a duplicate of the name of another model in the same project
Then the name of the model is returned along with other properties when I return the model
Given That I have a trained model with a name
When I update name for that model after its creation
And the name I chose is a duplicate of the name of another model in the same project
Then I get a message that I am not able to name a model exactly the same as another in the project
Additional Notes / Information
Technical Information
-
default model name is inferred from ID
Suggested Implementation
-
Extend the properties of a model to also now include an optional Model name. The model name must be unique name within the project. -
Extend the GET /projects/{projectId}/models/trained
schema to also return the model name, if applicable. -
Implement a check for the uniqness of the model name within the scope of a project that gets called and enforced whenever the following POST and PUT endpoints are called -
Extend the POST /projects/{projectId}/models/trained
schema to include an optional input for a name for the model -
Implement a PUT /projects/{projectId}/models/trained
endpoint to update the model name -
-
Edited by Jakub Jagielski