教练控制台
连接中…
大模型 —
语音 —
项目档案
说明
跑者参数
改完点应用
目标配速
5:10
心率上限
173
话术引擎
在线(Edge 神经语音)
离线(本机 SAPI,断网可用)
音色
云希 · 男 · 年轻亲和
云健 · 男 · 有精神
云扬 · 男 · 沉稳
晓晓 · 女 · 温柔
晓伊 · 女 · 活泼
应用参数(重置会话)
跑步控制
t = 0 s
心率
148
配速
5:10
推进 1 秒
推进 10 秒
推进 1 分钟
▶ 自动播放
重置到 0
每一步都会真正调用本地 agent:
状态 → 决策 → 意图 → 话术 → 语音
。 不说话的步骤也会记录原因。
情景预设
稳态轻松跑
心率飙升
悄悄掉速
上坡吃力
最后冲刺
点一个情景,再点「自动播放」,看教练怎么反应。
实时状态
state_estimator 输出
心率
—
bpm
配速
—
偏离
—
疲劳度
—
心率分区
—
阶段
—
置信度
—
已跑
—
m
教练发言
0 次开口
还没开始。点左边的「推进」或「自动播放」。
最近一次决策
为什么说 / 为什么不说
—
直接问教练
走真大模型
问
提问会带上当前目标配速与心率上限,交给大模型回答, 再过一遍话术守门(≤20 字 / 无阿拉伯数字 / 不做医学诊断)。
这个页面是怎么连上 agent 的
网页不是播放录制好的音频,而是每推进一步就真的问一次 agent。
网页 ──POST /api/tick──▶ state_estimator → coach/policy → coach/intent → 话术
↓
网页 ◀──audio_url──── 语音合成(在线 Edge / 离线 SAPI)◀── 守门 ◀── 大模型 或 模板
所以你在左边拖滑块、切情景,右边的每一句话都是 agent
当场算出来
的。 本地服务:
—