diff --git a/openai/cli.py b/openai/cli.py index de2aca8bd6..208bc27c5f 100644 --- a/openai/cli.py +++ b/openai/cli.py @@ -183,6 +183,28 @@ def create(cls, args): sys.stdout.flush() +class Deployment: + @classmethod + def get(cls, args): + resp = openai.Deployment.retrieve(id=args.id) + print(resp) + + @classmethod + def delete(cls, args): + model = openai.Deployment.delete(args.id) + print(model) + + @classmethod + def list(cls, args): + models = openai.Deployment.list() + print(models) + + @classmethod + def create(cls, args): + models = openai.Deployment.create(model=args.model, scale_settings={"scale_type": args.scale_type}) + print(models) + + class Model: @classmethod def get(cls, args): @@ -824,6 +846,23 @@ def help(args): ) sub.set_defaults(func=Completion.create) + # Deployments + sub = subparsers.add_parser("deployments.list") + sub.set_defaults(func=Deployment.list) + + sub = subparsers.add_parser("deployments.get") + sub.add_argument("-i", "--id", required=True, help="The deployment ID") + sub.set_defaults(func=Deployment.get) + + sub = subparsers.add_parser("deployments.delete") + sub.add_argument("-i", "--id", required=True, help="The deployment ID") + sub.set_defaults(func=Deployment.delete) + + sub = subparsers.add_parser("deployments.create") + sub.add_argument("-m", "--model", required=True, help="The model ID") + sub.add_argument("-s", "--scale_type", required=True, help="The scale type. Either 'manual' or 'standard'") + sub.set_defaults(func=Deployment.create) + # Models sub = subparsers.add_parser("models.list") sub.set_defaults(func=Model.list) diff --git a/openai/object_classes.py b/openai/object_classes.py index 76e8c0fe1b..5f72bd7cf8 100644 --- a/openai/object_classes.py +++ b/openai/object_classes.py @@ -7,4 +7,5 @@ "file": api_resources.File, "fine-tune": api_resources.FineTune, "model": api_resources.Model, + "deployment": api_resources.Deployment, }