From f18de0b8efcdf6bd15b5ef8c017a4c2d3dbd4b9e Mon Sep 17 00:00:00 2001 From: k3dz0r Date: Thu, 8 May 2025 10:54:41 -0400 Subject: [PATCH 1/7] Added tooltips: engine, compute, solution, data. --- docs/cli/commands/files/delete.md | 2 - docs/cli/commands/files/download.md | 2 - docs/cli/commands/files/index.md | 4 +- docs/cli/commands/files/upload.md | 4 +- docs/cli/commands/index.md | 8 +-- docs/cli/commands/offers/add-slot.md | 6 +- docs/cli/commands/offers/delete-slot.md | 6 +- docs/cli/commands/offers/disable.md | 6 +- docs/cli/commands/offers/download-content.md | 4 +- docs/cli/commands/offers/enable.md | 6 +- docs/cli/commands/offers/get-info.md | 4 +- docs/cli/commands/offers/get-option.md | 4 +- docs/cli/commands/offers/get-slot.md | 6 +- docs/cli/commands/offers/get.md | 4 +- docs/cli/commands/offers/index.md | 2 +- docs/cli/commands/offers/list.md | 4 +- docs/cli/commands/offers/update-slot.md | 6 +- docs/cli/commands/offers/update.md | 6 +- docs/cli/commands/orders/cancel.md | 4 +- docs/cli/commands/orders/download-result.md | 10 +--- docs/cli/commands/orders/get.md | 4 +- docs/cli/commands/orders/index.md | 2 +- docs/cli/commands/orders/list.md | 4 +- docs/cli/commands/orders/replenish-deposit.md | 4 +- docs/cli/commands/providers/get.md | 2 - docs/cli/commands/providers/index.md | 2 +- docs/cli/commands/providers/list.md | 2 - docs/cli/commands/providers/update.md | 20 +++---- docs/cli/commands/quotes/index.md | 2 +- docs/cli/commands/quotes/validate.md | 4 +- docs/cli/commands/solutions/generate-key.md | 4 +- docs/cli/commands/solutions/index.md | 2 +- docs/cli/commands/solutions/prepare.md | 18 +++--- docs/cli/commands/tokens/balance.md | 2 - docs/cli/commands/tokens/index.md | 4 +- docs/cli/commands/tokens/request.md | 2 - docs/cli/commands/workflows/create.md | 10 ++-- docs/cli/commands/workflows/generate-key.md | 2 - docs/cli/commands/workflows/index.md | 2 +- docs/cli/index.md | 12 ++-- docs/fundamentals/certification.md | 6 +- docs/fundamentals/index.md | 8 +-- docs/fundamentals/offers.md | 14 ++--- docs/fundamentals/orders.md | 24 +++----- docs/fundamentals/slots.md | 6 +- docs/marketplace/all-orders/index.md | 2 +- docs/marketplace/all-orders/order.md | 22 +++---- docs/marketplace/confidentiality.md | 6 +- docs/marketplace/extras/.release-history.md | 8 ++- docs/marketplace/guides/deploy-model.md | 6 +- docs/marketplace/guides/publish-offer.md | 4 +- docs/marketplace/guides/troubleshooting.md | 2 +- .../images/order-deployed-online.png | Bin 28730 -> 28531 bytes docs/marketplace/index.md | 4 +- docs/marketplace/limitations.md | 4 +- docs/marketplace/models/offer.md | 4 +- docs/marketplace/my-offers/new-offer.md | 6 +- docs/marketplace/my-offers/offer-builder.md | 4 +- .../marketplace/order-builder/compatibiity.md | 4 +- docs/marketplace/order-builder/index.md | 12 ++-- src/theme/Layout/index.js | 54 ++++++++++++++---- 61 files changed, 183 insertions(+), 219 deletions(-) diff --git a/docs/cli/commands/files/delete.md b/docs/cli/commands/files/delete.md index 6040a43f..5054faf1 100644 --- a/docs/cli/commands/files/delete.md +++ b/docs/cli/commands/files/delete.md @@ -17,8 +17,6 @@ The resource JSON file is created as a result of the [`files upload`](/cli/comma [--help | -h] ``` -Read about the Super Protocol [command syntax](/cli/commands#command-syntax). - ## Arguments | **Name** | **Description** | diff --git a/docs/cli/commands/files/download.md b/docs/cli/commands/files/download.md index 0c380c3f..bacd8d0e 100644 --- a/docs/cli/commands/files/download.md +++ b/docs/cli/commands/files/download.md @@ -17,8 +17,6 @@ The resource JSON file is created as a result of the [`files upload`](/cli/comma [--help | -h] ``` -Read about the Super Protocol [command syntax](/cli/commands#command-syntax). - ## Arguments | **Name** | **Description** | diff --git a/docs/cli/commands/files/index.md b/docs/cli/commands/files/index.md index 51f7ac40..60f8a146 100644 --- a/docs/cli/commands/files/index.md +++ b/docs/cli/commands/files/index.md @@ -6,7 +6,7 @@ sidebar_position: 3 --- -This command group contains commands to manage files in third-party storage such as Storj. +This group contains commands to manage files in third-party storage such as Storj. Most of these commands require a Storj account and SPCTL configured to use it. Refer to the [Set up Storj](/cli/#set-up-storj-access-optional) section to create a bucket and access grants and set up SPCTL. @@ -16,4 +16,4 @@ Most of these commands require a Storj account and SPCTL configured to use it. R | :- | :- | | [files delete](/cli/commands/files/delete) | Deletes a file in remote storage. | | [files download](/cli/commands/files/download) | Downloads and decrypt a file from remote storage. | -| [files upload](/cli/commands/files/upload) | Uploads a file to remote storage or creates a storage order. | \ No newline at end of file +| [files upload](/cli/commands/files/upload) | Uploads a file to remote storage. | \ No newline at end of file diff --git a/docs/cli/commands/files/upload.md b/docs/cli/commands/files/upload.md index 5cc3906d..b99c0dbc 100644 --- a/docs/cli/commands/files/upload.md +++ b/docs/cli/commands/files/upload.md @@ -9,7 +9,7 @@ Uploads a file to remote storage such as Storj. The primary purpose of this command is to make the uploading files available for download and execution. This is necessary in two cases: -- With the [`workflows create`](/cli/commands/workflows/create) command, **users** can add the uploaded solution or data to an order instead of a Marketplace offer. In this case, a short-term storage period is enough. +- With the [`workflows create`](/cli/commands/workflows/create) command, **users** can add the uploaded solution or data to an order instead of an offer. In this case, a short-term storage period is enough. - Solution and data **providers** can store the contents of their offers to make them available for customers' orders. This requires a long-term storage period. Depending on the options, the command provides two ways to upload and store the files. Choose one that suits you better: @@ -36,8 +36,6 @@ The output of the command is a resource JSON file with the information for a com [--help | -h] ``` -Read about the Super Protocol [command syntax](/cli/commands#command-syntax). - ## Arguments | **Name** | **Description** | diff --git a/docs/cli/commands/index.md b/docs/cli/commands/index.md index 6d5cce59..e6069cbb 100644 --- a/docs/cli/commands/index.md +++ b/docs/cli/commands/index.md @@ -14,12 +14,12 @@ This section contains the list of commands for the Super Protocol CLI tool SPCTL | **Group** | **Description** | | :- | :- | | [tokens](/cli/commands/tokens) | Receive SPPI and BNB test tokens; **testnet only**. | -| [solutions](/cli/commands/solutions) | Prepare a solution for deployment. | +| [solutions](/cli/commands/solutions) | Prepare a solution for deployment. | | [files](/cli/commands/files) | Manage files in decentralized storage. | -| [workflows](/cli/commands/workflows) | Create a new order. | +| [workflows](/cli/commands/workflows) | Create a new order. | | [orders](/cli/commands/orders) | Manage your orders. | -| [offers](/cli/commands/offers) | View and manage Marketplace offers. | -| [providers](/cli/commands/providers) | View and manage offer providers. | +| [offers](/cli/commands/offers) | View and manage Marketplace offers. | +| [providers](/cli/commands/providers) | View and manage providers. | | [quotes](/cli/commands/quotes) | Verify the authenticity and integrity of a Trusted Execution Environment. | ## Command syntax diff --git a/docs/cli/commands/offers/add-slot.md b/docs/cli/commands/offers/add-slot.md index 2632b178..8cb14387 100644 --- a/docs/cli/commands/offers/add-slot.md +++ b/docs/cli/commands/offers/add-slot.md @@ -6,11 +6,11 @@ sidebar_label: "add-slot" sidebar_position: 8 --- -Creates an additional [requirement slot](/fundamentals/slots#requirements) in an offer using the information in an offer slot JSON file. +Creates an additional [requirement slot](/fundamentals/slots#requirements) for an offer. Refer to the [Providers and Offers] guide to create the initial offer requirements. -**Important:** This command requires SPCTL with the [provider configuration file](/cli/#configure-spctl-for-providers). +**Important:** This command requires SPCTL with a [provider configuration file](/cli/#configure-spctl-for-providers). ## Syntax @@ -22,8 +22,6 @@ Refer to the [Providers and Offers] guide to create the initial offer requiremen [--help | -h] ``` -Read about the Super Protocol [command syntax](/cli/commands#command-syntax). - ## Arguments | **Name** | **Description** | diff --git a/docs/cli/commands/offers/delete-slot.md b/docs/cli/commands/offers/delete-slot.md index 1b1de4f2..ef0d525c 100644 --- a/docs/cli/commands/offers/delete-slot.md +++ b/docs/cli/commands/offers/delete-slot.md @@ -6,9 +6,9 @@ sidebar_label: "delete-slot" sidebar_position: 10 --- -Deletes a [requirement slot](/fundamentals/slots#requirements) in an [offer](/fundamentals/offers). +Deletes a [requirement slot](/fundamentals/slots#requirements) in an offer. -**Important:** This command requires SPCTL with the [provider configuration file](/cli/#configure-spctl-for-providers). +**Important:** This command requires SPCTL with a [provider configuration file](/cli/#configure-spctl-for-providers). Use the [`offers get`](/cli/commands/offers/get) command to get the IDs of all slots in an offer. Use the [`offers get-slot`](/cli/commands/offers/get-slot) command to get additional information on a slot. @@ -22,8 +22,6 @@ Use the [`offers get`](/cli/commands/offers/get) command to get the IDs of all s [--help | -h] ``` -Read about the Super Protocol [command syntax](/cli/commands#command-syntax). - ## Arguments | **Name** | **Description** | diff --git a/docs/cli/commands/offers/disable.md b/docs/cli/commands/offers/disable.md index 8070ebaf..d3feb180 100644 --- a/docs/cli/commands/offers/disable.md +++ b/docs/cli/commands/offers/disable.md @@ -6,9 +6,9 @@ sidebar_label: "disable" sidebar_position: 6 --- -Disables an existing enabled offer. +Disables an existing enabled offer. -**Important:** This command requires SPCTL with the [provider configuration file](/cli/#configure-spctl-for-providers). +**Important:** This command requires SPCTL with a [provider configuration file](/cli/#configure-spctl-for-providers). ## Syntax @@ -18,8 +18,6 @@ Disables an existing enabled offer. [--help | -h] ``` -Read about the Super Protocol [command syntax](/cli/commands#command-syntax). - ## Arguments | **Name** | **Description** | diff --git a/docs/cli/commands/offers/download-content.md b/docs/cli/commands/offers/download-content.md index 75798795..556e282c 100644 --- a/docs/cli/commands/offers/download-content.md +++ b/docs/cli/commands/offers/download-content.md @@ -6,7 +6,7 @@ sidebar_label: "download-content" sidebar_position: 4 --- -Downloads the content of an offer. +Downloads the content of an offer. The command only works with offers that allow this operation. @@ -19,8 +19,6 @@ The command only works with offers that allow this operation. [--help | -h] ``` -Read about the Super Protocol [command syntax](/cli/commands#command-syntax). - ## Arguments | **Name** | **Description** | diff --git a/docs/cli/commands/offers/enable.md b/docs/cli/commands/offers/enable.md index 21c61ddc..1336fee5 100644 --- a/docs/cli/commands/offers/enable.md +++ b/docs/cli/commands/offers/enable.md @@ -6,9 +6,9 @@ sidebar_label: "enable" sidebar_position: 7 --- -Enables an existing disabled offer. +Enables an existing disabled offer. -**Important:** This command requires SPCTL with the [provider configuration file](/cli/#configure-spctl-for-providers). +**Important:** This command requires SPCTL with a [provider configuration file](/cli/#configure-spctl-for-providers). ## Syntax @@ -18,8 +18,6 @@ Enables an existing disabled offer. [--help | -h] ``` -Read about the Super Protocol [command syntax](/cli/commands#command-syntax). - ## Arguments | **Name** | **Description** | diff --git a/docs/cli/commands/offers/get-info.md b/docs/cli/commands/offers/get-info.md index 688820ec..9c1f70da 100644 --- a/docs/cli/commands/offers/get-info.md +++ b/docs/cli/commands/offers/get-info.md @@ -6,7 +6,7 @@ sidebar_label: "get-info" sidebar_position: 3 --- -Displays the information on an offer as stored on the blockchain. +Displays the information on an offer as stored on the blockchain. ## Syntax @@ -17,8 +17,6 @@ Displays the information on an offer as stored on the blockchain. [--help | -h] ``` -Read about the Super Protocol [command syntax](/cli/commands#command-syntax). - ## Arguments | **Name** | **Description** | diff --git a/docs/cli/commands/offers/get-option.md b/docs/cli/commands/offers/get-option.md index 207fd5ac..7f6514f4 100644 --- a/docs/cli/commands/offers/get-option.md +++ b/docs/cli/commands/offers/get-option.md @@ -6,7 +6,7 @@ sidebar_label: "get-option" sidebar_position: 12 --- -Displays the information on a [configuration option](/fundamentals/slots) of a compute offer. +Displays the information on a [configuration option](/fundamentals/slots) of a compute offer. ## Syntax @@ -18,8 +18,6 @@ Displays the information on a [configuration option](/fundamentals/slots) of a c [--help | -h] ``` -Read about the Super Protocol [command syntax](/cli/commands#command-syntax). - ## Options | **Name** | **Description** | diff --git a/docs/cli/commands/offers/get-slot.md b/docs/cli/commands/offers/get-slot.md index ae745b61..dd3e1a8d 100644 --- a/docs/cli/commands/offers/get-slot.md +++ b/docs/cli/commands/offers/get-slot.md @@ -6,9 +6,9 @@ sidebar_label: "get-slot" sidebar_position: 11 --- -Displays the information for a [requirement slot](/fundamentals/slots#requirements) in an offer. +Displays the information for a [requirement slot](/fundamentals/slots#requirements) of an offer. -Use the [`offers get`](/cli/commands/offers/get) command to get the IDs of all slots in an offer. +Use the [`offers get`](/cli/commands/offers/get) command to get the IDs of all the offer's slots. ## Syntax @@ -21,8 +21,6 @@ Use the [`offers get`](/cli/commands/offers/get) command to get the IDs of all s [--help | -h] ``` -Read about the Super Protocol [command syntax](/cli/commands#command-syntax). - ## Arguments | **Name** | **Description** | diff --git a/docs/cli/commands/offers/get.md b/docs/cli/commands/offers/get.md index ffacbee7..6dc50be0 100644 --- a/docs/cli/commands/offers/get.md +++ b/docs/cli/commands/offers/get.md @@ -6,7 +6,7 @@ sidebar_label: "get" sidebar_position: 2 --- -Displays information on an offer. +Displays information on an offer. ## Syntax @@ -17,8 +17,6 @@ Displays information on an offer. [--help | -h] ``` -Read about the Super Protocol [command syntax](/cli/commands#command-syntax). - ## Arguments | **Name** | **Description** | diff --git a/docs/cli/commands/offers/index.md b/docs/cli/commands/offers/index.md index 56280c70..97a626b0 100644 --- a/docs/cli/commands/offers/index.md +++ b/docs/cli/commands/offers/index.md @@ -6,7 +6,7 @@ sidebar_position: 6 --- -This command group contains commands to view and manage [offers](/fundamentals/offers). Note that [Marketplace web app](https://marketplace.superprotocol.com/marketplace) can be more convenient to use than most of these commands. +This group contains commands to view and manage offers. ## Commands diff --git a/docs/cli/commands/offers/list.md b/docs/cli/commands/offers/list.md index 70ffe0eb..f146d092 100644 --- a/docs/cli/commands/offers/list.md +++ b/docs/cli/commands/offers/list.md @@ -6,7 +6,7 @@ sidebar_label: "list" sidebar_position: 1 --- -Displays a list of available offers. +Displays a list of available offers. ## Syntax @@ -20,8 +20,6 @@ Displays a list of available offers. [--help | -h] ``` -Read about the Super Protocol [command syntax](/cli/commands#command-syntax). - ## Arguments | **Name** | **Description** | diff --git a/docs/cli/commands/offers/update-slot.md b/docs/cli/commands/offers/update-slot.md index b16682f7..64ba56ae 100644 --- a/docs/cli/commands/offers/update-slot.md +++ b/docs/cli/commands/offers/update-slot.md @@ -6,9 +6,9 @@ sidebar_label: "update-slot" sidebar_position: 9 --- -Updates a [requirement slot](/fundamentals/slots#requirements) in an existing offer using the information in a JSON file. +Updates a [requirement slot](/fundamentals/slots#requirements) of an offer. -**Important:** This command requires SPCTL with the [provider configuration file](/cli/#configure-spctl-for-providers). +**Important:** This command requires SPCTL with a [provider configuration file](/cli/#configure-spctl-for-providers). Use the [`offers get`](/cli/commands/offers/get) command to get the IDs of all slots in an offer. Use the [`offers get-slot`](/cli/commands/offers/get-slot) command to get additional information on a slot. @@ -25,8 +25,6 @@ Refer to [Offer requirements] to create the initial offer requirements. Refer to [--help | -h] ``` -Read about the Super Protocol [command syntax](/cli/commands#command-syntax). - ## Arguments | **Name** | **Description** | diff --git a/docs/cli/commands/offers/update.md b/docs/cli/commands/offers/update.md index 14138212..f4eca28d 100644 --- a/docs/cli/commands/offers/update.md +++ b/docs/cli/commands/offers/update.md @@ -6,11 +6,11 @@ sidebar_label: "update" sidebar_position: 5 --- -Updates information of an existing offer using an offer description JSON file. +Updates information about an offer. Refer to the [Providers and Offers] guide to create the initial offer description. -**Important:** This command requires SPCTL with the [provider configuration file](/cli/#configure-spctl-for-providers). +**Important:** This command requires SPCTL with a [provider configuration file](/cli/#configure-spctl-for-providers). ## Syntax @@ -21,8 +21,6 @@ Refer to the [Providers and Offers] guide to create the initial offer descriptio [--help | -h] ``` -Read about the Super Protocol [command syntax](/cli/commands#command-syntax). - ## Arguments | **Name** | **Description** | diff --git a/docs/cli/commands/orders/cancel.md b/docs/cli/commands/orders/cancel.md index 35dda5d6..c957de20 100644 --- a/docs/cli/commands/orders/cancel.md +++ b/docs/cli/commands/orders/cancel.md @@ -5,7 +5,7 @@ slug: "/commands/orders/cancel" sidebar_label: "cancel" --- -Cancels an order. +Cancels an order. ## Syntax @@ -15,8 +15,6 @@ Cancels an order. [--help | -h] ``` -Read about the Super Protocol [command syntax](/cli/commands#command-syntax). - ## Arguments | **Name** | **Description** | diff --git a/docs/cli/commands/orders/download-result.md b/docs/cli/commands/orders/download-result.md index 66c8fc31..4451a982 100644 --- a/docs/cli/commands/orders/download-result.md +++ b/docs/cli/commands/orders/download-result.md @@ -5,12 +5,10 @@ slug: "/commands/orders/download-result" sidebar_label: "download-result" --- -Downloads the order result. +Downloads the order result—a TAR.GZ archive file containing: -This command downloads a TAR.GZ archive file containing: - -- Log file with any errors occured during the execution of the script -- Directory with the result. +- A log file with any errors occured during the execution. +- A directory with the execution result. If the order status is `Error`, the result archive will contain a text file with the error message. @@ -23,8 +21,6 @@ If the order status is `Error`, the result archive will contain a text file with [--help | -h] ``` -Read about the Super Protocol [command syntax](/cli/commands#command-syntax). - ## Arguments | **Name** | **Description** | diff --git a/docs/cli/commands/orders/get.md b/docs/cli/commands/orders/get.md index 9750cb6c..e33bdb9e 100644 --- a/docs/cli/commands/orders/get.md +++ b/docs/cli/commands/orders/get.md @@ -5,7 +5,7 @@ slug: "/commands/orders/get" sidebar_label: "get" --- -Displays the information on an order. +Displays the information on an order. This command allows you to check any order, not only yours. The information on all orders is openly available on the blockchain. @@ -20,8 +20,6 @@ This command allows you to check any order, not only yours. The information on a [--help | -h] ``` -Read about the Super Protocol [command syntax](/cli/commands#command-syntax). - ## Arguments | **Name** | **Description** | diff --git a/docs/cli/commands/orders/index.md b/docs/cli/commands/orders/index.md index 8e44c71b..5935bd68 100644 --- a/docs/cli/commands/orders/index.md +++ b/docs/cli/commands/orders/index.md @@ -6,7 +6,7 @@ sidebar_position: 5 --- -This command group contains commands to track and manage [orders](/fundamentals/orders). Note that [Marketplace web app](https://marketplace.superprotocol.com/marketplace) can be more convenient to use than most of the commands in this group. +This group contains commands to track and manage orders. Note that [Marketplace web app](https://marketplace.superprotocol.com/marketplace) can be more convenient to use than most of the commands in this group. ## Commands diff --git a/docs/cli/commands/orders/list.md b/docs/cli/commands/orders/list.md index 3a483ee6..5ed98971 100644 --- a/docs/cli/commands/orders/list.md +++ b/docs/cli/commands/orders/list.md @@ -5,7 +5,7 @@ slug: "/commands/orders/list" sidebar_label: "list" --- -Lists orders stored on the blockchain. +Lists orders stored on the blockchain. This command displays a list of all orders and suborders, unless the `--my-account true` option is specified. @@ -23,8 +23,6 @@ This command displays a list of all orders and suborders, unless the `--my-accou [--help | -h] ``` -Read about the Super Protocol [command syntax](/cli/commands#command-syntax). - ## Options |
**Name**
| **Description** | diff --git a/docs/cli/commands/orders/replenish-deposit.md b/docs/cli/commands/orders/replenish-deposit.md index e4a4be2b..a9747c1b 100644 --- a/docs/cli/commands/orders/replenish-deposit.md +++ b/docs/cli/commands/orders/replenish-deposit.md @@ -7,7 +7,7 @@ sidebar_label: "replenish-deposit" Replenishes the order deposit. -Certain orders require a positive deposit balance to keep running. +Certain orders require a positive deposit balance to keep running. ## Syntax @@ -17,8 +17,6 @@ Certain orders require a positive deposit balance to keep running. [--help | -h] ``` -Read about the Super Protocol [command syntax](/cli/commands#command-syntax). - ## Arguments | **Name** | **Description** | diff --git a/docs/cli/commands/providers/get.md b/docs/cli/commands/providers/get.md index 538a4965..d521b66c 100644 --- a/docs/cli/commands/providers/get.md +++ b/docs/cli/commands/providers/get.md @@ -16,8 +16,6 @@ Displays the information on a provider using its authority account address. [--help | -h] ``` -Read about the Super Protocol [command syntax](/cli/commands#command-syntax). - ## Arguments | **Name** | **Description** | diff --git a/docs/cli/commands/providers/index.md b/docs/cli/commands/providers/index.md index b3c7e5d1..28080280 100644 --- a/docs/cli/commands/providers/index.md +++ b/docs/cli/commands/providers/index.md @@ -6,7 +6,7 @@ sidebar_position: 7 --- -This command group contains commands to view and update [providers](/fundamentals/offers). +This group contains commands to view and update [providers](/fundamentals/offers). ## Commands diff --git a/docs/cli/commands/providers/list.md b/docs/cli/commands/providers/list.md index 406f9e9c..6d7cbe16 100644 --- a/docs/cli/commands/providers/list.md +++ b/docs/cli/commands/providers/list.md @@ -16,8 +16,6 @@ Lists all registered providers. [--help | -h] ``` -Read about the Super Protocol [command syntax](/cli/commands#command-syntax). - ## Options |
**Name**
| **Description** | diff --git a/docs/cli/commands/providers/update.md b/docs/cli/commands/providers/update.md index b6c559a1..1c0f8096 100644 --- a/docs/cli/commands/providers/update.md +++ b/docs/cli/commands/providers/update.md @@ -5,11 +5,9 @@ slug: "/commands/providers/update" sidebar_label: "update" --- -Updates the current provider using a provider info JSON file. +Updates information about a provider. -Provider Tools creates a provider info JSON file in [Step 4 of the Providers and Offers] guide. - -**Important:** This command requires SPCTL with the [provider configuration file](/cli/#configure-spctl-for-providers). +**Important:** This command requires SPCTL with a [provider configuration file](/cli/#configure-spctl-for-providers). ## Syntax @@ -20,8 +18,6 @@ Provider Tools creates a provider info JSON file in [Step 4 of the Providers and [--help | -h] ``` -Read about the Super Protocol [command syntax](/cli/commands#command-syntax). - ## Options | **Name** | **Description** | @@ -32,9 +28,9 @@ Read about the Super Protocol [command syntax](/cli/commands#command-syntax). ## Provider info file -The provider info file must contain the following strings: +The provider info JSON file must contain the following keys: -| **Field** | **Description** | +| **Key** | **Description** | | :- | :- | | `name` | Provider name. | | `description` | Description of services provided by the provider. | @@ -42,14 +38,14 @@ The provider info file must contain the following strings: | `actionAccount` | Action account address. | | `metadata` | Additional information about the provider. | -The `description` and `metadata` strings may be empty. All other strings require values. +The `description` and `metadata` may be empty. All other strings require values. -Provider JSON file template with example values: +Template with example values: -```json title="provider.json" +```json title="providerInfo.json" { "name": "Data Provider", - "description": "It provides various datasets for modeling", + "description": "Various data for modeling", "tokenReceiver": "0xB9f0bB77DbeA9fBeC563E60Bd7E453f503605BAa", "actionAccount": "0xfe9CB4557639a3aB7892ab7F0A994Eed89477120", "metadata": "" diff --git a/docs/cli/commands/quotes/index.md b/docs/cli/commands/quotes/index.md index 81840fb9..c34e22e7 100644 --- a/docs/cli/commands/quotes/index.md +++ b/docs/cli/commands/quotes/index.md @@ -6,7 +6,7 @@ sidebar_position: 9 --- -This command group contains a single command to verify the authenticity and integrity of a Trusted Execution Environment by examining the enclave quote. +This group contains a single command to verify the authenticity and integrity of a Trusted Execution Environment by examining its quote. ## Command diff --git a/docs/cli/commands/quotes/validate.md b/docs/cli/commands/quotes/validate.md index dec4a452..b5859487 100644 --- a/docs/cli/commands/quotes/validate.md +++ b/docs/cli/commands/quotes/validate.md @@ -5,7 +5,7 @@ slug: "/commands/quotes/validate" sidebar_label: "validate" --- -Checks if the domain content runs in a confidential environment. The command also displays if the domain content is a Super Protocol offer. +Checks if the domain content runs in a Trusted Execution Environment. The command also displays if the domain content is a Super Protocol offer. ## Syntax @@ -15,8 +15,6 @@ Checks if the domain content runs in a confidential environment. The command als [--help | -h] ``` -Read about the Super Protocol [command syntax](/cli/commands#command-syntax). - ## Arguments | **Name** | **Description** | diff --git a/docs/cli/commands/solutions/generate-key.md b/docs/cli/commands/solutions/generate-key.md index 32474d8d..d975c257 100644 --- a/docs/cli/commands/solutions/generate-key.md +++ b/docs/cli/commands/solutions/generate-key.md @@ -5,7 +5,7 @@ slug: "/commands/solutions/generate-key" sidebar_label: "generate-key" --- -Generates a signing key necessary to prepare a solution. +Generates a signing key necessary to prepare a solution. Docker needs this key to [pack a solution](/cli/commands/solutions/prepare) into a container. @@ -17,8 +17,6 @@ Docker needs this key to [pack a solution](/cli/commands/solutions/prepare) into [--help | -h] ``` -Read about the Super Protocol [command syntax](/cli/commands#command-syntax). - ## Arguments | **Name** | **Description** | diff --git a/docs/cli/commands/solutions/index.md b/docs/cli/commands/solutions/index.md index 726c250c..5ab743d6 100644 --- a/docs/cli/commands/solutions/index.md +++ b/docs/cli/commands/solutions/index.md @@ -6,7 +6,7 @@ sidebar_position: 2 --- -This command group contains commands to prepare a solution for deployment on Super Protocol and generate a key for signing a Docker container with a solution. +This group contains commands to prepare a solution for deployment on Super Protocol and generate a key for signing a Docker container with a solution. ## Commands diff --git a/docs/cli/commands/solutions/prepare.md b/docs/cli/commands/solutions/prepare.md index 12479492..66a15625 100644 --- a/docs/cli/commands/solutions/prepare.md +++ b/docs/cli/commands/solutions/prepare.md @@ -5,24 +5,24 @@ slug: "/commands/solutions/prepare" sidebar_label: "prepare" --- -Packs and signs a solution with [Gramine](https://gramineproject.io/) and writes a [manifest](https://gramine.readthedocs.io/en/stable/manifest-syntax.html). +Packs and signs a solution with [Gramine](https://gramineproject.io/) and writes a [manifest](https://gramine.readthedocs.io/en/stable/manifest-syntax.html). -This allows the execution of the "graminized" solution code inside a Trusted Execution Environment. When the solution is prepared and packed, you can [upload](/cli/commands/files/upload) the resulting archive to a distributed storage to use the solution in orders. +This allows the execution of the "graminized" solution code inside a Trusted Execution Environment. When the solution is prepared and packed, you can [upload](/cli/commands/files/upload) the resulting archive to a distributed storage to use the solution in orders. The input of the command is the following: - Directory with the solution and all its dependencies - Signing key file generated by the [solutions generate-key](/cli/commands/solutions/generate-key) command -- Node.js or Python base image downloaded from their respective offers using the [offers download-content](/cli/commands/offers/download-content) command: - + Python Base Image: `./spctl offers download-content 5` - + Node.js Base Image: `./spctl offers download-content 6`. +- Node.js or Python base image downloaded from their respective offers using the [`offers download-content`](/cli/commands/offers/download-content) command: + + Python Base Image: `./spctl offers download-content 12` + + Node.js Base Image: `./spctl offers download-content 13` -The output of the command is the following: +The output of the command: -- TAR.GZ archive file with graminized solution and dependencies +- TAR.GZ archive file with graminized solution and dependencies. - JSON file with essential metadata. -Note that the base image is graminized but not included in the output archive file and must be added to the order separately. +Note that the base image is graminized but not included in the output archive file and must be added to the order separately. ## Syntax @@ -42,8 +42,6 @@ Note that the base image is graminized but not included in the output archive fi [--help | -h] ``` -Read about the Super Protocol [command syntax](/cli/commands#command-syntax). - ## Arguments | **Name** | **Description** | diff --git a/docs/cli/commands/tokens/balance.md b/docs/cli/commands/tokens/balance.md index 6d5a4266..21329140 100644 --- a/docs/cli/commands/tokens/balance.md +++ b/docs/cli/commands/tokens/balance.md @@ -15,8 +15,6 @@ Displays the balance of SPPI and BNB tokens in your wallet. [--help | -h] ``` -Read about the Super Protocol [command syntax](/cli/commands#command-syntax). - ## Option | **Name** | **Description** | diff --git a/docs/cli/commands/tokens/index.md b/docs/cli/commands/tokens/index.md index cb8e7a0a..803ecc4f 100644 --- a/docs/cli/commands/tokens/index.md +++ b/docs/cli/commands/tokens/index.md @@ -6,9 +6,9 @@ sidebar_position: 1 --- -This command group contains commands to manage SPPI and BNB tokens. +This group contains commands to manage SPPI and BNB tokens. -SPPI tokens are necessary to pay for orders in Super Protocol. BNB tokens are necessary for processing transactions on the opBNB blockchain. +SPPI tokens are necessary to pay for orders in Super Protocol. BNB tokens are necessary for processing transactions on the opBNB blockchain. ## Commands diff --git a/docs/cli/commands/tokens/request.md b/docs/cli/commands/tokens/request.md index 31d95979..5d53cc51 100644 --- a/docs/cli/commands/tokens/request.md +++ b/docs/cli/commands/tokens/request.md @@ -19,8 +19,6 @@ This command is only available during the Testnet. Be mindful of [Testnet limita [--help | -h] ``` -Read about the Super Protocol [command syntax](/cli/commands#command-syntax). - ## Options | **Name** | **Description** | diff --git a/docs/cli/commands/workflows/create.md b/docs/cli/commands/workflows/create.md index 02cd54a6..98b5af5a 100644 --- a/docs/cli/commands/workflows/create.md +++ b/docs/cli/commands/workflows/create.md @@ -5,11 +5,11 @@ slug: "/commands/workflows/create" sidebar_label: "create" --- -Creates a main compute order and necessary suborders: solution, data, and storage. +Creates a main compute order and necessary suborders: solution, data, and storage. The output of the command contains the order ID necessary to track and manage the order with the [`orders`](/cli/commands/orders) commands or in the [Marketplace web app](https://marketplace.superprotocol.com/marketplace). -For solutions and data, you can add to an order either Marketplace [offers](/fundamentals/offers) or [uploaded files](/cli/commands/files/upload). Refer to the [fundamentals](/fundamentals) to understand the logic of the Super Protocol order creation process. +For solutions and data, you can add to an order either Marketplace offer or [uploaded files](/cli/commands/files/upload). Refer to the [fundamentals](/fundamentals) to understand the logic of the Super Protocol order creation process. ## Syntax @@ -28,8 +28,6 @@ For solutions and data, you can add to an order either Marketplace [offers](/fun [--help | -h] ``` -Read about the Super Protocol [command syntax](/cli/commands#command-syntax). - ## Options |
**Name**
| **Description** | @@ -41,7 +39,7 @@ Read about the Super Protocol [command syntax](/cli/commands#command-syntax). | `--tee-slot-count ` | Configuration slot increments—how many times the selected slot is applied. Use this option together with `--tee`.

If you do not use this option, the increments will be calculated automatically. | | `--tee-options [ ...]` | IDs of [configuration options](/fundamentals/slots#configuration) separated by spaces. Use `--tee-options` together with `--tee`.

If you do not use `--tee-options`, configuration options will be selected automatically. | | `--tee-options-count [ ...]` | Increments for each configuration option separated by spaces. Use `--tee-options-count` together with `--tee` and `--tee-options`.

If you do not use `--tee-options-count`, increments will be calculated automatically. | -| `--deposit ` | [Deposit](/fundamentals/orders#lease-deposit-and-balance) in SPPI tokens. The default is the minimum required deposit. | -| `--min-rent-minutes ` | Compute [lease time](/fundamentals/orders#lease-deposit-and-balance) in minutes. Using this option will increase the required deposit. The default is the minimum required time. | +| `--deposit ` | [Deposit](/fundamentals/orders#usage-scenarios) in SPPI tokens. The default is the minimum required deposit. | +| `--min-rent-minutes ` | Compute [lease time](/fundamentals/orders#usage-scenarios) in minutes. Using this option will increase the required deposit. The default is the minimum required time. | | `--config ` | Path to the SPCTL configuration file. The default is `./config.json`. | | `--help`, `-h` | Help for the command. | diff --git a/docs/cli/commands/workflows/generate-key.md b/docs/cli/commands/workflows/generate-key.md index 70a4dd17..f7d2cd93 100644 --- a/docs/cli/commands/workflows/generate-key.md +++ b/docs/cli/commands/workflows/generate-key.md @@ -17,8 +17,6 @@ SPCTL generates this key automatically during the [configuration](/cli). Use thi [--help | -h] ``` -Read about the Super Protocol [command syntax](/cli/commands#command-syntax). - ## Option | **Name** | **Description** | diff --git a/docs/cli/commands/workflows/index.md b/docs/cli/commands/workflows/index.md index 94d26806..3848feaa 100644 --- a/docs/cli/commands/workflows/index.md +++ b/docs/cli/commands/workflows/index.md @@ -6,7 +6,7 @@ sidebar_position: 4 --- -This command group contains commands to create an [order](/fundamentals/orders) and generate a private key to access order results. +This group contains commands to create an order and generate a private key to access order results. ## Commands diff --git a/docs/cli/index.md b/docs/cli/index.md index 36fa3994..1f295ba1 100644 --- a/docs/cli/index.md +++ b/docs/cli/index.md @@ -8,7 +8,7 @@ sidebar_position: 1 import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem'; -**SPCTL**—Super Protocol Control—is a versatile tool to access the Marketplace CLI. With this tool, you can create and manage orders, offers, providers, keys, files, and more. +**SPCTL**—Super Protocol Control—is a versatile tool to access the Marketplace CLI. With this tool, you can create and manage orders, offers, providers, keys, files, and more. ## Download SPCTL @@ -101,15 +101,15 @@ You can configure SPCTL using the `./spctl setup` command or by manually creatin |`"writeAccessToken"` | (optional) Storj access grant with **Full** permission (**Read**, **List**, **Write**, **Delete**) for this bucket.| |`"readAccessToken"` | (optional) Storj access grant with **Read** permission for this bucket.| - 3. Generate a private key for order result encryption using the [workflows generate-key](/cli/commands/workflows/generate-key) command. Set it in `"key"` (`workflow.resultEncryption.key`) in `config.json`. + 3. Generate a private key for order result encryption using the [`workflows generate-key`](/cli/commands/workflows/generate-key) command. Set it in `"key"` (`workflow.resultEncryption.key`) in `config.json`. ## Configure SPCTL for providers -This section is for offer providers only. Skip it if you are a regular user. +This section is for providers only. Skip it if you are a regular user. -Providers need another copy of SPCTL configured for their accounts to manage offers. +Providers need another copy of SPCTL configured to manage their offers. @@ -182,7 +182,7 @@ Providers need another copy of SPCTL configured for their accounts to manage off }, ``` - 3. Generate a private key for order result encryption using the [workflows generate-key](/cli/commands/workflows/generate-key) command. Set it in `"key"` (`workflow.resultEncryption.key`) in `config.json`. + 3. Generate a private key for order result encryption using the [`workflows generate-key`](/cli/commands/workflows/generate-key) command. Set it in `"key"` (`workflow.resultEncryption.key`) in `config.json`. @@ -198,7 +198,7 @@ If you use a free Storj account, your files will become unavailable after the en ::: -2. Create a bucket for your encrypted solutions and data. Refer to the [Storj documentation](https://docs.storj.io/dcs/getting-started/quickstart-objectbrowser/) for guidance. +2. Create a bucket for your encrypted solutions and data. Refer to the [Storj documentation](https://docs.storj.io/dcs/getting-started/quickstart-objectbrowser/) for guidance. 3. Create two access grants for this bucket. One should provide **Full** permission (**Read**, **List**, **Write**, **Delete**), and the other one **Read** permission. Refer to the [Storj guide](https://docs.storj.io/dcs/getting-started/quickstart-uplink-cli/uploading-your-first-object/create-first-access-grant/) to generate access grants. diff --git a/docs/fundamentals/certification.md b/docs/fundamentals/certification.md index e98d0b74..ce619fea 100644 --- a/docs/fundamentals/certification.md +++ b/docs/fundamentals/certification.md @@ -5,13 +5,13 @@ slug: "/certification" sidebar_position: 6 --- -Super Protocol uses a certification system for signing data, verifying signatures, and ensuring applications operate within a trusted confidential computing environment. Verified data is published on the blockchain on behalf of confidential containers, allowing anyone to validate application integrity and ensure confidentiality. End users only interact with issued certificates and verify signatures, while the complexities of Remote Attestation are seamlessly managed in the background. +Super Protocol uses a certification system for signing data, verifying signatures, and ensuring applications operate within a trusted confidential computing environment. Verified data is published on the blockchain on behalf of confidential containers, allowing anyone to validate application integrity and ensure confidentiality. End users only interact with issued certificates and verify signatures, while the complexities of Remote Attestation are seamlessly managed in the background. All the system components are open-source, ensuring transparency and verifiability. ## Architecture -The backbone of the system is a hierarchical structure of Certification Authorities operating inside Trusted Execution Environments (TEE)—Intel SGX enclaves. +The backbone of the system is a hierarchical structure of Certification Authorities operating inside Trusted Execution Environments (TEE)—Intel SGX enclaves.
@@ -33,7 +33,7 @@ To receive an order certificate, the Trusted Loader sends a request to a SubRoot Orders in Super Protocol are created with necessary input data. This execution environment is referred to as *Workload Info*. -The Workload Info includes an array called `runtimeInfo[]` with metadata about solutions and datasets used in the order. Each such order component has an entry in this array, which includes: +The Workload Info includes an array called `runtimeInfo[]` with metadata about solutions and datasets used in the order. Each such order component has an entry in this array, which includes: - Type - Hash diff --git a/docs/fundamentals/index.md b/docs/fundamentals/index.md index a958c35e..c831002c 100644 --- a/docs/fundamentals/index.md +++ b/docs/fundamentals/index.md @@ -11,8 +11,8 @@ This section describes the most essential concepts of Super Protocol. Super Protocol Marketplace is a distributed blockchain-based ecosystem governed by smart contracts. It connects the sellers and buyers of digital products and services: -- Providers who offer solutions, data, and compute resources. -- Customers who lease the offers and pay for the usage. +- Providers who offer solutions, data, and compute resources. +- Customers who lease these offers and pay for the usage. Providers create offers to share and monetize their compute resources as well as solutions, scripts, datasets, AI models, libraries, frameworks, etc. Read more about [offers and providers](/fundamentals/offers). @@ -25,11 +25,11 @@ The Super Protocol Marketplace is accessible via one of the following: ## Trusted Execution Environment -A _Trusted Execution Environment_ is a secure area in memory, [CPU](https://www.intel.com/content/www/us/en/developer/tools/trust-domain-extensions/overview.html), and [GPU](https://www.nvidia.com/en-us/data-center/solutions/confidential-computing/). This area is protected from unauthorized access from the outside, so the data inside a Trusted Execution Environment cannot be read or edited without the authorized code. +A _Trusted Execution Environment_ (TEE) is a secure area in memory, [CPU](https://www.intel.com/content/www/us/en/developer/tools/trust-domain-extensions/overview.html), and [GPU](https://www.nvidia.com/en-us/data-center/solutions/confidential-computing/). This area is protected from unauthorized access from the outside, so the data inside a TEE cannot be read or edited without the authorized code. Confidentiality is an integral part of Super Protocol. All the user data in Super Protocol is encrypted and protected while stored, in transfer, and in use. -Trusted Execution Environment ensures confidentiality and protects both providers and customers. Only the customer can access their orders. Customers themselves cannot download, modify, or otherwise access the provider's offer content even if they use it in their orders. Neither the Super Protocol team nor the owner of the computing device have access to the order and offer content. +TEE ensures confidentiality and protects both providers and customers. Only the customer can access their orders. Customers themselves cannot download, modify, or otherwise access the provider's offer content even if they use it in their orders. Neither the Super Protocol team nor the owner of the computing device have access to the order and offer content. ## Providers diff --git a/docs/fundamentals/offers.md b/docs/fundamentals/offers.md index ca6b9e83..4a5f86b7 100644 --- a/docs/fundamentals/offers.md +++ b/docs/fundamentals/offers.md @@ -5,18 +5,18 @@ slug: "/offers" sidebar_position: 2 --- -_Offer_ is an open listing for a resource available on the Marketplace. To add an offer to an order, users must pay the price in SPPI tokens set by the offer provider. +_Offer_ is an open listing for a computing service, software product, or data available on the Marketplace. To add an offer to an order, users must pay the price in SPPI tokens set by the offer provider. -_Offer providers_ share and monetize their applications and datasets by creating and maintaining _community offers_ on the Super Protocol Marketplace. +_Providers_ share and monetize their applications and datasets by creating and maintaining _community offers_ on the Super Protocol Marketplace. ## Types of offers Offers are the basic building blocks of the Marketplace. Four types of offers exist in Super Protocol: -- _Compute offers_: confidential computing resources to execute solutions and data inside a Trusted Execution Environment. -- _Solution offers_: applications such as AI frameworks, base images, tunnels, oracles, etc. +- _Compute offers_: Confidential computing resources required to deploy models, launch confidential tunnels, and execute solutions inside a Trusted Execution Environment. +- _Solution offers_: Applications such as AI frameworks, base images, tunnels, oracles, etc. - _Data offers_: AI models, webpages, configs, datasets, databases, etc. -- _Storage offers_: decentralized storage, such as Storj, to keep the offer content, order results, and service files. +- _Storage offers_: Decentralized storage, such as Storj, to keep the offer content, order results, and service files. _Value offer_ is a collective term for solution, data, and storage offers. @@ -52,7 +52,7 @@ An order can include several solution and data offers. For example, a solution o ### Storage -Storage offers are necessary to store the order results. It is also possible to create independent [storage orders](/fundamentals/orders#storage) for encrypted solution and data files for respective community offers. +Storage offers are necessary to store the order results. It is also possible to create independent storage orders for encrypted solution and data files for respective community offers. A storage offer is a combination of two parts: @@ -137,7 +137,7 @@ _Configuration slots_ are sets of compute-related parameters of compute offers: - The number of CPU cores - RAM - Disk space -- Minimum and maximum [lease time](/fundamentals/orders#lease-deposit-and-balance) +- Minimum and maximum [lease time](/fundamentals/orders#usage-scenarios) _Configuration options_ are sets of network-related parameters of compute offers: diff --git a/docs/fundamentals/orders.md b/docs/fundamentals/orders.md index 92992a14..4d116a47 100644 --- a/docs/fundamentals/orders.md +++ b/docs/fundamentals/orders.md @@ -7,36 +7,30 @@ sidebar_position: 3 _Orders_ and _suborders_ on Super Protocol are digital contracts between customers and providers for leasing computing services, software products, and data—collectively referred to as offers. -The term _order_ always implies the usage of a compute offer. Every additional offer added to the order creates a separate _suborder_ with the respective provider. If you add your uploaded solutions and data, they create no suborders. +The term _order_ always implies the usage of a compute offer. Every additional offer added to the order creates a separate _suborder_ with the respective provider. If you add your uploaded solutions and data, they create no suborders. Every order and suborder has a unique identification number—_order ID_. It is incremental and continuous for both orders and suborders.
-## Order composition +## Order creation Most orders consist of four building blocks: -- **Solution**: Applications, engines, scripts, base images, and other programs. -- **Data**: Any data required by solutions. AI models fall into this category. -- **Compute**: Confidential computing resources required to execute solutions. -- **Storage**: Decentralized storage used to keep order results after execution. - -Solutions and data may be either leased from the Marketplace or uploaded by users. - -Compute and storage can currently only be provided by Super Protocol. - -## Order creation +- **Solution**: Engines, applications, scripts, base images, and other programs intended to launch on Super Protocol. +- **Data**: AI models, webpages, configs, datasets, databases, and any other data that solutions may require. +- **Compute**: Confidential computing resources required to execute solutions and data inside a Trusted Execution Environment (TEE). +- **Storage**: Decentralized storage that keeps order results after execution. There are two ways to place an order: -- The [Marketplace web app](https://marketplace.superprotocol.com/) is user-friendly, but limited to deploying AI models using the engines available on the Marketplace. +- The [Marketplace web app](https://marketplace.superprotocol.com/) has a convenient graphical user interface, but limited to deploying AI models using the engines available on the Marketplace. - The [command-line interface (CLI)](/cli) allows the launch of any applications and provides additional functionality. -Orders exist on the blockchain and are visible to anyone. So, while the solutions and data inside a Trusted Execution Environment (TEE) remain confidential, the general information about any order is available using the CLI. +Orders exist on the blockchain and thus are visible to anyone. The general information about any order is readily available using the [`orders get`](/cli/commands/orders/get) command. However, the solutions and data inside a TEE remain confidential. -The order result is kept by the storage suborder for as long as the customer keeps paying for it. Only the customer who placed the order knows the private key necessary to decrypt the result. +The storage suborder keeps the encrypted order result for as long as the customer keeps paying for it. Only the customer who placed the order knows the private key necessary to decrypt the result. ## Usage scenarios diff --git a/docs/fundamentals/slots.md b/docs/fundamentals/slots.md index d97fc1b4..872b0d74 100644 --- a/docs/fundamentals/slots.md +++ b/docs/fundamentals/slots.md @@ -5,9 +5,9 @@ slug: "/slots" sidebar_position: 4 --- -_Requirements_ describe the parameters that a solution, data, or storage offer needs to run. +_Requirements_ describe the parameters that a solution, data, or storage offer needs to run. -_Configurations_ provide flexibility in selecting computing resources and internet access for offer deployment. The compute offer configuration added to an order must meet all the value offer requirements in this order. +_Configurations_ provide flexibility in selecting computing resources and internet access for offer deployment. The compute offer configuration added to an order must meet all the requirements in this order. ## Requirements @@ -31,7 +31,7 @@ Additionally, providers can make their offers available for a fixed price or per ## Configuration -_Configuration_ is a way to divide the resources of a physical confidential computing device into smaller parts. This division enables a better distribution of [compute offer](/fundamentals/offers#types-of-offers) resources between orders. Customers usually do not need the resources of the whole machine for their orders. +_Configuration_ is a way to divide the resources of a physical confidential computing device into smaller parts. This division enables a better distribution of compute offer resources between orders. Customers usually do not need the resources of the whole machine for their orders. Configuration is a combination of _configuration slots_ and _configuration options_. Configuration slots are responsible for compute resources: diff --git a/docs/marketplace/all-orders/index.md b/docs/marketplace/all-orders/index.md index 753c406f..39ac649f 100644 --- a/docs/marketplace/all-orders/index.md +++ b/docs/marketplace/all-orders/index.md @@ -19,7 +19,7 @@ The table in the center of the screen provides essential information about your - **Status**: Current status of the order. Read about [statuses](/fundamentals/orders#order-status). - **Cost to Date**: The total amount of SPPI tokens spent on the order so far. - **Balance**: The remaining order balance. When it reaches zero, the order processing stops. To replenish the balance, open the **Order** screen and click the **Extend Lease** button. -- **Engine**: A solution necessary to deploy the model and provides a user interface. +- **Engine**: A solution that launches the model and provides an interface to interact with it. - **Model**: The main model used in the order. - **Datasets**: The main dataset used in the order. Support for datasets will be added in future releases. diff --git a/docs/marketplace/all-orders/order.md b/docs/marketplace/all-orders/order.md index 2bc346ea..832b4db6 100644 --- a/docs/marketplace/all-orders/order.md +++ b/docs/marketplace/all-orders/order.md @@ -51,8 +51,8 @@ The **Deployment** section informs about the launched tunnel. Tunnels enable end **Status** indicates the current state of the tunnel: -- **Creating**: the tunnel order has been placed, but the tunnel or the model is not ready yet. The AI engine's web UI is not accessible. -- **Online**: the tunnel is operational, and the model is running. End users may access the AI engine's web UI via the **Access Link**. +- **Creating**: the tunnel order has been placed, but the tunnel or the model is not ready yet. The model interface is not accessible. +- **Online**: the tunnel is operational, and the model is running. End users may access the model interface via the **Access Link**. - **Offline**: the tunnel order is done, and the tunnel is no longer available. The model is inaccessible, but the expired **Access Link** remains visible. To get detailed information about the tunnel orders related to the main order, open the **Tunnels Orders** tab at the bottom of the screen. The **Tunnels** section and the **Tunnels Orders** tab only exist for orders that utilize tunnels and are only visible to the user who placed the order. @@ -116,15 +116,15 @@ The **Tunnel Orders** tab contains information about tunnel orders related to th

-- **Date Created** (hidden by default): the date and time when the customer placed the order. -- **Date Modified**: the date and time of the latest change in the order status. -- **Order ID**: a unique offer identification number. It is incremental and continuous for all orders and suborders on Super Protocol. -- **Offer**: the solution used in the tunnel's order or suborder. Read about [orders](/fundamentals/orders) and [tunnels](/fundamentals/tunnels). -- **Status**: current status of the order. Read about [statuses](/fundamentals/orders#order-status). -- **Lease Remaining**: the remaining time until the order is complete and gets the Done status. -- **Cost to Date**: the total amount of SPPI tokens spent on the order so far. -- **Cost Per Hour** (hidden by default): the total cost of all the offers priced per hour. Every hour, the order balance decreases by this amount. -- **Balance**: the remaining order balance. When it reaches zero, the order gets the Done status. You can replenish the balance using the **Extend Lease** button. +- **Date Created** (hidden by default): The date and time when the customer placed the order. +- **Date Modified**: The date and time of the latest change in the order status. +- **Order ID**: A unique offer identification number. It is incremental and continuous for all orders and suborders on Super Protocol. +- **Offer**: The solution used in the tunnel's order or suborder. Read about [orders](/fundamentals/orders) and [tunnels](/fundamentals/tunnels). +- **Status**: The current [order status](/fundamentals/orders#order-status). +- **Lease Remaining**: The remaining time until the order is complete and gets the Done status. +- **Cost to Date**: The total amount of SPPI tokens spent on the order so far. +- **Cost Per Hour** (hidden by default): The total cost of all the offers priced per hour. Every hour, the order balance decreases by this amount. +- **Balance**: The remaining order balance. When it reaches zero, the order gets the Done status. You can replenish the balance using the **Extend Lease** button. ## Events tab diff --git a/docs/marketplace/confidentiality.md b/docs/marketplace/confidentiality.md index 75b7036e..fee29b29 100644 --- a/docs/marketplace/confidentiality.md +++ b/docs/marketplace/confidentiality.md @@ -5,19 +5,19 @@ slug: "/confidentiality" sidebar_position: 21 --- -*Check Confidentiality* is a service that verifies the authenticity of a domain deployed on Super Protocol and ensures its content is running in a valid Trusted Execution Environment (TEE). +*Check Confidentiality* is a service that verifies the authenticity of a domain deployed on Super Protocol and ensures its content is running in a valid Trusted Execution Environment (TEE).

-Super Protocol uses *SSL/TLS certificates* to encrypt the data exchange between the user's browser and the web server inside the Tunnel Client deployment. Besides, Super Protocol Certification Authorities issue certificates for every order—[*order certificates*](/fundamentals/certification). +Super Protocol uses *SSL/TLS certificates* to encrypt the data exchange between the user's browser and the web server inside the Tunnel Client deployment. Besides, Super Protocol Certification Authorities [issue certificates](/fundamentals/certification) for every order. The Check Confidentiality service performs the following: - Validates the order certificate chain to ensure the order is being processed in a correct TEE. - Validates the integrity of the [Tunnel Client](/fundamentals/tunnels) deployment. -- Checks if the solution is a Marketplace offer (for instance, a specific [engine](/marketplace/order-builder#engine)). Otherwise, you will see a warning "Deployed solution is not an offer" meaning the solution cannot be verified. +- Checks if the solution is a Marketplace offer (for instance, a specific engine). Otherwise, you will see a warning "Deployed solution is not an offer" meaning the solution cannot be verified.
diff --git a/docs/marketplace/extras/.release-history.md b/docs/marketplace/extras/.release-history.md index 3e59877e..1971827a 100644 --- a/docs/marketplace/extras/.release-history.md +++ b/docs/marketplace/extras/.release-history.md @@ -7,20 +7,24 @@ sidebar_position: 22 Features coming up in the next phases: -- Publishing offers on the Marketplace from the uploaded files. - Fine-tuning—train new layers of the original models. - Support for datasets. - More models available on the Marketplace. - More AI engines and model categories. - A light UI theme. +_April 30, 2025:_ + +- Publishing offers on the Marketplace from the uploaded files. +- A few thousand models added to the Marketplace by various providers. + _March 10, 2025:_ - Marketplace moves to opBNB. _February 17, 2025:_ -- Marketplace moves from the Amoy testnet to Polygon. +- Marketplace moves from the Amoy testnet to the Polygon mainnet. _November 21, 2024:_ diff --git a/docs/marketplace/guides/deploy-model.md b/docs/marketplace/guides/deploy-model.md index 0ab8bdc5..df9cc5b9 100644 --- a/docs/marketplace/guides/deploy-model.md +++ b/docs/marketplace/guides/deploy-model.md @@ -29,8 +29,8 @@ Uploading models and creating o - **Name**: Type in the model name. Providing a meaningful name makes it easier to find the model later. - **Category**: Select the type of task that the model is designed to perform. -- **Engine**: Select compatible engines; it is recommended to select both variants: - + **GPU-only** engines require CPU+GPU compute offers. +- **Engine**: Select compatible engines; it is recommended to select both variants: + + **GPU-only** engines require CPU+GPU compute offers. + **CPU-only** engines can run on both CPU-only and CPU+GPU compute offers. However, models work much slower in this mode. - **Upload**: Click to upload files or a directory. The selected directory will become the root after upload. @@ -42,7 +42,7 @@ Due to [Testnet limitations](/marketplace/limitations), the total size of model 1.3. Click the **Create Offer** button. Do not close the window until the upload is complete. This may take a few minutes. -1.4. When the upload is complete, close the New Offer window or click **Go to Offer** to open the offer in the [Offer Builder](/marketplace/my-offers/offer-builder). +1.4. When the upload is complete, close the window or click **Go to Offer** to open the offer in the [Offer Builder](/marketplace/my-offers/offer-builder).
diff --git a/docs/marketplace/guides/publish-offer.md b/docs/marketplace/guides/publish-offer.md index 686494ec..a0b31613 100644 --- a/docs/marketplace/guides/publish-offer.md +++ b/docs/marketplace/guides/publish-offer.md @@ -45,8 +45,8 @@ Uploading models and creating o - **Name**: Type in the model name. Providing a meaningful name makes it easier to find the offer on the Marketplace. - **Category**: Select the type of task that the model is designed to perform. -- **Engine**: Select compatible engines; it is recommended to select both variants: - + **GPU-only** engines require CPU+GPU compute offers. +- **Engine**: Select compatible engines; it is recommended to select both variants: + + **GPU-only** engines require CPU+GPU compute offers. + **CPU-only** engines can run on both CPU-only and CPU+GPU compute offers. However, models work much slower in this mode. - **Upload**: Click to upload files or a directory. The selected directory will become the root after upload. diff --git a/docs/marketplace/guides/troubleshooting.md b/docs/marketplace/guides/troubleshooting.md index fb64b20d..1e1937cc 100644 --- a/docs/marketplace/guides/troubleshooting.md +++ b/docs/marketplace/guides/troubleshooting.md @@ -53,7 +53,7 @@ Solution: upload a variant of the model with a lower-bit quantization or choose Some models rely on scripts without which they will not run. If you deploy such a model with the default settings, the order will end with an error. An example of such a model is [cerebras/btlm-3b-8k-base](https://huggingface.co/cerebras/btlm-3b-8k-base). -Solution: allow executing remote code in the engine settings before placing the order: +Solution: allow executing remote code in the engine settings before placing the order: 1. In the Order Builder, open the engine settings. diff --git a/docs/marketplace/images/order-deployed-online.png b/docs/marketplace/images/order-deployed-online.png index 095ae5af804a424b24c097ffdf219b3ceac2f705..e0b2b336b2d38211bf3291cde3d5abf8518ca038 100644 GIT binary patch literal 28531 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 literal 28730 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 G=f40nyZ(j% diff --git a/docs/marketplace/index.md b/docs/marketplace/index.md index 7be956f5..98a12915 100644 --- a/docs/marketplace/index.md +++ b/docs/marketplace/index.md @@ -14,7 +14,7 @@ Super Protocol launched the first public release of Marketplace 2.0 on November - Demo account with OAuth2 login for a quick start. - Support for Intel TDX and NVIDIA GPU confidential computing. - Ability to upload model files to the Super Cloud or personal Storj accounts. -- AI model deployment in confidential tunnels using various AI engines and settings. +- AI model deployment using various engines and settings. - Redesigned UI/UX. Upcoming features in the future development phases: @@ -23,7 +23,7 @@ Upcoming features in the future development phases: - Fine-tuning models by creating new layers for base models. - Support for datasets. - Expanded model availability in the Marketplace. -- Additional AI engines and support for more model categories. +- Additional engines and support for more model categories. - A light UI theme. Any feedback would be very much appreciated—please join our [Discord](https://discord.gg/superprotocol) or use the [contact form](https://superprotocol.zendesk.com/hc/en-us/requests/new). diff --git a/docs/marketplace/limitations.md b/docs/marketplace/limitations.md index abc02763..22ca1bb7 100644 --- a/docs/marketplace/limitations.md +++ b/docs/marketplace/limitations.md @@ -13,7 +13,7 @@ During the testnet, you can deploy models using either Intel TDX CPUs or NVIDIA Super Protocol supports two types of machines: -- **TDX+H100 (CPU and GPU)** can run orders on GPU or CPU, depending on the selected engine type. +- **TDX+H100 (CPU and GPU)** can run orders on GPU or CPU, depending on the selected engine type. - **TDX (CPU only)** can only run orders on CPU. Note that CPUs are much slower. Super Protocol constantly adds more TDX+H100 machines and will soon begin onboarding machines from third-party providers. @@ -21,7 +21,7 @@ Super Protocol constantly adds more TDX+H100 machines and will soon begin onboar Pricing and restrictions: - Order lease time: minimum 2 hours. -- Compute costs 0.2126 SPPI tokens per hour in most cases. +- Compute costs 0.2126 SPPI tokens per hour in most cases. - Currently, models from the Marketplace cost 0 SPPI per order. - Engines cost 0 SPPI per order. - Setting up a confidential tunnel costs 0.1-0.2 SPPI per order. diff --git a/docs/marketplace/models/offer.md b/docs/marketplace/models/offer.md index 2dd06268..c45de938 100644 --- a/docs/marketplace/models/offer.md +++ b/docs/marketplace/models/offer.md @@ -18,8 +18,8 @@ On the right-hand side of the window, you can find metadata about the **Engine** + + **Compute**. - **Provider**: The name of the provider that created the offer. - **Category**: The tasks the model is intended for. - **Source**: A link to the resource from which the model was taken. diff --git a/docs/marketplace/my-offers/new-offer.md b/docs/marketplace/my-offers/new-offer.md index 0912b525..5b6aa8cc 100644 --- a/docs/marketplace/my-offers/new-offer.md +++ b/docs/marketplace/my-offers/new-offer.md @@ -5,7 +5,7 @@ slug: "/my-offers/new-offer" sidebar_position: 1 --- -This window allows you to upload a model and create an offer. After uploading, you can deploy the model. Additionally, you can configure and publish the offer on the Marketplace to lease the uploaded model to other users. +This window allows you to upload a model and create an offer. After uploading, you can deploy the model. Additionally, you can configure and publish the offer on the Marketplace to lease the uploaded model to other users.
@@ -15,8 +15,8 @@ To upload a model, complete all the fields: - **Name**: A model name. Providing a meaningful name makes it easier to find the model later. - **Category**: Type of task that a model is designed to perform. -- **Engine**: A solution to deploy the model and provide a user interface. Each engine has two variants: - + **GPU-only** engines require CPU+GPU compute offers to run. +- **Engine**: A solution designed to launch AI models, customize parameters, configure workflows, and provide an interface to interact with models. Each engine exists in two variants: + + **GPU-only** engines require CPU+GPU compute offers to run. + **CPU-only** engines can run on both CPU-only and CPU+GPU compute offers. However, models work much slower in this mode. - **Upload**: A directory or files to upload. The uploaded model files are encrypted and accessible only to the Confidential Computing machine that deploys the model. diff --git a/docs/marketplace/my-offers/offer-builder.md b/docs/marketplace/my-offers/offer-builder.md index 0b6cb11c..593f34bc 100644 --- a/docs/marketplace/my-offers/offer-builder.md +++ b/docs/marketplace/my-offers/offer-builder.md @@ -43,8 +43,8 @@ This tab contains general information about the offer. - **About\***: Offer description with Markdown support. If the model files contain a `README.md` file, the description will be taken from it. - **Name\***: The offer name. Providing a meaningful name makes it easier to find the model on the Marketplace. - **Category\***: The tasks for which the model is intended. -- **Engine\***: A solution that launches the model and provides a user interface. Each engine exists in two variants: - + GPU-only engines require CPU+GPU compute offers. +- **Engine\***: A solution designed to launch AI models, customize parameters, configure workflows, and provide an interface to interact with models. Each engine exists in two variants: + + GPU-only engines require CPU+GPU compute offers. + CPU-only engines can run on both CPU-only and CPU+GPU compute offers. However, models work much slower in this mode. - **Parameters**: Model parameters in millions or billions. - **License\***: The license under which the model is distributed. diff --git a/docs/marketplace/order-builder/compatibiity.md b/docs/marketplace/order-builder/compatibiity.md index 963a360a..5f093843 100644 --- a/docs/marketplace/order-builder/compatibiity.md +++ b/docs/marketplace/order-builder/compatibiity.md @@ -16,14 +16,14 @@ This message appears when the selected model and a dataset do not belong to the ## Not compatible with the engine -This message appears when the selected engine does not support the model or dataset. An example of such a message: +This message appears when the selected engine does not support the model or dataset. An example of such a message:
## Compute configuration is not sufficient -This message appears when the selected compute configuration does not meet the combined requirements of the models, datasets, and engine added to the order. +This message appears when the selected compute configuration does not meet the combined requirements of the models, datasets, and engine added to the order.
diff --git a/docs/marketplace/order-builder/index.md b/docs/marketplace/order-builder/index.md index 0998edff..384261a9 100644 --- a/docs/marketplace/order-builder/index.md +++ b/docs/marketplace/order-builder/index.md @@ -5,11 +5,11 @@ slug: "/order-builder" sidebar_position: 7 --- -_Order Builder_ is a tool to configure orders to deploy AI models. Deployment orders consist of three main components: +_Order Builder_ is a tool to configure orders to deploy AI models. A deployment order consists of three main components: -- **Model** -- **Engine** -- **Compute** +- **AI model** +- **Engine** +- **Compute**
@@ -30,9 +30,9 @@ Ensure your uploaded model fits into the maximum compute configuration [allowed ## Engine -The term _engine_ refers to the software necessary to deploy models and provide a user interface. +_Engine_ is an application designed to launch AI models, execute model tasks, customize parameters, and provide an interface to interact with models. -Currently, Super Protocol supports two AI engines: +Currently, Super Protocol supports two engines: - **Text Generation Web UI** for text-to-text models. - **ComfyUI** for image- and video-related tasks. diff --git a/src/theme/Layout/index.js b/src/theme/Layout/index.js index b7488128..3eb7b413 100644 --- a/src/theme/Layout/index.js +++ b/src/theme/Layout/index.js @@ -8,29 +8,59 @@ export default function Layout(props) { - Trusted Execution Environment (TEE) is a secure area within a CPU and RAM
for executing code; it is isolated and protected from unauthorized access
from outside the environment. + Trusted Execution Environment (TEE) is a secure area within a CPU and RAM for executing code;
it is isolated and protected from unauthorized access from outside the environment.
- Certification Authority (CA) is an entity that signs and issues
digital certificates. + Certification Authority (CA) is an entity that signs and issues
digital certificates.
- Offers are computing services, software products, and data available on the Marketplace for lease and use in orders. They fall into four categories:
- ᐧ Solution offers: Applications, engines, scripts, base images, and other programs.
- ᐧ Data offers: Any data required by solutions. AI models fall into this category.
- ᐧ Compute offers: Confidential computing resources required to execute solutions.
- ᐧ Storage offers: Decentralized storage used to keep order results after execution. + Offer is a computing service, software product, or data available on the Marketplace for lease and use in orders.
+ Offers are divided into four categories:
+ ᐧ Solution offers: Engines, applications, scripts, base images, and other software.
+ ᐧ Data offers: AI models, webpages, configs, datasets, databases, and any other data that solutions may require.
+ ᐧ Compute offers: Confidential computing resources required to execute solutions and data inside a Trusted Execution Environment.
+ ᐧ Storage offers: Decentralized storage that keeps order results after execution.
- - Order is a digital contract between a customer and a provider to lease an offer.

- The term main order—or simply order—implies leasing a compute offer.

- The term suborder implies leasing a model, engine, or storage offer. + + Offer is a computing service, software product, or data available on the Marketplace for lease and use in orders.
+ Offers are divided into four categories:
+ ᐧ Solution offers: Engines, applications, scripts, base images, and other software.
+ ᐧ Data offers: AI models, webpages, configs, datasets, databases, and any other data that solutions may require.
+ ᐧ Compute offers: Confidential computing resources required to execute solutions and data inside a Trusted Execution Environment.
+ ᐧ Storage offers: Decentralized storage that keeps order results after execution.
- Value offer is a collective term for solution, data, and storage offers. + Value offer is a collective term for solution, data, and storage offers. + + + + Engine is an application designed to launch AI models, customize parameters, configure workflows,
and provide an interface to interact with models. +
+ + + Compute means confidential computing resources required to deploy models, launch confidential tunnels,
and execute solutions inside a Trusted Execution Environment. +
+ + + Solution is an application, engine, script, base image, or other software intended to run on Super Protocol. + + + + Data is an AI model, webpage, config, dataset, database, etc., that solutions may require. + + + + Storage + + + + Orders and suborders are digital contracts between customers and providers to lease offers.

+ The term main order—or simply order—implies leasing a compute offer.

+ The term suborder implies leasing an AI model, engine, or any other offer besides a compute offer.
); From dfb913b67c6334330dd9bb534756394030699887 Mon Sep 17 00:00:00 2001 From: k3dz0r Date: Mon, 12 May 2025 11:26:25 -0400 Subject: [PATCH 2/7] Updated CLI commands; fundamentals/tunnels. --- docs/cli/commands/files/delete.md | 2 - docs/cli/commands/files/download.md | 2 - docs/cli/commands/files/upload.md | 31 +++----------- docs/cli/commands/index.md | 9 ++-- docs/cli/commands/offers/add-slot.md | 42 ++++++++----------- docs/cli/commands/offers/delete-slot.md | 2 - docs/cli/commands/offers/disable.md | 2 - docs/cli/commands/offers/download-content.md | 4 +- docs/cli/commands/offers/enable.md | 2 - docs/cli/commands/offers/get-info.md | 12 +----- docs/cli/commands/offers/get-option.md | 2 - docs/cli/commands/offers/get-slot.md | 4 +- docs/cli/commands/offers/get.md | 12 +----- docs/cli/commands/offers/list.md | 4 +- docs/cli/commands/offers/update-slot.md | 4 +- docs/cli/commands/offers/update.md | 40 +++++++++--------- docs/cli/commands/orders/cancel.md | 2 - docs/cli/commands/orders/download-result.md | 2 - docs/cli/commands/orders/get.md | 2 - docs/cli/commands/orders/list.md | 2 - docs/cli/commands/orders/replenish-deposit.md | 2 - docs/cli/commands/providers/get.md | 5 +-- docs/cli/commands/providers/list.md | 2 - docs/cli/commands/providers/update.md | 2 - docs/cli/commands/quotes/validate.md | 2 +- docs/cli/commands/solutions/generate-key.md | 2 - docs/cli/commands/solutions/prepare.md | 10 +---- docs/cli/commands/tokens/balance.md | 2 - docs/cli/commands/tokens/request.md | 2 - docs/cli/commands/workflows/create.md | 19 +++++++-- docs/cli/index.md | 2 +- docs/fundamentals/offers.md | 14 +++---- docs/fundamentals/tunnels.md | 33 +++++---------- docs/marketplace/guides/deploy-model.md | 6 ++- docs/marketplace/guides/publish-offer.md | 6 ++- 35 files changed, 104 insertions(+), 187 deletions(-) diff --git a/docs/cli/commands/files/delete.md b/docs/cli/commands/files/delete.md index 5054faf1..6755e31d 100644 --- a/docs/cli/commands/files/delete.md +++ b/docs/cli/commands/files/delete.md @@ -32,8 +32,6 @@ The resource JSON file is created as a result of the [`files upload`](/cli/comma ## Example -The following command deletes a file in remote storage using the information in the `resource-old-data.json` file located in the SPCTL root directory: - ``` ./spctl files delete ./resource-old-data.json ``` \ No newline at end of file diff --git a/docs/cli/commands/files/download.md b/docs/cli/commands/files/download.md index bacd8d0e..cc331e9b 100644 --- a/docs/cli/commands/files/download.md +++ b/docs/cli/commands/files/download.md @@ -33,8 +33,6 @@ The resource JSON file is created as a result of the [`files upload`](/cli/comma ## Example -The following command downloads and decrypts a file from remote storage using the information in the `resource-data.json` file located in the SPCTL root directory. The downloaded file will appear in the SPCTL root directory. - ``` ./spctl files download ./resource-data.json ./ ``` \ No newline at end of file diff --git a/docs/cli/commands/files/upload.md b/docs/cli/commands/files/upload.md index b99c0dbc..60167698 100644 --- a/docs/cli/commands/files/upload.md +++ b/docs/cli/commands/files/upload.md @@ -58,15 +58,7 @@ The output of the command is a resource JSON file with the information for a com ## Examples -The following are three examples of using the `workflows create` command: - -- Uploading to remote storage -- Creating a storage order -- Using additional options. - -### Example 1. Upload to remote storage directly - -The following command uploads the `content.tar.gz` file located in the SPCTL root directory: +### Example 1. Upload to storage directly ``` ./spctl files upload content.tar.gz @@ -74,24 +66,20 @@ The following command uploads the `content.tar.gz` file located in the SPCTL roo To execute this command successfully, you need a Storj account and SPCTL configured to use it. Refer to the [Set up Storj](/cli#set-up-storj-access-optional) section to create a bucket and access grants and set up SPCTL. -### Example 2. Upload by creating a storage order - -The following command uploads the `content.tar.gz` located in the SPCTL root directory: +### Example 2. Upload and create a storage order ``` -./spctl files upload content.tar.gz --storage 25,33 --min-rent-minutes 120 +./spctl files upload content.tar.gz --storage 47,49 --min-rent-minutes 120 ``` Where: -- `--storage 25,33`: create a storage order using the [Storj DCS Offer](https://marketplace.superprotocol.com/storage?offer=offerId%3D25&tab=pricing) (offer ID: 25) and the requirement slot with ID 33. -- `--min-rent-minutes 120`: set the lease period for 120 minutes. +- `--storage 47,49`: Create a storage order using the [Storj DCS Offer](https://marketplace.superprotocol.com/storage?offer=offerId%3D47&tab=pricing) (offer ID: 47) and the requirement slot with ID 49. +- `--min-rent-minutes 120`: Set the lease period for 120 minutes. Since the `--storage` option is set, the command does not require a Storj account. However, when the lease period is over, the content will become unavailable unless you [replenish the order deposit](/cli/commands/orders/replenish-deposit). -### Example 3. Use additional options - -The following command uploads the `content.tar.gz` file located in the `data` directory in the SPCTL root directory: +### Example 3. Upload using additional options ``` ./spctl files upload ./data/content.tar.gz \ @@ -101,10 +89,3 @@ The following command uploads the `content.tar.gz` file located in the `data` di --storage 25,33 \ --min-rent-minutes 120 ``` - -Where: - -- `--filename data.tar.gz`: name the uploaded file `data.tar.gz` -- `--output ./data-resource.json`: name the output resource JSON file `data-resource.json` and save it to the SPCTL root directory -- `--metadata ./meta.json`: add the `meta.json` metadata file to the resource file during the upload -- Other options are explained in the previous example. diff --git a/docs/cli/commands/index.md b/docs/cli/commands/index.md index e6069cbb..725fe31b 100644 --- a/docs/cli/commands/index.md +++ b/docs/cli/commands/index.md @@ -35,14 +35,15 @@ _Command groups_ contain functionally related commands. Check the complete list _Commands_ perform a specific function, like placing an order or showing the list of providers. For example, the [`tokens`](/cli/commands/tokens) command group includes the following commands: + - [`balance`](/cli/commands/tokens/balance): checks the balance - [`request`](/cli/commands/tokens/request): requests testnet tokens. _Options_ modify the command behavior and are prefixed by double hyphen `--`. For example, `--help` is an option that displays help information for a command. -_Arguments_ provide values for commands and options. Arguments that follow a command are always required by the command and mandatory to use. Arguments that follow an option can be mandatory—required by the option—or be optional. Angle brackets `< >` indicate argument placeholders in the command syntax. When executing a command, replace placeholders, including the brackets, with values. For example, replace `` with `5` for [Python Base Image](https://marketplace.superprotocol.com/?offer=offerId%3D5) (offer ID: 5). +_Arguments_ provide values for commands and options. Arguments that follow a command are always required by the command and mandatory to use. Arguments that follow an option can be mandatory—required by the option—or be optional. Angle brackets `< >` indicate argument placeholders in the command syntax. When executing a command, replace placeholders, including the brackets, with values. For example, replace `` with `12` for [Python Base Image](https://marketplace.superprotocol.com/?offer=offerId%3D12). -Options, too, can be mandatory—required by the command—or be optional. Note that most options require at least one argument, although exceptions exist. +Options, too, can be mandatory or optional. Most options require at least one argument. Command syntax may also contain the following special characters: @@ -62,12 +63,14 @@ The following is a mandatory option `--solution` of the [`workflows create`](/cl ``` The format `{,[] | }` requires you to choose either `,[]` or ``: + - `,[]` are a mandatory argument `` and an optional argument `` (note the square brackets `[ ]`), separated by a comma. - `` is a mandatory argument. So, the final format of this option must be one of the following: + - `--solution `. For example, `--solution 13`. - `--solution ,`. For example, `--solution 13,15`. - `--solution `. For example, `--solution ./python-solution.json`. -Read the descriptions of arguments and options and refer to the examples for more information. If you have any issues or questions, contact Super Protocol on [Discord](https://discord.gg/superprotocol). \ No newline at end of file +Read the descriptions of arguments and options and refer to the examples for more information. If you have any issues or questions, contact the Super Protocol team on [Discord](https://discord.gg/superprotocol) or via the [contact form](https://superprotocol.zendesk.com/hc/en-us/requests/new) for assistance. \ No newline at end of file diff --git a/docs/cli/commands/offers/add-slot.md b/docs/cli/commands/offers/add-slot.md index 8cb14387..13c89dd4 100644 --- a/docs/cli/commands/offers/add-slot.md +++ b/docs/cli/commands/offers/add-slot.md @@ -8,8 +8,6 @@ sidebar_position: 8 Creates an additional [requirement slot](/fundamentals/slots#requirements) for an offer. -Refer to the [Providers and Offers] guide to create the initial offer requirements. - **Important:** This command requires SPCTL with a [provider configuration file](/cli/#configure-spctl-for-providers). ## Syntax @@ -39,13 +37,14 @@ Refer to the [Providers and Offers] guide to create the initial offer requiremen ## Offer slot file -The offer slot JSON file must contain the following objects and strings: +The offer slot JSON file must contain the following objects: - `info`: object with computing power configuration + `cpuCores`: number of CPU cores required, a float value + `gpuCores`: number of GPU cores required, a float value + `diskUsage`: bytes + `ram`: bytes + + `vram`: bytes - `usage`: object with terms and conditions of usage + `maxTimeMinutes`: minutes; `0` for no limit + `minTimeMinutes`: minutes; `0` for no limit @@ -60,36 +59,29 @@ Offer slot JSON file template with example values: ```json title="offer-new-slot.json" { - "info": { - "cpuCores": 3, - "gpuCores": 0, - "diskUsage": 536870912, - "ram": 34359738368 + "info":{ + "cpuCores":3, + "gpuCores":0, + "diskUsage":536870912, + "ram":34359738368, + "vram":0 }, - "usage": { - "maxTimeMinutes": 0, - "minTimeMinutes": 60, - "price": "400000000000000000", - "priceType": "1" + "usage":{ + "maxTimeMinutes":0, + "minTimeMinutes":60, + "price":"400000000000000000", + "priceType":"1" }, - "option": { - "bandwidth": 0, - "traffic": 0, - "externalPort": 0 + "option":{ + "bandwidth":0, + "traffic":0, + "externalPort":0 } } ``` -Note that some of the data is represented differently in the Marketplace GUI: -- `diskUsage` and `ram` values are converted to gibibytes (GiB) by the formula `initialValue / (1024 ^ 3)` -- `price` value is converted to SPPI tokens by the formula `initialValue / (10 ^ 18)` -- `bandwidth` value is converted to megabits per second (Mbps) by the formula `initialValue / (10 ^ 6)` -- `traffic` value is converted to gigabytes (GB) by the formula `initialValue / (10 ^ 9)` - ## Example -The following command adds a new requirement slot to a value offer with ID 39 using the `offer-new-slot.json` file located in the SPCTL directory: - ``` ./spctl offers add-slot value --offer 39 --path ./offer-new-slot.json ``` \ No newline at end of file diff --git a/docs/cli/commands/offers/delete-slot.md b/docs/cli/commands/offers/delete-slot.md index ef0d525c..fae32467 100644 --- a/docs/cli/commands/offers/delete-slot.md +++ b/docs/cli/commands/offers/delete-slot.md @@ -39,8 +39,6 @@ Use the [`offers get`](/cli/commands/offers/get) command to get the IDs of all s ## Example -The following command deletes a requirement slot with ID 47 in a value offer with ID 39: - ``` ./spctl offers delete-slot value --offer 39 --slot 47 ``` \ No newline at end of file diff --git a/docs/cli/commands/offers/disable.md b/docs/cli/commands/offers/disable.md index d3feb180..e4024faa 100644 --- a/docs/cli/commands/offers/disable.md +++ b/docs/cli/commands/offers/disable.md @@ -33,8 +33,6 @@ Disables an existing enabled of ## Example -The following command disables the offer with ID 39: - ``` ./spctl offers enable 39 ``` \ No newline at end of file diff --git a/docs/cli/commands/offers/download-content.md b/docs/cli/commands/offers/download-content.md index 556e282c..c34e40d8 100644 --- a/docs/cli/commands/offers/download-content.md +++ b/docs/cli/commands/offers/download-content.md @@ -35,8 +35,6 @@ The command only works with offers that allow this operation. ## Example -The following command downloads the content of the [Python Base Image](https://marketplace.superprotocol.com/?offer=offerId%3D5) (offer ID: 5): - ``` -./spctl offers download-content 5 +./spctl offers download-content 12 ``` \ No newline at end of file diff --git a/docs/cli/commands/offers/enable.md b/docs/cli/commands/offers/enable.md index 1336fee5..2efeaaec 100644 --- a/docs/cli/commands/offers/enable.md +++ b/docs/cli/commands/offers/enable.md @@ -33,8 +33,6 @@ Enables an existing disabled of ## Example -The following command enables the offer with ID 39: - ``` ./spctl offers enable 39 ``` \ No newline at end of file diff --git a/docs/cli/commands/offers/get-info.md b/docs/cli/commands/offers/get-info.md index 9c1f70da..ceea9991 100644 --- a/docs/cli/commands/offers/get-info.md +++ b/docs/cli/commands/offers/get-info.md @@ -34,14 +34,6 @@ Displays the information on an ## Example -The following command displays information on the data offer [Image Classification Dataset #2](https://marketplace.superprotocol.com/data?offer=offerId%3D19) (offer ID: 19), as stored on the blockchain: - -``` -./spctl offers get-info value 19 --save-to ./offer-19.json ``` - -Where: - -- `value`: type of the offer -- `19`: offer ID -- `--save-to ./offer-19.json`: path to the file for the output. \ No newline at end of file +./spctl offers get-info value 30 --save-to ./offer-30.json +``` \ No newline at end of file diff --git a/docs/cli/commands/offers/get-option.md b/docs/cli/commands/offers/get-option.md index 7f6514f4..355debab 100644 --- a/docs/cli/commands/offers/get-option.md +++ b/docs/cli/commands/offers/get-option.md @@ -29,8 +29,6 @@ Displays the information on a [configuration option](/fundamentals/slots) of a < ## Example -The following command displays the information on the option with ID 3 of [TEE Offer #1](https://marketplace.superprotocol.com/compute?offerId=1) (offer ID: 1): - ``` ./spctl offers get-option --offer 1 --option 3 ``` \ No newline at end of file diff --git a/docs/cli/commands/offers/get-slot.md b/docs/cli/commands/offers/get-slot.md index dd3e1a8d..300c8546 100644 --- a/docs/cli/commands/offers/get-slot.md +++ b/docs/cli/commands/offers/get-slot.md @@ -39,8 +39,6 @@ Use the [`offers get`](/cli/commands/offers/get) command to get the IDs of all t ## Example -The following command displays the information on a requirement slot with ID 47 in a value offer with ID 39: - ``` -./spctl offers get-slot value --offer 39 --slot 47 +./spctl offers get-slot value --offer 39 --slot 38 ``` \ No newline at end of file diff --git a/docs/cli/commands/offers/get.md b/docs/cli/commands/offers/get.md index 6dc50be0..54e73034 100644 --- a/docs/cli/commands/offers/get.md +++ b/docs/cli/commands/offers/get.md @@ -34,14 +34,6 @@ Displays information on an offe ## Example -The following command displays information on the data offer [Image Classification Dataset #1](https://marketplace.superprotocol.com/data?offer=offerId%3D19) (offer ID: 18): - -``` -./spctl offers get value 18 --save-to ./offer-18.json ``` - -Where: - -- `value`: type of the offer -- `18`: offer ID -- `--save-to ./offer-19.json`: save the output to `offer-19.json` in the SPCTL root directory. \ No newline at end of file +./spctl offers get value 30 --save-to ./offer-30.json +``` \ No newline at end of file diff --git a/docs/cli/commands/offers/list.md b/docs/cli/commands/offers/list.md index f146d092..07a5416a 100644 --- a/docs/cli/commands/offers/list.md +++ b/docs/cli/commands/offers/list.md @@ -62,8 +62,6 @@ The following command displays the IDs, names, and types of the first 30 value offer with ID 39 using the information in the file `offer-slot.json` in the SPCTL directory: - ``` -./spctl offers update-slot value --offer 39 --slot 47 --path ./offer-slot.json +./spctl offers update-slot value --offer 46 --slot 45 --path ./offer-slot.json ``` \ No newline at end of file diff --git a/docs/cli/commands/offers/update.md b/docs/cli/commands/offers/update.md index f4eca28d..17588b80 100644 --- a/docs/cli/commands/offers/update.md +++ b/docs/cli/commands/offers/update.md @@ -62,32 +62,32 @@ The offer slot JSON file may contain the following objects, arrays, and strings: Offer JSON file template with example values for a solution identical to [Image Classification Dataset #1](https://marketplace.superprotocol.com/data?offer=offerId%3D18): -```json title="offer.json" +```json title="offerInfo.json" { - "name": "Image Classification Dataset #1", - "group": "0", - "offerType": "3", - "cancelable": false, - "description": "Dataset with images of various breeds of dogs

This demo dataset is compatible with the Image Classification solution. Refer to the documentation for detailed instructions.", - "restrictions": { - "offers": [ + "name":"Image Classification Dataset #1", + "group":"0", + "offerType":"3", + "cancelable":false, + "description":"Dataset with images of various breeds of dogs

This demo dataset is compatible with the Image Classification solution. Refer to the documentation for detailed instructions.", + "restrictions":{ + "offers":[ "8", "5" ], - "types": [ + "types":[ "2", "2" ] }, - "metadata": "", - "input": "", - "output": "", - "allowedArgs": "", - "allowedAccounts": [], - "argsPublicKey": "", - "resultResource": "", - "linkage": "", - "hash": "" + "metadata":"", + "input":"", + "output":"", + "allowedArgs":"", + "allowedAccounts":[], + "argsPublicKey":"", + "resultResource":"", + "linkage":"", + "hash":"" } ``` @@ -102,8 +102,6 @@ The file may contain only the fields that need to be updated. For example, to on ## Example -The following command updates an existing value offer with ID 39 using the information in the `updated-offer-39.json` in the SPCTL root directory: - ``` -./spctl offers update value 39 --path ./updated-offer-39.json +./spctl offers update value 46 --path ./updated-offer-46.json ``` \ No newline at end of file diff --git a/docs/cli/commands/orders/cancel.md b/docs/cli/commands/orders/cancel.md index c957de20..5be8f7ce 100644 --- a/docs/cli/commands/orders/cancel.md +++ b/docs/cli/commands/orders/cancel.md @@ -30,8 +30,6 @@ Cancels an order. ## Example -The following command cancels the order with ID 1312: - ``` ./spctl orders cancel 1312 ``` \ No newline at end of file diff --git a/docs/cli/commands/orders/download-result.md b/docs/cli/commands/orders/download-result.md index 4451a982..7edcd45f 100644 --- a/docs/cli/commands/orders/download-result.md +++ b/docs/cli/commands/orders/download-result.md @@ -37,8 +37,6 @@ If the order status is `Error`, the result archive will contain a text file with ## Example -The following command downloads the result of the order 1312 and saves it to the `1312.tar.gz` file in the `results` directory: - ``` ./spctl orders download-result 1312 --save-to ./results/1312.tar.gz ``` \ No newline at end of file diff --git a/docs/cli/commands/orders/get.md b/docs/cli/commands/orders/get.md index e33bdb9e..683ff288 100644 --- a/docs/cli/commands/orders/get.md +++ b/docs/cli/commands/orders/get.md @@ -38,8 +38,6 @@ This command allows you to check any order, not only yours. The information on a ## Example -The following command display the information on the order with ID 3770, including the IDs and offer names of its suborders: - ``` ./spctl orders get 3770 \ --suborders true \ diff --git a/docs/cli/commands/orders/list.md b/docs/cli/commands/orders/list.md index 5ed98971..edc0e4b3 100644 --- a/docs/cli/commands/orders/list.md +++ b/docs/cli/commands/orders/list.md @@ -38,8 +38,6 @@ This command displays a list of all orders and suborders, unless the `--my-accou ## Example -The following command displays the IDs, offer names, and offer descriptions of all the compute orders created by the current Testnet account: - ``` ./spctl orders list --fields id,offer_name,offer_description --my-account true --type tee ``` \ No newline at end of file diff --git a/docs/cli/commands/orders/replenish-deposit.md b/docs/cli/commands/orders/replenish-deposit.md index a9747c1b..35be5686 100644 --- a/docs/cli/commands/orders/replenish-deposit.md +++ b/docs/cli/commands/orders/replenish-deposit.md @@ -33,8 +33,6 @@ Certain orders requi ## Example -The following command adds 3 SPPI tokens to the deposit of the order with ID 1312: - ``` ./spctl orders replenish-deposit 1312 3 ``` \ No newline at end of file diff --git a/docs/cli/commands/providers/get.md b/docs/cli/commands/providers/get.md index d521b66c..b77611ca 100644 --- a/docs/cli/commands/providers/get.md +++ b/docs/cli/commands/providers/get.md @@ -32,9 +32,6 @@ Displays the information on a provider using its authority account address. ## Example -The following command displays the name, address, and description of the provider with the authority account 0xB9f0b77BDbAe9fBe3E60BdC567E453f503605BAa: - ``` -./spctl providers get 0xB9f0b77BDbAe9fBe3E60BdC567E453f503605BAa \ - --fields name,address,description +./spctl providers get 0xB9f0b77BDC567E453fbAe9fBe3E60Bd503605BAa --fields name,address,description ``` \ No newline at end of file diff --git a/docs/cli/commands/providers/list.md b/docs/cli/commands/providers/list.md index 6d7cbe16..5a9320da 100644 --- a/docs/cli/commands/providers/list.md +++ b/docs/cli/commands/providers/list.md @@ -28,8 +28,6 @@ Lists all registered providers. ## Example -The following command displays the names, descriptions, authority account addresses, and action account addresses of all registered providers: - ``` ./spctl providers list --fields name,description,authority_account,action_account ``` \ No newline at end of file diff --git a/docs/cli/commands/providers/update.md b/docs/cli/commands/providers/update.md index 1c0f8096..5bfd6d50 100644 --- a/docs/cli/commands/providers/update.md +++ b/docs/cli/commands/providers/update.md @@ -54,8 +54,6 @@ Template with example values: ## Example -The following command updates the current provider using the `updated-provider.json` file located in the SPCTL root directory: - ``` ./spctl providers update --path ./updated-provider.json ``` \ No newline at end of file diff --git a/docs/cli/commands/quotes/validate.md b/docs/cli/commands/quotes/validate.md index b5859487..ac1e0f77 100644 --- a/docs/cli/commands/quotes/validate.md +++ b/docs/cli/commands/quotes/validate.md @@ -5,7 +5,7 @@ slug: "/commands/quotes/validate" sidebar_label: "validate" --- -Checks if the domain content runs in a Trusted Execution Environment. The command also displays if the domain content is a Super Protocol offer. +Checks if the domain content runs in a Trusted Execution Environment. The command also displays if the domain content is an offer. ## Syntax diff --git a/docs/cli/commands/solutions/generate-key.md b/docs/cli/commands/solutions/generate-key.md index d975c257..9213e53b 100644 --- a/docs/cli/commands/solutions/generate-key.md +++ b/docs/cli/commands/solutions/generate-key.md @@ -32,8 +32,6 @@ Docker needs this key to [pack a solution](/cli/commands/solutions/prepare) into ## Example -The following command generates a signing key and saves it to the `new-key` file in the SPCTL root directory: - ``` ./spctl solutions generate-key ./new-key ``` \ No newline at end of file diff --git a/docs/cli/commands/solutions/prepare.md b/docs/cli/commands/solutions/prepare.md index 66a15625..eb0f30bc 100644 --- a/docs/cli/commands/solutions/prepare.md +++ b/docs/cli/commands/solutions/prepare.md @@ -67,15 +67,7 @@ Note that the base image is graminized but not included in the output archive fi ## Example -The following command prepares a solution: - ``` ./spctl solutions prepare ./my-solution/run ./my-solution/signing-key \ --base-image-path ./base-solution-image.tar.gz -``` - -Where: - -- `./my-solution/run`: solution directory -- `./my-solution/signing-key`: path to the signing key -- `--base-image-path ./base-solution-image.tar.gz`: path to the base image file `base-solution-image.tar.gz`. \ No newline at end of file +``` \ No newline at end of file diff --git a/docs/cli/commands/tokens/balance.md b/docs/cli/commands/tokens/balance.md index 21329140..4181a48c 100644 --- a/docs/cli/commands/tokens/balance.md +++ b/docs/cli/commands/tokens/balance.md @@ -24,8 +24,6 @@ Displays the balance of SPPI and BNB tokens in your wallet. ## Example -The following command checks the balance of the account specified in the `config-provider.json` file. - ``` ./spctl tokens balance --config ./config-provider.json ``` \ No newline at end of file diff --git a/docs/cli/commands/tokens/request.md b/docs/cli/commands/tokens/request.md index 5d53cc51..aca53d74 100644 --- a/docs/cli/commands/tokens/request.md +++ b/docs/cli/commands/tokens/request.md @@ -30,8 +30,6 @@ This command is only available during the Testnet. Be mindful of [Testnet limita ## Example -The following command requests SPPI tokens: - ``` ./spctl tokens request --tee ``` \ No newline at end of file diff --git a/docs/cli/commands/workflows/create.md b/docs/cli/commands/workflows/create.md index 98b5af5a..1dc8c866 100644 --- a/docs/cli/commands/workflows/create.md +++ b/docs/cli/commands/workflows/create.md @@ -9,7 +9,7 @@ Creates a main compute ordersolutions and data, you can add to an order either Marketplace offer or [uploaded files](/cli/commands/files/upload). Refer to the [fundamentals](/fundamentals) to understand the logic of the Super Protocol order creation process. +For solutions and data, you can add to an order either a Marketplace offer or [uploaded files](/cli/commands/files/upload). Refer to the [fundamentals](/fundamentals) to understand the logic of the Super Protocol order creation process. ## Syntax @@ -18,11 +18,12 @@ For solutions and --solution {,[] | } [--solution ...] --storage ,[] [--data {,[] | }] [--data ...] + [--solution-configuration ] [--tee ,[]] [--tee-slot-count ] [--tee-options [ ...]] [--tee-options-count [ ...]] - [--deposit ] + [--deposit ] [--min-rent-minutes ] [--config ] [--help | -h] @@ -35,11 +36,23 @@ For solutions and | `--solution {,[] │ }` | Solution you are adding to the order:

• For a Marketplace offer, state the solution offer ID and the solution [requirement slot](/fundamentals/slots#requirements) ID (optional), separated by a comma. If the requirement slot is not specified, it will be selected automatically.
• For an [uploaded](/cli/commands/files/upload) solution, state the path to the solution resource JSON file.

You can use this option multiple times. | | `--storage ,[]` | Storage offer you are adding to the order. State the storage offer ID and the storage requirement slot ID (optional), separated by a comma. If the requirement slot is not specified, it will be selected automatically. | | `--data {,[] │ }` | Data you are adding to the order:

• For a Marketplace offer, state the data offer ID and the data requirement slot ID (optional), separated by a comma. If the requirement slot is not specified, it will be selected automatically.
• For [uploaded](/cli/commands/files/upload) data, state the path to the data resource JSON file.

You can use this option multiple times.

Although this option is technically not mandatory, most solutions require data. | +| `--solution-configuration ` | A solution configuration JSON file. | | `--tee ,[]` | Compute offer you are adding to the order. State the compute offer ID and, optionally, the [configuration slot](/fundamentals/slots#configuration) ID, separated by a comma. If the configuration slot is not specified, it will be selected automatically.

If you do not use this option, the compute offer and its configuration will be selected automatically. | | `--tee-slot-count ` | Configuration slot increments—how many times the selected slot is applied. Use this option together with `--tee`.

If you do not use this option, the increments will be calculated automatically. | | `--tee-options [ ...]` | IDs of [configuration options](/fundamentals/slots#configuration) separated by spaces. Use `--tee-options` together with `--tee`.

If you do not use `--tee-options`, configuration options will be selected automatically. | | `--tee-options-count [ ...]` | Increments for each configuration option separated by spaces. Use `--tee-options-count` together with `--tee` and `--tee-options`.

If you do not use `--tee-options-count`, increments will be calculated automatically. | -| `--deposit ` | [Deposit](/fundamentals/orders#usage-scenarios) in SPPI tokens. The default is the minimum required deposit. | +| `--deposit ` | [Deposit](/fundamentals/orders#usage-scenarios) in SPPI tokens. The default is the minimum required deposit. | | `--min-rent-minutes ` | Compute [lease time](/fundamentals/orders#usage-scenarios) in minutes. Using this option will increase the required deposit. The default is the minimum required time. | | `--config ` | Path to the SPCTL configuration file. The default is `./config.json`. | | `--help`, `-h` | Help for the command. | + +## Example + +``` +./spctl workflows create \ + --tee 8 \ + --solution 25 \ + --solution-configuration ./engine-configuration.json \ + --data ./data-resource.json \ + --storage 47 +``` diff --git a/docs/cli/index.md b/docs/cli/index.md index 1f295ba1..e2cf7708 100644 --- a/docs/cli/index.md +++ b/docs/cli/index.md @@ -198,7 +198,7 @@ If you use a free Storj account, your files will become unavailable after the en ::: -2. Create a bucket for your encrypted solutions and data. Refer to the [Storj documentation](https://docs.storj.io/dcs/getting-started/quickstart-objectbrowser/) for guidance. +2. Create a bucket for your encrypted solutions and data. Refer to the [Storj documentation](https://docs.storj.io/dcs/getting-started/quickstart-objectbrowser/) for guidance. 3. Create two access grants for this bucket. One should provide **Full** permission (**Read**, **List**, **Write**, **Delete**), and the other one **Read** permission. Refer to the [Storj guide](https://docs.storj.io/dcs/getting-started/quickstart-uplink-cli/uploading-your-first-object/create-first-access-grant/) to generate access grants. diff --git a/docs/fundamentals/offers.md b/docs/fundamentals/offers.md index 4a5f86b7..f0d66300 100644 --- a/docs/fundamentals/offers.md +++ b/docs/fundamentals/offers.md @@ -1,6 +1,6 @@ --- id: "offers" -title: "Offers and Providers" +title: "Providers and Offers" slug: "/offers" sidebar_position: 2 --- @@ -13,7 +13,7 @@ _Providers_ share and monetize their applications and datasets by creating and m Offers are the basic building blocks of the Marketplace. Four types of offers exist in Super Protocol: -- _Compute offers_: Confidential computing resources required to deploy models, launch confidential tunnels, and execute solutions inside a Trusted Execution Environment. +- _Compute offers_: Confidential computing resources required to deploy models, launch confidential tunnels, and execute solutions inside a Trusted Execution Environment (TEE). - _Solution offers_: Applications such as AI frameworks, base images, tunnels, oracles, etc. - _Data offers_: AI models, webpages, configs, datasets, databases, etc. - _Storage offers_: Decentralized storage, such as Storj, to keep the offer content, order results, and service files. @@ -30,11 +30,11 @@ Every offer has an identification number—_offer ID_. It is incremental and uni ### Compute -Compute offer is the main component in any order. It provides the resources and a Trusted Execution Environment necessary to perform a secure execution of solutions. +Compute offer is the main component in any order. It provides the resources and a TEE necessary to perform a secure execution of solutions. A compute offer is a combination of two parts: -- A record on the blockchain containing the parameters that govern how to order the offer +- A record on the blockchain containing the parameters that govern how to order the offer. - A physical confidential computing device connected to Super Protocol. To balance the load and set better prices for the users, the compute provider can divide the resources of the physical machine into smaller parts—configuration [slots and options](/fundamentals/slots#configuration). @@ -115,8 +115,8 @@ Every offer comes with the following descriptive parameters: - **Provider**: name of the provider who created the offer. - **Published date**: the date when the offer was created. - **Updated date**: the date when changes were made to the offer. -- **MRENCLAVE**: value that represents the hash of the code and data inside a Trusted Execution Environment. -- **MRSIGNER**: value for identifying the signing entity of a Trusted Execution Environment. +- **MRENCLAVE**: value that represents the hash of the code and data inside a TEE. +- **MRSIGNER**: value for identifying the signing entity of a TEE. ## Rules @@ -145,6 +145,6 @@ _Configuration options_ are sets of network-related parameters of compute offers - Traffic - External port availability -Compute providers can create multiple configuration slots and options for every offer and price them differently. The customer must choose a compute configuration to meet the sum of all the solution, data, and storage requirements in the order. +Compute providers can create multiple configuration slots and options for every offer and price them differently. A compute configuration selected for an order must meet the sum of all the solution, data, and storage requirements in this order. Read more in [Slots and Options](/fundamentals/slots). \ No newline at end of file diff --git a/docs/fundamentals/tunnels.md b/docs/fundamentals/tunnels.md index 253dc16a..7fe341c8 100644 --- a/docs/fundamentals/tunnels.md +++ b/docs/fundamentals/tunnels.md @@ -5,37 +5,26 @@ slug: "/tunnels" sidebar_position: 5 --- -_Tunneling_ is a communication method that wraps data within a different data format to transmit securely and efficiently across a network. This creates a virtual communication channel—a _tunnel_—within the network. Data passes through securely and appears to be traveling over a direct connection. +_Tunneling_ is a communication method that encapsulates data within a different format to enable secure, efficient transmission over a network. It creates a virtual communication channel—a _tunnel_—that allows data to travel as if over a direct secure connection. -Super Protocol has implemented tunnels to provide decentralized confidential computing as a web service. In Super Protocol, a tunnel consists of the Tunnel Server and Tunnel Client solutions with a confidential connection between them. Tunnel servers have an external public IP. They are accessible from the internet via HTTPS through a browser or another service through API. Tunnel clients run web servers and hide behind tunnel servers from malicious attacks. Both tunnel server and client run inside a Trusted Execution Environment on their respective machines. This ensures the confidentiality of the content and execution. +Super Protocol uses tunnels to provide decentralized confidential computing as a web service. A tunnel consists of two components with a confidential connection between them: -Super Protocol supports the deployment of multiple instances of clients and servers. Distributing tunnels over different cloud service providers increases decentralization and fault tolerance. +- The _tunnel server_ has a public IP address and is accessible over HTTPS via a browser or API. +- The _tunnel client_, which hosts a web server, remains hidden behind the tunnel server and protected from external threats. -A good practice when deploying tunnels through Super Protocol is to deploy multiple instances of clients and servers and distribute them over different CSPs, thus increasing decentralization and fault tolerance. +Both the tunnel server and tunnel client operate inside a Trusted Execution Environment (TEE) on separate compute machines, ensuring data confidentiality and secure execution. + +Multiple tunnel servers and clients can be deployed across different cloud service providers (CSPs), increasing decentralization and fault tolerance.
## Advantages -**Hide the internal network structure.** Tunneling conceals the structure of the internal network from the outside. This makes it difficult to launch attacks on internal resources since attackers will not know which services are within the network. - -**Enhance security.** Tunneling combined with encryption ensures the confidentiality and integrity of transmitted data. Encryption protocols such as HTTPS protect data during transmission and guard against man-in-the-middle attacks. - -**Reduce attacks on web servers.** Attackers cannot directly target a web server because it does not have a public IP address and is only accessible through a tunnel. Network-level attacks such as DDos are directed to the server with a public IP address. This helps to reduce the risk of impacting the web server. - -**Increase flexibility and scalability.** Tunneling allows flexible configuration of the network infrastructure and facilitates the scalability of the system. It is possible to add or remove tunnel servers and tunnel clients through DNS without affecting the whole system. Tunnel servers also act as load balancers by using a round-robin mechanism to evenly distribute requests among multiple client tunnels. - - - - - - - - - - - +**Hide the internal network structure:** Tunneling conceals internal services, making it difficult for attackers to identify or target them. +**Enhance security:** Tunneling combined with encryption protects data integrity and confidentiality, preventing man-in-the-middle and other attacks during transmission. +**Reduce exposure of web servers:** Web servers without public IPs are only reachable via tunnels. This limits exposure and deflects network-level attacks, such as DDoS, to the publicly accessible tunnel server. +**Increase flexibility and scalability:** Tunnel clients and tunnel servers can be added or removed via DNS without disrupting the system. Tunnel servers also distribute traffic evenly among tunnel clients using round-robin load balancing. \ No newline at end of file diff --git a/docs/marketplace/guides/deploy-model.md b/docs/marketplace/guides/deploy-model.md index df9cc5b9..7c9c517e 100644 --- a/docs/marketplace/guides/deploy-model.md +++ b/docs/marketplace/guides/deploy-model.md @@ -65,4 +65,8 @@ Due to [Testnet limitations](/marketplace/limitations), the total size of model 2.4. When your order is ready, you will see the Deployed status and an Access Link to your model's interface. - \ No newline at end of file + + +## Contact Super Protocol + +If you face any issues, do not hesitate to contact the Super Protocol team on [Discord](https://discord.gg/superprotocol) or via the [contact form](https://superprotocol.zendesk.com/hc/en-us/requests/new) for assistance. \ No newline at end of file diff --git a/docs/marketplace/guides/publish-offer.md b/docs/marketplace/guides/publish-offer.md index a0b31613..e4e9a889 100644 --- a/docs/marketplace/guides/publish-offer.md +++ b/docs/marketplace/guides/publish-offer.md @@ -148,4 +148,8 @@ If the uploaded model exists in several formats, create requirement slots for ea Click **Publish Offer** in the bottom-right corner to validate and publish the offer on the Marketplace. If validation is unsuccessful, you will see yellow indicators marking the fields that need to be configured before the offer can be published. -If you want to unpublish the offer, click the **[ ⋮ ]** button in the top-right corner of the screen. Note that offers cannot be completely deleted due to the blockchain immutability. However, unpublished offers do not appear on the Marketplace and cannot be used in orders. \ No newline at end of file +If you want to unpublish the offer, click the **[ ⋮ ]** button in the top-right corner of the screen. Note that offers cannot be completely deleted due to the blockchain immutability. However, unpublished offers do not appear on the Marketplace and cannot be used in orders. + +## Contact Super Protocol + +If you face any issues, do not hesitate to contact the Super Protocol team on [Discord](https://discord.gg/superprotocol) or via the [contact form](https://superprotocol.zendesk.com/hc/en-us/requests/new) for assistance. \ No newline at end of file From 917097cb2067c754b71bf24f91f3fe47fa782341 Mon Sep 17 00:00:00 2001 From: k3dz0r Date: Thu, 15 May 2025 13:42:56 -0400 Subject: [PATCH 3/7] Added tooltip: tunnel. Small fixes. --- docs/fundamentals/offers.md | 2 +- docs/fundamentals/orders.md | 2 +- docs/fundamentals/tunnels.md | 4 ++-- docs/marketplace/all-orders/order.md | 20 +++++++++----------- docs/marketplace/confidentiality.md | 8 ++++---- docs/marketplace/limitations.md | 2 +- docs/marketplace/order-builder/checkout.md | 2 +- docs/marketplace/order-builder/index.md | 2 +- src/theme/Layout/index.js | 22 +++++++++++++--------- 9 files changed, 33 insertions(+), 31 deletions(-) diff --git a/docs/fundamentals/offers.md b/docs/fundamentals/offers.md index f0d66300..4b79d493 100644 --- a/docs/fundamentals/offers.md +++ b/docs/fundamentals/offers.md @@ -13,7 +13,7 @@ _Providers_ share and monetize their applications and datasets by creating and m Offers are the basic building blocks of the Marketplace. Four types of offers exist in Super Protocol: -- _Compute offers_: Confidential computing resources required to deploy models, launch confidential tunnels, and execute solutions inside a Trusted Execution Environment (TEE). +- _Compute offers_: Confidential computing resources required to deploy models, launch confidential tunnels, and execute solutions inside a Trusted Execution Environment (TEE). - _Solution offers_: Applications such as AI frameworks, base images, tunnels, oracles, etc. - _Data offers_: AI models, webpages, configs, datasets, databases, etc. - _Storage offers_: Decentralized storage, such as Storj, to keep the offer content, order results, and service files. diff --git a/docs/fundamentals/orders.md b/docs/fundamentals/orders.md index 4d116a47..5bd30508 100644 --- a/docs/fundamentals/orders.md +++ b/docs/fundamentals/orders.md @@ -37,7 +37,7 @@ The storage suborder keeps the encrypted order result for as long as the custome Depending on the solution, there are two typical usage scenarios: - One-off orders perform a specific computation and produce a result, such as an order to fine-tune an AI model. -- Long-term orders keep running as long as the order has money in the balance. For example, an order to deploy an AI model using an engine with a web interface accessible through a confidential tunnel. +- Long-term orders keep running as long as the order has money in the balance. For example, an order to deploy an AI model using an engine with a web interface accessible through a confidential tunnel. _Lease time_ is the duration for which a customer rents the services of an offer. Solutions, data, and storage are suborders, so their lease time is tied to the compute lease time. diff --git a/docs/fundamentals/tunnels.md b/docs/fundamentals/tunnels.md index 7fe341c8..08e0953f 100644 --- a/docs/fundamentals/tunnels.md +++ b/docs/fundamentals/tunnels.md @@ -9,8 +9,8 @@ _Tunneling_ is a communication method that encapsulates data within a different Super Protocol uses tunnels to provide decentralized confidential computing as a web service. A tunnel consists of two components with a confidential connection between them: -- The _tunnel server_ has a public IP address and is accessible over HTTPS via a browser or API. -- The _tunnel client_, which hosts a web server, remains hidden behind the tunnel server and protected from external threats. +- A _tunnel server_ has a public IP address and is accessible over HTTPS via a browser or API. +- A _tunnel client_ hosts a web server; it remains hidden behind the tunnel server and protected from external threats. Both the tunnel server and tunnel client operate inside a Trusted Execution Environment (TEE) on separate compute machines, ensuring data confidentiality and secure execution. diff --git a/docs/marketplace/all-orders/order.md b/docs/marketplace/all-orders/order.md index 832b4db6..71b68082 100644 --- a/docs/marketplace/all-orders/order.md +++ b/docs/marketplace/all-orders/order.md @@ -5,7 +5,7 @@ slug: "/all-orders/order" sidebar_position: 1 --- -This screen provides detailed information about a particular order. Read about [Orders](/fundamentals/orders). +This screen provides detailed information about a particular order.
@@ -22,7 +22,7 @@ The contents of an order are encrypted and accessible only to the user who place - **In Queue**. The order is awaiting in the queue for the computing device to become available. - **Processing**. The machine is executing the order inside a Trusted Execution Environment. -Statuses specific for Deploy orders: +Statuses specific for deployment orders: - **Deployed**. The model is running and available via the **Access Link**. - **Done**. The model is no longer running. @@ -35,7 +35,7 @@ Additional possible statuses: Read about [statuses](/fundamentals/orders#order-status). -**Lease Remaining** indicates the remaining time until the order is completed and gets the Done status. It is calculated by dividing the remaining order balance by the total cost of all the offers priced per hour. For Deploy orders with the Deployed status, it is the duration the model will remain operational. +**Lease Remaining** indicates the remaining time until the order is completed and gets the Done status. It is calculated by dividing the remaining order balance by the total cost of all the offers priced per hour. For deployment orders with the Deployed status, it is the duration the model will remain operational. ## Financials @@ -47,7 +47,7 @@ The **Financials** section shows payment-related information about the order: ## Deployment -The **Deployment** section informs about the launched tunnel. Tunnels enable end users to securely access a model deployed on Super Protocol from the internet. Read about [Tunnels](/fundamentals/tunnels). +The **Deployment** section informs about the launched tunnel. **Status** indicates the current state of the tunnel: @@ -69,7 +69,7 @@ These buttons are only visible to the user who placed the order. ### Cancel Order -The **Cancel Order** button lets you cancel the order and transfer the remaining balance back to your wallet. Clicking the button initiates the cancellation process by creating a transaction that Web3 users should **Confirm** in MetaMask. If you **Reject** the transaction, the cancellation process will not proceed. +The **Cancel Order** button lets you cancel the order and transfer the remaining balance back to your wallet. Clicking the button initiates the cancellation process by creating a transaction that Web3 users should **Confirm** in MetaMask.
@@ -79,7 +79,7 @@ The **Cancel Order** button lets you cancel the order and transfer the remaining The **Extend Lease** button opens the **Extend Lease** window that allows you to add SPPI tokens to the order balance: - For Fine-tune orders, it may be necessary to finish the computation. -- For Deploy orders, it increases the time the model will be running. +- For deployment orders, it increases the time the model will be running.
@@ -106,11 +106,9 @@ The **Providers** tab contains additional information about the order and its su Click the suborder's **ID** number to open its **Order** screen. Note that some suborders may not be available to view. -Read more about [order types](/fundamentals/orders). - ## Tunnel Orders tab -The **Tunnel Orders** tab contains information about tunnel orders related to the main order. The tab is visible only for orders that utilize tunnels. +The **Tunnel Orders** tab contains information about the tunnel orders related to the main order. The tab is visible only for orders that utilize tunnels.
@@ -119,8 +117,8 @@ The **Tunnel Orders** tab contains information about tunnel orders related to th - **Date Created** (hidden by default): The date and time when the customer placed the order. - **Date Modified**: The date and time of the latest change in the order status. - **Order ID**: A unique offer identification number. It is incremental and continuous for all orders and suborders on Super Protocol. -- **Offer**: The solution used in the tunnel's order or suborder. Read about [orders](/fundamentals/orders) and [tunnels](/fundamentals/tunnels). -- **Status**: The current [order status](/fundamentals/orders#order-status). +- **Offer**: The solution used in the tunnel order or suborder. +- **Status**: The current order status. - **Lease Remaining**: The remaining time until the order is complete and gets the Done status. - **Cost to Date**: The total amount of SPPI tokens spent on the order so far. - **Cost Per Hour** (hidden by default): The total cost of all the offers priced per hour. Every hour, the order balance decreases by this amount. diff --git a/docs/marketplace/confidentiality.md b/docs/marketplace/confidentiality.md index fee29b29..8a1e3337 100644 --- a/docs/marketplace/confidentiality.md +++ b/docs/marketplace/confidentiality.md @@ -11,12 +11,12 @@ sidebar_position: 21

-Super Protocol uses *SSL/TLS certificates* to encrypt the data exchange between the user's browser and the web server inside the Tunnel Client deployment. Besides, Super Protocol Certification Authorities [issue certificates](/fundamentals/certification) for every order. +Super Protocol uses *SSL/TLS certificates* to encrypt the data exchange between the user's browser and the web server inside a tunnel client deployment. Besides, Super Protocol Certification Authorities [issue certificates](/fundamentals/certification) for every order. The Check Confidentiality service performs the following: - Validates the order certificate chain to ensure the order is being processed in a correct TEE. -- Validates the integrity of the [Tunnel Client](/fundamentals/tunnels) deployment. +- Validates the integrity of the tunnel client deployment. - Checks if the solution is a Marketplace offer (for instance, a specific engine). Otherwise, you will see a warning "Deployed solution is not an offer" meaning the solution cannot be verified. @@ -27,10 +27,10 @@ To view the service report, paste the domain URL, for example, **Access Link** a ## Validation -The Tunnel Client signs the fingerprint of the domain SSL/TLS certificate with the order certificate's private key. Then, it provides to the Check Confidentiality service: +The tunnel client signs the fingerprint of the domain SSL/TLS certificate with the order certificate's private key. Then, it provides to the Check Confidentiality service: - The SSL/TLS certificate fingerprint—the expected fingerprint. -- The fingerprint signature. A valid signature means the Tunnel Client has the private key to the order certificate. +- The fingerprint signature. A valid signature means the tunnel client has the private key to the order certificate. - The order certificate chain to check that all the certificates in the chain have not expired or been revoked. A valid certificate chain means the order is being processed in a correct TEE. ## Fingerprint comparison diff --git a/docs/marketplace/limitations.md b/docs/marketplace/limitations.md index 22ca1bb7..c3b7a959 100644 --- a/docs/marketplace/limitations.md +++ b/docs/marketplace/limitations.md @@ -24,7 +24,7 @@ Pricing and restrictions: - Compute costs 0.2126 SPPI tokens per hour in most cases. - Currently, models from the Marketplace cost 0 SPPI per order. - Engines cost 0 SPPI per order. -- Setting up a confidential tunnel costs 0.1-0.2 SPPI per order. +- Setting up a confidential tunnel costs 0.1-0.2 SPPI per order. For example, a two-hour GPU-order would cost: diff --git a/docs/marketplace/order-builder/checkout.md b/docs/marketplace/order-builder/checkout.md index 5dc80db4..7662c9a2 100644 --- a/docs/marketplace/order-builder/checkout.md +++ b/docs/marketplace/order-builder/checkout.md @@ -18,7 +18,7 @@ The confirmation process depends on the account type: - **Web3 users** must confirm transactions in MetaMask. If the MetaMask browser extension do not open automatically, open it manually, select the transaction in the **Activity** tab, and confirm it. - **Web2 users** do not need to confirm transactions, as they do not pay using decentralized wallets. Instead, payment relies on Super Protocol. The transactions are processed automatically. -Note that **Deploy** orders require confirmation of two transactions—one to pay for the Tunnels Launcher order and another for the main (Deploy) order. Tunnels Launcher creates a set of [confidential tunnels](/fundamentals/tunnels) necessary to access the running model from the internet. +Note that **Deploy** orders require confirmation of two transactions—one to pay for the Tunnels Launcher order and another for the main (Deploy) order. Tunnels Launcher creates a confidential tunnel necessary to access the running model from the internet. Once the order is placed successfully, you will be redirected to its [**Order**](/marketplace/all-orders/order) screen. diff --git a/docs/marketplace/order-builder/index.md b/docs/marketplace/order-builder/index.md index 384261a9..af7de474 100644 --- a/docs/marketplace/order-builder/index.md +++ b/docs/marketplace/order-builder/index.md @@ -87,7 +87,7 @@ Refer to the [Text Generation Web UI API documentation](https://github.com/oobab ### Tunnels -Placing a deployment order also places an order for a [confidential tunnel](https://docs.superprotocol.com/fundamentals/tunnels) to access the engine's web UI via HTTPS. The engine settings include the **Tunnels** tab with **Domain Settings**: +Placing a deployment order also places an order for a confidential tunnel to access the engine's web UI via HTTPS. The engine settings include the **Tunnels** tab with **Domain Settings**: - **Temporary Domain** uses pre-configured settings to create a domain on `superprotocol.io` with a randomly generated name, for example, `mund-avys-kefs.superprotocol.io`. It is the recommended option that does not require additional setup. - **Manual Configuration** will allow advanced users to host a model on a custom domain. This feature is not yet available. diff --git a/src/theme/Layout/index.js b/src/theme/Layout/index.js index 3eb7b413..af4c70c5 100644 --- a/src/theme/Layout/index.js +++ b/src/theme/Layout/index.js @@ -16,7 +16,7 @@ export default function Layout(props) {
- Offer is a computing service, software product, or data available on the Marketplace for lease and use in orders.
+ Offer is a computing service, software product, or data available on the Marketplace for lease and use in orders.
Offers are divided into four categories:
ᐧ Solution offers: Engines, applications, scripts, base images, and other software.
ᐧ Data offers: AI models, webpages, configs, datasets, databases, and any other data that solutions may require.
@@ -25,7 +25,7 @@ export default function Layout(props) {
- Offer is a computing service, software product, or data available on the Marketplace for lease and use in orders.
+ Offer is a computing service, software product, or data available on the Marketplace for lease and use in orders.
Offers are divided into four categories:
ᐧ Solution offers: Engines, applications, scripts, base images, and other software.
ᐧ Data offers: AI models, webpages, configs, datasets, databases, and any other data that solutions may require.
@@ -33,8 +33,8 @@ export default function Layout(props) { ᐧ Storage offers: Decentralized storage that keeps order results after execution.
- - Value offer is a collective term for solution, data, and storage offers. + + Value offer is a collective term for solution, data, and storage offers. @@ -53,15 +53,19 @@ export default function Layout(props) { Data is an AI model, webpage, config, dataset, database, etc., that solutions may require. - - Storage - - - Orders and suborders are digital contracts between customers and providers to lease offers.

+ Orders and suborders are digital contracts between customers and providers to lease offers.

The term main order—or simply order—implies leasing a compute offer.

The term suborder implies leasing an AI model, engine, or any other offer besides a compute offer.
+ + + Tunnel is a virtual communication channel that enables secure, efficient transmission over a network as if over a direct secure connection.

+ + In Super Protocol, a tunnel consists of two components with a confidential connection between them:
+ ᐧ A tunnel server has a public IP address and is accessible over HTTPS via a browser or API.
+ ᐧ A tunnel client hosts a web server; it remains hidden behind the tunnel server and protected from external threats. +
); } \ No newline at end of file From 43f81b2f003e23b526a430f9a42fcadad6f0aab0 Mon Sep 17 00:00:00 2001 From: k3dz0r Date: Thu, 15 May 2025 14:43:39 -0400 Subject: [PATCH 4/7] Added tooltips: slot, requirements, configuration. Minor fixes. --- docs/cli/commands/files/upload.md | 4 +- docs/cli/commands/index.md | 20 +++---- docs/cli/commands/offers/add-slot.md | 58 +++++++++---------- docs/cli/commands/offers/delete-slot.md | 6 +- docs/cli/commands/offers/disable.md | 4 +- docs/cli/commands/offers/download-content.md | 2 +- docs/cli/commands/offers/enable.md | 2 +- docs/cli/commands/offers/get-info.md | 10 ++-- docs/cli/commands/offers/get-option.md | 4 +- docs/cli/commands/offers/get-slot.md | 6 +- docs/cli/commands/offers/get.md | 10 ++-- docs/cli/commands/offers/list.md | 2 - docs/cli/commands/offers/update-slot.md | 14 ++--- docs/cli/commands/offers/update.md | 56 +++++++++--------- docs/cli/commands/orders/cancel.md | 2 +- docs/cli/commands/orders/download-result.md | 4 +- docs/cli/commands/orders/get.md | 2 +- docs/cli/commands/orders/replenish-deposit.md | 4 +- docs/cli/commands/solutions/prepare.md | 4 +- docs/cli/commands/workflows/create.md | 2 +- docs/cli/index.md | 24 ++++---- .../developers/cli_guides/providers_offers.md | 10 ++-- docs/fundamentals/certification.md | 4 +- docs/fundamentals/offers.md | 10 ++-- docs/fundamentals/slots.md | 2 +- docs/marketplace/account/web2.md | 12 ++-- docs/marketplace/account/web3.md | 12 ++-- docs/marketplace/all-orders/order.md | 12 ++-- docs/marketplace/guides/deploy-model.md | 4 +- docs/marketplace/guides/publish-offer.md | 14 ++--- docs/marketplace/guides/storage.md | 14 ++--- docs/marketplace/limitations.md | 30 +++++----- docs/marketplace/models/index.md | 2 +- docs/marketplace/models/offer.md | 14 ++--- docs/marketplace/my-offers/new-offer.md | 4 +- docs/marketplace/my-offers/offer-builder.md | 10 ++-- .../{compatibiity.md => compatibility.md} | 2 +- docs/marketplace/order-builder/index.md | 6 +- src/theme/Layout/index.js | 28 +++++++-- 39 files changed, 222 insertions(+), 208 deletions(-) rename docs/marketplace/order-builder/{compatibiity.md => compatibility.md} (88%) diff --git a/docs/cli/commands/files/upload.md b/docs/cli/commands/files/upload.md index 60167698..51a37435 100644 --- a/docs/cli/commands/files/upload.md +++ b/docs/cli/commands/files/upload.md @@ -49,9 +49,9 @@ The output of the command is a resource JSON file with the information for a com | `--filename ` | Desired name of the resulting file in storage. The default is a random string. | | `--output ` | Path to save the output resource JSON file. The default is `./resource.json`. | | `--skip-encryption` | Flag to skip file encryption before uploading. The default is `false`. | -| `--metadata ` | Path to a metadata file for adding fields to the resource JSON file. This file is generated by the [solutions prepare](/cli/commands/solutions/prepare) command. | +| `--metadata ` | Path to a metadata file for adding fields to the resource JSON file. This file is generated by the [`solutions prepare`](/cli/commands/solutions/prepare) command. | | `--max-concurrent ` | Maximum concurrent pieces to upload at once per transfer to limit the number of threads. Use only when dealing with a memory-constrained environment. | -| `--storage ` | Option to use a storage offer. State the storage offer ID and the requirement slot ID, separated by a comma. | +| `--storage ` | Option to use a storage offer. State the IDs of the offer and the requirement slot, separated by a comma. | | `--min-rent-minutes ` | Storage lease period in minutes. Use this option together with `--storage`. The default is `60`. | | `--config ` | Path to the SPCTL configuration file. The default is `./config.json`. | | `--help`, `-h` | Help for the command. | diff --git a/docs/cli/commands/index.md b/docs/cli/commands/index.md index 725fe31b..a7e8ff1c 100644 --- a/docs/cli/commands/index.md +++ b/docs/cli/commands/index.md @@ -5,9 +5,7 @@ slug: "/commands" sidebar_position: 2 --- -This section contains the list of commands for the Super Protocol CLI tool SPCTL. - -[Configure SPCTL](/cli) before using these commands. Also keep in mind [testnet limitations](/marketplace/limitations). +This section contains Super Protocol CLI commands. [Install and configure SPCTL](/cli) to access the CLI. ## Command groups @@ -36,14 +34,12 @@ _Commands_ perform a specific function, like placing an order or showing the lis For example, the [`tokens`](/cli/commands/tokens) command group includes the following commands: -- [`balance`](/cli/commands/tokens/balance): checks the balance -- [`request`](/cli/commands/tokens/request): requests testnet tokens. - -_Options_ modify the command behavior and are prefixed by double hyphen `--`. For example, `--help` is an option that displays help information for a command. +- [`balance`](/cli/commands/tokens/balance): Checks the balance. +- [`request`](/cli/commands/tokens/request): Requests testnet tokens. -_Arguments_ provide values for commands and options. Arguments that follow a command are always required by the command and mandatory to use. Arguments that follow an option can be mandatory—required by the option—or be optional. Angle brackets `< >` indicate argument placeholders in the command syntax. When executing a command, replace placeholders, including the brackets, with values. For example, replace `` with `12` for [Python Base Image](https://marketplace.superprotocol.com/?offer=offerId%3D12). +_Options_ modify the command behavior and are prefixed by double hyphen `--`; for example, `--help`. Options can be mandatory or optional. -Options, too, can be mandatory or optional. Most options require at least one argument. +_Arguments_ provide values for commands and options. Angle brackets `< >` indicate argument placeholders in the command syntax. When executing a command, replace placeholders, including the brackets, with values. For example, replace `` with `12` for [Python Base Image](https://marketplace.superprotocol.com/?offer=offerId%3D12). Command syntax may also contain the following special characters: @@ -62,10 +58,10 @@ The following is a mandatory option `--solution` of the [`workflows create`](/cl --solution {,[] | } ``` -The format `{,[] | }` requires you to choose either `,[]` or ``: +The format `{,[] | }` requires you to choose one of the following: -- `,[]` are a mandatory argument `` and an optional argument `` (note the square brackets `[ ]`), separated by a comma. -- `` is a mandatory argument. +- `,[]`: a mandatory argument `` and an optional argument ``, separated by a comma. +- ``: a mandatory argument. So, the final format of this option must be one of the following: diff --git a/docs/cli/commands/offers/add-slot.md b/docs/cli/commands/offers/add-slot.md index 13c89dd4..ec955107 100644 --- a/docs/cli/commands/offers/add-slot.md +++ b/docs/cli/commands/offers/add-slot.md @@ -6,7 +6,7 @@ sidebar_label: "add-slot" sidebar_position: 8 --- -Creates an additional [requirement slot](/fundamentals/slots#requirements) for an offer. +Adds a slot to an offer. **Important:** This command requires SPCTL with a [provider configuration file](/cli/#configure-spctl-for-providers). @@ -15,54 +15,54 @@ Creates an additional [requirement slot](/fundamentals/slots#requirements) for a ``` ./spctl offers add-slot --offer - [--path ] + [--path ] [--config ] [--help | -h] ``` ## Arguments -| **Name** | **Description** | +| **Name** | **Description** | | :- | :- | | `` | Type of the offer: `tee` for a compute offer or `value` for a solution, data, or storage offer. | ## Options -| **Name** | **Description** | +| **Name** | **Description** | | :- | :- | -| `--offer ` | ID of the offer. | -| `--path ` | Path to the offer slot JSON file. The default is `./offerSlot.json`. | -| `--config ` | Path to the SPCTL configuration file. The default is `./config.json`. | -| `--help`, `-h` | Help for the command. | +| `--offer ` | Offer ID. | +| `--path ` | Path to a slot-info JSON file. The default is `./slotInfo.json`. | +| `--config ` | Path to the SPCTL configuration file. The default is `./config.json`. | +| `--help`, `-h` | Help for the command. | -## Offer slot file +## Slot info -The offer slot JSON file must contain the following objects: +A slot-info JSON file must contain the following objects: -- `info`: object with computing power configuration - + `cpuCores`: number of CPU cores required, a float value - + `gpuCores`: number of GPU cores required, a float value - + `diskUsage`: bytes - + `ram`: bytes - + `vram`: bytes -- `usage`: object with terms and conditions of usage - + `maxTimeMinutes`: minutes; `0` for no limit - + `minTimeMinutes`: minutes; `0` for no limit - + `price`: denominations of SPPI token - + `priceType`: `1` for fixed price, `0` for price per hour; learn more about [price types](/fundamentals/orders#cost-and-pricing) -- `option`: object with internet access configuration (only for value offers) - + `bandwidth`: bits per second - + `traffic`: bytes - + `externalPort`: `1` for yes, `0` for no +- `info`: An object with requirements: + - `cpuCores`: The number of virtual CPU cores, a float value. + - `gpuCores`: The number of virtual GPU cores, a float value. + - `diskUsage`: Disk space in bytes. + - `ram`: RAM in bytes. + - `vram`: Video RAM in bytes. +- `usage`: An object with terms and conditions of usage: + - `maxTimeMinutes`: Maximum lease duration limits in minutes; `0` for no limit. + - `minTimeMinutes`: Minimum lease duration limits in minutes; `0` for no limit. + - `price`: Lease price in denominations of SPPI token (1018 = 1 SPPI). + - `priceType`: [Pricing type](/fundamentals/orders#cost-and-pricing): `1` for fixed price, `0` for price per hour. +- `option`: An object with internet access requirements (only for value offers): + - `bandwidth`: Data transfer rate in bits per second. + - `traffic`: Total required data transfer usage in bytes. + - `externalPort`: `1` for yes, `0` for no. -Offer slot JSON file template with example values: +A template with example values: -```json title="offer-new-slot.json" +```json title="slotInfo.json" { "info":{ "cpuCores":3, "gpuCores":0, - "diskUsage":536870912, + "diskUsage":16106127360, "ram":34359738368, "vram":0 }, @@ -83,5 +83,5 @@ Offer slot JSON file template with example values: ## Example ``` -./spctl offers add-slot value --offer 39 --path ./offer-new-slot.json +./spctl offers add-slot value --offer 39 --path ./new-slot.json ``` \ No newline at end of file diff --git a/docs/cli/commands/offers/delete-slot.md b/docs/cli/commands/offers/delete-slot.md index fae32467..a35bc860 100644 --- a/docs/cli/commands/offers/delete-slot.md +++ b/docs/cli/commands/offers/delete-slot.md @@ -6,7 +6,7 @@ sidebar_label: "delete-slot" sidebar_position: 10 --- -Deletes a [requirement slot](/fundamentals/slots#requirements) in an offer. +Deletes a slot in an offer. **Important:** This command requires SPCTL with a [provider configuration file](/cli/#configure-spctl-for-providers). @@ -32,8 +32,8 @@ Use the [`offers get`](/cli/commands/offers/get) command to get the IDs of all s | **Name** | **Description** | | :- | :- | -| `--offer ` | ID of the offer. | -| `--slot ` | ID of the slot. | +| `--offer ` | Offer ID. | +| `--slot ` | Slot ID. | | `--config ` | Path to the SPCTL configuration file. The default is `./config.json`. | | `--help`, `-h` | Help for the command. | diff --git a/docs/cli/commands/offers/disable.md b/docs/cli/commands/offers/disable.md index e4024faa..b8e46329 100644 --- a/docs/cli/commands/offers/disable.md +++ b/docs/cli/commands/offers/disable.md @@ -22,7 +22,7 @@ Disables an existing enabled of | **Name** | **Description** | | :- | :- | -| `` | ID of the offer. | +| `` | Offer ID. | ## Option @@ -34,5 +34,5 @@ Disables an existing enabled of ## Example ``` -./spctl offers enable 39 +./spctl offers disable 39 ``` \ No newline at end of file diff --git a/docs/cli/commands/offers/download-content.md b/docs/cli/commands/offers/download-content.md index c34e40d8..9dcf5a10 100644 --- a/docs/cli/commands/offers/download-content.md +++ b/docs/cli/commands/offers/download-content.md @@ -23,7 +23,7 @@ The command only works with offers that allow this operation. | **Name** | **Description** | | :- | :- | -| `` | ID of the offer. | +| `` | Offer ID. | ## Options diff --git a/docs/cli/commands/offers/enable.md b/docs/cli/commands/offers/enable.md index 2efeaaec..37510cea 100644 --- a/docs/cli/commands/offers/enable.md +++ b/docs/cli/commands/offers/enable.md @@ -22,7 +22,7 @@ Enables an existing disabled of | **Name** | **Description** | | :- | :- | -| `` | ID of the offer. | +| `` | Offer ID. | ## Options diff --git a/docs/cli/commands/offers/get-info.md b/docs/cli/commands/offers/get-info.md index ceea9991..aa847180 100644 --- a/docs/cli/commands/offers/get-info.md +++ b/docs/cli/commands/offers/get-info.md @@ -19,18 +19,18 @@ Displays the information on an ## Arguments -| **Name** | **Description** | +| **Name** | **Description** | | :- | :- | | `` | Type of the offer: `tee` for a compute offer or `value` for a solution, data, or storage offer. | -| `` | ID of the offer. | +| `` | Offer ID. | ## Option -| **Name** | **Description** +| **Name** | **Description** | :- | :- | | `--save-to ` | Path to save the output to a file. | -| `--config ` | Path to the SPCTL configuration file. The default is `./config.json`. | -| `--help`, `-h` | Help for the command. | +| `--config ` | Path to the SPCTL configuration file. The default is `./config.json`. | +| `--help`, `-h` | Help for the command. | ## Example diff --git a/docs/cli/commands/offers/get-option.md b/docs/cli/commands/offers/get-option.md index 355debab..2097992b 100644 --- a/docs/cli/commands/offers/get-option.md +++ b/docs/cli/commands/offers/get-option.md @@ -22,8 +22,8 @@ Displays the information on a [configuration option](/fundamentals/slots) of a < | **Name** | **Description** | | :- | :- | -| `--offer ` | ID of the offer. | -| `--option ` | ID of the configuration option. | +| `--offer ` | Offer ID. | +| `--option ` | Configuration option ID. | | `--config ` | Path to the SPCTL configuration file. The default is `./config.json`. | | `--help`, `-h` | Help for the command. | diff --git a/docs/cli/commands/offers/get-slot.md b/docs/cli/commands/offers/get-slot.md index 300c8546..8634ac51 100644 --- a/docs/cli/commands/offers/get-slot.md +++ b/docs/cli/commands/offers/get-slot.md @@ -6,7 +6,7 @@ sidebar_label: "get-slot" sidebar_position: 11 --- -Displays the information for a [requirement slot](/fundamentals/slots#requirements) of an offer. +Displays the information for a slot in and offer. Use the [`offers get`](/cli/commands/offers/get) command to get the IDs of all the offer's slots. @@ -31,8 +31,8 @@ Use the [`offers get`](/cli/commands/offers/get) command to get the IDs of all t | **Name** | **Description** | | :- | :-| -| `--offer ` | ID of the offer. | -| `--slot ` | ID of the slot. | +| `--offer ` | Offer ID. | +| `--slot ` | Slot ID. | | `--save-to ` | Path to save the result file. The default is the SPCTL root directory. | | `--config ` | Path to the SPCTL configuration file. The default is `./config.json`. | | `--help`, `-h` | Help for the command. | diff --git a/docs/cli/commands/offers/get.md b/docs/cli/commands/offers/get.md index 54e73034..de3d6239 100644 --- a/docs/cli/commands/offers/get.md +++ b/docs/cli/commands/offers/get.md @@ -19,18 +19,18 @@ Displays information on an offe ## Arguments -| **Name** | **Description** | +| **Name** | **Description** | | :- | :- | | `` | Type of the offer: `tee` for a compute offer or `value` for a solution, data, or storage offer. | -| `` | ID of the offer. | +| `` | Offer ID. | ## Option -| **Name** | **Description** | +| **Name** | **Description** | | :- | :- | | `--save-to ` | Path to save the output to a file. | -| `--config ` | Path to the SPCTL configuration file. The default is `./config.json`. | -| `--help`, `-h` | Help for the command. | +| `--config ` | Path to the SPCTL configuration file. The default is `./config.json`. | +| `--help`, `-h` | Help for the command. | ## Example diff --git a/docs/cli/commands/offers/list.md b/docs/cli/commands/offers/list.md index 07a5416a..95664b41 100644 --- a/docs/cli/commands/offers/list.md +++ b/docs/cli/commands/offers/list.md @@ -54,8 +54,6 @@ For both offer types: ### Example 1 -The following command displays the IDs, names, and types of the first 30 value offers: - ``` ./spctl offers list value --limit 30 ``` diff --git a/docs/cli/commands/offers/update-slot.md b/docs/cli/commands/offers/update-slot.md index 55ed2796..ccfe0643 100644 --- a/docs/cli/commands/offers/update-slot.md +++ b/docs/cli/commands/offers/update-slot.md @@ -6,13 +6,13 @@ sidebar_label: "update-slot" sidebar_position: 9 --- -Updates a [requirement slot](/fundamentals/slots#requirements) of an offer. +Updates a slot in an offer. **Important:** This command requires SPCTL with a [provider configuration file](/cli/#configure-spctl-for-providers). Use the [`offers get`](/cli/commands/offers/get) command to get the IDs of all slots in an offer. Use the [`offers get-slot`](/cli/commands/offers/get-slot) command to get additional information on a slot. -Refer to [Offer requirements] to create the initial offer requirements. Refer to the description of the [`offers add-slot`](/cli/commands/offers/add-slot) command for the JSON file format and object descriptions. +Refer to the description of the [`offers add-slot`](/cli/commands/offers/add-slot) command for the slotInfo JSON file format and object descriptions and to create the initial offer requirements. ## Syntax @@ -20,7 +20,7 @@ Refer to [Offer requirements] to create the initial offer requirements. Refer to ./spctl offers update-slot --offer --slot - [--path ] + [--path ] [--config ] [--help | -h] ``` @@ -35,14 +35,14 @@ Refer to [Offer requirements] to create the initial offer requirements. Refer to | **Name** |**Description** | | :- | :- | -| `--offer ` | ID of the offer. | -| `--slot ` | ID of the slot. | -| `--path ` | Path to the offer slot JSON file. The default is `./offerSlot.json`. | +| `--offer ` | Offer ID. | +| `--slot ` | Slot ID. | +| `--path ` | Path to the slotInfo JSON file. The default is `./slotInfo.json`. | | `--config ` | Path to the SPCTL configuration file. The default is `./config.json`. | | `--help`, `-h` | Help for the command. | ## Example ``` -./spctl offers update-slot value --offer 46 --slot 45 --path ./offer-slot.json +./spctl offers update-slot value --offer 46 --slot 45 --path ./new-slot.json ``` \ No newline at end of file diff --git a/docs/cli/commands/offers/update.md b/docs/cli/commands/offers/update.md index 17588b80..d8ca88b2 100644 --- a/docs/cli/commands/offers/update.md +++ b/docs/cli/commands/offers/update.md @@ -16,7 +16,7 @@ Refer to the [Providers and Offers] guide to create the initial offer descriptio ``` ./spctl offers update - [--path ] + [--path ] [--config ] [--help | -h] ``` @@ -26,41 +26,41 @@ Refer to the [Providers and Offers] guide to create the initial offer descriptio | **Name** | **Description** | | :- | :- | | `` | Type of the offer: `tee` for a compute offer or `value` for a solution, data, or storage offer. | -| `` | ID of the offer. | +| `` | Offer ID. | ## Options | **Name** | **Description** | | :- | :- | -| `--path ` | Path to the offer content file. The default is `./offerInfo.json`. | +| `--path ` | Path to the offerInfo JSON file. The default is `./offerInfo.json`. | | `--config ` | Path to the SPCTL configuration file. The default is `./config.json`. | | `--help`, `-h` | Help for the command. | ## Offer description file -The offer slot JSON file may contain the following objects, arrays, and strings: - -|**String, array,
or object**|**Description**|**Comments** | -|:-|:-|:-| -|`name`|Offer name || -|`group` |Offer group type| `0` for data and solution offers
`2` for storage offers (not implemented yet)| -|`offerType` |Offer type | `1` for storage offers (not implemented yet)
`2` for solution offers
`3` for data offers | -|`cancelable` |Flag indicating if the offer is cancelable | `true` or `false` | -|`description` |Offer description || -|`restrictions` |Object that specifies the offers that should be executed together with the current one|This object contains the `offers` and `types` arrays | -|`offers`|Array of IDs of required offers, including their dependencies|Put each ID in quotation marks and separate them with a comma| -|`types`|Array of types of the required offers, the same codes as in `offerType`|State the type for each offer in `offers`. Put each type in quotation marks and separate them with a comma| -| `metadata` |Any additional information | May be empty or contain information about whether or not the current offer is a grouping one. For example, `"{\"groupingOffers\":true}"` | -| `input` |Not implemented yet (metadata about permitted inputs) |Leave empty| -| `output` |Not implemented yet (metadata about permitted outputs)|Leave empty | -| `allowedArgs` |Will be deprecated |Leave empty | -| `allowedAccounts` |List of accounts allowed to use the current offer|Leave empty to allow all accounts| -| `argsPublicKey` |Encryption information in a string format:
`algo`—algorithm for encrypting arguments
`encoding`—encoding scheme
`key`—public key | Example:
`"argsPublicKey":`
`"{\"algo\":\"ECIES\",`
`\"encoding\":\"base64\",`
`\"key\":\"\"}"` | -| `resultResource` | Unencrypted content available for downloading, in a string format:
`type`, `storageType`, `credentials` to access content, including `token`, `storageId`, and `filepath` |Currently, only Storj is supported. Use `STORAGE_PROVIDER` for `type` and `STORJ` for `storageType`. `token` should be a Storj access grant with **Read** permission, `storageId` is the bucket name, and `filepath` is the path to the content file in the bucket.

It is mainly used for the base image solutions:
`"resultResource":`
`"{\"type\":\"STORAGE_PROVIDER\",`
`\"storageType\":\"STORJ\",`
`\"credentials\":`
`{\"token\":\"\",`
`\"storageId\":\"\"},`
`\"filepath\":\"\"}"` | -| `linkage` |Not implemented yet (verification of the solutions linked to the current offer)|Leave empty| -| `hash` |Not implemented yet (verification of the solutions linked to the current offer)|Leave empty| - -Offer JSON file template with example values for a solution identical to [Image Classification Dataset #1](https://marketplace.superprotocol.com/data?offer=offerId%3D18): +The offerInfo JSON file may contain the following objects, arrays, and strings: + +| **String, array,
or object** | **Description** | **Comments** | +| :- |:- |:- | +| `name` | Offer name | | +| `group` | Offer group type | `0` for data and solution offers.
`2` for storage offers (not implemented yet). | +| `offerType` | Offer type | `1` for storage offers (not implemented yet).
`2` for solution offers.
`3` for data offers. | +| `cancelable` | Flag indicating if the offer is cancelable. | `true` or `false` | +| `description` | Offer description | | +| `restrictions` | Object that specifies the offers that should be executed together with the current one|This object contains the `offers` and `types` arrays | +| `offers` | Array of IDs of required offers, including their dependencies | Put each ID in quotation marks and separate them with a comma | +| `types` | Array of types of the required offers, the same codes as in `offerType` | State the type for each offer in `offers`. Put each type in quotation marks and separate them with a comma | +| `metadata` | Any additional information | May be empty or contain information about whether or not the current offer is a grouping one. For example, `"{\"groupingOffers\":true}"`. | +| `input` | Metadata about permitted inputs (not implemented yet) | Leave empty. | +| `output` | Metadata about permitted inputs (not implemented yet) | Leave empty. | +| `allowedArgs` | Deprecated | Leave empty. | +| `allowedAccounts` | List of accounts allowed to use the current offer | Leave empty to allow all accounts. | +| `argsPublicKey` | Encryption information in a string format:
`algo`: algorithm for encrypting arguments
`encoding`: encoding scheme
`key`: public key | Example:
`"argsPublicKey":`
`"{\"algo\":\"ECIES\",`
`\"encoding\":\"base64\",`
`\"key\":\"\"}"` | +| `resultResource` | Unencrypted content available for downloading, in a string format:
`type`, `storageType`, `credentials` to access content, including `token`, `storageId`, and `filepath` |Currently, only Storj is supported. Use `STORAGE_PROVIDER` for `type` and `STORJ` for `storageType`. `token` should be a Storj access grant with **Read** permission, `storageId` is the bucket name, and `filepath` is the path to the content file in the bucket.

It is mainly used for base image solutions:
`"resultResource":`
`"{\"type\":\"STORAGE_PROVIDER\",`
`\"storageType\":\"STORJ\",`
`\"credentials\":`
`{\"token\":\"\",`
`\"storageId\":\"\"},`
`\"filepath\":\"\"}"` | +| `linkage` | Verification of the solutions linked to the current offer (not implemented yet) | Leave empty. | +| `hash` | Verification of the solutions linked to the current offer (not implemented yet) | Leave empty. | + +An `offerInfo.json` file template with example values for a solution identical to [Image Classification Dataset #1](https://marketplace.superprotocol.com/marketplace?offer=offerId%3D30): ```json title="offerInfo.json" { @@ -95,8 +95,8 @@ The file may contain only the fields that need to be updated. For example, to on ```json { - "name": "New Image Classification", - "description": "New improved Image Classification solution" + "name":"New Image Classification", + "description":"New improved Image Classification solution" } ``` diff --git a/docs/cli/commands/orders/cancel.md b/docs/cli/commands/orders/cancel.md index 5be8f7ce..2ff5296e 100644 --- a/docs/cli/commands/orders/cancel.md +++ b/docs/cli/commands/orders/cancel.md @@ -19,7 +19,7 @@ Cancels an order. | **Name** | **Description** | | :- | :- | -| `` | ID of the order. | +| `` | Order ID. | ## Options diff --git a/docs/cli/commands/orders/download-result.md b/docs/cli/commands/orders/download-result.md index 7edcd45f..a7f07528 100644 --- a/docs/cli/commands/orders/download-result.md +++ b/docs/cli/commands/orders/download-result.md @@ -7,7 +7,7 @@ sidebar_label: "download-result" Downloads the order result—a TAR.GZ archive file containing: -- A log file with any errors occured during the execution. +- A log file with any errors occurred during the execution. - A directory with the execution result. If the order status is `Error`, the result archive will contain a text file with the error message. @@ -25,7 +25,7 @@ If the order status is `Error`, the result archive will contain a text file with | **Name** | **Description** | | :- | :- | -| `` | ID of the order. | +| `` | Order ID. | ## Options diff --git a/docs/cli/commands/orders/get.md b/docs/cli/commands/orders/get.md index 683ff288..4c20ea14 100644 --- a/docs/cli/commands/orders/get.md +++ b/docs/cli/commands/orders/get.md @@ -24,7 +24,7 @@ This command allows you to check any order, not only yours. The information on a | **Name** | **Description** | | :- | :- | -| `` | ID of the order. | +| `` | Order ID. | ## Options diff --git a/docs/cli/commands/orders/replenish-deposit.md b/docs/cli/commands/orders/replenish-deposit.md index 35be5686..5276a445 100644 --- a/docs/cli/commands/orders/replenish-deposit.md +++ b/docs/cli/commands/orders/replenish-deposit.md @@ -7,7 +7,7 @@ sidebar_label: "replenish-deposit" Replenishes the order deposit. -Certain orders require a positive deposit balance to keep running. +Certain orders require a positive balance to keep running. ## Syntax @@ -21,7 +21,7 @@ Certain orders requi | **Name** | **Description** | | :- | :- | -| `` | ID of the order. | +| `` | Order ID. | | `` | Amount of SPPI tokens to deposit. | ## Option diff --git a/docs/cli/commands/solutions/prepare.md b/docs/cli/commands/solutions/prepare.md index eb0f30bc..aea8efb3 100644 --- a/docs/cli/commands/solutions/prepare.md +++ b/docs/cli/commands/solutions/prepare.md @@ -14,8 +14,8 @@ The input of the command is the following: - Directory with the solution and all its dependencies - Signing key file generated by the [solutions generate-key](/cli/commands/solutions/generate-key) command - Node.js or Python base image downloaded from their respective offers using the [`offers download-content`](/cli/commands/offers/download-content) command: - + Python Base Image: `./spctl offers download-content 12` - + Node.js Base Image: `./spctl offers download-content 13` + - Python Base Image: `./spctl offers download-content 12` + - Node.js Base Image: `./spctl offers download-content 13` The output of the command: diff --git a/docs/cli/commands/workflows/create.md b/docs/cli/commands/workflows/create.md index 1dc8c866..e3ccd4d9 100644 --- a/docs/cli/commands/workflows/create.md +++ b/docs/cli/commands/workflows/create.md @@ -33,7 +33,7 @@ For solutions and |

**Name**
| **Description** | | :- | :- | -| `--solution {,[] │ }` | Solution you are adding to the order:

• For a Marketplace offer, state the solution offer ID and the solution [requirement slot](/fundamentals/slots#requirements) ID (optional), separated by a comma. If the requirement slot is not specified, it will be selected automatically.
• For an [uploaded](/cli/commands/files/upload) solution, state the path to the solution resource JSON file.

You can use this option multiple times. | +| `--solution {,[] │ }` | Solution you are adding to the order:

• For a Marketplace offer, state the solution offer ID and the solution requirement slot ID (optional), separated by a comma. If the slot is not specified, it will be selected automatically.
• For an [uploaded](/cli/commands/files/upload) solution, state the path to the solution resource JSON file.

You can use this option multiple times. | | `--storage ,[]` | Storage offer you are adding to the order. State the storage offer ID and the storage requirement slot ID (optional), separated by a comma. If the requirement slot is not specified, it will be selected automatically. | | `--data {,[] │ }` | Data you are adding to the order:

• For a Marketplace offer, state the data offer ID and the data requirement slot ID (optional), separated by a comma. If the requirement slot is not specified, it will be selected automatically.
• For [uploaded](/cli/commands/files/upload) data, state the path to the data resource JSON file.

You can use this option multiple times.

Although this option is technically not mandatory, most solutions require data. | | `--solution-configuration ` | A solution configuration JSON file. | diff --git a/docs/cli/index.md b/docs/cli/index.md index e2cf7708..2551403b 100644 --- a/docs/cli/index.md +++ b/docs/cli/index.md @@ -93,13 +93,13 @@ You can configure SPCTL using the `./spctl setup` command or by manually creatin 2. Do not change the preconfigured values and provide values to the following keys: - |**Key** |**Description**| - |:-|:-| - |`"accountPrivateKey"` | An EVM wallet private key. Super Protocol recommends creating a separate wallet for the testnet.| - |`"bucket"` | (optional) Name of a Storj bucket.| - |`"prefix"` | (optional) Path to a directory inside the bucket. It can be empty.| - |`"writeAccessToken"` | (optional) Storj access grant with **Full** permission (**Read**, **List**, **Write**, **Delete**) for this bucket.| - |`"readAccessToken"` | (optional) Storj access grant with **Read** permission for this bucket.| + | **Key** | *Description** | + | :- | :- | + | `"accountPrivateKey"` | An EVM wallet private key. Super Protocol recommends creating a separate wallet for the testnet. | + | `"bucket"` | (optional) Name of a Storj bucket. | + | `"prefix"` | (optional) Path to a directory inside the bucket. It can be empty. | + | `"writeAccessToken"` | (optional) Storj access grant with **Full** permission (**Read**, **List**, **Write**, **Delete**) for this bucket. | + | `"readAccessToken"` | (optional) Storj access grant with **Read** permission for this bucket. | 3. Generate a private key for order result encryption using the [`workflows generate-key`](/cli/commands/workflows/generate-key) command. Set it in `"key"` (`workflow.resultEncryption.key`) in `config.json`. @@ -204,11 +204,11 @@ If you use a free Storj account, your files will become unavailable after the en 4. Open SPCTL's `config.json` in a text editor and provide values to the following key: -|**Key** |**Description**| -|:-|:-| -|`"bucket"` | Name of a Storj bucket.| -|`"writeAccessToken"` | Storj access grant with **Full** permission (**Read**, **List**, **Write**, **Delete**) for this bucket.| -|`"readAccessToken"` | Storj access grant with **Read** permission for this bucket.| +| **Key** | **Description** | +| :- | :- | +| `"bucket"` | Name of a Storj bucket. | +| `"writeAccessToken"` | Storj access grant with **Full** permission (**Read**, **List**, **Write**, **Delete**) for this bucket. | +| `"readAccessToken"` | Storj access grant with **Read** permission for this bucket. | ## Support diff --git a/docs/developers/cli_guides/providers_offers.md b/docs/developers/cli_guides/providers_offers.md index e3757cb5..d981af3c 100644 --- a/docs/developers/cli_guides/providers_offers.md +++ b/docs/developers/cli_guides/providers_offers.md @@ -167,9 +167,9 @@ Offer providers need the following Super Protocol accounts: - _Testnet user account_. the Testnet account provided by Super Protocol - Three _provider accounts_: - + _Authority account_: can change provider's records; the main provider account - + _Action account_: executes actions on behalf of the authority account - + _Token receiver account_: receives rewards in SPPI tokens for providing offers on Super Protocol. + - _Authority account_: can change provider's records; the main provider account + - _Action account_: executes actions on behalf of the authority account + - _Token receiver account_: receives rewards in SPPI tokens for providing offers on Super Protocol. ### Create accounts @@ -280,7 +280,7 @@ Image Classification is a solution offer, hence `"offerType": "2"`. It depends o **Example 2** -For a data offer identical to [Image Classification Dataset #1](https://marketplace.superprotocol.com/data?offer=offerId%3D18), the part of `offer-info.json` that you have to fill out should look like this: +For a data offer identical to [Image Classification Dataset #1](https://marketplace.superprotocol.com/marketplace?offer=offerId%3D30), the part of `offer-info.json` that you have to fill out should look like this: ```json "name": "Image Classification Dataset #1", @@ -472,7 +472,7 @@ For example: ./provider-tools deploy data --path "/mnt/hdd/provider-tools/data-execution-controller" ``` -When the order is created, you will see the ID of the Offer Provisioner order in the terminal output. For example: +When the order is created, you will see its ID in the terminal output. For example: ``` {"Successfully created workflow with id: 3394. You can go to https://marketplace.superprotocol.com/order/3394 to track order status."} diff --git a/docs/fundamentals/certification.md b/docs/fundamentals/certification.md index ce619fea..611d5375 100644 --- a/docs/fundamentals/certification.md +++ b/docs/fundamentals/certification.md @@ -47,5 +47,5 @@ Trusted Loader generates and publishes a report in the blockchain, allowing anyo - The public components of all the certificates in the chain - Workload Info: - + Order creation date - + The `runtimeInfo[]` array \ No newline at end of file + - Order creation date + - The `runtimeInfo[]` array \ No newline at end of file diff --git a/docs/fundamentals/offers.md b/docs/fundamentals/offers.md index 4b79d493..17293048 100644 --- a/docs/fundamentals/offers.md +++ b/docs/fundamentals/offers.md @@ -37,7 +37,7 @@ A compute offer is a combination of two parts: - A record on the blockchain containing the parameters that govern how to order the offer. - A physical confidential computing device connected to Super Protocol. -To balance the load and set better prices for the users, the compute provider can divide the resources of the physical machine into smaller parts—configuration [slots and options](/fundamentals/slots#configuration). +To balance the load and set better prices for the users, the compute provider can divide the resources of the physical machine into smaller parts—configuration slots and options. ### Solution and data @@ -106,10 +106,10 @@ Offers may be flagged as Inactive in the Marketplace GUI for two reasons: Every offer comes with the following descriptive parameters: - **Type**: - + Compute - + Solution - + Data - + Storage + - Compute + - Solution + - Data + - Storage - **Id**: unique identification number of the offer. - **Description**: text description of the offer. - **Provider**: name of the provider who created the offer. diff --git a/docs/fundamentals/slots.md b/docs/fundamentals/slots.md index 872b0d74..4a44a724 100644 --- a/docs/fundamentals/slots.md +++ b/docs/fundamentals/slots.md @@ -5,7 +5,7 @@ slug: "/slots" sidebar_position: 4 --- -_Requirements_ describe the parameters that a solution, data, or storage offer needs to run. +_Requirements_ specify how much computing resources an offer needs to run. _Configurations_ provide flexibility in selecting computing resources and internet access for offer deployment. The compute offer configuration added to an order must meet all the requirements in this order. diff --git a/docs/marketplace/account/web2.md b/docs/marketplace/account/web2.md index 605e282b..5e2e2140 100644 --- a/docs/marketplace/account/web2.md +++ b/docs/marketplace/account/web2.md @@ -20,12 +20,12 @@ This window shows the settings of your [Web2 User account](/marketplace/account# Super Protocol supports two options of decentralized storage to upload files: - **Super Protocol cloud**: - + Does not require additional setup. - + Uses Super Protocol's Storj account and thus relies on Super Protocol as the storage provider. - + Costs SPPI tokens for additional storage beyond the basic free package. + - Does not require additional setup. + - Uses Super Protocol's Storj account and thus relies on Super Protocol as the storage provider. + - Costs SPPI tokens for additional storage beyond the basic free package. - **Your Storj account**: - + Available to Web3 users only. - + Requires creating and setting up a Storj account. - + Gives sole control over the uploaded content and storage account. + - Available to Web3 users only. + - Requires creating and setting up a Storj account. + - Gives sole control over the uploaded content and storage account. To enable uploading to your personal Storj account, [log in as a Web3 user](/marketplace/guides/log-in). \ No newline at end of file diff --git a/docs/marketplace/account/web3.md b/docs/marketplace/account/web3.md index 58b70e65..dd18bbb3 100644 --- a/docs/marketplace/account/web3.md +++ b/docs/marketplace/account/web3.md @@ -25,12 +25,12 @@ This window allows you to manage your [Web3 User account](/marketplace/account#w You have two options of decentralized storage to upload files: - **Super Protocol cloud**: - + Recommended for most users. - + Does not require additional setup. - + Uses Super Protocol's Storj account and thus relies on Super Protocol as the storage provider. + - Recommended for most users. + - Does not require additional setup. + - Uses Super Protocol's Storj account and thus relies on Super Protocol as the storage provider. - **Your Storj account**: - + Intended for advanced users. - + Requires creating and setting up a Storj account. - + Gives sole control over the uploaded content and storage account. + - Intended for advanced users. + - Requires creating and setting up a Storj account. + - Gives sole control over the uploaded content and storage account. Read [How to Set Up Storage](/marketplace/guides/storage) for step-by-step instructions. \ No newline at end of file diff --git a/docs/marketplace/all-orders/order.md b/docs/marketplace/all-orders/order.md index 71b68082..b558e4df 100644 --- a/docs/marketplace/all-orders/order.md +++ b/docs/marketplace/all-orders/order.md @@ -140,11 +140,11 @@ The **Events** tab contains information on what is happening with the order. - **Name**: The name of the offer. - **Status**: The status of the order or suborder when the event occurred. - **Event**: The code of what happened. The main blockchain events: - + **OrderCreated**: The order or suborder is created on the blockchain. - + **OrderStarted**: The compute order has started. - + **OrderStatusUpdated**: The order or suborder status has changed without any new events. - + **OrderEncryptedResultUpdated**: The resource path to the order result was written to the blockchain. - + **OrderChangeWithdrawn**: The remaining token balance was returned to the customer. - + **OrderProfitWithdrawn**: The provider withdrew the offer payment from the order balance. + - **OrderCreated**: The order or suborder is created on the blockchain. + - **OrderStarted**: The compute order has started. + - **OrderStatusUpdated**: The order or suborder status has changed without any new events. + - **OrderEncryptedResultUpdated**: The resource path to the order result was written to the blockchain. + - **OrderChangeWithdrawn**: The remaining token balance was returned to the customer. + - **OrderProfitWithdrawn**: The provider withdrew the offer payment from the order balance. - **Value**: The transaction value in SPPI tokens, if applicable. - **Txn Hash**: The transaction hash. Clicking it opens the transaction in the [OKLink block explorer](https://www.oklink.com/). \ No newline at end of file diff --git a/docs/marketplace/guides/deploy-model.md b/docs/marketplace/guides/deploy-model.md index 7c9c517e..0c6e3672 100644 --- a/docs/marketplace/guides/deploy-model.md +++ b/docs/marketplace/guides/deploy-model.md @@ -30,8 +30,8 @@ Uploading models and creating o - **Name**: Type in the model name. Providing a meaningful name makes it easier to find the model later. - **Category**: Select the type of task that the model is designed to perform. - **Engine**: Select compatible engines; it is recommended to select both variants: - + **GPU-only** engines require CPU+GPU compute offers. - + **CPU-only** engines can run on both CPU-only and CPU+GPU compute offers. However, models work much slower in this mode. + - **GPU-only** engines require CPU+GPU compute offers. + - **CPU-only** engines can run on both CPU-only and CPU+GPU compute offers. However, models work much slower in this mode. - **Upload**: Click to upload files or a directory. The selected directory will become the root after upload. :::note diff --git a/docs/marketplace/guides/publish-offer.md b/docs/marketplace/guides/publish-offer.md index e4e9a889..ee2ef767 100644 --- a/docs/marketplace/guides/publish-offer.md +++ b/docs/marketplace/guides/publish-offer.md @@ -46,8 +46,8 @@ Uploading models and creating o - **Name**: Type in the model name. Providing a meaningful name makes it easier to find the offer on the Marketplace. - **Category**: Select the type of task that the model is designed to perform. - **Engine**: Select compatible engines; it is recommended to select both variants: - + **GPU-only** engines require CPU+GPU compute offers. - + **CPU-only** engines can run on both CPU-only and CPU+GPU compute offers. However, models work much slower in this mode. + - **GPU-only** engines require CPU+GPU compute offers. + - **CPU-only** engines can run on both CPU-only and CPU+GPU compute offers. However, models work much slower in this mode. - **Upload**: Click to upload files or a directory. The selected directory will become the root after upload. :::note @@ -105,7 +105,7 @@ Fields required to publish the offer are marked with \*. ## 6. Create requirement slots -In the **Pricing** tab, click the **Add Slot** button to open an editable template for a requirement slot. +In the **Pricing** tab, click the **Add Slot** button to open an editable template for a requirement slot.
@@ -120,8 +120,8 @@ If the offer supports both GPU-only and CPU-only engines, create at least one sl Complete the following fieds: - **Price**: Set the price in SPPI tokens for leasing the model and select the pricing type: - + **Fixed**: A one-time payment for each order, regardless of the lease duration. - + **Per Hour**: Payment is based on the number of hours the offer is leased. + - **Fixed**: A one-time payment for each order, regardless of the lease duration. + - **Per Hour**: Payment is based on the number of hours the offer is leased. - **Disk**: Set the required disk space in gigabytes (GB). It should not be less than the sum of all model files. - **GPU RAM**: Set the required video RAM in gigabytes (GB). - **Min Time** and **Max Time**: Set the minimum and maximum lease duration limits, as defined by the provider. `0` means no limit. @@ -131,8 +131,8 @@ If the offer supports both GPU-only and CPU-only engines, create at least one sl Complete the following fieds: - **Price**: Set the price in SPPI tokens for leasing the model and select the pricing type: - + **Fixed**: A one-time payment for each order, regardless of the lease duration. - + **Per Hour**: Payment is based on the number of hours the offer is leased. + - **Fixed**: A one-time payment for each order, regardless of the lease duration. + - **Per Hour**: Payment is based on the number of hours the offer is leased. - **Disk**: Set the required disk space in gigabytes (GB). It should not be less than the sum of all model files. - **CPU RAM**: Set the required RAM in gigabytes (GB). - **Min Time** and **Max Time**: Set the minimum and maximum lease duration limits, as defined by the provider. `0` means no limit. diff --git a/docs/marketplace/guides/storage.md b/docs/marketplace/guides/storage.md index 86d39843..e59c3f9c 100644 --- a/docs/marketplace/guides/storage.md +++ b/docs/marketplace/guides/storage.md @@ -44,14 +44,14 @@ Open the [Marketplace web app](https://marketplace.superprotocol.com/). Log in a Select the **Your Storj account** radio button, fill in the fields, and click **Save**. -| **Field** | **Value** | +| **Field** | **Value** | | :- | :- | -| Bucket | Name of the Storj bucket | -| Path | Path to a directory inside the bucket; it can be empty | -| S3 Access Key (Full) | Access Key with **Full** permission | -| S3 Secret Key (Full) | Secret Key with **Full** permission | -| S3 Access Key (Read) | Access Key with **Read** permission | -| S3 Secret Key (Read) | Secret Key with **Read** permissions | +| Bucket | Name of the Storj bucket. | +| Path | Path to a directory inside the bucket; it can be empty. | +| S3 Access Key (Full) | Access Key with **Full** permission. | +| S3 Secret Key (Full) | Secret Key with **Full** permission. | +| S3 Access Key (Read) | Access Key with **Read** permission. | +| S3 Secret Key (Read) | Secret Key with **Read** permissions. |
diff --git a/docs/marketplace/limitations.md b/docs/marketplace/limitations.md index c3b7a959..8a8abd23 100644 --- a/docs/marketplace/limitations.md +++ b/docs/marketplace/limitations.md @@ -38,23 +38,23 @@ Web3 users can receive up to **1.5 SPPI** tokens and **0.0001 BNB** tokens daily ## Model limits -If you want to upload and deploy your model, its total size should not exceed 13 GB; otherwise, deployment may fail. More machines with larger slots to support bigger models will be available in the future. +If you want to upload and deploy your model, its total size should not exceed 13 GB; otherwise, deployment may fail. More machines with larger slots to support bigger models will be available in the future. Also, deployed models must belong to a category supported by one of the AI engines: - **Text Generation Web UI** supports text-based tasks: - + Text Generation - + Text Classification - + Translation - + Text2Text Generation + - Text Generation + - Text Classification + - Translation + - Text2Text Generation - **ComfyUI** supports various image- and video-related tasks: - + Image Classification - + Object Detection - + Image Segmentation - + Text-to-Image - + Image-to-Text - + Image-to-Image - + Image-to-Video - + Video Classification - + Text-to-Video - + Mask Generation + - Image Classification + - Object Detection + - Image Segmentation + - Text-to-Image + - Image-to-Text + - Image-to-Image + - Image-to-Video + - Video Classification + - Text-to-Video + - Mask Generation diff --git a/docs/marketplace/models/index.md b/docs/marketplace/models/index.md index b5d662ed..bbd2491b 100644 --- a/docs/marketplace/models/index.md +++ b/docs/marketplace/models/index.md @@ -34,7 +34,7 @@ In the table view, you can see the following columns: - **Price, hr**: the hourly rate for leasing the offer. - **Price, fix**: the fixed price for each use of the offer, regardless of the lease duration. -Clicking an offer opens the [**Offer**](/marketplace/models/offer) window, which provides further details such as descriptions, requirement slots, and pricing. +Clicking an offer opens the [**Offer** window](/marketplace/models/offer), which provides further details such as descriptions, requirement slots, and pricing. ## Filters and search diff --git a/docs/marketplace/models/offer.md b/docs/marketplace/models/offer.md index c45de938..2308900b 100644 --- a/docs/marketplace/models/offer.md +++ b/docs/marketplace/models/offer.md @@ -5,7 +5,7 @@ slug: "/models/offer" sidebar_position: 2 --- -This window provides information about a model available for lease on the Marketplace, including its pricing and requirements. +This window provides information about a model available for lease on the Marketplace, including its pricing and requirements.
@@ -16,10 +16,10 @@ On the right-hand side of the window, you can find metadata about the **Engine** - + **Compute**. + - **Model** + - **Dataset** + - **Engine** + - **Compute**. - **Provider**: The name of the provider that created the offer. - **Category**: The tasks the model is intended for. - **Source**: A link to the resource from which the model was taken. @@ -55,9 +55,9 @@ Super Protocol supports two pricing types: Each slot includes the following requirements: -- **CPU vCores**: Number of virtual CPU cores; can be fractional. +- **CPU vCores**: The number of virtual CPU cores; can be fractional. - **CPU RAM**: RAM in gigabytes (GB). -- **GPU vCores**: Number of virtual GPU cores; can be fractional. +- **GPU vCores**: The number of virtual GPU cores; can be fractional. - **GPU RAM**: Video RAM in gigabytes (GB). - **Disk**: Disk space in gigabytes (GB). - **Bandwidth**: Data transfer rate in megabits per second (Mbps). diff --git a/docs/marketplace/my-offers/new-offer.md b/docs/marketplace/my-offers/new-offer.md index 5b6aa8cc..5aed1d7d 100644 --- a/docs/marketplace/my-offers/new-offer.md +++ b/docs/marketplace/my-offers/new-offer.md @@ -16,8 +16,8 @@ To upload a model, complete all the fields: - **Name**: A model name. Providing a meaningful name makes it easier to find the model later. - **Category**: Type of task that a model is designed to perform. - **Engine**: A solution designed to launch AI models, customize parameters, configure workflows, and provide an interface to interact with models. Each engine exists in two variants: - + **GPU-only** engines require CPU+GPU compute offers to run. - + **CPU-only** engines can run on both CPU-only and CPU+GPU compute offers. However, models work much slower in this mode. + - **GPU-only** engines require CPU+GPU compute offers to run. + - **CPU-only** engines can run on both CPU-only and CPU+GPU compute offers. However, models work much slower in this mode. - **Upload**: A directory or files to upload. The uploaded model files are encrypted and accessible only to the Confidential Computing machine that deploys the model. You can modify all of this data later using the [Offer Builder](/marketplace/my-offers/offer-builder), including replacing or adding uploaded files. \ No newline at end of file diff --git a/docs/marketplace/my-offers/offer-builder.md b/docs/marketplace/my-offers/offer-builder.md index 593f34bc..1b7a7fe3 100644 --- a/docs/marketplace/my-offers/offer-builder.md +++ b/docs/marketplace/my-offers/offer-builder.md @@ -44,8 +44,8 @@ This tab contains general information about the offer. - **Name\***: The offer name. Providing a meaningful name makes it easier to find the model on the Marketplace. - **Category\***: The tasks for which the model is intended. - **Engine\***: A solution designed to launch AI models, customize parameters, configure workflows, and provide an interface to interact with models. Each engine exists in two variants: - + GPU-only engines require CPU+GPU compute offers. - + CPU-only engines can run on both CPU-only and CPU+GPU compute offers. However, models work much slower in this mode. + - GPU-only engines require CPU+GPU compute offers. + - CPU-only engines can run on both CPU-only and CPU+GPU compute offers. However, models work much slower in this mode. - **Parameters**: Model parameters in millions or billions. - **License\***: The license under which the model is distributed. - **Source URL**: A link to the resource with the model files. @@ -56,7 +56,7 @@ Fields required to publish the offer are marked with \*. ## Pricing -This tab contains requirement slots and their prices. +This tab contains requirement slots and their prices.
@@ -71,8 +71,8 @@ To support both CPU-only and GPU-only engines, create separate requirement slots The **Add Slot** button opens an editable template for a slot that allows you to set the offer requirements: - **Price**: The price in SPPI tokens for leasing the model and the pricing type: - + **Fixed**: A one-time payment for each order, regardless of the lease duration. - + **Per Hour**: Payment is based on the number of hours the offer is leased. + - **Fixed**: A one-time payment for each order, regardless of the lease duration. + - **Per Hour**: Payment is based on the number of hours the offer is leased. - **CPU vCores**: Number of virtual CPU cores; can be fractional. Set to `0` to create a slot for GPU-only engines. - **CPU RAM**: RAM in gigabytes (GB). Set to `0` to create a slot for GPU-only engines. - **GPU vCores**: Number of virtual GPU cores; can be fractional. Set to `0` to create a slot for CPU-only engines. diff --git a/docs/marketplace/order-builder/compatibiity.md b/docs/marketplace/order-builder/compatibility.md similarity index 88% rename from docs/marketplace/order-builder/compatibiity.md rename to docs/marketplace/order-builder/compatibility.md index 5f093843..3cf05f25 100644 --- a/docs/marketplace/order-builder/compatibiity.md +++ b/docs/marketplace/order-builder/compatibility.md @@ -23,7 +23,7 @@ This message appears when the selected compute configuration does not meet the combined requirements of the models, datasets, and engine added to the order. +This message appears when the selected compute configuration does not meet the combined requirements of the models, datasets, and engine added to the order.
diff --git a/docs/marketplace/order-builder/index.md b/docs/marketplace/order-builder/index.md index af7de474..c31dc908 100644 --- a/docs/marketplace/order-builder/index.md +++ b/docs/marketplace/order-builder/index.md @@ -18,9 +18,9 @@ _Order Builder_ is a tool to configure offers. -If the model offer has multiple [requirement slots](/fundamentals/slots), the **Deploy** button adds the first slot configured for GPU deployment. To deploy the model on CPU, click the model's name to open its [**Offer**](/marketplace/models/offer) window, go to the **Pricing** tab, and click the blue **[+]** button next to the desired slot. +If the model offer has multiple requirement slots, the **Deploy** button adds the first slot configured for GPU deployment. To deploy the model on CPU, click the model's name to open its [**Offer**](/marketplace/models/offer) window, go to the **Pricing** tab, and click the blue **[+]** button next to the desired slot. -To view the model's selected slot, expand the **Requirements**. If you add your uploaded model to the order, its requirements are not specified. The system does not include such models in the automatic calculation of the compute configuration. +To view the model's selected slot, expand the **Requirements**. If you add your uploaded model to the order, its requirements are not specified. The system does not include such models in the automatic calculation of the compute configuration. :::warning @@ -102,7 +102,7 @@ The system automatically calculates a [compute configuration](/fundamentals/slot **In Queue** shows the number of orders waiting for an empty slot on this machine. If the number is greater than zero, your order may take longer to process. Consider choosing another compute offer. -Clicking the machine's name opens its [**Offer**](/marketplace/models/offer) window. +Clicking the machine's name opens its [**Offer** window](/marketplace/models/offer).
diff --git a/src/theme/Layout/index.js b/src/theme/Layout/index.js index af4c70c5..9fb33f93 100644 --- a/src/theme/Layout/index.js +++ b/src/theme/Layout/index.js @@ -18,31 +18,51 @@ export default function Layout(props) { Offer is a computing service, software product, or data available on the Marketplace for lease and use in orders.
Offers are divided into four categories:
+ ᐧ Compute offers: Confidential computing resources required to execute solutions and data inside a Trusted Execution Environment.
ᐧ Solution offers: Engines, applications, scripts, base images, and other software.
ᐧ Data offers: AI models, webpages, configs, datasets, databases, and any other data that solutions may require.
- ᐧ Compute offers: Confidential computing resources required to execute solutions and data inside a Trusted Execution Environment.
ᐧ Storage offers: Decentralized storage that keeps order results after execution.
Offer is a computing service, software product, or data available on the Marketplace for lease and use in orders.
Offers are divided into four categories:
+ ᐧ Compute offers: Confidential computing resources required to execute solutions and data inside a Trusted Execution Environment.
ᐧ Solution offers: Engines, applications, scripts, base images, and other software.
ᐧ Data offers: AI models, webpages, configs, datasets, databases, and any other data that solutions may require.
- ᐧ Compute offers: Confidential computing resources required to execute solutions and data inside a Trusted Execution Environment.
ᐧ Storage offers: Decentralized storage that keeps order results after execution.
Value offer is a collective term for solution, data, and storage offers. + + + Slot is a set of computing resources that may include CPU, GPU, RAM, disk space, etc.

+ + Requirement slot specifies how much computing resources a value offer needs to run.

+ + Configuration slot represents a portion of a compute offer's resources available for lease. +
+ + + Requirements specify how much computing resources a value offer needs to run.
+ A requirement slot is a particular set of requirements that may include CPU, RAM, disk space, bandwidth, traffic, etc. +
+ + + Configuration slots and options divide the resources of a physical confidential computing machine into smaller parts for better distribution between orders:
+ ᐧ Configuration slots are responsible for computing resources, such as CPU, GPU, RAM, VRAM, and disk space.
+ ᐧ Configuration options are responsible for network-related resources, such as bandwidth, traffic, and external port availability.

+ Configuration is a combination of configuration slots and configuration options. +
Engine is an application designed to launch AI models, customize parameters, configure workflows,
and provide an interface to interact with models.
- Compute means confidential computing resources required to deploy models, launch confidential tunnels,
and execute solutions inside a Trusted Execution Environment. + Compute means confidential computing resources used to deploy models, launch confidential tunnels,
and execute solutions inside a Trusted Execution Environment.
@@ -50,7 +70,7 @@ export default function Layout(props) { - Data is an AI model, webpage, config, dataset, database, etc., that solutions may require. + Data is an AI model, webpage, config, dataset, database, or other information that solutions may require. From 65d26706cfd49c2422977ff4b94cf9d477ba2135 Mon Sep 17 00:00:00 2001 From: k3dz0r Date: Tue, 20 May 2025 13:19:45 -0400 Subject: [PATCH 5/7] Added the prepare-comfyui guide. Updated the deploy-model guide. --- docs/fundamentals/index.md | 2 +- docs/marketplace/confidentiality.md | 2 +- docs/marketplace/guides/deploy-model.md | 56 +++++-- docs/marketplace/guides/prepare-comfyui.md | 164 +++++++++++++++++++++ docs/marketplace/guides/storage.md | 2 +- docs/marketplace/limitations.md | 2 +- 6 files changed, 208 insertions(+), 20 deletions(-) create mode 100644 docs/marketplace/guides/prepare-comfyui.md diff --git a/docs/fundamentals/index.md b/docs/fundamentals/index.md index c831002c..599cbc93 100644 --- a/docs/fundamentals/index.md +++ b/docs/fundamentals/index.md @@ -11,7 +11,7 @@ This section describes the most essential concepts of Super Protocol. Super Protocol Marketplace is a distributed blockchain-based ecosystem governed by smart contracts. It connects the sellers and buyers of digital products and services: -- Providers who offer solutions, data, and compute resources. +- Providers who offer solutions, data, and compute resources. - Customers who lease these offers and pay for the usage. Providers create offers to share and monetize their compute resources as well as solutions, scripts, datasets, AI models, libraries, frameworks, etc. Read more about [offers and providers](/fundamentals/offers). diff --git a/docs/marketplace/confidentiality.md b/docs/marketplace/confidentiality.md index 8a1e3337..2ace8bb6 100644 --- a/docs/marketplace/confidentiality.md +++ b/docs/marketplace/confidentiality.md @@ -23,7 +23,7 @@ The Check Confidentiality service performs the following:

-To view the service report, paste the domain URL, for example, **Access Link** available on the [**Order**](/marketplace/all-orders/order) screen of a deployed model. +To view the service report, paste the domain URL, for example, **Access Link** available on the [**Order** screen](/marketplace/all-orders/order) of a deployed model. ## Validation diff --git a/docs/marketplace/guides/deploy-model.md b/docs/marketplace/guides/deploy-model.md index 0c6e3672..ab55afae 100644 --- a/docs/marketplace/guides/deploy-model.md +++ b/docs/marketplace/guides/deploy-model.md @@ -13,15 +13,45 @@ Uploading models and creating o ::: -## 1. Upload +## 1. Prepare -1.1. In the **My Offers** screen, click the **New Offer** button. +Ensure your model meets the Super Protocol requirements: + +1.1. Your model must belong to a category supported by one of the engines. + +**Text Generation Web UI**: + +- Text Generation +- Text Classification +- Translation +- Text2Text Generation + +**ComfyUI**: + +- Image Classification +- Object Detection +- Image Segmentation +- Text-to-Image +- Image-to-Text +- Image-to-Image +- Image-to-Video +- Video Classification +- Text-to-Video +- Mask Generation + +If you plan to deploy a ComfyUI workflow with custom nodes, [prepare the files](/marketplace/guides/prepare-comfyui) before uploading. You cannot upload directly to the deployed ComfyUI for security reasons. + +1.2. Due to [testnet limitations](/marketplace/limitations), the total size of model files should not exceed 13 GB. Support for bigger models will be available in the future. + +## 2. Upload + +2.1. Open **My Offers** and click the **New Offer** button.

-1.2. Complete all fields in the appearing window. +2.2. Complete all fields in the appearing window.
@@ -34,36 +64,30 @@ Uploading models and creating o - **CPU-only** engines can run on both CPU-only and CPU+GPU compute offers. However, models work much slower in this mode. - **Upload**: Click to upload files or a directory. The selected directory will become the root after upload. -:::note - -Due to [Testnet limitations](/marketplace/limitations), the total size of model files should not exceed 13 GB. Support for bigger models will be available in the future. - -::: - -1.3. Click the **Create Offer** button. Do not close the window until the upload is complete. This may take a few minutes. +2.3. Click **Create Offer**. Do not close the window until the upload is complete. This may take a few minutes. -1.4. When the upload is complete, close the window or click **Go to Offer** to open the offer in the [Offer Builder](/marketplace/my-offers/offer-builder). +2.4. When the upload is complete, close the window or click **Go to Offer** to open the offer in the [Offer Builder](/marketplace/my-offers/offer-builder).
-## 2. Deploy +## 3. Deploy -2.1. Click the **Deploy** button next to your offer in the My Offers screen or the bottom-right corner of the Offer Builder. You will be redirected to the [Order Builder](/marketplace/order-builder) with a preconfigured
order for a quick deployment. +3.1. Click the **Deploy** button next to your offer in the My Offers screen or the bottom-right corner of the Offer Builder. You will be redirected to the [Order Builder](/marketplace/order-builder) with a preconfigured order for a quick deployment. -2.2. In the Order Builder, review and modify the order if necessary. Click **Pay Now** to place the order. +3.2. In the Order Builder, review and modify the order if necessary. Click **Pay Now** to place the order.

-2.3. When the order is created, you will be redirected to the [Order](/marketplace/all-orders/order) screen. Wait until the deployment is ready. It may take 15-45 minutes, depending on the model size and other factors. +3.3. When the order is created, you will be redirected to the [Order](/marketplace/all-orders/order) screen. Wait until the deployment is ready. It may take 15-45 minutes, depending on the model size and other factors.

-2.4. When your order is ready, you will see the Deployed status and an Access Link to your model's interface. +3.4. When your order is ready, you will see the **Deployed** status and an **Access Link** to your model's interface. diff --git a/docs/marketplace/guides/prepare-comfyui.md b/docs/marketplace/guides/prepare-comfyui.md new file mode 100644 index 00000000..f306a79e --- /dev/null +++ b/docs/marketplace/guides/prepare-comfyui.md @@ -0,0 +1,164 @@ +--- +id: "prepare-comfyui" +title: "Prepare a ComfyUI Workflow" +slug: "/guides/prepare-comfyui" +sidebar_position: 6 +--- + +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +This guide provides step-by-step instructions for preparing a **ComfyUI** workflow with custom nodes before uploading it . You cannot upload custom nodes directly to the deployed ComfyUI for security reasons. + +:::note + +Due to [testnet limitations](/marketplace/limitations), the total size of model files should not exceed 13 GB. Support for bigger models will be available in the future. + +::: + +You can prepare your model, workflow, and custom node files manually or using Docker and a script provided by Super Protocol. + + + + + Prerequisits: + + - Linux or MacOS. On Windows, use the [Windows Subsystem for Linux (WSL)](https://learn.microsoft.com/en-us/windows/wsl/install). + - [Docker](https://www.docker.com/) + + 1. Clone the [Super-Protocol/solutions](https://github.com/Super-Protocol/solutions/) GitHub repository to the location of your choosing: + + ``` + git clone https://github.com/Super-Protocol/solutions.git --depth 1 + ``` + + Alternatively, download and extract a [ZIP archive](https://github.com/Super-Protocol/solutions/archive/refs/heads/main.zip) with the repository. + + 2. Launch Docker Desktop or otherwise start the Docker daemon. + + 3. Go to the ComfyUI directory in the downloaded repository and run the script `start-dev-container.sh` to start a container with ComfyUI. If this is the first run, Docker will pull the image from the remote registry. This may take a few minutes. + + If you receive the error `bind source path does not exist`, add the repository directory to **File sharing** in the Docker's settings to make it available to the container. + + When the script is done, you will see the message `ComfyUI is running!` in the output. + + 4. Open http://localhost:8188/ in your browser to access the running ComfyUI if it has not opened automatically. + + 5. Load and customize the workflow. Use the following methods to add model files to the container: + + **Use a downloader** + + In ComfyUI, open **Custom Node Manager** and install a custom node to download model files. For example, [ComfyUI Model Downloader](https://github.com/ciri/comfyui-model-downloader) supports downloading models from Hugging Face and CivitAI. Download model files using the installed node. + + **Download directly to the container** + + Access the running container with the following command: + + ``` + docker exec -it comfyui bash + ``` + + Go to the `models` directory inside the container and download the model files to the corresponding subdirectories using the `wget` command. For example: + + ``` + wget https://huggingface.co/prompthero/openjourney/resolve/main/mdjrny-v4.safetensors + ``` + + **Copy from your computer** + + If you have the model on your computer, copy its files to the container using the following command: + + ``` + docker cp comfyui: + ``` + + - Replace `` with the path to a file on your computer. + - Replace `` with the path inside the container. + + For example: + + ``` + docker cp ~/Downloads/openjourney/mdjrny-v4.safetensors comfyui:/opt/ComfyUI/models/checkpoints/mdjrny-v4.safetensors + ``` + + 6. When the workflow is ready, save it (Ctrl+S). + + 7. Run the script `save-and-stop-dev-container.sh`. Wait until the script is finished; this may take a few minutes. When done, the script will create a TAR.GZ archive file with your workflow and model files in the `solutions/ComfyUI/changeset/` directory. + + 8. Unpack the archive using the following command: + + ``` + tar -xvzf snapshot.tar.gz -C + ``` + + - Replace `` with the name of the output directory. + + The output directory is ready for [upload](/marketplace/guides/deploy-model#2-upload) to Super Protocol. + + + + + 1. Create a directory for the model files—the _model directory_. + + 2. In this directory, create the following subdirectory structure: + + ``` + user/default/workflows/ + user/default/ComfyUI-Manager/snapshots/ + ``` + + Place your workflow JSON file to `user/default/workflows/` or leave the directory empty to use the ComfyUI's default text-to-image workflow. + + Leave `user/default/ComfyUI-Manager/snapshots/` empty. + + 3. If necessary, create additional subdirectories for the model files: + + ``` + models/checkpoints/ + models/clip/ + models/clip_vision/ + models/configs/ + models/controlnet/ + models/diffusers/ + models/diffusion_models/ + models/embeddings/ + models/gligen/ + models/hypernetworks/ + models/loras/ + models/photomaker/ + models/style_models/ + models/text_encoders/ + models/unet/ + models/upscale_models/ + models/vae/ + models/vae_approx/ + ``` + + 4. Create an additional subdirectory `custom_nodes` in the root of the model directory and place the node directories there. + + 5. Check if the subdirectory structure inside the model directory is correct. An example of a correct structure: + + ``` + . + ├── custom_nodes + │    └── comfyui-model-downloader + │   └── ... + ├── models + │   └── checkpoints + │   └── mdjrny-v4.safetensors + └── user + └── default + ├── ComfyUI-Manager + │   └── snapshots + └── workflows + └── my-openjourney-workflow.json + ``` + + The model directory is ready for [upload](/marketplace/guides/deploy-model#2-upload) to Super Protocol. + + + + +## Contact Super Protocol + +If you face any issues, do not hesitate to contact the Super Protocol team on [Discord](https://discord.gg/superprotocol) or via the [contact form](https://superprotocol.zendesk.com/hc/en-us/requests/new) for assistance. \ No newline at end of file diff --git a/docs/marketplace/guides/storage.md b/docs/marketplace/guides/storage.md index e59c3f9c..8d628376 100644 --- a/docs/marketplace/guides/storage.md +++ b/docs/marketplace/guides/storage.md @@ -2,7 +2,7 @@ id: "storage" title: "Set Up Personal Storage" slug: "/guides/storage" -sidebar_position: 6 +sidebar_position: 7 --- This guide provides step-by-step instructions on how to set up your personal Storj account. diff --git a/docs/marketplace/limitations.md b/docs/marketplace/limitations.md index 8a8abd23..ec5978af 100644 --- a/docs/marketplace/limitations.md +++ b/docs/marketplace/limitations.md @@ -40,7 +40,7 @@ Web3 users can receive up to **1.5 SPPI** tokens and **0.0001 BNB** tokens daily If you want to upload and deploy your model, its total size should not exceed 13 GB; otherwise, deployment may fail. More machines with larger slots to support bigger models will be available in the future. -Also, deployed models must belong to a category supported by one of the AI engines: +Also, deployed models must belong to a category supported by one of the engines: - **Text Generation Web UI** supports text-based tasks: - Text Generation From 7855f922189d1808c659fb1c9169ef4bae2cb533 Mon Sep 17 00:00:00 2001 From: k3dz0r Date: Wed, 21 May 2025 12:27:07 -0400 Subject: [PATCH 6/7] Moved favicon, added an open graph icon --- docusaurus.config.js | 13 ++++++++++--- static/{ => img}/favicon.ico | Bin static/img/icon.png | Bin 0 -> 461983 bytes 3 files changed, 10 insertions(+), 3 deletions(-) rename static/{ => img}/favicon.ico (100%) create mode 100644 static/img/icon.png diff --git a/docusaurus.config.js b/docusaurus.config.js index f057a1aa..bf9e304c 100644 --- a/docusaurus.config.js +++ b/docusaurus.config.js @@ -8,13 +8,13 @@ const katex = require("rehype-katex"); /** @type {import('@docusaurus/types').Config} */ const config = { - title: "Super Protocol", + title: "Super Protocol Docs", url: "https://docs.superprotocol.com", baseUrl: "/", onBrokenLinks: "throw", onBrokenMarkdownLinks: "warn", - favicon: "favicon.ico", - organizationName: "Super Protocol", // Usually your GitHub org/user name. + favicon: "img/favicon.ico", + organizationName: "Super-Protocol", // Usually your GitHub org/user name. projectName: "docs", // Usually your repo name. i18n: { defaultLocale: 'en', @@ -153,6 +153,13 @@ const config = { minHeadingLevel: 2, maxHeadingLevel: 3, }, + metadata: [ + {name: 'description', content: 'Technical documentation for Super Protocol.'}, + {property: 'og:title', content: 'Super Protocol Docs'}, + {property: 'og:description', content: 'Technical documentation for Super Protocol.'}, + {property: 'og:image', content: 'https://docs.superprotocol.com/img/icon.png'}, + {property: 'og:url', content: 'https://docs.superprotocol.com'}, + ] }), stylesheets: [ { diff --git a/static/favicon.ico b/static/img/favicon.ico similarity index 100% rename from static/favicon.ico rename to static/img/favicon.ico diff --git a/static/img/icon.png b/static/img/icon.png new file mode 100644 index 0000000000000000000000000000000000000000..2f95852b1b1944b3a8f3e987d82bad8d7a3f7bc5 GIT binary patch literal 461983 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%0Dx*=JuB$yb`fI1U@}rbry}x=>_h zXn0~&hQC^8M9)aw(w~2m97lPLcA`xld4?mJS%q(2KPWd-Vc~}6Hn`4kmq9vl?jtCu zxEMiOTzETA4-650%QsW!Zp4U_M&^kaTC}2d?R>0B57&D00u7#1yH@M8r`Tij#bEd; zD;96NowuKO(2Zc3tJt^a)r4#&-@p|NLLLT_sKk(c|8cCd)JOfV)-M5IB_n&uh-Tqv ze2*K%b$oPQ)=t*RGVOV(670tUd?yn>SRu_EL8O=#W>Ppc3XizvM7>2xpqo`*1P33q zVptYV-|$VT=2hO%?*KlgU7Y&`Z@*fe|2EUoG zrubKt@R+ciMDAoWR&M?W1Z(l)zX0Eqjy|YeFQJ^eGXvrsXYidkK}sp#gFXJE1=nCI zExUTJK0QxRe5t`yjA2ujAqAvq`N*zPpew5-b!NnrM-9^lAM|&su5CQ~{%1slEWDN+LBBVnF8S`#b*(7n z=0rwgGw^r?FTQbFJyfCQ!NWzAJUi}eJG*X+(mMo?RGjTgtFhjYrWH_4=UielZiE+S z1rP6Mv>6dkL~Pc36h15EhwAu9UO<|kbN!-^iq+j)q641r%l#Y2YnAm5!gm|XP^=lI zUa9^^k3RU@3Y&tr^A+(tLi~uVK3)^FKdyhT5Yt#%voy?z*xb!aB15n%e%SAfVEm)r z+b2C`G_7Q+N`Uo_+MrgIh()a9T>P$D(vO{<4GZ0;yq(AquB){R_u7i}$jtxt-&KKe z&;z-Gy=~csoFV~f(eO4{-L5h?j>H_m$691H%sjw~NtD z-~dP(whqsqx?10V{fUrq6?wJ$mDd;VFR-TA7qtXg0MB()ZGp=?1H>?d#ouHXSZJ76~hCVtS$c6;UQC%℘P0b_3Ojv$@krP4cJReJXDou3Xo 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Ə`Tf*#QI~Pq%U*8oF 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 literal 0 HcmV?d00001 From 475b7674cefcc6db40a0d30ffd976eda31db8775 Mon Sep 17 00:00:00 2001 From: k3dz0r Date: Wed, 21 May 2025 13:44:43 -0400 Subject: [PATCH 7/7] Fixed mistakes and typos --- docs/cli/commands/offers/get-slot.md | 2 +- docs/cli/commands/offers/update.md | 4 ++-- docs/developers/marketplace_gui/walkthrough.md | 2 +- docs/fundamentals/slots.md | 4 ++-- docs/marketplace/guides/prepare-comfyui.md | 2 +- 5 files changed, 7 insertions(+), 7 deletions(-) diff --git a/docs/cli/commands/offers/get-slot.md b/docs/cli/commands/offers/get-slot.md index 8634ac51..dd9f6b84 100644 --- a/docs/cli/commands/offers/get-slot.md +++ b/docs/cli/commands/offers/get-slot.md @@ -6,7 +6,7 @@ sidebar_label: "get-slot" sidebar_position: 11 --- -Displays the information for a slot in and offer. +Displays the information for a slot in an offer. Use the [`offers get`](/cli/commands/offers/get) command to get the IDs of all the offer's slots. diff --git a/docs/cli/commands/offers/update.md b/docs/cli/commands/offers/update.md index d8ca88b2..13fb2bb4 100644 --- a/docs/cli/commands/offers/update.md +++ b/docs/cli/commands/offers/update.md @@ -50,9 +50,9 @@ The offerInfo JSON file may contain the following objects, arrays, and strings: | `restrictions` | Object that specifies the offers that should be executed together with the current one|This object contains the `offers` and `types` arrays | | `offers` | Array of IDs of required offers, including their dependencies | Put each ID in quotation marks and separate them with a comma | | `types` | Array of types of the required offers, the same codes as in `offerType` | State the type for each offer in `offers`. Put each type in quotation marks and separate them with a comma | -| `metadata` | Any additional information | May be empty or contain information about whether or not the current offer is a grouping one. For example, `"{\"groupingOffers\":true}"`. | +| `metadata` | Any additional information | May be empty or contain information about whether the current offer is a grouping one. For example, `"{\"groupingOffers\":true}"`. | | `input` | Metadata about permitted inputs (not implemented yet) | Leave empty. | -| `output` | Metadata about permitted inputs (not implemented yet) | Leave empty. | +| `output` | Metadata about permitted outputs (not implemented yet) | Leave empty. | | `allowedArgs` | Deprecated | Leave empty. | | `allowedAccounts` | List of accounts allowed to use the current offer | Leave empty to allow all accounts. | | `argsPublicKey` | Encryption information in a string format:
`algo`: algorithm for encrypting arguments
`encoding`: encoding scheme
`key`: public key | Example:
`"argsPublicKey":`
`"{\"algo\":\"ECIES\",`
`\"encoding\":\"base64\",`
`\"key\":\"\"}"` | diff --git a/docs/developers/marketplace_gui/walkthrough.md b/docs/developers/marketplace_gui/walkthrough.md index b4b4d53a..60febcd1 100644 --- a/docs/developers/marketplace_gui/walkthrough.md +++ b/docs/developers/marketplace_gui/walkthrough.md @@ -25,7 +25,7 @@ Go to the `Solutions` tab and click on the `Tunnels Launcher` offer. It will ope ::: -Here you can pick the desired requirements for Tunnels Launcher. Learn more about [Requirements](/fundamentals/slots). In short: requirements specify how much computing and internet resources the solution or data offer needs to run. You can also read about [offers](/fundamentals/offers). +Here you can pick the desired requirements for Tunnels Launcher. Learn more about [Requirements](/fundamentals/slots). In short: requirements specify how many computing and internet resources the solution or data offer needs to run. You can also read about [offers](/fundamentals/offers). You can also see in the `Restricted` tab that this Solution requires another offer: a `NodeJS base image`. It is added to the order automatically. diff --git a/docs/fundamentals/slots.md b/docs/fundamentals/slots.md index 4a44a724..55db5a23 100644 --- a/docs/fundamentals/slots.md +++ b/docs/fundamentals/slots.md @@ -5,13 +5,13 @@ slug: "/slots" sidebar_position: 4 --- -_Requirements_ specify how much computing resources an offer needs to run. +_Requirements_ specify how many computing resources an offer needs to run. _Configurations_ provide flexibility in selecting computing resources and internet access for offer deployment. The compute offer configuration added to an order must meet all the requirements in this order. ## Requirements -Requirements specify how much computing resources a value offer needs to run. A _requirement slot_ is a specific set of requirements that may include the following: +Requirements specify how many computing resources a value offer needs to run. A _requirement slot_ is a specific set of requirements that may include the following: - Number of CPU cores - RAM diff --git a/docs/marketplace/guides/prepare-comfyui.md b/docs/marketplace/guides/prepare-comfyui.md index f306a79e..a1650880 100644 --- a/docs/marketplace/guides/prepare-comfyui.md +++ b/docs/marketplace/guides/prepare-comfyui.md @@ -21,7 +21,7 @@ You can prepare your model, workflow, and custom node files manually or using Do - Prerequisits: + Prerequisites: - Linux or MacOS. On Windows, use the [Windows Subsystem for Linux (WSL)](https://learn.microsoft.com/en-us/windows/wsl/install). - [Docker](https://www.docker.com/)