errCode: -504003 | errMsg: Invoking task timed out after 3 seconds…


1. 提升云函数超时时间

腾讯云函数(TCB / Cloud Functions)默认超时 3 秒,超过就会被强制终止。你可以到云开发控制台里,把该函数的超时设置调长(比如 10 s 或者 30 s):

  1. 打开【腾讯云开发控制台】→【云函数】→ 找到你部署的 deepseek 函数。

  2. 在「基本信息」页签里,点击【配置】→「超时时间」改为 10s(或更高),然后保存并重新部署。

或者,如果你用 tcb CLI,也可以在 tcb functions:deploy 时加上 --timeout 10s 来指定。


2. 使用腾讯云内置的 HTTP 客户端(可选)

如果你不想带上整个 axios 包,也可以用 wx-server-sdk 里自带的 httpclient,它更轻量、启动更快:

// 替换掉 axios 引入
const cloud = require('wx-server-sdk')
cloud.init({ env: cloud.DYNAMIC_CURRENT_ENV })
const { httpclient } = cloud

exports.main = async (event, context) => {
  try {
    // … 验证 messages 省略
    const res = await httpclient.request({
      method: 'POST',
      url: 'https://api.deepseek.com/v1/chat/completions',
      headers: {
        'Content-Type': 'application/json',
        'Authorization': `Bearer ${DEEPSEEK_API_KEY}`
      },
      data: {
        model: "deepseek-chat",
        messages,
        temperature: 0.7,
        max_tokens: 1000
      },
      dataType: 'json',
      timeout: 10000
    })

    const body = res.data
    if (!body.choices?.[0]?.message) throw new Error('API 返回无效')
    return { success: true, reply: body.choices[0].message.content }

  } catch (error) {
    // 同你的错误处理逻辑
  }
}

这样可以略微降低启动和解析依赖的时间。


3. 校准 axios 超时时间与函数超时时间

你在 axios 里 timeout: 10000,但函数本身只能跑 3000 ms,就算 axios 能跑 10 s,也会被云函数先砍掉。
要么把 axios timeout 调到小于函数超时时间(比如 timeout: 2000),要么把云函数超时调到大于 axios 的超时时间。


4. 前端调用云函数时,也可以加上超时时间参数

在小程序端调用:

wx.cloud.callFunction({
  name: 'deepseek',
  data: { messages: newMessages },
  timeout: 10000,   // <= 云函数超时时间
})

这样如果云函数还没返回,小程序端也会在客户端层面超时并触发 catch 分支。


5. 优化接口响应速度

如果你的 DeepSeek API 本身响应很慢,可以考虑:

  • 减少 max_tokens 或者 temperature 之类的参数,让模型返回更快。

  • 对常见问答做本地缓存,减少同样请求的外部调用次数。


小结

  1. 最直接:到云开发控制台把该函数超时从 3 s 提升到 10 s 以上。

  2. 可选优化:用 wx-server-sdk 自带的 httpclient 代替 axios,减小包体、启动更快。

  3. 确保 axios/client 的 timeout 小于或等于你在控制台里设置的函数超时。

按照以上几步,基本能解决 “Invoking task timed out after 3 seconds” 这样的问题。改完别忘了 重新部署 云函数并 重新发布 小程序,来验证超时是否真的消失。

Logo

欢迎加入DeepSeek 技术社区。在这里,你可以找到志同道合的朋友,共同探索AI技术的奥秘。

更多推荐