Pi Coding Agent CLI 接入阿里云百炼 Token Plan 故障排查记录:登录成功但没有可用模型

问题背景:为什么 Pi Coding Agent 登录百炼后无法选择模型?

Pi Coding Agent CLI 已经成功登录阿里云百炼 Token Plan,但是执行模型选择命令时没有任何可用模型,这是本文记录的完整排查过程。

故障表现:

Only showing models from configured providers. Use /login to add providers.

No matching models

表面上看,问题像是“百炼没有配置成功”,但实际情况并不是这样。

经过排查发现:

  • Pi Coding Agent 已经识别 Alibaba Model Studio Plan
  • Token Plan 登录状态正常
  • API Endpoint 已经生成
  • 真正失败的是模型列表获取

最终状态:

Plan: logged in

Anthropic:
https://token-plan.ap-southeast-1.maas.aliyuncs.com/apps/anthropic

OpenAI:
https://token-plan.ap-southeast-1.maas.aliyuncs.com/compatible-mode/v1

Models:
0 (not fetched)

这类问题容易误判。

很多人看到 /model 没有模型,会重新安装插件或者重新购买 API,但实际上认证链路已经成功,问题发生在模型目录同步阶段。

本文记录整个定位过程,方便后续遇到类似问题快速排查。


环境信息

本次故障使用的环境是什么?

本次测试环境:

项目 信息
操作系统 Windows
Agent Pi Coding Agent CLI
Pi 版本 0.80.10
Node 环境 npm
百炼接入插件 pi-alibaba-models
服务类型 Alibaba Model Studio Plan
接入方式 Token Plan

查看 Pi 版本:

pi --version

输出:

0.80.10

查看已安装插件:

pi list

输出:

User packages:

npm:pi-alibaba-models

C:\Users\reanod\.pi\agent\npm\node_modules\pi-alibaba-models

从环境信息看,Pi 本体和扩展安装都没有问题。


第一次尝试:安装 pi-bailian-models 扩展

为什么安装插件后没有看到百炼登录选项?

最初安装:

pi install npm:pi-bailian-models

安装完成后进入 Pi:

pi

执行:

/login

但是没有出现:

Alibaba Model Studio Coding Plan

或者:

百炼 coding-plan

这说明插件虽然安装成功,但是没有正确注册 Provider。


排查插件是否加载

首先检查:

pi list

确认插件是否存在。

如果没有:

重新安装:

pi remove npm:pi-bailian-models

pi install npm:pi-bailian-models

然后完全退出 Pi:

exit

重新启动:

pi

再次执行:

/login

实际情况:切换到 pi-alibaba-models

后续改用:

pi install npm:pi-alibaba-models

安装完成:

User packages:

npm:pi-alibaba-models

重新登录后出现:

Alibaba Model Studio Plan

说明 Provider 注册成功。


登录百炼成功,但是 /model 没有模型

为什么登录成功后仍然不能使用?

登录:

/login

选择:

Alibaba Model Studio Plan

输入 Token Plan Key。

登录过程正常,没有报错。

但是执行:

/model

结果:

Only showing models from configured providers.

Use /login to add providers.

No matching models

随后刷新模型目录:

Model catalogs refreshed.

依然为空。


第一步判断:认证失败还是模型目录失败?

如何判断问题在哪一层?

AI Agent 接入模型通常包含几个阶段:

用户
 |
 | API Key
 |
认证服务
 |
Provider 注册
 |
模型目录
 |
具体模型调用

任何一层失败都会表现为“模型不可用”。

因此不能直接认为 API Key 错误。


查看 Alibaba Provider 状态

进入 Pi:

/alibaba

查看 Status。

返回:

Plan: logged in

Anthropic:
https://token-plan.ap-southeast-1.maas.aliyuncs.com/apps/anthropic

OpenAI:
https://token-plan.ap-southeast-1.maas.aliyuncs.com/compatible-mode/v1

Models:
0 (not fetched)


Cloud:
not logged in

Domain:
dashscope-intl.aliyuncs.com

Format:
anthropic-messages

Models:
1 (live, not cached)

这个结果非常关键。


状态分析:问题发生在哪里?

Plan 登录正常

这一部分:

Plan: logged in

说明:

  • Token Plan Key 有效
  • 登录流程完成
  • Provider 已注册

所以不是账号问题。


API Endpoint 正常

生成:

https://token-plan.ap-southeast-1.maas.aliyuncs.com

说明插件已经读取 Token Plan 配置。


真正异常:Models: 0

关键:

Models:
0 (not fetched)

含义:

Pi 知道你登录了 Alibaba Plan,但是没有拿到模型清单。

所以:

/model

自然无法显示任何模型。


为什么模型目录获取失败?

Pi 为什么需要模型目录?

Pi 并不是直接让用户输入模型名称。

它会先获取:

  • Provider 列表
  • 支持模型
  • 模型 ID
  • 模型能力信息

例如:

alibaba-plan

├── qwen3-coder-plus
├── qwen3-coder-next
├── qwen3-max
├── qwen3-plus
├── kimi-k2
└── glm-5

然后 /model 根据目录显示。

如果目录为空:

即使 API Key 正确,也无法选择模型。


排查过程记录

检查 Pi 是否加载 Alibaba 插件

执行:

pi list

确认:

npm:pi-alibaba-models

结果:

正常。


检查 Pi 版本

执行:

pi --version

结果:

0.80.10

版本没有明显异常。


刷新模型目录

尝试:

/alibaba

选择:

Refresh model lists

结果:

Model catalogs refreshed.

但是:

Models: 0

没有变化。


Plan 与 Cloud Provider 的区别

为什么 Cloud 有模型,但是 Plan 没有?

状态中:

Cloud:

Models:
1

而:

Plan:

Models:
0

说明两个 Provider 使用不同模型来源。

Alibaba Cloud API:

通常直接调用 DashScope。

Token Plan:

依赖专门的 Plan 模型目录。

因此:

Cloud 正常,不代表 Plan 正常。

这是排查时容易忽略的一点。


可能原因分析

原因一:模型目录接口访问失败

Token Plan 登录依赖额外的模型列表获取流程。

如果:

  • 网络无法访问接口
  • 代理配置异常
  • 请求被阻断

就会出现:

Models: 0 (not fetched)

原因二:插件缓存没有生成

Pi 会缓存模型目录。

Windows 默认目录:

C:\Users\reanod\.pi\agent\

需要检查是否存在 Alibaba 相关缓存文件。

如果:

  • 文件不存在
  • 文件为空
  • 内容为空数组

说明模型同步没有成功。


原因三:Token Plan 与普通 API Key 不同

百炼有多种 Key:

普通 DashScope:

sk-xxxxxxxx

Token Plan:

可能:

sk-sp-xxxxxxxx

或者:

sk-tok-xxxxxxxx

两者用途不同。

如果使用普通 API Key 登录 Plan Provider,可能出现认证异常。


推荐排查顺序

1. 确认插件

pi list

应该看到:

npm:pi-alibaba-models

2. 确认登录状态

Pi:

/alibaba

查看:

Plan: logged in

3. 刷新模型目录

执行:

/alibaba

Refresh model lists

4. 查看模型状态

再次:

/alibaba

Status

目标:

Models:
>0

5. 如果仍然为 0

检查网络。

重点测试:

  • token-plan.ap-southeast-1.maas.aliyuncs.com
  • 百炼国际站接口
  • GitHub Raw 资源访问

因为部分插件会依赖在线模型目录。


故障经验总结

这次问题最大的误区,是把“没有模型”理解成“没有登录成功”。

实际上两个状态完全不同:

状态 含义
Login failed Key 或账号问题
Provider missing 插件问题
Models 0 模型目录获取问题
Model call failed 调用接口问题

排查 AI Agent 接入问题时,应该先判断失败发生在哪一层。

不要一看到模型列表为空,就重新配置所有东西。


实用操作清单

安装 Pi Alibaba 插件

pi install npm:pi-alibaba-models

查看版本

pi --version

查看插件

pi list

登录

/login

选择:

Alibaba Model Studio Plan

查看状态

/alibaba

进入:

Status

重点:

Plan: logged in
Models: 数量

模型选择

/model

正常情况下应该看到:

qwen3-coder-plus
qwen3-coder-next
qwen3-plus

一页速览

问题 判断
没有百炼登录入口 检查插件
登录失败 检查 Token
登录成功但没有模型 检查模型目录
Models: 0 模型列表未获取
Cloud 有模型 Plan 没模型 两套 Provider 不同
刷新无效 检查网络和缓存

FAQ

Pi Coding Agent 可以使用百炼 Token Plan 吗?

可以,需要安装 Alibaba Model Studio 相关插件。


为什么 pi-bailian-models 没有登录选项?

可能是插件版本或 Provider 注册方式变化,建议使用 pi-alibaba-models


登录成功为什么 /model 还是为空?

因为登录只代表认证成功,不代表模型目录加载成功。


Models: 0 表示 API Key 错了吗?

不一定。它更多表示模型列表没有获取成功。


Cloud Provider 有模型,为什么 Plan 没有?

两者使用不同接口和模型目录。


是否需要重新购买百炼服务?

不需要。先确认模型目录同步问题。


如何确认最终恢复?

执行:

/model

能够看到 Alibaba Plan 下的模型名称即可。


使用 Pi 接入百炼时最重要的排查原则是什么?

先确认认证状态,再确认 Provider 状态,最后检查模型目录。不要把所有问题都归因到 API Key。