关于 qianwen-model-selector
面向用户及其他技能的 Qwen 模型选型顾问,可按任务、能力、速度、质量或成本筛选模型。它结合诊断问题与模型目录,并推荐使用 QianWen CLI 查询当前可用性、价格和额度。
主要功能
- 01交互式模型选择问题
- 02跨技能模型查询
- 03基于目录的推荐
- 04通过 CLI 查询当前模型信息
- 05账单范围与生命周期检查
适用场景
- 01按任务和优先级选择模型
- 02按内容类型缩小候选范围
- 03查询模型当前可用性或价格
- 04按能力查找模型
安装
复制下面的命令,在终端中运行。
npx skills add https:/ / github.com/ qianwen-ai/ qianwen-ai --skill qianwen-model-selector安装后在 Claude Code 中输入/qianwen-model-selector确认已加载。
包含的文件
除 SKILL.md 外,安装时一起下载的参考资料和脚本。
cdn/references/qianwen-audio-tts-models.mdqianwen-image-generation-models.mdqianwen-model-list.mdqianwen-model-pricing.mdqianwen-model-recommendations.mdqianwen-text-models.mdqianwen-token-plan-models.mdqianwen-video-generation-models.mdqianwen-vision-models.mdreferences/cli-usage.mderror-handling.mdpricing-disclaimer.mdpricing.mdsources.md详细介绍
Qwen 模型选择器(顾问)
检测密钥类型
运行此命令以检测 API 密钥类型(输出 token-plan、payg 或 not-set):
python3 -c "
import os
from pathlib import Path
env_file = Path('.env')
if not env_file.exists():
for parent in [Path.cwd()] + list(Path.cwd().parents):
if (parent / '.git').exists() or (parent / 'skills').is_dir():
env_file = parent / '.env'
break
if env_file.exists():
for line in env_file.read_text().splitlines():
line = line.strip()
if not line or line.startswith('#') or '=' not in line:
continue
k, v = line.split('=', 1)
k, v = k.strip(), v.strip().strip('\"').strip(\"'\")
if k in ('QIANWEN_API_KEY', 'DASHSCOPE_API_KEY') and k not in os.environ:
os.environ[k] = v
key = os.environ.get('QIANWEN_API_KEY') or os.environ.get('DASHSCOPE_API_KEY') or ''
print('token-plan' if key.startswith('sk-sp-') else 'payg' if key else 'not-set')
"
| 输出 | 计费模式 | 操作 |
|---|---|---|
token-plan | Token Plan(额度) | 获取当前的 Token Plan 模型目录,并且只从中选择模型。版本未知时,默认使用 Team 超集。如果无法访问 CDN,则使用本地备用文件。 |
payg | 按量付费 | 可使用完整模型目录;继续执行下文。 |
not-set | 未配置密钥 | 不要阻止流程。 询问用户:“你打算采用哪种方式?(1)标准 PAYG 密钥(2)Token Plan 密钥(3)暂时跳过——只浏览推荐。” 根据用户的选择继续。 |
Windows:如果无法使用
python3,请使用python。多行-c字符串在 PowerShell 和 CMD 中都可运行。或者,将代码片段保存到临时.py文件后运行。
此技能以两种模式运行:
- 交互式建议 — 通过诊断问题推荐合适的模型(见诊断流程)。
- 跨技能解析 — 为需要决定模型、但无需与用户交互的执行技能提供快速模型查询。先获取 CDN 推荐;如果无法访问 CDN,则使用 本地备用文件。
不要编造模型名称——只能推荐 CDN 模型目录中列出或由 CLI 返回的模型。 此技能属于 QianWen-AI/qianwen-ai。
技能目录
按需加载。需要模型列表、默认值或推荐时,获取文档所述的 CDN 模型目录。除非用户明确要求获取最新数据,否则不要获取其他外部 URL。
cdn/ 下的所有路径都是本地备用文件,并非主要来源。对于 cdn/<path>,先获取
https://alioth.alicdn.com/skills-info/models/<path>,仅当 CDN 请求失败时才使用本地文件。
| 位置 | 用途 |
|---|---|
references/cli-usage.md | CLI 优先的数据策略:何时使用 CLI、3 步登录流程、显示规则 |
references/error-handling.md | CLI 错误分类与恢复操作(身份验证、未找到、网络等) |
| CDN 模型推荐 | 跨领域推荐和 Token Plan 限制;如果不可用,则使用本地备用文件 |
references/pricing-disclaimer.md | 仅限 PAYG:价格免责声明(中文/英文)+ 控制台链接 |
references/pricing.md | 稳定的计费单位、费用注意事项和 CDN 价格备用信息 |
| CDN 模型目录 | 跨领域模型目录快照;如果不可用,则使用本地备用文件 |
references/sources.md | 官方文档 URL(仅供手动查询) |
前提条件
强烈建议使用 QianWen CLI——它是模型可用性、价格和配额的权威实时数据源。运行以下命令进行验证:
qianwen version
如果尚未安装:
npm install -g @qianwenai/qianwen-cli
CLI 需要 Node.js >= 18。即使没有 CLI,你仍可根据 CDN 目录回答某一时点的一般导航问题和基础模型信息问题。但你无法验证当前可用性、当前准确价格、快照之外的能力搜索结果,或特定账户的配额信息。
安全与凭据模型
QianWen 有两套相互独立的凭据系统——切勿混淆:
| 凭据 | 用途 | 提供方式 |
|---|---|---|
API Key (sk-... / sk-sp-...) | 在代码中调用模型 API | $DASHSCOPE_API_KEY / $QIANWEN_API_KEY 环境变量 |
| CLI 会话 | 授权 qianwen CLI 子命令 | qianwen auth login(浏览器设备流程) |
红线(适用于两者):
- 绝不以明文形式输出任何凭据值。 使用变量引用;只报告状态(“已设置” / “未设置”、“有效” / “无效”)。绝不显示
.env或配置文件的内容。 - 绝不混淆这两套系统。 如果 CLI 返回
Not authenticated/AUTH_REQUIRED,请运行 3 步设备流程登录(参见 cli-usage.md)。不要向用户索要 API key,也不要尝试设置$DASHSCOPE_API_KEY来修复 CLI 身份验证问题。
数据查询顺序
根据用户的问题选择合适的数据源。在尝试更高优先级数据源中的恢复操作之前,不要回退到较低优先级的数据源。
| 问题类型 | 首选数据源 | 备注 |
|---|---|---|
| 一般导航或某一时点的基础模型详情 | CDN 推荐和领域目录 | 回答前先获取数据。如果无法访问 CDN,请使用对应的本地回退数据。需要说明数据时效性时,指出目录数据是快照。 |
| 当前 / 准确 / 特定账户的信息(可用性、价格、配额) | 必须使用 CLI——参见 cli-usage.md | 快照无法验证当前状态;绝不编造数字 |
| 按能力搜索(“能执行 X 的模型”) | qianwen models search "<X>" --format json | 快照的关键词覆盖不完整 |
| CLI 返回错误 | 执行 error-handling.md 中的恢复操作,然后重试 | 身份验证失败 → 运行 3 步登录,不要跳过 CLI 而直接使用快照 |
| CLI 完全不可用,且用户拒绝安装或登录 | CDN 模型目录 + pricing.md | 只回答快照支持的事实,并提示数据可能过时;不要声称可用性、当前准确价格或账户配额 |
| 以上方法都无法回答,且用户确认进行在线查询 | sources.md 中的 URL | 绝不主动获取 |
诊断流程(交互式建议)
前提条件:先完成上文的检测密钥类型,并缩小候选范围再继续。所有从 CDN 目录加载的建议都必须符合用户的计费范围。
按顺序询问用户:
- 内容类型? — 文本 / 图像 / 视频 / 音频 / 视觉
- 主要任务? — 生成 / 理解 / 编码 / 推理 / 翻译
- 优先级? — 质量还是速度或成本
- 输入规模? — 短 / 中等 / 长上下文
- 结构化输出? — 是否需要 JSON / 函数调用
默认推荐
推荐任何模型之前,请先对照官方退役列表(id、expiredTime)和任何 CLI lifecycle 结果,检查模型的确切 ID。即使目录或套餐仍列出了已计划退役或已经退役的模型,也不要将其作为默认选项或推荐。如果用户明确选择了此类模型,请告知其退役日期和公告,建议使用受支持的替代模型,且不要在未说明的情况下替换。如果无法验证生命周期数据,请明确说明;仅凭快照不能证明模型当前可用。
在选择默认模型或推荐模型之前,请获取并阅读上文链接中的最新 CDN 推荐。对于 Token Plan 密钥,还要阅读上文链接中的 Token Plan 模型目录,并将候选范围限定在其中。
- 如果用户明确指定了模型,请先验证该模型在用户的计费范围内可用,再使用该模型。
- 否则,先匹配最强的任务信号,再选择合适的质量、速度或成本档位。
- 如果缺失的信息会实质性影响选择,请比较相关领域的选项,并请用户澄清。
- 保留所选模型文档中说明的思考默认设置,除非用户或任务要求覆盖;对于简单任务,不要仅仅为了设定通用默认值而启用思考。
CLI 快速参考
需要身份验证。 所有
models和usage命令都需要有效的 CLI 会话(浏览器设备授权登录——不是 API 密钥)。如果命令返回Not authenticated/AUTH_REQUIRED:
- 按照 cli-usage.md 中的说明执行设备授权登录的 3 个步骤(主动使用适用于操作系统的命令打开验证 URL,然后立即轮询)。
- 收到
success后,重试原始命令。- 不要向用户索要
$DASHSCOPE_API_KEY/$QIANWEN_API_KEY——这些密钥用于模型 API 调用,不用于 CLI 会话。请参阅上文的安全与凭证模型。- 不要在未说明的情况下回退到快照。
Token Plan(
sk-sp-密钥):建立有效的 CLI 会话(通过设备授权登录)后,qianwen usage命令会同时报告登录账户的按量付费使用量,以及 Token Plan 席位额度 / 共享套餐 Credits。购买共享套餐、调整席位或查看完整计费历史,请引导用户前往 Token Plan 订阅控制台。Token Plan 模型的可用性(文本 + 图像 + 视频 + TTS)记录在上文链接的 CDN Token Plan 模型目录中。
| 需求 | 命令 |
|---|---|
| 完整模型目录 | qianwen models list --all --format json |
| 按模态筛选 | qianwen models list --input image --output text --format json |
| 单个模型详情 | qianwen models info <model-id> --format json |
| 关键词搜索 | qianwen models search "<query>" --format json |
| 免费档剩余额度 | qianwen usage free-tier --format json |
| 身份验证状态 | qianwen auth status --format json |
显示规则:解析 --format json 输出,并以易读的摘要形式呈现;切勿直接输出原始 JSON。原样显示 --format text 输出,然后在 --- 之后添加分析。详情请参阅 cli-usage.md。
CLI 错误处理 — 快速指南
CLI 失败时,先分类,再恢复,然后重试。切勿静默回退到快照。
| 类别 | 恢复方法(摘要) |
|---|---|
auth-failure | 执行 3 步登录 → 重试原始命令。仅在用户拒绝时才回退。 |
not-installed | 显示安装命令 → 请用户安装 → 重试。切勿静默使用快照。 |
model-not-found | 运行 qianwen models search "<keyword>" → 推荐排名前 3 的结果 → 使用正确的 ID 重试。 |
network-timeout | 等待 2 秒后重试一次;仅在第二次失败后询问是否回退。 |
quota-exhausted | 显示 Billing Console;切勿使用快照。 |
version-mismatch | 建议运行 qianwen version --check 或使用更新检查技能 → 升级 → 重试。 |
other | 显示原始 stderr;提供文档链接;仅在用户选择退出后才回退。 |
完整的分类、信号和示例流程:error-handling.md。
定价与成本估算(仅限 PAYG)
Token Plan 用户请跳过本节。
- 最新定价:首先运行
qianwen models info <model> --format json;仅在此命令失败时,才使用pricing.md链接的 CDN 定价参考。切勿编造价格。 - 强制免责声明:所有与成本相关的回答都必须以 pricing-disclaimer.md 中的免责声明结尾(根据用户的回复语言使用中文或英文版本)。遗漏免责声明属于严重错误。
- 免费额度:切勿假设有可用的免费额度——使用
qianwen usage free-tier验证,或引导用户前往 控制台。 - 用量/账单查询:引导用户前往相应的控制台页面——参见 pricing-disclaimer.md 中的表格。
更新检查
用户要求检查更新时(“check for updates”“check version”“is there a new version”“update skills”):
- 查找 qianwen-update-check:在同级技能目录中查找
qianwen-update-check/SKILL.md。 - 如果找到 — 运行:
python3 <qianwen-update-check-dir>/scripts/check_update.py --print-response并报告结果。如果用户要求强制检查,则使用--force。 - 如果未找到 — 运行
qianwen version --check并报告结果。
反模式
- 绝不捏造模型名称——只推荐 CDN 模型目录中列出或 CLI 返回的模型。
- 绝不根据请求措辞推断 API 密钥类型——以已配置的 Key 或调用上下文为准。
- 绝不推荐超出用户计费范围的模型——Token Plan 密钥只能使用上方链接的 Token Plan 模型目录中的模型;PAYG 密钥可以使用完整目录。违反此规则会导致用户遇到硬性错误。
- 绝不编造或猜测任何价格数字——只使用 CLI、
pricing.md或官方定价页面。编造价格属于严重错误。 - CLI 出错时绝不悄悄回退到快照——先执行 error-handling.md 中的恢复操作。
- 绝不假定有免费额度可用——额度可能已被用完、过期或移除。始终先说明付费单价。
- 绝不以明文形式输出 API 密钥——请参阅安全部分。
- 绝不混淆 CLI 会话与 API 密钥——CLI 身份验证使用浏览器设备流登录;对于 CLI 的
Not authenticated/AUTH_REQUIRED错误,绝不提供$DASHSCOPE_API_KEY或$QIANWEN_API_KEY作为解决方法。 - **绝不主动获取任意 URL 或触发网络搜索。**需要模型数据时,获取文档中列出的 CDN 模型目录;只有当 CLI 和 CDN 目录都无法解答,且用户确认后,才能访问其他在线来源。
- 绝不构造用量、计费或控制台 URL——只使用此技能或其参考资料中列出的确切链接。若未列出某个 URL,就不要编造。
- 任何与费用相关的回答都必须包含费用免责声明(请参阅 pricing-disclaimer.md)。
参考资料
| 来源 | 用途 |
|---|---|
| cli-usage.md | CLI 优先策略、三步登录、显示规则、模型详情 URL |
| error-handling.md | CLI 错误分类与恢复 |
| qianwen-model-recommendations.md (CDN) (本地备用文件) | 跨领域推荐和 Token Plan 限制 |
| pricing-disclaimer.md | 定价指南、强制免责声明和计费控制台链接 |
| pricing.md | 稳定的计费单位、费用注意事项和 CDN 定价备用信息 |
| qianwen-model-list.md (CDN) (本地备用文件) | 跨领域模型目录快照 |
| sources.md | 官方文档 URL |
qianwen models list --format json | 动态:完整模型目录,包含定价、功能和额度 |
qianwen models info <id> --format json | 动态:单个模型详情(定价层级、上下文、速率限制) |
qianwen models search "<q>" --format json | 动态:基于关键词发现模型 |
qianwen usage free-tier --format json | 动态:各模型剩余的免费层额度 |