1. 摘要
基于 TRAE SOLO,从零搭建了一套云边协同微服务架构的智慧课堂语音转写系统,实现了课堂语音实时采集→阿里百炼 ASR 转写→大模型重点提取→前端可视化展示的完整端到端流程。整个项目包含 Python 边缘服务、Node.js 云端服务、Vue 前端三个模块,全程约 2 小时完成。
2. 背景
我是一名计算机专业的学生,课程设计要求完成一个基于大模型与边缘计算的智慧教室感知助手。需要实现:
-
边缘端音频采集与上传
-
云端调用大模型 API 进行语音转写和重点提取
-
前端实时展示转写结果
-
前后端分离微服务架构
-
完整的课设报告
一个人从零写三个服务 + 报告,工作量很大,所以用 SOLO 来提效。
3. 实践过程
第一步:任务拆解
我把整个课设拆成 7 个子任务,一次性发给 SOLO:
-
系统架构设计
-
边缘采集服务(Python)
-
云端分析服务(Node.js)
-
前端展示服务(Vue 3)
-
加分功能(缓存去重 + 配置文件化)
-
系统联调与测试
SOLO 同时启动 3 个子任务并行开发三个服务,效率很高。
第二步:核心 Prompt
Plain Text
基于大模型与边缘计算的智慧教室感知助手设计与实现
方向E:课堂语音转写与重点内容自动提取
技术栈:边缘端Python + 云端Node.js + 前端Vue3
加分功能:缓存去重 + 配置文件化
交付物:完整系统代码
SOLO 自动完成了技术选型(DashScope Paraformer ASR + Qwen LLM)、API 设计、前后端开发。
第三步:踩坑与修复
开发过程中遇到了几个关键问题,都是通过把报错日志贴给 SOLO 来解决的:
| 问题 | 原因 | SOLO 的修复 |
|---|---|---|
| 前端 API 调用 404 | 前端路径和后端不匹配 | 统一 API 路径,修复 Vite 代理配置 |
DashScope 报 url error |
API 不支持 base64,需要公网 URL | 改用文件上传凭证接口(GET 获取凭证 → POST 上传 OSS) |
获取凭证报 MethodNotAllowed |
用了 POST,实际应该是 GET | 修正为 GET + query string,上传改为 multipart/form-data |
| PowerShell 的 curl 报错 | PS 的 curl 是 Invoke-WebRequest 别名 | 改用 curl.exe |
每次贴日志,SOLO 都能精准定位问题并给出修复代码,这个体验很好。
第四步:生成课设报告
用 SOLO 的 docx 技能,按华南理工模板格式生成了完整的课设报告,包含封面、摘要、9 章正文、12 篇参考文献,格式规范(黑体标题、宋体正文、20 磅行距)。
4. 成果展示
GitHub 仓库: https://github.com/xinyangXu24/smart-classroom-transcription
项目结构:
Plain Text
smart-classroom-transcription/
├── edge-service/ # 边缘采集服务(Python)
│ ├── main.py # 主入口
│ ├── audio_collector.py # 音频采集(麦克风/文件)
│ ├── audio_similarity.py# MFCC去重
│ ├── uploader.py # HTTP上传
│ └── config.yaml # 配置文件
├── cloud-service/ # 云端分析服务(Node.js)
│ ├── src/
│ │ ├── app.js # Express服务(8个API)
│ │ ├── services/ # ASR + LLM + 成本追踪
│ │ ├── routes/ # 路由
│ │ └── store/ # 内存存储
│ └── config/default.json
└── frontend/ # 前端展示(Vue 3)
├── src/
│ ├── views/ # 4个页面
│ ├── components/ # 复用组件
│ └── stores/ # Pinia状态管理
└── vite.config.js
系统架构:
-
边缘端:Python 采集音频 → 分段 → MFCC 去重 → HTTP 上传
-
云端:Express 接收 → DashScope Paraformer 转写 → Qwen 提取重点 → 返回结构化结果
-
前端:Vue 3 + Element Plus + ECharts,实时仪表盘 + 历史记录 + 统计图表
API 接口(8个): POST /api/transcribe、GET /api/results、GET /api/results/history、GET /api/results/:id、GET /api/results/stats/summary、GET /api/cost/stats、GET /api/cost/history、GET /api/health
5. 效果与总结
| 维度 | 传统方式 | 用 SOLO |
|---|---|---|
| 三个服务开发 | 2-3 天 | 约 30 分钟 |
| 课设报告 | 1-2 天 | 约 20 分钟 |
| Bug 修复(5 轮) | 半天 | 每轮 2 分钟 |
| 总计 | 3-5 天 | 约 2 小时 |
可复用的方法:
-
先拆任务再并行:把大项目拆成独立子任务,让 SOLO 并行开发,速度翻倍
-
贴日志修 Bug:遇到报错直接贴完整日志,比描述问题高效得多
-
分步验证:每完成一个模块就测试 API,不要等全部写完再联调
-
配置文件化:所有参数放 config,改配置不改代码,调试方便