From 82e91c4016efd16b01d5b5c5c8ec8bb6fc96184c Mon Sep 17 00:00:00 2001 From: k3dz0r Date: Wed, 11 Feb 2026 15:03:00 -0300 Subject: [PATCH 1/3] Update marketplace/account --- docs/marketplace/Guides/storage.md | 6 +-- docs/marketplace/account.md | 52 +++++++++++++++++++++++ docs/marketplace/account/index.md | 39 ----------------- docs/marketplace/account/web2.md | 31 -------------- docs/marketplace/account/web3.md | 36 ---------------- docs/marketplace/images/web2-account.png | Bin 17191 -> 10357 bytes docs/marketplace/images/web3-account.png | Bin 17939 -> 0 bytes docusaurus.config.js | 8 ++++ 8 files changed, 62 insertions(+), 110 deletions(-) create mode 100644 docs/marketplace/account.md delete mode 100644 docs/marketplace/account/index.md delete mode 100644 docs/marketplace/account/web2.md delete mode 100644 docs/marketplace/account/web3.md delete mode 100644 docs/marketplace/images/web3-account.png diff --git a/docs/marketplace/Guides/storage.md b/docs/marketplace/Guides/storage.md index 95915151..7f477595 100644 --- a/docs/marketplace/Guides/storage.md +++ b/docs/marketplace/Guides/storage.md @@ -7,14 +7,12 @@ sidebar_position: 6 This guide provides step-by-step instructions on how to set up your personal Storj account. -The guide is intended for advanced Web3 users; feel free to skip it and continue using the default recommended option—**Super Protocol cloud**. Read about [types of storage](/marketplace/account/web3#storage). +The guide is intended for advanced users; feel free to skip it and continue using the default recommended option—**Super Protocol cloud**. Read about [types of storage](/marketplace/account#storage). - +

-Web2 users must first [log in as a Web3 user](/marketplace/guides/log-in) to be able to upload to a personal Storj account instead of the Super Protocol cloud. - ## Step 1. Register a Storj account If you don't already have a [Storj](https://www.storj.io/) account, register one. Both free Trial and Pro accounts are suitable. Note that with a Trial account, your files will become inaccessible once the trial period ends. diff --git a/docs/marketplace/account.md b/docs/marketplace/account.md new file mode 100644 index 00000000..3f2b4345 --- /dev/null +++ b/docs/marketplace/account.md @@ -0,0 +1,52 @@ +--- +id: "account" +title: "Enter Marketplace" +slug: "/account" +sidebar_position: 3 +--- + +Super Protocol supports two login methods: + +- Web2 requires an account on one of the supported platforms: + - Google + - Hugging Face + - GitHub + - Microsoft +- Web3 requires a software wallet installed as a browser extension: + - MetaMask + - Trust Wallet + +For instructions on how to set up software wallets and connect them to the Marketplace, read [How to Log In as a Web3 User](/marketplace/guides/log-in). + + +
+
+ +## Account window + +This window shows your user account settings. + + +
+
+ +**User ID**: your unique user ID. + +**Login**: the OAuth2 provider and your login email address. + +The **Get SPPI** button allows you to get tokens necessary to place orders. + +### Storage + +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. +- **Your Storj account**: + - Intended for advanced users. + - Requires creating and [setting up a Storj account](http://localhost:3000/marketplace/guides/storage). + - 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/account/index.md b/docs/marketplace/account/index.md deleted file mode 100644 index e2ae472f..00000000 --- a/docs/marketplace/account/index.md +++ /dev/null @@ -1,39 +0,0 @@ ---- -id: "account" -title: "Enter Marketplace" -slug: "/account" -sidebar_position: 3 ---- - -There are two types of accounts in Super Protocol: - -- Web3 User account -- Web2 User account - - -
-
- -## Web3 User account - -_Web3 User account_ provides access to all Marketplace capabilities, including: - -- Full decentralization and sole control of user's funds, models, and datasets. -- Ability to upload models and datasets to the Super Protocol cloud or a personal Storj account. -- Placement of orders using Marketplace offers or the user's own uploaded content. -- Registration of individual providers. -- Creation and monetization of model and dataset offers on the Marketplace. -- Ability to request additional SPPI tokens. - -Read [How to Log In as a Web3 User](/marketplace/guides/log-in) for step-by-step instructions. - -## Web2 User account - -_Web2 User account_ is a quick way to start with the Marketplace. It streamlines a few steps, but this comes at the expense of full decentralization, such as using OAuth2 authentication for login instead of the decentralized MetaMask. - -To log in as a Web2 user, you need an account on one of the supported platforms: - -- Google -- Hugging Face -- GitHub -- Microsoft diff --git a/docs/marketplace/account/web2.md b/docs/marketplace/account/web2.md deleted file mode 100644 index 5e2e2140..00000000 --- a/docs/marketplace/account/web2.md +++ /dev/null @@ -1,31 +0,0 @@ ---- -id: "web2" -title: "Web2 User Account" -slug: "/account/web2" -sidebar_position: 2 ---- - -This window shows the settings of your [Web2 User account](/marketplace/account#web2-user-account). - - -
-
- -**User ID**: your unique user ID. - -**Login**: the OAuth2 provider and your login email address. - -## Storage - -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. -- **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. - -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 deleted file mode 100644 index dd18bbb3..00000000 --- a/docs/marketplace/account/web3.md +++ /dev/null @@ -1,36 +0,0 @@ ---- -id: "web3" -title: "Web3 User Account" -slug: "/account/web3" -sidebar_position: 1 ---- - -This window allows you to manage your [Web3 User account](/marketplace/account#web3-user-account). - - -
-
- -**User ID**: your unique user ID is your EVM wallet address. - -**Login**: the Web3 login method and the EVM wallet address you are using. Currently, Super Protocol only supports MetaMask as a Web3 login method. - -**Get SPPI** and **Get BNB** buttons allow you to get tokens necessary to place orders: - -- SPPI tokens are required to pay and receive payments in Super Protocol. -- BNB tokens are required to pay for opBNB blockchain transactions. - -## Storage - -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. -- **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. - -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/images/web2-account.png b/docs/marketplace/images/web2-account.png index 528db2d7d11a089b30e226cbdcc7497ed4622be4..80cc8beec183f35b36d3cb095bb07b7e1e5446ea 100644 GIT binary patch literal 10357 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 Date: Thu, 2 Apr 2026 16:21:06 -0300 Subject: [PATCH 2/3] Add the vllm guide for swarm --- .../Guides/deploy-app/deploy-app-example.md | 12 +- docs/cli/Guides/swarm-vllm.md | 181 ++++++++++++++++++ docs/cli/images/create-kubernetes-space.png | Bin 0 -> 20631 bytes docs/cli/images/ingresses.png | Bin 0 -> 14143 bytes docs/cli/images/kubernetes-create-cluster.png | Bin 0 -> 19120 bytes .../images/kubernetes-download-kubeconfig.png | Bin 0 -> 22049 bytes .../cli/images/kubernetes-publish-cluster.png | Bin 0 -> 22774 bytes docs/cli/images/swarm-log-in.png | Bin 0 -> 3806 bytes docs/marketplace/Guides/storage.md | 2 +- docs/marketplace/account.md | 2 +- static/files/deploy_apertus_official.sh | 154 +++++++++++++++ static/files/deploy_medgemma_official.sh | 170 ++++++++++++++++ 12 files changed, 513 insertions(+), 8 deletions(-) create mode 100644 docs/cli/Guides/swarm-vllm.md create mode 100644 docs/cli/images/create-kubernetes-space.png create mode 100644 docs/cli/images/ingresses.png create mode 100644 docs/cli/images/kubernetes-create-cluster.png create mode 100644 docs/cli/images/kubernetes-download-kubeconfig.png create mode 100644 docs/cli/images/kubernetes-publish-cluster.png create mode 100644 docs/cli/images/swarm-log-in.png create mode 100755 static/files/deploy_apertus_official.sh create mode 100755 static/files/deploy_medgemma_official.sh diff --git a/docs/cli/Guides/deploy-app/deploy-app-example.md b/docs/cli/Guides/deploy-app/deploy-app-example.md index 762949db..edb21fd1 100644 --- a/docs/cli/Guides/deploy-app/deploy-app-example.md +++ b/docs/cli/Guides/deploy-app/deploy-app-example.md @@ -98,7 +98,7 @@ RUN chmod +x /usr/local/bin/usd_to_crypto.py COPY entrypoint.sh /usr/local/bin/entrypoint.sh RUN chmod +x /usr/local/bin/entrypoint.sh -# Set /sp as workdir (doesn't matter in this case; entrypoint.sh uses /sp/output as workdir) +# Set /sp as workdir (doesn't matter in this case -- entrypoint.sh uses /sp/output as workdir) WORKDIR /sp # Set entrypoint @@ -137,8 +137,8 @@ tar -czvf input.tar.gz ./input.txt ```shell ./spctl files upload ./input.tar.gz \ ---filename input.tar.gz \ ---output input.resource.json + --filename input.tar.gz \ + --output input.resource.json ``` ### 3. Deploy @@ -147,9 +147,9 @@ Place an order: ```shell ./spctl workflows create \ ---tee 7 \ ---solution ./usd_to_crypto.resource.json \ ---data ./input.resource.json + --tee 7 \ + --solution ./usd_to_crypto.resource.json \ + --data ./input.resource.json ``` Find the order ID in the output, for example: diff --git a/docs/cli/Guides/swarm-vllm.md b/docs/cli/Guides/swarm-vllm.md new file mode 100644 index 00000000..c9022890 --- /dev/null +++ b/docs/cli/Guides/swarm-vllm.md @@ -0,0 +1,181 @@ +--- +id: "swarm-vllm" +title: "vLLM on Super Swarm" +slug: "/guides/swarm-vllm" +sidebar_position: 20 +--- + +This guide provides step-by-step instructions for deploying MedGemma and Apertus on Super Swarm using vLLM. + +## Prerequisites + +- [kubectl](https://kubernetes.io/docs/tasks/tools/) +- [helm](https://helm.sh/docs/intro/install/) +- A domain +- For [MedGemma](https://huggingface.co/google/medgemma-1.5-4b-it): an HF_TOKEN from an account that has already accepted the model's terms + +Also, download and rename deployment scripts: + +- [`deploy_medgemma_official.sh`](/files/deploy_medgemma_official.sh) +- [`deploy_apertus_official.sh`](/files/deploy_apertus_official.sh) + +## 1. Sign in using MetaMask + + +
+ +## 2. Create a Kubernetes cluster + +2.1. Go to **Kubernetes** and press **Create Cluster**: + + +
+
+ +2.2. Add a GPU to the cluster, allocate resources, and press **Create Cluster**: + + +
+ +## 3. Download the cluster configuration file + + +
+ +## 4. Point `kubectl` to the configuration file + +Execute the following command: + +```shell +export KUBECONFIG=-kubeconfig.yaml +``` + +Replace `-kubeconfig.yaml` with the name of the downloaded configuration file. + +## 5. Update the scripts + +In both scripts (`deploy_medgemma_official.sh` and `deploy_apertus_official.sh`), find `BASE_DOMAIN="${BASE_DOMAIN:-monai-swarm.win}"` and replace `monai-swarm.win` with your domain. + +## 6. Create an API key + +Execute the following command and type a desired key: + +```shell +read -rs API_KEY && export API_KEY +``` + +## 7. Deploy the model + +Apertus: + +```shell +bash deploy_apertus_official.sh +``` + +The deployment usually takes 5-7 minutes. + +A working Apertus config is already set in the script: + +``` +dtype=bfloat16 +max-model-len=32768 +gpu-memory-utilization=0.55 +max-num-seqs=8 +max-num-batched-tokens=4096 +``` + +MedGemma: + +```shell +export HF_TOKEN=hf_xxx +bash deploy_medgemma_official.sh +``` + +Replace `hf_xxx` with an HF_TOKEN. + +Alternatively, create a `.hf_token` file next to `deploy_medgemma_official.sh`; the script will read it automatically. + +A working MedGemma config is already set in the script: + +``` +dtype=bfloat16 +max-model-len=8192 +gpu-memory-utilization=0.40 +--mm-processor-cache-gb 1 +max-num-seqs=4 +max-num-batched-tokens=2048 +``` + +## 8. Check Kubernetes + +```shell +kubectl get pods -o wide +kubectl get svc +kubectl get ingress +``` + +Expected output: + +- Two pods in `1/1 Running` +- Two services +- Two ingresses + +## 9. Confirm DNS records + +Back in the Super Swarm dashboard, go to **Ingresses** and note the two hostnames listed there. + + +
+
+ +For each hostname, add a CNAME record pointing to it and a TXT record for domain verification at your DNS provider. + +## 10. Publish the cluster + +In the Super Swarm dashboard, go to **Kubernetes** and publish the cluster. + + +
+ +## 11. Send test requests + +In the test requests below, replace: + +- `` with your domain. +- `` with the API key you set in [Step 6](/cli/guides/swarm-vllm#6-create-an-api-key). + +Apertus: + +```shell +curl https://apertus-vllm./v1/completions \ + -H 'Authorization: Bearer ' \ + -H 'Content-Type: application/json' \ + -d '{ + "model": "swiss-ai/Apertus-8B-2509", + "prompt": "Write a concise technical summary of Kubernetes GPU scheduling.", + "temperature": 0, + "max_tokens": 200 + }' +``` + +MedGemma: + +```shell +curl https://medgemma-vllm./v1/chat/completions \ + -H 'Authorization: Bearer ' \ + -H 'Content-Type: application/json' \ + -d '{ + "model": "google/medgemma-1.5-4b-it", + "messages": [ + { + "role": "user", + "content": [ + {"type": "text", "text": "Describe this image briefly."}, + {"type": "image_url", "image_url": {"url": "data:image/png;base64,PASTE_BASE64_HERE"}} + ] + } + ], + "temperature": 0, + "max_tokens": 120 + }' +``` \ No newline at end of file diff --git a/docs/cli/images/create-kubernetes-space.png b/docs/cli/images/create-kubernetes-space.png new file mode 100644 index 0000000000000000000000000000000000000000..c98291d60cec3500c99123050dbb6fd28eb0c968 GIT binary patch literal 20631 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 X>I$>m^&OlvC}v@P;&6eP%gz4)3v^p3 literal 0 HcmV?d00001 diff --git a/docs/cli/images/ingresses.png b/docs/cli/images/ingresses.png new file mode 100644 index 0000000000000000000000000000000000000000..86b2a44b9d6e87b96dbb9bf115119500501bf0dd GIT binary patch literal 14143 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 literal 0 HcmV?d00001 diff --git a/docs/cli/images/kubernetes-create-cluster.png b/docs/cli/images/kubernetes-create-cluster.png new file mode 100644 index 0000000000000000000000000000000000000000..312d03da18a0e1825373625be6569aaf5259d965 GIT binary patch literal 19120 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 z zn}=e~frU7SdlncWGr;dd^`aGQqVCn5?$6(>m|?)F_e8J#S{OnZ;y7@)B$3jHpHhhF z*(Kwt(`^kx@nE6zFJQlx)w#GsFvWV#lNL~GN`|e2f)I3*!=|<2;w{io{4#F7XFH~w z&E%XhvO`XEuku6OegW~Z>9$EI_wLh29X)*b7Pc4+topRBM7uEcmI-zQ{|+XQ?3>b- za`@ANbPfg7Sj7?TBY7P$-^xSBdorxo0vqjsKXbn3cHR5=LyfeqiVCBI)dN-C*Yz2B z)&bGWJ*Nr+%PWs6QHHY@k#4hxeC|6ui}3x;$J87Pq2Y4m)^9!UsAwkLDjCqI8?|Q>QPhYIBuze%I3v?rfgq25akbEc`0EQoJRjOE;WJQP^6%st z5%l})Pp60ZYQe5x(L=bM57*{Y$ll$yQPgQQ80$x4v-!A@IoAxZ{X@E8MV5*`b9=b2 zH~FC|bdy|bAcN?=P&41eQu{(*gmwX%*|2kF>Y_0HQMVoGQh7db4EYpt$3JSM+9FKDSgFK9ufTfDBA$O z*BX1~sQ}Kn(gYWynF;*-5=G&miQx(cRJ0w*Ba0$A?9j%D-v$L>-nY4}M1p`V&m1GM zB|Zotvmc`2ov46SLOa((=PKt+&e;-8-v`2f7YlqU9ku zF&yEGU3|}5ZM$4SWsqHygU;LkSV!*;Picg>Nw?#YBl85l$1b6vV_nO2u$n_t_JUMUOxY_Up29f((& zu!2GUAJ1w@w6v&=?97CpRC~_oZ7F08NTlL$^DBjW%|G+FI6jlT5m&wBuAERdffFD9 z{HBWA!|7=d5oJf_ytzb1i25@v&$Mr_@Ae(vZ%oRzJiTX9cB3UmU1k4z5rt{}=?l(+ zZ!FE2NK20RdYHQ#c+SI~bhTR^h&Q!0crWHm_UFbf?ZhhPXMH>f>OZu|3S|GNjux2V zUcYc~eS0rJa(<{-#iQF8cM_Y7T_nO}Ux6b%MI>=W^@!qj5OHepz<;x8J-%F193z)alECpDZnFFGjwm~ zZm-M3-)?fnpWOA|;f~2O_zN*}sZn#2MY$mq<_7)8=a|J*hakZsyK+YC;ab>TA9B0e zi1_$M;O@etHyJ_d7k+Yq)SFCWro2^3&^eBH?Z?xkCR}*&}F+IK{``>x@|0;hHVk38_)Xy*j;)<3@ z6g(^M)MAqJ!*3%qV6yi_fzuGw=TY3k#rlTkSR9e-+r-uowEvcj^GHp~pR#xrSy&ja z2P*F%{IODq*Qq1gdWODN7m6rLAA_$Rt1SKK)bpbLnqDobNxROYOe@IFaw@R|@=C@h zxE%lJZcDW(R*A?(riBPc%+Hfk5#r+2+t|b8+4jjl39ZbDpUWf zxS*&`SUI$>UIewFsVK_w8cqtW|4bfR3uI&%507*@!|bDcJ`Ql_Ghd4{kU0Za0?)B1 zuU)ObtHn%D0&2kt>=+4DeW-$yAB~Y|qEv}eEn&BLU9;44G=LZ^$l~=O`t_YsI}!K; zJiG-m%HjR&yJgC-H4o$D) zcT>O19H#yhUrA0P69Ysi@Hlq^N~XFqv=r&#}~TfM7-&TzdI zf_Lmxz=Sr3@QS&5Zn~?oc~<+W#yNs+kfX7;#Bs!2bXdTQXQ|(qZ>xturEwLkzgFu$ z?Gjd|!MKkuvDkd|50vw>=c@g$n@cqG5fyCWx9QA>{FN$`8}Y!Y5Lfw_&_2uSnC5h8 zrIR(Q@m0I@%j==Azp#aZZtfFyeae;Ht`_@iB1C1@mbLcyjjQ-;f_Cc zC5oH7i1^oS3@vRrvw^32OAsOi+;DUY_8zMKvldgXmjsK#jZ$rLzmj!m(*RC?1(5h@ z8sgiVK*(>92&!1ow4O-Le0OK*bcO1zZU>NJW*{&H_awexkC(ZZr zHQdTJG`!^F4+R#mjplGFCnyIdL*=w0!~b78Ey99%nIznoWyKgm#`+Z$f|zK~O)u5a zL~LxiSoDJfFzr5XkvvgOz)3Q+EBy-_PE{
diff --git a/docs/marketplace/account.md b/docs/marketplace/account.md index 3f2b4345..99f147c1 100644 --- a/docs/marketplace/account.md +++ b/docs/marketplace/account.md @@ -46,7 +46,7 @@ You have two options of decentralized storage to upload files: - 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](http://localhost:3000/marketplace/guides/storage). + - Requires creating and [setting up a Storj account](/marketplace/guides/storage). - 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/static/files/deploy_apertus_official.sh b/static/files/deploy_apertus_official.sh new file mode 100755 index 00000000..1487a1c7 --- /dev/null +++ b/static/files/deploy_apertus_official.sh @@ -0,0 +1,154 @@ +#!/usr/bin/env bash +set -euo pipefail + +SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)" + +BASE_DOMAIN="${BASE_DOMAIN:-monai-swarm.win}" +API_HOST="${API_HOST:-apertus-vllm.${BASE_DOMAIN}}" +MODEL_NAME="${MODEL_NAME:-swiss-ai/Apertus-8B-2509}" +MODEL_ENTRY_NAME="${MODEL_ENTRY_NAME:-apertus}" +RELEASE_NAME="${RELEASE_NAME:-apertus-official}" +if [ -z "${API_KEY:-}" ]; then + echo "API_KEY must be set. Execute:" >&2 + echo "read -rs API_KEY && export API_KEY" >&2 + echo "And then type a desired key." >&2 + exit 1 +fi +IMAGE_REPOSITORY="${IMAGE_REPOSITORY:-vllm/vllm-openai}" +IMAGE_TAG="${IMAGE_TAG:-v0.18.0}" +GPU_MEMORY_UTILIZATION="${GPU_MEMORY_UTILIZATION:-0.55}" +MAX_MODEL_LEN="${MAX_MODEL_LEN:-32768}" +CPU_REQUEST="${CPU_REQUEST:-8}" +MEMORY_REQUEST="${MEMORY_REQUEST:-48Gi}" +GPU_COUNT="${GPU_COUNT:-1}" +PVC_STORAGE="${PVC_STORAGE:-80Gi}" +INGRESS_CLASS="${INGRESS_CLASS:-nginx}" + +need() { command -v "$1" >/dev/null 2>&1 || { echo "Missing dependency: $1" >&2; exit 1; }; } +need kubectl +need helm + +NAMESPACE="${NAMESPACE:-$(kubectl config view --minify -o jsonpath='{..namespace}' 2>/dev/null || true)}" +if [ -z "${NAMESPACE}" ]; then + NAMESPACE="llm" +fi + +SECRET_NAME="${RELEASE_NAME}-auth" +SERVICE_NAME="${RELEASE_NAME}-${MODEL_ENTRY_NAME}-engine-service" +DEPLOY_LABEL_MODEL="${MODEL_ENTRY_NAME}" +INGRESS_NAME="${RELEASE_NAME}-api-ingress" + +echo "==> Runtime: vLLM (official helm chart)" +echo "==> Namespace: ${NAMESPACE}" +echo "==> Release: ${RELEASE_NAME}" +echo "==> API host: ${API_HOST}" +echo "==> Model: ${MODEL_NAME}" +echo "==> Model entry name: ${MODEL_ENTRY_NAME}" +echo "==> Image: ${IMAGE_REPOSITORY}:${IMAGE_TAG}" +echo "==> Max model length: ${MAX_MODEL_LEN}" +echo "==> GPU memory utilization: ${GPU_MEMORY_UTILIZATION}" +echo + +kubectl get ns "${NAMESPACE}" >/dev/null 2>&1 || kubectl create ns "${NAMESPACE}" + +helm repo add vllm https://vllm-project.github.io/production-stack >/dev/null 2>&1 || true +helm repo update >/dev/null 2>&1 + +cat < "${VALUES_FILE}" < Pods:" +kubectl -n "${NAMESPACE}" get pods -o wide +echo +echo "==> Services:" +kubectl -n "${NAMESPACE}" get svc -o wide +echo +echo "==> Ingress:" +kubectl -n "${NAMESPACE}" get ingress -o wide +echo +echo "==> Waiting for Apertus pod readiness..." +kubectl -n "${NAMESPACE}" wait --for=condition=ready pod \ + -l "model=${DEPLOY_LABEL_MODEL},helm-release-name=${RELEASE_NAME}" \ + --timeout=900s +echo +echo "==> Ready" +echo "Base URL: https://${API_HOST}/v1" +echo "Model: ${MODEL_NAME}" +echo "Example:" +echo " curl https://${API_HOST}/v1/models -H 'Authorization: Bearer ${API_KEY}'" diff --git a/static/files/deploy_medgemma_official.sh b/static/files/deploy_medgemma_official.sh new file mode 100755 index 00000000..7845a04e --- /dev/null +++ b/static/files/deploy_medgemma_official.sh @@ -0,0 +1,170 @@ +#!/usr/bin/env bash +set -euo pipefail + +SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)" + +BASE_DOMAIN="${BASE_DOMAIN:-monai-swarm.win}" +API_HOST="${API_HOST:-medgemma-vllm.${BASE_DOMAIN}}" +MODEL_NAME="${MODEL_NAME:-google/medgemma-1.5-4b-it}" +MODEL_ENTRY_NAME="${MODEL_ENTRY_NAME:-medgemma}" +RELEASE_NAME="${RELEASE_NAME:-medgemma-official}" +if [ -z "${API_KEY:-}" ]; then + echo "API_KEY must be set. Execute:" >&2 + echo "read -rs API_KEY && export API_KEY" >&2 + echo "And then type a desired key." >&2 + exit 1 +fi +IMAGE_REPOSITORY="${IMAGE_REPOSITORY:-vllm/vllm-openai}" +IMAGE_TAG="${IMAGE_TAG:-v0.18.0}" +GPU_MEMORY_UTILIZATION="${GPU_MEMORY_UTILIZATION:-0.40}" +MAX_MODEL_LEN="${MAX_MODEL_LEN:-8192}" +CPU_REQUEST="${CPU_REQUEST:-8}" +MEMORY_REQUEST="${MEMORY_REQUEST:-48Gi}" +GPU_COUNT="${GPU_COUNT:-1}" +PVC_STORAGE="${PVC_STORAGE:-80Gi}" +INGRESS_CLASS="${INGRESS_CLASS:-nginx}" + +if [ -z "${HF_TOKEN:-}" ] && [ -f "${SCRIPT_DIR}/.hf_token" ]; then + HF_TOKEN="$(cat "${SCRIPT_DIR}/.hf_token")" +fi + +if [ -z "${HF_TOKEN:-}" ]; then + echo "HF_TOKEN is required for ${MODEL_NAME}." >&2 + echo "Set HF_TOKEN in the environment or create ${SCRIPT_DIR}/.hf_token." >&2 + exit 1 +fi + +need() { command -v "$1" >/dev/null 2>&1 || { echo "Missing dependency: $1" >&2; exit 1; }; } +need kubectl +need helm + +NAMESPACE="${NAMESPACE:-$(kubectl config view --minify -o jsonpath='{..namespace}' 2>/dev/null || true)}" +if [ -z "${NAMESPACE}" ]; then + NAMESPACE="llm" +fi + +SECRET_NAME="${RELEASE_NAME}-auth" +SERVICE_NAME="${RELEASE_NAME}-${MODEL_ENTRY_NAME}-engine-service" +DEPLOY_LABEL_MODEL="${MODEL_ENTRY_NAME}" +INGRESS_NAME="${RELEASE_NAME}-api-ingress" + +echo "==> Runtime: vLLM (official helm chart)" +echo "==> Namespace: ${NAMESPACE}" +echo "==> Release: ${RELEASE_NAME}" +echo "==> API host: ${API_HOST}" +echo "==> Model: ${MODEL_NAME}" +echo "==> Model entry name: ${MODEL_ENTRY_NAME}" +echo "==> Image: ${IMAGE_REPOSITORY}:${IMAGE_TAG}" +echo "==> Max model length: ${MAX_MODEL_LEN}" +echo "==> GPU memory utilization: ${GPU_MEMORY_UTILIZATION}" +echo + +kubectl get ns "${NAMESPACE}" >/dev/null 2>&1 || kubectl create ns "${NAMESPACE}" + +helm repo add vllm https://vllm-project.github.io/production-stack >/dev/null 2>&1 || true +helm repo update >/dev/null 2>&1 + +cat < "${VALUES_FILE}" < Pods:" +kubectl -n "${NAMESPACE}" get pods -o wide +echo +echo "==> Services:" +kubectl -n "${NAMESPACE}" get svc -o wide +echo +echo "==> Ingress:" +kubectl -n "${NAMESPACE}" get ingress -o wide +echo +echo "==> Waiting for MedGemma pod readiness..." +kubectl -n "${NAMESPACE}" wait --for=condition=ready pod \ + -l "model=${DEPLOY_LABEL_MODEL},helm-release-name=${RELEASE_NAME}" \ + --timeout=900s +echo +echo "==> Ready" +echo "Base URL: https://${API_HOST}/v1" +echo "Model: ${MODEL_NAME}" +echo "Example:" +echo " curl https://${API_HOST}/v1/models -H 'Authorization: Bearer ${API_KEY}'" From 3f3a3220822bf520fd19ce39538fdbece20c86df Mon Sep 17 00:00:00 2001 From: k3dz0r Date: Fri, 3 Apr 2026 16:07:33 -0300 Subject: [PATCH 3/3] Small fixes --- docs/cli/Guides/swarm-vllm.md | 22 ++++++++++++---------- 1 file changed, 12 insertions(+), 10 deletions(-) diff --git a/docs/cli/Guides/swarm-vllm.md b/docs/cli/Guides/swarm-vllm.md index c9022890..52f4a9ae 100644 --- a/docs/cli/Guides/swarm-vllm.md +++ b/docs/cli/Guides/swarm-vllm.md @@ -12,14 +12,16 @@ This guide provides step-by-step instructions for deploying MedGemma and Apertus - [kubectl](https://kubernetes.io/docs/tasks/tools/) - [helm](https://helm.sh/docs/intro/install/) - A domain -- For [MedGemma](https://huggingface.co/google/medgemma-1.5-4b-it): an HF_TOKEN from an account that has already accepted the model's terms +- For [MedGemma](https://huggingface.co/google/medgemma-1.5-4b-it): a Hugging Face token from an account that has already accepted the model's terms Also, download and rename deployment scripts: - [`deploy_medgemma_official.sh`](/files/deploy_medgemma_official.sh) - [`deploy_apertus_official.sh`](/files/deploy_apertus_official.sh) -## 1. Sign in using MetaMask +## 1. Sign in to Super Swarm + +In the Super Swarm dashboard, sign in using MetaMask:
@@ -56,9 +58,9 @@ Replace `-kubeconfig.yaml` with the name of the downloaded co In both scripts (`deploy_medgemma_official.sh` and `deploy_apertus_official.sh`), find `BASE_DOMAIN="${BASE_DOMAIN:-monai-swarm.win}"` and replace `monai-swarm.win` with your domain. -## 6. Create an API key +## 6. Set the API key -Execute the following command and type a desired key: +Choose any password that will protect your API endpoints. Execute the following command and type your chosen secret (characters won't be displayed): ```shell read -rs API_KEY && export API_KEY @@ -66,7 +68,7 @@ read -rs API_KEY && export API_KEY ## 7. Deploy the model -Apertus: +### Apertus ```shell bash deploy_apertus_official.sh @@ -84,7 +86,7 @@ max-num-seqs=8 max-num-batched-tokens=4096 ``` -MedGemma: +### MedGemma ```shell export HF_TOKEN=hf_xxx @@ -93,7 +95,7 @@ bash deploy_medgemma_official.sh Replace `hf_xxx` with an HF_TOKEN. -Alternatively, create a `.hf_token` file next to `deploy_medgemma_official.sh`; the script will read it automatically. +Alternatively, create a `.hf_token` file with the token next to `deploy_medgemma_official.sh`; the script will read it automatically. A working MedGemma config is already set in the script: @@ -142,9 +144,9 @@ In the Super Swarm dashboard, go to **Kubernetes** and publish the cluster. In the test requests below, replace: - `` with your domain. -- `` with the API key you set in [Step 6](/cli/guides/swarm-vllm#6-create-an-api-key). +- `` with the key you set in [Step 6](/cli/guides/swarm-vllm#6-set-the-api-key). -Apertus: +### Apertus ```shell curl https://apertus-vllm./v1/completions \ @@ -158,7 +160,7 @@ curl https://apertus-vllm./v1/completions \ }' ``` -MedGemma: +### MedGemma ```shell curl https://medgemma-vllm./v1/chat/completions \