错误信息: Failed after 3 attempts. Last error: No available channel for model gpt-im...

2026年04月24日 16:35 processing

错误信息

错误名称: AI_RetryError 错误信息: Failed after 3 attempts. Last error: No available channel for model gpt-image-2 under group Claude-Code (distributor) (request id: 202604240814457853992778268d9d66lxq4CrT) 堆栈信息: AI_RetryError: Failed after 3 attempts. Last error: No available channel for model gpt-image-2 under group Claude-Code (distributor) (request id: 202604240814457853992778268d9d66lxq4CrT) at _retryWithExponentialBackoff (file:///D:/AppSpace/Cherry%20Studio/resources/app.asar/out/renderer/assets/store-DmY8nbl4.js:100699:37) at async Promise.all (index 0) at async generateImage (file:///D:/AppSpace/Cherry%20Studio/resources/app.asar/out/renderer/assets/store-DmY8nbl4.js:105389:18) at async PluginEngine.executeImageWithPlugins (file:///D:/AppSpace/Cherry%20Studio/resources/app.asar/out/renderer/assets/store-DmY8nbl4.js:153177:19) at async AiProvider.modernGenerateImage (file:///D:/AppSpace/Cherry%20Studio/resources/app.asar/out/renderer/assets/store-DmY8nbl4.js:352391:18) at async AiProvider.generateImage (file:///D:/AppSpace/Cherry%20Studio/resources/app.asar/out/renderer/assets/store-DmY8nbl4.js:352377:10) at async fetchImageGeneration (file:///D:/AppSpace/Cherry%20Studio/resources/app.asar/out/renderer/assets/store-DmY8nbl4.js:352641:17) at async transformMessagesAndFetch (file:///D:/AppSpace/Cherry%20Studio/resources/app.asar/out/renderer/assets/store-DmY8nbl4.js:352507:4) at async fetchAndProcessAssistantResponseImpl (file:///D:/AppSpace/Cherry%20Studio/resources/app.asar/out/renderer/assets/store-DmY8nbl4.js:168185:3) at async file:///D:/AppSpace/Cherry%20Studio/resources/app.asar/out/renderer/assets/store-DmY8nbl4.js:168277:6 错误原因: "[undefined]"

AI 解决方案

报错分析报告

1.错误翻译


原文:No available channel for model gpt-image-2 under group Claude-Code (distributor)
译文:在分发组Claude-Code下,模型gpt-image-2没有可用通道

2. 原因分析


  • 根本原因:请求的模型gpt-image-2在分发组Claude-Code中无可用服务通道,重试3次后失败。

  • 发生位置:调用generateImage函数时,系统尝试通过_retryWithExponentialBackoff重试获取模型通道,最终因无可用资源触发AI_RetryError

  • 上下文:堆栈显示错误源于Cherry Studio的图像生成插件(PluginEngine.executeImageWithPlugins),模型与分发组配置不匹配或服务未就绪。
  • 3.解决方案


    // 修复思路:验证模型可用性 +  fallback到备用模型
    async function safeGenerateImage(prompt, model = "gpt-image-2", group = "Claude-Code") {
      try {
        // 1. 先检查模型在分组下的可用性(需调用DMXAPI的模型状态接口)
        const modelStatus = await checkModelAvailability(model, group); 
        if (!modelStatus.available) throw new Error(`Model ${model} unavailable in ${group}`);
        
        // 2. 执行图像生成(原逻辑)
        return await generateImage(prompt, model);
      } catch (error) {
        // 3. Fallback到备用模型(示例:替换为组内可用模型)
        console.warn(`Fallback to backup model: claude-3-sonnet`);
        return await generateImage(prompt, "claude-3-sonnet"); 
      }
    }
    
    // 辅助函数:检查模型可用性(需对接DMXAPI的/models/status接口)
    async function checkModelAvailability(model, group) {
      const res = await fetch(`https://api.dmxapi.com/v1/models/${group}/status`);
      const data = await res.json();
      return { available: data.models.includes(model) };
    }
    

    4. 预防措施


  • 最佳实践1:调用模型前通过DMXAPI的/models/{group}/list接口验证模型是否在目标分组内可用,避免硬编码无效模型。

  • 最佳实践2:为关键功能配置模型降级策略(如优先用gpt-image-2,失败时自动切claude-3-haiku),提升鲁棒性。

  • 推荐工具:使用DMXAPI的[模型监控 Dashboard](https://dashboard.dmxapi.com/model-status)实时查看通道健康度,或用curl定期探测模型端点:curl https://api.dmxapi.com/v1/models/gpt-image-2/health