错误429-请求过多 - 尝试删除IBM Watson Visual Recognition服务的所有分类器

问题描述:

我试图删除IBM Watson Visual Recognition服务实例的所有分类器,以便仅创建使用的新分类器为我的应用程序。错误429-请求过多 - 尝试删除IBM Watson Visual Recognition服务的所有分类器

为此,我编写了列出所有分类器并发送删除请求的Node.js代码。

当我执行它(并行数百个删除请求)时,我收到一个429 error - too many requests。之后,我的所有删除请求(甚至是个人请求)都收到404 error - Cannot delete classifier

我的问题是:

  1. 有没有更好的方式来删除没有做一个个都分类?
  2. 为什么我现在无法删除单个分类器?是否有一些政策在429太多的请求错误后阻止了我?

这是我在多次的删除请求

收到的429错误
code: 429, 
    error: '<HTML><BODY><span class=\'networkMessage\'><h2>Wow, is it HOT in here!</h2>My CPU cores are practically burning up thanks to all the great questions from wonderful humans like you.<p>Popularity has its costs however. Right now I just can\'t quite keep up with everything. So I ask your patience while my human subsystems analyze this load spike to get me more Power.<p>I particularly want to <b>thank you</b> for bringing your questions. PLEASE COME BACK - soon and frequently! Not only do I learn from your usage, but my humans learn from workload spikes (like this one) how to better adjust capacity with Power and Elastic Storage.<p>So again, thank you for helping to make me smarter and better. I\'m still young and growing, but with your patience and help, I hope to make you proud someday!</p>Your buddy,<br>Watson<br><span class=\'watsonIcon\'></span>p.s. Please share your experiences in the Watson C 

编辑:

我注意到错误显然只发生时,我尝试删除一个“默认”分类这是由服务提供的(如“图形”,“颜色”,“黑色和白色”等)。删除工作正常,当我尝试删除我用自己的图片创建的分类器。

服务的特点是我不允许删除默认分类器吗?如果是,那么有什么特别的原因?我正在构建的应用程序并不需要所有这些内置分类器,因此完全没有用。

我知道我可以通知我想要使用的分类器列表,当我请求新的分类时,但在这种情况下,我需要保留分类列表,并且不能请求更通用的分类,而不会在结果中获得默认分类器。我使用节点js模块“watson-developer-cloud”:“^ 1.3.1” - 我不确定它在内部使用什么API版本。我只注意到有一个更新的版本可用。如果有任何区别,我会更新它并报告回来。

这是我使用删除单个分类当我使用V2 API发生

function deleteClassifier(classifier_id,callback){ 
    var data = { 
     "classifier_id": classifier_id, 
    }; 
    visualRecognition.deleteClassifier(data,function(err, response) { 
     if (err){ 
     callback(err); 
     } 
     else{ 
     callback(null, response); 
     } 
    }); 
    } 

- 编辑

的JS的功能 - 但我认为这是不相关的API版。请参阅接受的答案

我发现问题是我试图删除默认的分类器,这是不允许的。

在API的更高版本(V3中,我写这个答案)只有一个默认分类器,它不能被删除。

我得到的404错误是因为我试图删除默认的分类器。我的所有自定义分类已被删除,因为Matt Hill在他的回答中提到了

1-是否有更好的方法来删除所有不是逐个执行的分类器?

不,您必须逐一删除它们。

2-为什么我现在无法删除单个分类器?是否有一些政策在429太多请求后阻止我?

我怀疑当你对DELETE/classifiers/{classifier_id}的请求返回一个404时,这是因为classifier_id以前被成功删除了。您可以通过执行GET /分类器操作来查看您的帐户的所有当前自定义分类的列表。 404是试图删除无法找到的分类器的设计响应(如果它以前被删除,将会是这种情况)。没有任何策略会在遇到429后阻止您。

您能否给出您正在使用的URL示例 - 我很好奇它是测试版服务(v2)还是最新版本v3?