Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
feat(models): add method to show model usage (#381)
This inmplements a function in the Gradient Python package to access current and historic deployments of one or more models. A user can optionally filter on the basis of: - Model name; - Model project; and - Deployment cluster and can specify the max number of models (generally if no model name is specified) and number of recent deployments of each model to return in the result set. By way of example: ``` >>> import json >>> from gradient import models >>> >>> >>> deployed_models = models.get_model_usage( ... model_name='some-model', ... projectId='asdf1234', ... clusterId='4321fdsa', ... num_models=10, ... num_deployments=100, ... api_key=os.getenv('PS_API_KEY') ... ) >>> print( ... json.dumps(deployed_models, indent=4) >>> ) [ { "id": 1, "name": "sample-model", "dtCreated": "2022-01-14T15:12:48.092Z", "deploymentSpecs": { "nodes": [ { "id": "697dd23c-51d2-476e-8638-543e3c8a7cb9", "dtCreated": "2022-01-14T15:13:54.087Z", "externalApplied": "2022-01-20T00:07:45.848Z", "actor": { "fullName": null, "email": "admin@paperspace.com" }, "deployment": { "name": "test-model", "id": "c195321d-0e7d-4ba9-b747-933764bc9347" }, "cluster": { "fqdn": "local.paperspacegradient.com", "name": "dev-cluster" }, "endpointUrl": "dc195321d0e7d4ba9b747933764bc9347.local.paperspacegradient.com" }, { "id": "eb23e623-a6d3-44a8-a6bd-1820e2670d29", "dtCreated": "2022-01-19T19:29:52.829Z", "externalApplied": "2022-01-20T00:07:45.848Z", "actor": { "fullName": null, "email": "admin@paperspace.com" }, "deployment": { "name": "test-model", "id": "c195321d-0e7d-4ba9-b747-933764bc9347" }, "cluster": { "fqdn": "local.paperspacegradient.com", "name": "dev-cluster" }, "endpointUrl": "dc195321d0e7d4ba9b747933764bc9347.local.paperspacegradient.com" } ] } } ] ```
- Loading branch information
1 parent
10b4034
commit 0daa2c7
Showing
2 changed files
with
208 additions
and
25 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,30 +1,149 @@ | ||
from .clusters import ListClusters | ||
from .datasets import ListDatasets, CreateDataset, DeleteDataset, GetDataset, GetDatasetRef, UpdateDataset | ||
from .dataset_tags import ListDatasetTags, GetDatasetTag, SetDatasetTag, DeleteDatasetTag | ||
from .dataset_versions import ListDatasetVersions, CreateDatasetVersion, DeleteDatasetVersion, \ | ||
GenerateDatasetVersionPreSignedS3Urls, GetDatasetVersion, UpdateDatasetVersion | ||
from .datasets import ( | ||
ListDatasets, | ||
CreateDataset, | ||
DeleteDataset, | ||
GetDataset, | ||
GetDatasetRef, | ||
UpdateDataset | ||
) | ||
from .dataset_tags import ( | ||
ListDatasetTags, | ||
GetDatasetTag, | ||
SetDatasetTag, | ||
DeleteDatasetTag | ||
) | ||
from .dataset_versions import ( | ||
ListDatasetVersions, | ||
CreateDatasetVersion, | ||
DeleteDatasetVersion, | ||
GenerateDatasetVersionPreSignedS3Urls, | ||
GetDatasetVersion, | ||
UpdateDatasetVersion | ||
) | ||
|
||
from .deployments import ListDeployments, CreateDeployment, StartDeployment, StopDeployment, DeleteDeployment, \ | ||
UpdateDeployment, GetDeployment, GetDeploymentMetrics, ListDeploymentMetrics, StreamDeploymentMetrics, ListDeploymentLogs | ||
|
||
from .gradient_deployments import create_deployment, list_deployments, delete_deployment, get_deployment, update_deployment | ||
from .deployments import ( | ||
ListDeployments, | ||
CreateDeployment, | ||
StartDeployment, | ||
StopDeployment, | ||
DeleteDeployment, | ||
UpdateDeployment, | ||
GetDeployment, | ||
GetDeploymentMetrics, | ||
ListDeploymentMetrics, | ||
StreamDeploymentMetrics, | ||
ListDeploymentLogs | ||
) | ||
|
||
from .experiments import ListExperiments, GetExperiment, ListExperimentLogs, StartExperiment, StopExperiment, \ | ||
CreateSingleNodeExperiment, CreateMultiNodeExperiment, RunSingleNodeExperiment, RunMultiNodeExperiment, \ | ||
CreateMpiMultiNodeExperiment, RunMpiMultiNodeExperiment, DeleteExperiment, GetExperimentMetrics, ListExperimentMetrics, \ | ||
from .gradient_deployments import ( | ||
create_deployment, | ||
list_deployments, | ||
delete_deployment, | ||
get_deployment, | ||
update_deployment | ||
) | ||
from .experiments import ( | ||
ListExperiments, | ||
GetExperiment, | ||
ListExperimentLogs, | ||
StartExperiment, | ||
StopExperiment, | ||
CreateSingleNodeExperiment, | ||
CreateMultiNodeExperiment, | ||
RunSingleNodeExperiment, | ||
RunMultiNodeExperiment, | ||
CreateMpiMultiNodeExperiment, | ||
RunMpiMultiNodeExperiment, | ||
DeleteExperiment, | ||
GetExperimentMetrics, | ||
ListExperimentMetrics, | ||
StreamExperimentMetrics | ||
from .hyperparameter import CreateHyperparameterJob, CreateAndStartHyperparameterJob, ListHyperparameterJobs, \ | ||
GetHyperparameterTuningJob, StartHyperparameterTuningJob | ||
from .jobs import ListJobs, ListResources, ListJobArtifacts, ListJobLogs, GetJob, GetJobMetrics, ListJobMetrics, StreamJobMetrics | ||
) | ||
from .hyperparameter import ( | ||
CreateHyperparameterJob, | ||
CreateAndStartHyperparameterJob, | ||
ListHyperparameterJobs, | ||
GetHyperparameterTuningJob, | ||
StartHyperparameterTuningJob | ||
) | ||
from .jobs import ( | ||
ListJobs, | ||
ListResources, | ||
ListJobArtifacts, | ||
ListJobLogs, | ||
GetJob, | ||
GetJobMetrics, | ||
ListJobMetrics, | ||
StreamJobMetrics | ||
) | ||
from .machine_types import ListMachineTypes | ||
from .machines import CheckMachineAvailability, CreateMachine, CreateResource, StartMachine, StopMachine, \ | ||
RestartMachine, GetMachine, UpdateMachine, GetMachineUtilization | ||
from .models import DeleteModel, ListModels, UploadModel, GetModel, ListModelFiles, CreateModel | ||
from .notebooks import CreateNotebook, DeleteNotebook, GetNotebook, ListNotebooks, GetNotebookMetrics, ListNotebookMetrics, \ | ||
StreamNotebookMetrics, StopNotebook, StartNotebook, ForkNotebook, ListNotebookArtifacts, ListNotebookLogs | ||
from .projects import CreateProject, ListProjects, DeleteProject, GetProject | ||
from .secrets import ListSecrets, SetSecret, DeleteSecret, EphemeralSecret | ||
from .storage_providers import ListStorageProviders, CreateStorageProvider, DeleteStorageProvider, \ | ||
GetStorageProvider, UpdateStorageProvider | ||
from .tensorboards import CreateTensorboard, GetTensorboard, ListTensorboards, UpdateTensorboard, DeleteTensorboard | ||
from .workflows import ListWorkflows, GetWorkflow, ListWorkflowRuns, GetWorkflowRun, CreateWorkflow, CreateWorkflowRun, ListWorkflowLogs | ||
from .machines import ( | ||
CheckMachineAvailability, | ||
CreateMachine, | ||
CreateResource, | ||
StartMachine, | ||
StopMachine, | ||
RestartMachine, | ||
GetMachine, | ||
UpdateMachine, | ||
GetMachineUtilization | ||
) | ||
from .models import ( | ||
DeleteModel, | ||
ListModels, | ||
UploadModel, | ||
GetModel, | ||
ListModelFiles, | ||
CreateModel, | ||
get_model_usage | ||
) | ||
from .notebooks import ( | ||
CreateNotebook, | ||
DeleteNotebook, | ||
GetNotebook, | ||
ListNotebooks, | ||
GetNotebookMetrics, | ||
ListNotebookMetrics, | ||
StreamNotebookMetrics, | ||
StopNotebook, | ||
StartNotebook, | ||
ForkNotebook, | ||
ListNotebookArtifacts, | ||
ListNotebookLogs | ||
) | ||
from .projects import ( | ||
CreateProject, | ||
ListProjects, | ||
DeleteProject, | ||
GetProject | ||
) | ||
from .secrets import ( | ||
ListSecrets, | ||
SetSecret, | ||
DeleteSecret, | ||
EphemeralSecret | ||
) | ||
from .storage_providers import ( | ||
ListStorageProviders, | ||
CreateStorageProvider, | ||
DeleteStorageProvider, | ||
GetStorageProvider, | ||
UpdateStorageProvider | ||
) | ||
from .tensorboards import ( | ||
CreateTensorboard, | ||
GetTensorboard, | ||
ListTensorboards, | ||
UpdateTensorboard, | ||
DeleteTensorboard | ||
) | ||
from .workflows import ( | ||
ListWorkflows, | ||
GetWorkflow, | ||
ListWorkflowRuns, | ||
GetWorkflowRun, | ||
CreateWorkflow, | ||
CreateWorkflowRun, | ||
ListWorkflowLogs | ||
) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters