🧑⚕️CareSetu AI:即时预约、智能健康建议和全天候语音支持
这是为AssemblyAI 语音代理挑战赛提交的业务自动化语音代理和领域专家语音代理方案。
📝 我打造的产品
作为医疗保健初创公司 CareSetu的软件工程师,同时也是国家重点院校数学与计算机科学专业三年级本科生,我亲眼见证了科技如何解决现实世界中的关键问题。这款基于语音的网页应用允许用户预约就诊、解答诸如“我应该采取哪些糖尿病预防措施?”之类的健康问题,并无缝管理他们的医疗保健需求。它的设计理念是让用户感觉像是在与一位值得信赖的健康助手对话,从而使每个人都能更便捷地获得医疗保健服务。 从商业角度来看,这款应用通过自动化前台工作、降低运营成本并确保稳定的预约量,直接影响到 CareSetu 和其他企业的运营,这对我们合作诊所的财务健康至关重要。 正如您所看到的,您的预约已安排成功,准确率高达 100%,这意味着AssemblyAI 的语音转文本转换功能在您的其他任务中也同样可靠。
技术栈:
后端技术栈
✅核心框架和运行时:
✅ Python 3.11.9 - 主要后端语言
✅ LiveKit Agents 框架- 实时语音/视频通信平台
✅ AsyncIO - 用于处理并发操作的异步编程
AI 和机器学习:
✅ Gemini Flash - 用于对话式 AI 的 LLM 集成
✅ Cartesia/TTS - 文本转语音服务
✅ AssemblyAI - 具有业务优化的 STT 服务
✅ ElevenLabs - 高级文本转语音服务,但作为备用方案
✅ Google Cloud Speech - 作为备用方案的附加 TTS 提供商
✅ Transformers/HuggingFace - 机器学习模型处理
PDFMiner/PDFPlumber/PyPDF2 - PDF 文档处理
✅ NumPy/SciPy - 科学计算
✅ Scikit-learn - 机器学习工具
Web框架和API:
✅ LiveKit Agents框架- 实时通信平台
✅ Python HTTP Server - 用于前端集成的简单令牌服务器
✅ AIOHTTP - HTTP客户端库(用于出站请求)
集成:
✅ Google 日历 API - 预约安排
✅ Google Cloud API - 各种 Google 服务
前端技术栈
核心框架:
✅ React 19.1.0 - 具有最新特性的现代化 React框架
✅ Vite 7.0.4 - 快速构建工具和开发服务器
✅ TypeScript - 类型安全的 JavaScript 开发
✅ UI 和样式:
✅ Tailwind CSS 4.1.11 - 实用至上的 CSS 框架
✅ PostCSS - CSS 处理工具
✅实时通信:
✅ LiveKit 客户端- 用于语音/视频的 WebRTC 客户端
✅ @livekit/components-react - 用于 LiveKit 的预构建 React 组件
测试:
✅ Vitest - 快速单元测试框架
✅ Testing Library - React 组件测试工具
✅ JSdom - 用于测试的 DOM 模拟
工具 开发工具:
✅ ESLint - 代码检查工具
✅ Terser - JavaScript 代码压缩工具
🔍 逐步详细分解
-
用户语音 → 麦克风 → Web Audio API → LiveKit 流
-
音频流 → AssemblyAI → 文本转录
3.文本查询→查询处理→知识搜索→上下文构建
4.增强上下文→Google Gemini→AI响应
5.预约意图 → Google 日历 API → 预订结果
6.人工智能响应→Cartesia/ElevenLabs/Google→音频流
7.音频流 → Web Audio API → 扬声器输出
8. 全面互动 → 分析 → 知识更新
9.用户继续 → 循环至步骤 1 | 超时/断开连接 → 结束会话
10. STT 错误 → 显示错误 → 重试 → 文本输入回退
LLM 错误 → 显示错误 → 仅 RAG 响应 → 重试
TTS 错误 → 尝试下一个服务 → 文本响应回退
日历错误 → 显示错误 → 手动预订 → 重试
注意:此模型目前支持预约意图和查询意图(例如提供基于常见问题解答的信息、CareSetu 的隐私政策、健康保险详情、CareSetu 的各个部门以及与医疗保健相关的现代科学技巧和家庭疗法)。
💻演示
讲解视频
👉关于我自己、正在进行的项目和代码库的说明
注意:- 如您在时间戳 7:07 处所见,该模型告诉我我的名字,这意味着它在对话过程中记住了我的名字。
👉纯后端解释
👉纯前端讲解
该应用程序已上线:
👉在线链接
1)点击“连接客服”
2)然后点击“开始对话”
👉后端托管在AWS EC2实例上,使用Nginx作为反向代理。👉
前端托管在Vercel上。
📁 GitHub 仓库
✅前端代码
✅后端代码
代码片段及其结果的证明
来源:-caresetuAgent_3.0(后端)
使用 AssemblyAI 和 LiveKit 构建语音代理的代码片段
RAG 集成的代码片段
*日历集成 *
结论
AssemblyAI在我成功完成这项挑战的过程中发挥了至关重要的作用。从CareSetu 代理项目启动之初,AssemblyAI 团队就提供了及时的响应和指导,解答了我关于技术要求、部署方案以及如何公开分享项目等问题。无论是阐明发布作品的最佳实践、协助处理集成细节,还是在每个里程碑阶段给予鼓励,他们的团队始终在我需要帮助时提供支持,这一点从我与Lee Vaughn、Dan Ince、Amanda DiNoto和Ryan Seams等团队成员的直接沟通中可见一斑。他们乐于解决任何问题,并积极关注我的进展,这不仅增强了我的信心,也确保了技术难题不会成为阻碍。这种支持使我能够全心投入,构建一个高效可靠的医疗自动化和客户支持语音代理——这充分体现了AssemblyAI对使用其平台的开发者的成功所做出的真诚承诺。
欢迎留言分享你的想法,也请关注我!
✅这篇文章已发布在人工智能版块,拥有超过 2.7 万名关注者和邮件订阅用户
🔗联系我
Medium:个人主页链接
Twitter/X:个人主页链接
LinkedIn:个人主页链接






