Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions docs.json
Original file line number Diff line number Diff line change
Expand Up @@ -415,6 +415,7 @@
"runpodctl/reference/runpodctl-serverless",
"runpodctl/reference/runpodctl-template",
"runpodctl/reference/runpodctl-hub",
"runpodctl/reference/runpodctl-model",
"runpodctl/reference/runpodctl-network-volume",
"runpodctl/reference/runpodctl-registry",
"runpodctl/reference/runpodctl-gpu",
Expand Down
1 change: 1 addition & 0 deletions runpodctl/overview.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -182,6 +182,7 @@ Runpod CLI organizes commands into groups based on the resource type:
| `runpodctl serverless` | `sls` | Manage Serverless endpoints |
| `runpodctl template` | `tpl` | List, search, and manage templates |
| `runpodctl hub` | | Browse and deploy from the Runpod Hub |
| `runpodctl model` | | List available models |
| `runpodctl network-volume` | `nv` | Manage network volumes |
| `runpodctl registry` | `reg` | Manage container registry authentications |
| `runpodctl gpu` | | List available GPUs |
Expand Down
143 changes: 143 additions & 0 deletions runpodctl/reference/runpodctl-model.mdx
Original file line number Diff line number Diff line change
@@ -0,0 +1,143 @@
---
title: "model"
sidebarTitle: "model"
---

Manage models in the Model Repo, including adding, uploading, listing, and removing models.
Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Added model command documentation based on PR #278, which introduces the Version Hash column to runpodctl model list. The version hash is needed for the --model-reference flag when creating Serverless endpoints.

Source: runpod/runpodctl#278


```bash
runpodctl model <subcommand> [flags]
```

## Subcommands

### Add a model

Register a new model with the Model Repo:

```bash
runpodctl model add --name "my-model"
```

To upload model files from a local directory:

```bash
runpodctl model add --name "my-model" --model-path ./model-files
```

#### Add flags
Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Added --owner flag documentation from PR #283 which introduced the flag in cmd/model/addModelToRepo.go:119. Also removed --version-status flag which was removed in the same PR.

Source: runpod/runpodctl#283


<ResponseField name="--name" type="string" required>
Model name.
</ResponseField>

<ResponseField name="--owner" type="string">
Model owner namespace (user or team owner ID). Use this to add models to a team account.
</ResponseField>

<ResponseField name="--model-status" type="string">
Initial model status.
</ResponseField>

<ResponseField name="--credential-type" type="string">
Credential type (if required for model access).
</ResponseField>

<ResponseField name="--credential-reference" type="string">
Credential reference (if required for model access).
</ResponseField>

<ResponseField name="--model-path" type="string">
Directory containing model files to upload. When specified, all files in the directory are uploaded to the Model Repo.
</ResponseField>

<ResponseField name="--create-upload" type="bool">
Create an upload session without uploading files. Use this to get upload URLs for manual file uploads.
</ResponseField>

<ResponseField name="--file-name" type="string">
File name for single-file upload.
</ResponseField>

<ResponseField name="--file-size" type="string">
File size in bytes for single-file upload.
</ResponseField>

<ResponseField name="--part-size" type="string">
Multipart upload part size in bytes.
</ResponseField>

<ResponseField name="--content-type" type="string">
Content type for the upload.
</ResponseField>

<ResponseField name="--graphql-timeout" type="duration">
GraphQL request timeout. Defaults to 30 minutes for model upload operations.
</ResponseField>

### List models

List models in your account:

```bash
runpodctl model list
```

Filter by provider or name:

```bash
runpodctl model list --provider huggingface
runpodctl model list --name "llama"
```

#### List flags

<ResponseField name="--provider" type="string">
Filter by model provider.
</ResponseField>

<ResponseField name="--name" type="string">
Filter by model name.
</ResponseField>

### Remove a model

Remove a model from the Model Repo:

```bash
runpodctl model remove <model-id>
```

You can specify the model by ID or name:

```bash
runpodctl model remove my-model
```
Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Added RUNPOD_GRAPHQL_URL environment variable documentation from PR #283 which changed the env var from RUNPOD_API_URL to RUNPOD_GRAPHQL_URL in api/query.go:35.

Source: runpod/runpodctl#283


<Warning>

Removing a model permanently deletes it and all associated versions from the Model Repo. This action cannot be undone.

</Warning>

## Environment variables

<ResponseField name="RUNPOD_GRAPHQL_URL" type="string">
Override the GraphQL API endpoint URL. Defaults to `https://api.runpod.io/graphql`.
</ResponseField>

## Using model version hashes

To create a Serverless endpoint that uses a model from the Model Repo, reference the model by its version hash:

```bash
runpodctl serverless create --template-id "tpl_abc123" --name "my-endpoint" \
--model-reference "abc123def456"
```

Run `runpodctl model list` to find the version hash for your model.

## Related commands

- [`runpodctl serverless create`](/runpodctl/reference/runpodctl-serverless)
- [`runpodctl hub`](/runpodctl/reference/runpodctl-hub)
Loading