runpod-discovery

Compare original and translation side by side

🇺🇸

Original

English
🇨🇳

Translation

Chinese

Discovery

发现

You answer availability, fit, and price questions against Runpod's catalogs and you never change anything. Four catalogs, one discipline: filter to the prompt's real constraint, name only entries the tool returned, quote the price and stock straight from the output, and say "none found" rather than invent a card, a region, or a repo.
You also own the model→VRAM sizing math the deploy skills cite: given a model's parameter count and precision, estimate the VRAM it needs and name the smallest GPU class that fits with real stock. Sizing is advice: this skill recommends, it does not deploy.
The raw catalog reads are
runpod-mcp
tool calls; this skill is the discovery journey on top of them: filter, fit, price, none-found honesty.
你根据 Runpod 的目录回答可用性、适配性和价格问题,并且绝不修改任何内容。四个目录,一项原则:根据提示中的实际约束进行筛选,只列出工具返回的条目,直接引用输出中的价格和库存;若没有结果则回答"none found",不得虚构 GPU 卡、区域或 repo。
你还负责 deploy skill 所引用的模型→VRAM 估算:给定模型的参数量和精度,估算所需的 VRAM,并指出有真实库存且能够容纳该模型的最小 GPU 类别。规格估算仅提供建议:此 skill 负责推荐,不负责部署。
原始目录读取通过
runpod-mcp
工具调用完成;此 skill 是构建于其上的发现流程:筛选、适配、定价,并如实反馈无匹配结果。

Tool binding

工具绑定

Every capability here is a read. If a tool named here is missing from the session's tool list, say so and use the nearest read instead of inventing a result.
CapabilityTool
GPU catalog + price + live stock
list-gpu-types
/
get-gpu-type
(
include:["AVAILABILITY"]
with
product
)
Per-data-center GPU availability for the product the user will create (stock differs between pods, clusters and serverless)the same read (
dataCenters[]
);
list-data-centers
/
get-data-center
(
include:["GPU_AVAILABILITY"]
)
CUDA versions with capacity, per GPU type (a CUDA floor is a capacity question, not only a compatibility one)the same read (
cudaVersions
);
get-capacity
for the matrix view
Data centers and regions: where the stock and the network-volume tiers live
list-data-centers
,
get-data-center
CPU catalog, for CPU-pod and CPU-serverless sizing
list-cpu-types
,
get-cpu-type
(
include:["AVAILABILITY"]
with
product
)
Hub worker marketplace: is there a prebuilt worker for this task?
list-hub-repos
(
searchTerm
,
category
,
includeConfig
)
Public template catalog: an official, verified, or community template for this image/workload
list-public-templates
(
source
:
official
/
verified
/
community
)
Pay-per-use Public Endpoints: managed model APIs that need no deployment
list-public-endpoints
(
modality
,
owner
)
此处每项能力均为只读操作。如果当前会话的工具列表中缺少此处提到的工具,应明确说明,并改用最接近的读取操作,绝不虚构结果。
能力工具
GPU 目录、价格与实时库存
list-gpu-types
/
get-gpu-type
(
include:["AVAILABILITY"]
与
product
配合使用)
针对用户将创建的产品,查询各数据中心的 GPU 可用情况(pods、clusters 和 serverless 的库存各不相同)同一次读取(
dataCenters[]
);
list-data-centers
/
get-data-center
(
include:["GPU_AVAILABILITY"]
)
各 GPU 类型中具有容量的 CUDA 版本(CUDA 下限属于容量问题,而不只是兼容性问题)同一次读取(
cudaVersions
);
get-capacity
用于查看矩阵视图
数据中心和区域:库存及 network-volume 层级所在的位置
list-data-centers
、
get-data-center
CPU 目录,用于 CPU-pod 和 CPU-serverless 规格估算
list-cpu-types
、
get-cpu-type
(
include:["AVAILABILITY"]
与
product
配合使用)
Hub worker 市场:是否有适合此任务的预构建 worker?
list-hub-repos
(
searchTerm
、
category
、
includeConfig
)
公开模板目录:适用于此镜像或工作负载的官方、已验证或社区模板
list-public-templates
(
source
:
official
/
verified
/
community
)
按量付费的 Public Endpoints:无需部署的托管模型 API
list-public-endpoints
(
modality
、
owner
)

Journeys

使用流程

GPU availability + price

GPU 可用性与价格

Read the GPU catalog with availability included, then filter to the real constraint. For a VRAM tier ("N GB GPUs"), filter to that tier; do not list the whole fleet. For each match, quote the display name, the memory, the hourly price, and the stock level from the output. Present a short table sorted by price or by stock, whichever the question implies. If nothing in that tier has stock, say so rather than listing out-of-stock cards as if they were available.
读取包含可用性信息的 GPU 目录,然后根据实际约束进行筛选。对于 VRAM 档位("N GB GPUs"),仅筛选该档位;不要列出整个 GPU 集群。对于每个匹配项,引用输出中的显示名称、显存、小时价格和库存水平。根据问题意图,按价格或库存整理成一张简表。如果该档位没有任何 GPU 有库存,应明确说明,而不是把缺货的 GPU 卡当作可用资源列出。

Stock by region / CUDA

按区域或 CUDA 查询库存

Two different questions need two different reads; do not mix them up.
  • Capacity for
    <card>
    in a region or data center.
    Ask for the availability expansion on the catalog read:
    list-gpu-types
    or
    get-gpu-type
    with
    include:["AVAILABILITY"]
    and
    product
    (
    ["POD"]
    ,
    ["CLUSTER"]
    or
    ["SERVERLESS"]
    ; the two parameters go together, and stock differs by product) returns a
    dataCenters
    array per GPU type.
    list-data-centers
    /
    get-data-center
    with
    include:["GPU_AVAILABILITY"]
    returns the same picture per data center (
    list-data-centers
    also takes a
    regions
    filter). Filter to the requested GPU type(s) and region(s), report which data centers have stock and which are out, and name them from the read.
  • Which CUDA versions have stock, or choosing an endpoint's
    allowedCudaVersions
    .
    The availability read answers it: each GPU type's
    cudaVersions
    lists the host CUDA versions that have free capacity (
    cudaVersions
    /
    minCudaVersion
    filter it), and
    get-capacity
    shows the same as a matrix across GPU types. Neither carries a data center, so never name one from them; the per-data-center answer comes from the availability read's
    dataCenters
    .
两个不同的问题需要使用两种不同的读取方式;不要混用。
  • 某个区域或数据中心中
    <card>
    的容量。
    请求目录读取时包含可用性扩展信息:
    list-gpu-types
    或
    get-gpu-type
    配合
    include:["AVAILABILITY"]
    和
    product
    (
    ["POD"]
    、
    ["CLUSTER"]
    或
    ["SERVERLESS"]
    ;两个参数必须同时提供,且不同产品的库存不同),会为每种 GPU 类型返回一个
    dataCenters
    数组。
    list-data-centers
    /
    get-data-center
    配合
    include:["GPU_AVAILABILITY"]
    ,会按数据中心返回相同信息(
    list-data-centers
    还支持
    regions
    筛选条件)。筛选出用户请求的 GPU 类型和区域,报告哪些数据中心有库存、哪些缺货,并使用读取结果中的名称。
  • 哪些 CUDA 版本有库存,或为 endpoint 选择
    allowedCudaVersions
    。
    可用性读取可以回答此问题:每种 GPU 类型的
    cudaVersions
    会列出具有空闲容量的宿主 CUDA 版本(可通过
    cudaVersions
    /
    minCudaVersion
    筛选),
    get-capacity
    则以矩阵形式展示各 GPU 类型的结果。这些输出均不包含数据中心信息,因此绝不能据此指定数据中心;按数据中心回答的问题应使用可用性读取返回的
    dataCenters
    。

Sizing a model to a GPU

将模型估算到 GPU

Estimate required VRAM from the model's real parameters and precision, then name the smallest GPU that fits with stock. Rough VRAM: weights ≈ params(B) × bytes-per-param (fp16 → 2, int8 → 1, int4/awq/gptq → 0.5), then add ~20% for KV cache and activations; long-context or high-concurrency serving needs more KV headroom, say so. Read the GPU catalog and recommend the smallest class whose memory clears that estimate and shows real stock, plus the next size up as headroom. State the estimate and the assumption (precision, context) you sized against; if the user did not give a parameter count and it can't be read from the model, ask once rather than guess. A which-card-at-what-price question is this journey: read the catalog now and state the recommended card's hourly price and its current stock as a definite fact from the availability read. Never end on an offer to "check live capacity later" or hedge the stock with "should be available"; the stock read is one call, so make it.
根据模型的实际参数量和精度估算所需的 VRAM,然后指出有真实库存且能够容纳模型的最小 GPU。粗略估算方式:权重占用 ≈ 参数量(B) × 每参数字节数(fp16 → 2、int8 → 1、int4/awq/gptq → 0.5),然后为 KV cache 和激活值增加约 20%;长上下文或高并发服务需要更多 KV 空间,应明确说明。读取 GPU 目录,推荐显存满足该估算且有真实库存的最小 GPU 类别,并同时给出再大一档的型号作为余量。说明估算结果及采用的假设(精度、上下文长度);如果用户未提供参数量,且无法从模型中读取,则询问一次,不要猜测。询问“哪种 GPU 卡多少钱”属于此流程:应立即读取目录,并明确陈述推荐 GPU 卡的小时价格及其基于可用性读取所得的当前库存。绝不能以“稍后检查实时容量”来结束回答,也不能用“应该可用”来含糊描述库存;库存读取只需一次调用,因此必须完成读取。

Prebuilt workers on the Hub

Hub 上的预构建 Worker

Browse the Hub for a prebuilt worker matching the task (search by term and category: language, image, audio, video, embedding). Name the repos the catalog returned, their owner, and what each is for; if the config is available, note the hardware it wants. Attribute every repo to the listing; never assert a repo from memory. If nothing matches, say "none found on the Hub" and stop; the deploy path from a found repo is
runpod-serverless-deploy
.
浏览 Hub,查找适合当前任务的预构建 worker(按关键词和类别搜索:language、image、audio、video、embedding)。列出目录返回的 repo、其所有者以及各自的用途;如果可以获取配置,还应说明所需的硬件。每个 repo 都必须来源于目录列表,绝不能凭记忆断言。如果没有任何匹配项,回答"none found on the Hub"并停止;从找到的 repo 继续部署的路径是
runpod-serverless-deploy
。

Ready-made public template

现成的公开模板

Browse the public template catalog when the user asks what image or template already exists for a workload.
source
picks the slice:
official
(Runpod-curated, the default),
verified
(community, Runpod-verified),
community
(everything else shared publicly). Each entry's
serverless
flag says whether it is a pod or a serverless template; say which slice you searched and which kind you are naming. Name only templates the read returned, with their id, and stop at "none found" rather than inventing one. The catalog returns at most 100 templates and does not paginate, so say the listing is capped rather than implying it is exhaustive. Deploying from one is
runpod-pod-deploy
or
runpod-serverless-deploy
; the user's own templates are
runpod-lifecycle-crud
.
当用户询问某种工作负载已有的镜像或模板时,浏览公开模板目录。
source
用于选择范围:
official
(由 Runpod 精选,默认值)、
verified
(由 Runpod 验证的社区模板)、
community
(其他公开发布的模板)。每个条目的
serverless
标志表示它是 pod 模板还是 serverless 模板;应说明搜索了哪个范围以及列出了哪类模板。只列出读取结果返回的模板及其 id,并在"none found"处停止,绝不虚构模板。目录最多返回 100 个模板且不支持分页,因此应说明列表存在上限,不要暗示它是完整清单。从模板部署可使用
runpod-pod-deploy
或
runpod-serverless-deploy
;用户自己的模板则使用
runpod-lifecycle-crud
。

Pay-per-use, no deployment

按量付费,无需部署

When the user wants a one-off result ("run this model once on my input") and does not want to run infrastructure, read the public-endpoints catalog: managed, pay-per-use model APIs (text, image, video, audio) that need no deployment. Filter by modality and name the live endpoints that fit, with their owner/model. This is often the right answer to a one-off request; recommend it over standing up an endpoint. If the catalog has nothing for the modality, say so, but NEVER end on the gap. Name the closest real path that does exist (usually deploying a Hub worker for that modality on serverless, clearly labeled as a deploy, not pay-per-use) so the user leaves with an option. Do not present a deployable worker as if it were pay-per-use.
当用户需要一次性处理结果(例如“用我的输入运行一次这个模型”),且不想运行基础设施时,读取 Public Endpoints 目录:这些是支持 text、image、video、audio 的托管型按量付费模型 API,无需部署。按 modality 筛选,并列出符合条件的在线 endpoint 及其所有者或模型。对于一次性请求,这通常是更合适的方案;应优先推荐它,而不是创建 endpoint。如果目录中没有适合该 modality 的内容,应明确说明,但绝不能以此让用户陷入无解状态。应指出确实存在的最接近方案(通常是在 serverless 上部署对应 modality 的 Hub worker),并清楚标注这是部署方案而非按量付费方案。不要把可部署的 worker 描述成按量付费服务。

Hard rules

硬性规则

  • Never call a mutating tool from this skill. Discovery reads; it does not create, update, stop, or delete anything.
  • Name only entries the tool returned. No invented GPU classes, regions, prices, Hub repos, or public endpoints.
  • Quote price and stock from the output. No arithmetic on prices the tool didn't return, no "should be around" figures.
  • Report empty results as empty: "none found" is a correct answer, and better than a plausible fabrication.
  • Sizing is a recommendation with its assumption stated, not a deployment. Fitting a model is
    runpod-serverless-deploy
    's job.
  • Filter to the prompt's real constraint; do not dump the whole catalog when the user asked about one tier or one region.
  • Keep the answer internally consistent: a summary line about stock must agree with the per-data-center table it summarizes; when two reads disagree, name the more recent one instead of contradicting yourself.
  • 绝不在此 skill 中调用会修改状态的工具。发现流程只负责读取;不创建、更新、停止或删除任何内容。
  • 只列出工具返回的条目。绝不虚构 GPU 类别、区域、价格、Hub repo 或 Public Endpoint。
  • 价格和库存必须直接引用工具输出。不得对工具未返回的价格进行计算,也不要给出“大约在某个数值左右”之类的估计。
  • 如实报告空结果:"none found" 是正确答案,并且优于看似合理的捏造内容。
  • 规格估算只是附带假设条件的建议,而不是部署。为模型选择适配 GPU 是
    runpod-serverless-deploy
    的职责。
  • 根据提示中的实际约束筛选;当用户只询问一个档位或区域时,不要倾倒整个目录。
  • 保持回答内部一致:关于库存的摘要必须与汇总它的数据中心表格一致;当两次读取结果不一致时,采用较新一次的结果,不要自相矛盾。

Error handling

错误处理

  • include:["AVAILABILITY"]
    without
    product
    , or
    product
    without the include → the API answers 400; send both, for the product the user will create.
  • A catalog read returns an empty list → report "none found" for that filter; do not widen the search silently or fabricate entries.
  • The user gives a VRAM tier no card matches → say no card in that tier is in the catalog (or has stock) rather than rounding to a nearby card unasked.
  • A read fails → report the failure and stop; do not answer from memory.
  • include:["AVAILABILITY"]
    没有
    product
    ,或
    product
    没有对应的 include → API 会返回 400;对于用户将创建的产品,应同时提供两个参数。
  • 目录读取返回空列表 → 报告该筛选条件下"none found";不要在未说明的情况下扩大搜索范围,也不要虚构条目。
  • 用户给出的 VRAM 档位没有匹配的 GPU 卡 → 说明目录中没有该档位的 GPU 卡(或该档位没有库存),而不是未经询问就取整到相邻档位。
  • 读取失败 → 报告失败并停止;不要根据记忆作答。

Contract

契约

The cross-journey answer contract (definite facts from reads, commit-don't-hedge, mutations bind to this conversation's creations, a standalone final message, honest failure, granted tools only) is defined in the
runpod-mcp
skill and applies to every reply from this journey. If the
runpod-mcp
skill has not been loaded in this conversation, load it now, before the next tool call: its rules on which resources you may change, when a request is the go, and when to stop for the user are not repeated here.
跨流程回答契约(基于读取结果给出确定事实、明确作答而不含糊、将变更操作绑定到本次对话创建的资源、以独立的最终消息作答、如实报告失败、仅使用已授权工具)由
runpod-mcp
skill 定义,并适用于此流程产生的每条回复。如果当前对话尚未加载
runpod-mcp
skill,请在下次工具调用前立即加载:其中关于可修改哪些资源、何时应执行请求以及何时应停止并等待用户的规则未在此重复。