Cloudflare Workers AI 服务部署记录

创建时间:2026-09-01

场景:通过 Cloudflare Workers 部署 AI 服务(语音转文字、文本嵌入)

一、背景

Cloudflare Workers 提供了 AI 推理能力,支持在边缘节点运行 Whisper、Qwen、Llama 等模型。免费版每日提供 10,000 Neurons 额度,换算下来约可处理 45 分钟的音频转录,适合个人项目和小规模实验。

前置准备

  • Cloudflare 账号(支持 OAuth/GitHub 登录)

  • wrangler CLI 工具(~/.local/bin/wrangler

  • 认证 Token 存储在 ~/.config/.wrangler/config/default.toml

二、Whisper 语音转文字 Worker

2.1 服务信息

项目
服务名 cf-whisper-worker
URL https://cf-whisper-worker.<username>.workers.dev
功能 语音转文字(OpenAI 兼容接口)
部署方式 wrangler 部署

2.2 支持的 API

1. OpenAI 兼容转录接口

POST /v1/audio/transcriptions

请求参数(multipart/form-data):

参数 说明 示例
file 音频文件 audio.wav
model 模型名称 @cf/openai/whisper
language 语言代码(可选) zh, en
response_format 返回格式 json, text, vtt, srt, verbose_json
temperature 采样温度(可选) 0.0

2. 简单测试接口

GET /POST / --- 返回基础信息,用于验证服务是否正常。

2.3 可用模型对比

模型 适用场景 速度 质量
@cf/openai/whisper 通用中英文
@cf/openai/whisper-tiny-en 纯英文、实时 较低
@cf/openai/whisper-large-v3-turbo 高质量转录

选择建议:

  • 中英文混合:用基础模型 @cf/openai/whisper

  • 纯英文会议/播客:用 tiny-en,速度快、额度消耗少

  • 需要高准确率、有时间等:用 large-v3-turbo

2.4 使用示例

bash

复制代码
# 转录音频文件
curl -X POST https://cf-whisper-worker.<username>.workers.dev/v1/audio/transcriptions \
  -F "file=@audio.wav" \
  -F "model=@cf/openai/whisper" \
  -F "language=zh" \
  -F "response_format=json"

2.5 返回格式说明

格式 内容
json {"text": "..."}
text 纯文本内容
vtt WebVTT 字幕(带时间戳)
srt SRT 字幕格式
verbose_json 详细 JSON(含置信度、时间戳)

vttsrt 可直接用于视频字幕生成,verbose_json 可用于语音分析或关键词提取。

三、Qwen3 文本嵌入 Worker

3.1 服务信息

项目
服务名 qwen3-embedding
URL https://qwen3-embedding.<username>.workers.dev
功能 文本向量化(768 维)
部署方式 Cloudflare Web Editor

3.2 支持的 API

OpenAI 兼容嵌入接口

POST /v1/embeddings

请求体(JSON):

json

复制代码
{
  "model": "@cf/qwen/qwen3-embedding-0.6b",
  "input": "你好世界"
}

支持单条文本或批量文本:

json

复制代码
{
  "model": "@cf/qwen/qwen3-embedding-0.6b",
  "input": ["文本1", "文本2", "文本3"]
}

3.3 可用模型

模型 维度 适用场景
@cf/qwen/qwen3-embedding-0.6b 768 中英文通用
@cf/baai/bge-m3 1024 多语言、长文本

选择建议:

  • 通用中文场景:用 qwen3-embedding-0.6b,轻量快速

  • 多语言混合(中英日等):用 bge-m3,支持更长文本

3.4 返回示例

json

复制代码
{
  "object": "list",
  "data": [
    {
      "object": "embedding",
      "index": 0,
      "embedding": [0.012, -0.034, 0.056, ...]
    }
  ],
  "model": "qwen3-embedding-0.6b"
}

向量数组长度为 768(qwen3)或 1024(bge-m3),可直接用于相似度计算、聚类或 RAG 检索。

四、部署与常用命令

4.1 首次部署(Whisper)

bash

复制代码
# 创建项目
mkdir cf-whisper-worker && cd cf-whisper-worker

# 初始化 wrangler 配置
wrangler init

# 编写 Worker 代码(JavaScript)
# 部署
wrangler deploy

4.2 常用命令

bash

复制代码
# 查看已部署的 Worker 列表
wrangler list

# 查看可用 AI 模型
wrangler ai model list

# 查看特定模型信息
wrangler ai model get <model-name>

# 从 Web Editor 部署(嵌入服务适用)
# 在 Cloudflare Dashboard → Workers & Pages → 创建 → 在线编辑

五、使用场景

5.1 音频转录

  • 视频会议记录 → 自动生成会议纪要

  • 播客转文字 → 生成逐字稿和字幕文件

  • 课堂录音 → 语音笔记检索

5.2 文本嵌入

  • RAG 应用:将文档切片向量化,构建知识库

  • 推荐系统:计算用户 query 与内容向量的相似度

  • 聚类分析:对用户评论或文章进行主题归类

六、踩坑记录

坑 1:音频格式不兼容

Whisper Worker 只接受 WAV/PCM 格式。MP3 或 M4A 需先转码:

bash

复制代码
ffmpeg -i input.mp3 -ar 16000 -ac 1 output.wav

坑 2:请求超时

Cloudflare Workers 有 30 秒 CPU 时间限制。大文件建议分段或使用 large-v3-turbo 模型,转录速度更快。

坑 3:配额不足

免费版每日 10,000 Neurons。大文件转录消耗约 200-500 Neurons/次,实测约 20-50 次转录。超限后返回 403,可通过 Dashboard 查看用量或升级付费计划。

七、成本估算

模型 单价(Neurons) 每日免费次数(估算)
whisper 20-50/次 200-500 次
qwen3-embedding 1-2/次 5000-10000 次
whisper-large 100-200/次 50-100 次

免费额度对个人实验和小型应用完全够用。

八、总结

Worker 功能 状态
cf-whisper-worker 语音转文字 ✅ 运行中
qwen3-embedding 文本向量化 ✅ 运行中

两个服务均通过 Cloudflare Workers AI 部署,支持 OpenAI 兼容接口,可在现有项目中无缝接入,无需额外维护基础设施。免费额度对于个人使用基本够用,适合小规模实验和 prototype 开发。

相关推荐
gsls20080816 分钟前
OpsKat封装MCP:用 Go 标准库把运维 CLI 变成 AI 的“手“
运维·人工智能·golang·mcp
美股研究社21 分钟前
出海合规战,TEMU先胜“一城”
大数据·人工智能·物联网
元岳数字人小元22 分钟前
数字人一体机如何落地?多模态智能交互设备全解析
运维·人工智能·人机交互·交互·源代码管理
学着改变27528 分钟前
2026手持式超声波流量计品牌对比:巡检标定场景性能与续航评测
人工智能·科技·产品运营·能源·材质
qq4078556029 分钟前
2026 最新鼎捷 vs 轻流:生产管理系统功能对比与选型指南
大数据·人工智能·低代码·制造
夜雪一千29 分钟前
如何编写一个数据分析 Skill:完整拆解一个案例
人工智能·语言模型·数据挖掘·数据分析
liliangcsdn30 分钟前
如何对IC时间序列进行汇总统计分析示例
人工智能·算法·机器学习
世岩清上33 分钟前
展柜陈列想要高级质感,留白比例控制在多少最合适?
人工智能·展厅改造
Canace42 分钟前
基于 Codex Agent Harness 套壳实现自己的 AI 产品:Agent 运行时与任务编排实践
前端·人工智能·agent