You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用CustomVision SDK遇TypeError: Expected signal to be an instanceof AbortSignal求助

解决CustomVision SDK的TypeError: Expected signal to be an instanceof AbortSignal报错

问题背景

使用以下依赖版本创建CustomVision项目时,始终触发TypeError: Expected signal to be an instanceof AbortSignal错误:

{
  "@azure/cognitiveservices-customvision-prediction": "^5.1.2",
  "@azure/cognitiveservices-customvision-training": "^5.2.0",
  "@azure/ms-rest-azure-js": "^2.1.0"
}

引入的库:

import { TrainingAPIClient } from "@azure/cognitiveservices-customvision-training";
import { PredictionAPIClient } from "@azure/cognitiveservices-customvision-prediction";
import { ApiKeyCredentials } from "@azure/ms-rest-js";

已尝试切换@azure/ms-rest-azure-js版本、传入AbortSignal均无效,且当前版本不支持core-auth等现代库。

可行解决思路

1. 锁定@azure/ms-rest-js的兼容版本

当前报错源于依赖的@azure/ms-rest-js版本与CustomVision SDK不匹配,尝试将@azure/ms-rest-js锁定为^2.0.0版本(与@azure/ms-rest-azure-js@2.1.0兼容):

npm install @azure/ms-rest-js@^2.0.0 --save-exact

重新初始化客户端时,不主动传入AbortSignal相关参数(旧版本SDK无需显式处理信号)。

2. 禁用自动AbortSignal注入

若项目存在自动注入AbortSignal的全局逻辑(如请求拦截器),暂时禁用该逻辑,或针对CustomVision SDK的请求单独跳过信号注入:

// 初始化客户端时不传入signal参数
const trainingCredentials = new ApiKeyCredentials({ inHeader: { "Training-key": "你的训练密钥" } });
const trainer = new TrainingAPIClient(trainingCredentials, "你的服务端点");

// 调用方法时不传递signal选项
await trainer.createProject("自定义视觉项目");

3. 降级CustomVision SDK到稳定兼容版本

尝试将CustomVision SDK降级到与@azure/ms-rest-azure-js@2.1.0完全兼容的版本,示例依赖配置:

{
  "@azure/cognitiveservices-customvision-prediction": "^5.0.0",
  "@azure/cognitiveservices-customvision-training": "^5.1.0"
}

重新安装依赖后测试客户端功能是否恢复正常。

4. 手动适配AbortSignal类型

若必须保留当前版本,可手动创建兼容的AbortSignal实例(注意旧版本SDK的信号类型要求):

// Node.js环境从node:abort-controller导入
const { AbortController } = require('node:abort-controller');
const controller = new AbortController();

// 调用方法时传入匹配类型的signal
await trainer.createProject("我的项目", { signal: controller.signal });

注意:该方法仅适用于Node.js环境,浏览器环境需使用原生AbortController。

内容的提问来源于stack exchange,提问作者Senad Redzic

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.18 10:33:16