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

Electron笔记应用集成Whisper API遇错误,求解决及替代API推荐

Electron音频转写功能错误修复及API推荐

一、当前错误解决

错误根源

核心问题是filePath参数传了undefined,导致fs.createReadStream因无效参数报错。另外那条AVCapture的警告是Mac系统Continuity Camera的兼容性提示,和转写功能无关,无需处理。

修复操作

  1. 检查渲染端传参
    确认渲染进程调用transcribe-audio时,确实传递了有效的音频文件绝对路径。比如渲染端代码应类似:
ipcRenderer.invoke('transcribe-audio', '/Users/xxx/Documents/record.mp3')

如果是通过文件选择框获取路径,要确保拿到的路径不为空。

  1. 给主进程添加参数校验
    在主进程的处理函数里先判断参数合法性,避免空值进入后续逻辑:
electron.ipcMain.handle("transcribe-audio", async (event, filePath) => {
  // 新增参数校验
  if (!filePath || typeof filePath !== 'string') {
    throw new Error('音频文件路径无效');
  }
  
  const form = new FormData();
  form.append("file", fs.createReadStream(filePath));
  form.append("model", "whisper-1");
  const response = await axios.post("https://api.openai.com/v1/audio/transcriptions", form, {
    headers: {
      ...form.getHeaders(),
      Authorization: `Bearer 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`
    }
  });
  return response.data.text;
});
  1. SQLite数据检查
    如果路径是从SQLite读取的,要确认数据库中存储的是完整绝对路径,没有空值或格式错误。

二、替代音频转写API推荐

  • 阿里云智能语音交互:国内服务延迟低,支持多格式音频,有免费额度,适合国内用户。
  • 百度语音识别:支持实时和离线转写,文档完善,集成简单,免费版能满足基础需求。
  • Google Cloud Speech-to-Text:多语言识别准确率高,适合有国际化需求的应用,提供免费试用额度。
  • 本地部署Whisper:用whisper-node类库在Electron中集成本地模型,无需依赖第三方API,数据隐私性好,支持离线使用。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.12 21:23:24