用 Pipedream 监听 Google Drive 新文件,自动下载并用 Deepgram 转写,再把结果发送/入库。适合小团队的语音识别自动化模板。

用 Pipedream 自动转写 Drive 音频:省一半时间
团队里最“隐形”的时间黑洞,往往不是开会本身,而是会后整理:录音下载、丢进转写工具、复制粘贴、再发给相关同事。对小团队来说,这类重复动作一天做几次还好;一旦内容生产变成常态(访谈、播客、销售复盘、用户调研、线上培训),你会发现流程拖慢了发布节奏,也拖慢了决策。
我更倾向于把“转写”当成内容生产流水线的一段,而不是一个孤立工具。尤其在“人工智能在媒体与内容产业”的语境下,转写不是终点,它是内容检索、二次创作、推荐分发、合规留存的入口。
这篇文章用一个非常实用的例子把事情讲透:当 Google Drive 某个文件夹出现新音频/视频时,Pipedream 自动下载文件、调用 Deepgram 做语音识别(ASR),并把结果发到邮箱(你也可以改成写入 Notion/飞书/Slack/CRM)。你会得到一个可复用的“语音识别 + 自动化工作流”模板。
为什么小团队更应该把“转写”自动化
答案很直接:自动化不是为了炫技,是为了把注意力从搬运转回业务。
在媒体与内容团队里,转写通常服务于三件事:
- 更快地产出内容:播客/视频号口播 → 文字稿 → 精剪片段 → 标题与简介
- 更好地沉淀知识:周会/访谈/培训录音 → 可搜索文本 → SOP/知识库条目
- 更稳地做合规与复盘:销售通话/客服录音 → 质检与抽检 → 话术优化
如果每次都靠人工上传、复制链接、手动粘贴,流程会天然产生延迟。延迟意味着:内容发布慢、项目推进慢、反馈闭环慢。
一句很“现实”的判断:当你的转写流程需要一个人去“盯着它完成”,它就不可靠。
自动化工作流的价值在于:触发条件明确、路径固定、输出可追踪。Pipedream 这种低代码平台,正好适合小企业把零碎环节连起来。
工作流架构:Google Drive → Pipedream → Deepgram → 输出
答案先给:你要搭的工作流可以拆成 4 段——触发、取文件、转写、分发/存储。
- 触发(Trigger):Google Drive 指定文件夹出现新文件
- 取文件(Download):把文件下载到 Pipedream 的临时存储(
/tmp) - 转写(Transcribe):用 Deepgram Node.js SDK 把音频/视频转成文字
- 输出(Send/Store):邮件通知、写入表格/数据库、创建文档、发到群里
为什么用 Pipedream,而不是“脚本 + 定时任务”?
如果你是小团队,Pipedream 的优势很实在:
- 连接器多:Google Drive、Gmail、Slack、Notion、Airtable、Webhook 等直接可用
- 开发者友好:可以写 Node.js(还能装 npm 包),比纯低代码更灵活
- 省掉 CRUD 时间:你不必把大量精力花在拉取文件列表、鉴权、重试机制上
- 临时存储够用:工作流执行过程中可用约 2GB 的临时空间(适合处理单个文件)
对内容团队来说,这种“低代码 + 少量代码”的组合,通常比从零维护一套自建服务更划算。
逐步搭建:自动监听 Drive 文件夹并转写
答案先说清楚:你只需要三个账号/资源——Pipedream 账号、Google 账号、Deepgram API Key。
Step 1:用 Google Drive 新文件触发工作流
在 Pipedream 新建一个空工作流,选择触发器:
- Google Drive New Files (Instant)
注意两点:
- 授权时勾选允许查看、编辑、删除、下载(否则后面下载会失败)
- 默认是“全盘监听”,建议把范围缩小到某个指定文件夹,避免误触发
完成后你可以往该文件夹丢一个音频文件(如 hello.mp3)来生成测试事件数据,供后续步骤引用。
Step 2:下载文件到 Pipedream 临时目录 /tmp
转写服务通常需要拿到文件本体,不能假设文件是公开权限。所以第二步是下载:
- Action:Google Drive Download File
- File:使用触发器里的 File ID
{{steps.trigger.event.id}}
- Destination File Path:
/tmp/{{steps.trigger.event.name}}
这一步会把 Drive 文件保存为本地临时文件,例如:/tmp/hello.mp3。
经验:文件名里尽量别有奇怪字符(尤其是斜杠、过多空格)。为了稳定,你也可以在下载前加一步“重命名/规范化文件名”。
Step 3:调用 Deepgram 做语音识别(Node.js 代码)
新建一个 Deepgram 步骤,连接 Deepgram 账号并填入 API Key。然后用下面的代码骨架:
const fs = require('fs')
const { Deepgram } = require('@deepgram/sdk')
module.exports = defineComponent({
props: {
deepgram: {
type: "app",
app: "deepgram",
}
},
async run({ steps }) {
}
})
在 run 里加入读取文件并转写的逻辑:
const { name, mimeType } = steps.trigger.event
const buffer = await fs.promises.readFile(`/tmp/${name}`)
const source = { buffer, mimetype: mimeType }
const deepgram = new Deepgram(this.deepgram.$auth.api_key)
const { results } = await deepgram.transcription.preRecorded(source, { punctuate: true })
return results.channels[0].alternatives[0].transcript
几个关键点:
punctuate: true会自动加标点,对后续可读性和摘要质量影响很大- 返回值这里仅返回
transcript字符串;你也可以返回 JSON(包括置信度、分段时间戳等) - Pipedream 的临时存储是 ephemeral,单步测试时文件可能已被清理。
- 建议用 Test all above,从触发到转写一口气跑完
Step 4:把转写结果发送出去(先从邮件开始)
最简单的落地方式是邮件通知:
- Action:Send Yourself an Email
- Subject:
Transcription for {{steps.trigger.event.name}} is ready - Body:
{{steps.deepgram.$return_value}}
邮件只是起点。更常见的团队玩法是:
- 写入 Notion/飞书文档,按日期归档
- 丢进 Airtable/Google Sheets,形成可筛选的“素材库”
- 发到 Slack/飞书群,@相关同事进入下一步编辑
- 触发 LLM 摘要与标题生成(用于内容推荐与分发)
Step 5:清理 /tmp,让流程更干净
最后加一个 Node.js 步骤删除临时文件:
const fs = require('fs')
module.exports = defineComponent({
async run({ steps }) {
return await fs.promises.unlink(`/tmp/${steps.trigger.event.name}`)
},
})
这不是“必须”,但它能减少磁盘占用相关的问题,也让工作流更可预测。
把转写接进“媒体与内容生产链”:3 个实用升级
答案很明确:仅仅“拿到文字”还不够。把它接进内容链路,才会持续省时间。
1) 自动生成可发布的内容资产(标题、摘要、金句)
转写文本最适合做的第一件事,是变成结构化内容:
- 300 字摘要(用于公众号/Newsletter 简介)
- 5 条要点(用于会议纪要或培训复盘)
- 10 条金句候选(用于短视频切片脚本)
- 章节列表(用于播客 show notes)
做法:在转写后再接一个“LLM 摘要/提炼”步骤(比如通过 HTTP 请求调用你团队使用的模型服务),然后把摘要与原文一起写入知识库。
内容产业里最贵的不是创作,而是“可复用的素材组织能力”。
2) 做一个“可检索的语音素材库”
如果你把转写结果写入 Airtable/Notion/向量数据库,你就能实现:
- 按项目、嘉宾、关键词检索过去的录音内容
- 快速定位某句原话对应的音频(需要时间戳时可返回更完整的结果结构)
- 为内容推荐系统提供更丰富的文本特征(主题、实体、人名、产品名)
媒体团队常见痛点是“素材散在群里和硬盘里”。自动转写 + 统一入库,能直接改善这个问题。
3) 把它变成 AI 语音助手的“耳朵”
当你有稳定的转写流水线,下一步就是让 AI 助手参与工作:
- 会议结束 5 分钟后:助手自动发送会议纪要与待办列表
- 销售通话结束后:助手提取异议点、下一步动作、回访时间
- 采访录音上传后:助手输出结构化采访提纲与可用引用段落
自动化工作流负责“把数据送到该去的地方”,AI 语音助手负责“把信息变成可执行的动作”。两者结合,才是你真正想要的效率。
常见坑与排查清单(别等上线后才踩)
答案先给:绝大多数失败都发生在权限、文件类型、体积与稳定性这四类问题。
- Drive 权限不足:确认授权包含下载权限;团队盘/共享盘场景要特别检查
- 文件类型不一致:触发器会抓到图片/文档等非音频文件时要如何处理?
- 建议加一步过滤
mimeType,只处理audio/*或video/*
- 建议加一步过滤
- 大文件导致超时:长录音建议按时长拆分,或采用更稳的异步处理策略
- 重复触发:同一文件被移动/重命名可能产生事件,建议用文件 ID 做幂等
- 临时文件丢失:用 Test all above;生产环境中确保步骤顺序与清理逻辑正确
如果你要把它用于“内容审核/质检”,还要加上:
- 数据保留策略(保存多久、谁能访问)
- 脱敏策略(手机号、身份证、地址等)
- 审计记录(谁触发、谁查看、谁导出)
你可以从这个工作流开始,搭出自己的“内容自动化引擎”
自动转写 Google Drive 文件并不复杂,但它很适合作为小团队的第一条自动化工作流:触发明确、产出直观、收益立竿见影。更关键的是,一旦你把“语音 → 文本 → 分发/入库”跑通,后面无论是接任务管理、接内容推荐、接智能创作,都会顺很多。
我建议你先用“邮件通知”跑一周,确认稳定性;然后把输出改成你团队真正使用的系统(Notion/飞书/Slack/CRM),并加上摘要与待办提取。到那一步,你会发现团队讨论的重点会从“谁来整理录音”变成“我们要怎么用这些内容产生更多价值”。
下一个问题也值得你现在就想想:当转写、摘要、归档都自动完成后,你希望 AI 语音助手替你完成哪一个“最烦但最重要”的环节?