TGViewer
开发者工具箱|编程·开发工具·资源 开发者工具箱|编程·开发工具·资源 @devtoolboxhub · 780 subscribers
Post #1615 6
Sentinel:10 天构建的实时语音应急调度代理

印度开发者 Subhangi Dutta 在 VoiceForBharat 挑战赛中,用 10 天构建了 Sentinel——一个面向灾害应急场景的实时 Voice AI 调度代理。项目源于季风洪水中的真实困境:受灾家庭手机仅剩 14% 电量、网络退化到 2G,无法加载应急 App 或下载 PDF,唯一可行的求助方式是直接打电话。

Sentinel 针对印度应急响应的三个痛点设计:信息碎片化(指南、降雨警报、避难所容量分散在不同部门)、触屏界面在湿屏和高压下失效、以及传统聊天机器人转接时丢失上下文、迫使受害者重复叙述。系统通过统一 WebRTC 管道实现双向语音流,核心组件包括 Deepgram Nova-3 实时多语种转写、Google Gemini 负责灾情分诊与工具编排、Murf Falcon 提供低延迟印式英语语音合成,并配合 LiveKit 与 Silero VAD 支持自然打断。

架构分层上,LiveKit 负责浏览器与后端间的超低延迟 WebRTC 流,Silero VAD 动态追踪语音边界;Deepgram Nova-3 处理多样口音与快速语码切换;Gemini 作为决策引擎,评估灾情护栏、决定是否拉取外部遥测或执行 SQLite 查询,并在遇到避难所类问题时触发 ShelterInformationSpecialist 子代理;Murf Falcon 2 流式输出音频,无需等待完整句子生成即可开始播放;SQLite 维护呼叫者档案与升级日志,数据仅在用户明确语音同意后保存,并支持「忘记我的数据」指令即时清除。


Sentinel 具备状态记忆与隐私保护、实时天气遥测与故障回退(第三方 API 失败时自动切换缓存应急通告)、以及人工升级工作流——当呼叫者报告被困时,系统验证安全状态、记录紧急程度(Critical/Moderate/Low)、生成可追踪的参考 ID 并触发调度 webhook。

开发中最棘手的障碍是「静默转接」:多代理委派时,Sentinel 宣布转接后通话完全静音,LiveKit 将初始轮次视为结束,新代理只能等待呼叫者再次开口。解决方案是利用 LiveKit Agents 的 on_enter() 生命周期方法,在专家代理接管会话的瞬间立即通过 Murf Falcon 触发 session.say() 音频流,消除空白并即时播报避难所数据。


项目依赖 Python 3.10-3.13、Node.js 18+ 与 pnpm,需配置 LiveKit Cloud、Murf AI、Google Gemini 和 Deepgram 的 API 密钥。作者计划下一步接入 SIP 电话系统,直连 NDRF/SDMA 免费灾害热线,并扩展卡纳达语、阿萨姆语和孟加拉语的语码切换支持。

#开发者 #工具 #VoiceAI #Sentinel #WebRTC #LiveKit #Deepgram #Gemini #Murf #灾害应急
@DevToolboxHub
More from @devtoolboxhub
  1. Sep 26, 2026PostgreSQL 复制槽上限参数 max_replication_slots 解析 max_replication_slots 决定共享内存中复制槽数组的长度,仅此而已。它不决…
  2. Sep 26, 2026五仓库架构踩坑:Gitlink 与双 CI Flude 团队复盘了多仓库架构的实践代价。项目从第一分钟起就选择拆分成独立仓库,Pipeline、engine、design-docs…
  3. Sep 26, 2026Xeno Core:TypeScript 后端架构框架 Node.js 复杂系统的架构选型往往决定代码的长期命运。开发者常在两条路之间纠结:要么依赖重度使用实验性装饰器和反射(如…
  4. Sep 25, 2026用 SLO 给 AI Agent 的行为定个预算 Grafana Labs 提出把可靠性工程里的错误预算(error budget)思路用到 AI Agent 上。延迟、token…
  5. Sep 25, 2026Xcode 27.2 改用 JSON 项目格式 Xcode 27.2 用基于 JSON 的 project.xcproj 取代了沿用多年的 project.pbxproj。新建项目…
  6. Sep 25, 2026PostgreSQL 的 max_prepared_transactions 该不该开 prepared transaction 是脱离会话独立存在的两阶段提交事务。执行 PREP…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →